anchor.diff:  
   closure_parameter
    : closure_parameter_name type_annotation?
  - | closure_parameter_name type_annotation '...'
  + | closure_parameter_name type_annotation variadic_parameter_notation
    ;
   
   closure_parameter_name : identifier;
  
positive.code: arrow_operator	: {SwiftSupport.isOperator(_input,"->")}?  '-' '>' ;
  same_type_equals: {SwiftSupport.isOperator(_input,"==")}? '=' '=' ;
  
  /**
   "If an operator has whitespace around both sides or around neither side,
   it is treated as a binary operator. As an example, the + operator in a+b
  
negative.code: function_body : code_block  ;
  parameter_clause : '(' ')' |  '(' parameter_list ')'  ;
  parameter_list : parameter (',' parameter)*  ;
  parameter : external_parameter_name? local_parameter_name type_annotation? variadic_parameter_notation? default_argument_clause? ;
  external_parameter_name : identifier ;
  local_parameter_name : identifier ;
  default_argument_clause : assignment_operator expression  ;
  