Automattic\WooCommerce\Vendor\GraphQL\Type\Definition

UnresolvedFieldDefinition{}WC 1.0

No Hooks.

Usage

$UnresolvedFieldDefinition = new UnresolvedFieldDefinition();
// use class methods

Methods

  1. public __construct(string $name, callable $definitionResolver)
  2. public getName()
  3. public resolve()

UnresolvedFieldDefinition{} code WC 10.9.1

class UnresolvedFieldDefinition
{
    private string $name;

    /**
     * @var callable
     *
     * @phpstan-var DefinitionResolver
     */
    private $definitionResolver;

    /** @param DefinitionResolver $definitionResolver */
    public function __construct(string $name, callable $definitionResolver)
    {
        $this->name = $name;
        $this->definitionResolver = $definitionResolver;
    }

    public function getName(): string
    {
        return $this->name;
    }

    public function resolve(): FieldDefinition
    {
        $field = ($this->definitionResolver)();

        if ($field instanceof FieldDefinition) {
            return $field;
        }

        if ($field instanceof Type) {
            return new FieldDefinition([
                'name' => $this->name,
                'type' => $field,
            ]);
        }

        return new FieldDefinition($field + ['name' => $this->name]);
    }
}