Automattic\WooCommerce\Vendor\GraphQL\Utils

ASTDefinitionBuilder::makeSchemaDefprivateWC 1.0

Метод класса: ASTDefinitionBuilder{}

Хуков нет.

Возвращает

CustomScalarType|EnumType|InputObjectType|InterfaceType|ObjectType|UnionType.

Использование

// private - только в коде основоного (родительского) класса
$result = $this->makeSchemaDef( $def ): Type;
$def(TypeDefinitionNode&Node) (обязательный)
.

Код ASTDefinitionBuilder::makeSchemaDef() WC 11.0.1

private function makeSchemaDef(Node $def): Type
{
    switch (true) {
        case $def instanceof ObjectTypeDefinitionNode:
            return $this->makeTypeDef($def);

        case $def instanceof InterfaceTypeDefinitionNode:
            return $this->makeInterfaceDef($def);

        case $def instanceof EnumTypeDefinitionNode:
            return $this->makeEnumDef($def);

        case $def instanceof UnionTypeDefinitionNode:
            return $this->makeUnionDef($def);

        case $def instanceof ScalarTypeDefinitionNode:
            return $this->makeScalarDef($def);

        default:
            assert($def instanceof InputObjectTypeDefinitionNode, 'all implementations are known');

            return $this->makeInputObjectDef($def);
    }
}