GraphQL\Language\Parser::parseTypeSystemDefinition PHP Method

parseTypeSystemDefinition() public method

TypeDefinition : - ScalarTypeDefinition - ObjectTypeDefinition - InterfaceTypeDefinition - UnionTypeDefinition - EnumTypeDefinition - InputObjectTypeDefinition
public parseTypeSystemDefinition ( ) : GraphQL\Language\AST\TypeSystemDefinitionNode
return GraphQL\Language\AST\TypeSystemDefinitionNode
    function parseTypeSystemDefinition()
    {
        if ($this->peek(Token::NAME)) {
            switch ($this->lexer->token->value) {
                case 'schema':
                    return $this->parseSchemaDefinition();
                case 'scalar':
                    return $this->parseScalarTypeDefinition();
                case 'type':
                    return $this->parseObjectTypeDefinition();
                case 'interface':
                    return $this->parseInterfaceTypeDefinition();
                case 'union':
                    return $this->parseUnionTypeDefinition();
                case 'enum':
                    return $this->parseEnumTypeDefinition();
                case 'input':
                    return $this->parseInputObjectTypeDefinition();
                case 'extend':
                    return $this->parseTypeExtensionDefinition();
                case 'directive':
                    return $this->parseDirectiveDefinition();
            }
        }
        throw $this->unexpected();
    }