anchor.diff:   | assignment_operator prefix_expression
    | conditional_operator prefix_expression
    | type_casting_operator
  - | binary_expression binary_expressions?
  - ;
  + ;
  +
  +binary_expressions : binary_expression+ ;
   
   // GRAMMAR OF AN ASSIGNMENT OPERATOR
   
  
positive.code:  | Hexadecimal_literal Hexadecimal_fraction? Hexadecimal_exponent
   ;
  fragment Decimal_fraction : '.' Decimal_literal  ;
  fragment Decimal_exponent : floating_point_e sign? Decimal_literal  ;
  fragment Hexadecimal_fraction : '.' Hexadecimal_literal? ;
  fragment Hexadecimal_exponent : floating_point_p sign? Hexadecimal_literal  ;
  fragment Floating_point_e : [eE] ;
  fragment Floating_point_p : [pP] ;
  fragment Sign : [+-] ;
  
  // GRAMMAR OF A STRING LITERAL
  
  String_literal : '"' Quoted_text '"' ;
  Quoted_text : Quoted_text_item Quoted_text? ;
  Quoted_text_item : Escaped_character | '\\(' expression ')' | ~["\\\u000A\u000D] ;
  Escaped_character : '\\' [0\\tnr"']
   | '\\x' Hexadecimal_digit Hexadecimal_digit
   | '\\u' Hexadecimal_digit Hexadecimal_digit Hexadecimal_digit Hexadecimal_digit
  
negative.code: 
  variable_declaration_head : attributes? declaration_specifiers? 'var'  ;
  variable_name : identifier  ;
  getter_setter_block : '{' getter_clause setter_clause?'}'  | '{' setter_clause getter_clause '}'  ;
  getter_clause : attributes? 'get' code_block  ;
  setter_clause : attributes? 'set' setter_name? code_block  ;
  setter_name : ( identifier )  ;
  getter_setter_keyword_block : '{' getter_keyword_clause setter_keyword_clause?'}' | '{' setter_keyword_clause getter_keyword_clause '}'  ;
  getter_keyword_clause : attributes? 'get'  ;
  setter_keyword_clause : attributes? 'set'  ;
  willSet_didSet_block : '{' willSet_clause didSet_clause?'}' | '{' didSet_clause willSet_clause '}'  ;
  willSet_clause : attributes? 'willSet' setter_name? code_block  ;
  didSet_clause : attributes? 'didSet' setter_name? code_block  ;
  
  // GRAMMAR OF A TYPE ALIAS DECLARATION
  
  