code: func parseArgumentDefs(parser *Parser) ([]*ast.InputValueDefinition, error) {
  	inputValueDefinitions := []*ast.InputValueDefinition{}
  
  	if !peek(parser, lexer.PAREN_L) {
  		return inputValueDefinitions, nil
  	}
  	iInputValueDefinitions, err := reverse(parser,
  		lexer.PAREN_L, parseInputValueDef, lexer.PAREN_R,
  		true,
  	)
  	if err != nil {
  		return inputValueDefinitions, err
  	}
  	for _, iInputValueDefinition := range iInputValueDefinitions {
  		if iInputValueDefinition != nil {
  			inputValueDefinitions = append(inputValueDefinitions, iInputValueDefinition.(*ast.InputValueDefinition))
  		}
  	}
  	return inputValueDefinitions, err
  }
docs: /**
   * ArgumentsDefinition : ( InputValueDefinition+ )
   */