fn parse_input_value_def(&mut self) -> ParseResult<InputValueDefinition> {
        self.parse_optional_description();
        let name = self.parse_identifier()?;
        self.parse_kind(TokenKind::Colon)?;
        let type_ = self.parse_type_annotation()?;
        let default_value = if self.parse_optional_kind(TokenKind::Equals).is_some() {
            Some(self.parse_constant_value()?)
        } else {
            None
        };
        let directives = self.parse_constant_directives()?;
        Ok(InputValueDefinition {
            name,
            type_,
            default_value,
            directives,
        })
    }
/**
     * InputValueDefinition :
     *   - Description? Name : Type DefaultValue? Directives?
     */
InputValueDefinition :
- Description. Name : Type DefaultValue.
InputValueDefinition : - Description . Name : Type DefaultValue .
fn parse_input_value_def(&mut self) -> ParseResult<InputValueDefinition> {
        self.parse_optional_description();
        let name = self.parse_identifier()?;
        self.parse_kind(TokenKind::Colon)?;
        let type_ = self.parse_type_annotation()?;
        let default_value = if self.parse_optional_kind(TokenKind::Equals).is_some() {
            Some(self.parse_constant_value()?)
        } else {
            None
        };
        let directives = self.parse_constant_directives()?;
        Ok(InputValueDefinition {
            name,
            type_,
            default_value,
            directives,
        })
    }
fn parse_input_value_def ( & mut self ) -> ParseResult < InputValueDefinition > { self . parse_optional_description ( ) ; let name = self . parse_identifier ( ) ? ; self . parse_kind ( TokenKind :: Colon ) ? ; let type_ = self . parse_type_annotation ( ) ? ; let default_value = if self . parse_optional_kind ( TokenKind :: Equals ) . is_some ( ) { Some ( self . parse_constant_value ( ) ? ) } else { None } ; let directives = self . parse_constant_directives ( ) ? ; Ok ( InputValueDefinition { name , type_ , default_value , directives , } ) }
InputValueDefinition :
   - Description?
InputValueDefinition : - Description?
&mut self
&mut self