WooCommerce Code Reference

TypeInfo
in package

Table of Contents

$argument  : Argument|null
$defaultValueStack  : array<string|int, mixed>
$directive  : Directive|null
$enumValue  : mixed
$fieldDefStack  : array<string|int, mixed>
$inputTypeStack  : array<string|int, mixed>
$parentTypeStack  : array<string|int, mixed>
$schema  : Schema
$typeStack  : array<string|int, mixed>
__construct()  : mixed
enter()  : void
extractTypes()  : void
Given root type scans through all fields to find nested types.
extractTypesFromDirectives()  : void
getArgument()  : Argument|null
getDefaultValue()  : mixed
getDirective()  : Directive|null
getEnumValue()  : mixed
getFieldDef()  : FieldDefinition|null
getFieldDefStack()  : array<int, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\FieldDefinition|null>
getInputType()  : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\InputType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null
getParentInputType()  : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\InputType)|null
getParentType()  : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\CompositeType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null
getParentTypeStack()  : array<int, (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\CompositeType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null>
getType()  : Type|null
leave()  : void
getFieldDefinition()  : FieldDefinition|null
Not exactly the same as the executor's definition of getFieldDef, in this statically evaluated environment we do not always have an Object type, and need to handle Interface and Union types.

Properties

Methods

extractTypes()

Given root type scans through all fields to find nested types.

public static extractTypes((\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType)|(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\WrappingType) $type, array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType> &$typeMap) : void

Returns array where keys are for type name and value contains corresponding type instance.

Example output: [ 'String' => $instanceOfStringType, 'MyType' => $instanceOfMyType, ... ]

Parameters
$type : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType)|(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\WrappingType)
$typeMap : array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType>
Tags
throws
InvariantViolation
Return values
void

extractTypesFromDirectives()

public static extractTypesFromDirectives(Directive $directive, array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType> &$typeMap) : void
Parameters
$directive : Directive
$typeMap : array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType>
Tags
throws
InvariantViolation
Return values
void

getFieldDefStack()

public getFieldDefStack() : array<int, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\FieldDefinition|null>
Return values
array<int, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\FieldDefinition|null>

getInputType()

public getInputType() : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\InputType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null
Return values
(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\InputType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null

getParentInputType()

public getParentInputType() : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\InputType)|null
Return values
(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\InputType)|null

getParentType()

public getParentType() : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\CompositeType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null
Return values
(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\CompositeType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null

getParentTypeStack()

public getParentTypeStack() : array<int, (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\CompositeType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null>
Return values
array<int, (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\CompositeType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|null>

getFieldDefinition()

Not exactly the same as the executor's definition of getFieldDef, in this statically evaluated environment we do not always have an Object type, and need to handle Interface and Union types.

private static getFieldDefinition(Schema $schema, Type $parentType, FieldNode $fieldNode) : FieldDefinition|null
Parameters
$schema : Schema
$parentType : Type
$fieldNode : FieldNode
Tags
throws
InvariantViolation
Return values
FieldDefinition|null