anchor.diff:  IF            : 'if';
   IN            : 'in';
   INOUT         : 'inout';
  +INSTANCETYPE  : 'instancetype';
   GOTO          : 'goto';
   INT           : 'int';
   LONG          : 'long';
  
positive.code: HUNDEF : '#undef' ~[\r\n]* -> channel(HIDDEN);
  HIFNDEF : '#ifndef' ~[\r\n]* -> channel(HIDDEN);
  HENDIF : '#endif' ~[\r\n]* -> channel(HIDDEN);
  
  
negative.code: generics_specifier: '<' (type_specifier)? (',' type_specifier)*'>' ;
  
  type_specifier:
  'void' | 'char' | 'short' | 'int' | 'long' | 'float' | 'double' | 'signed' | 'unsigned' | 'instancetype'
  	|	('id' ( protocol_reference_list )? )
  	|	(class_name ( protocol_reference_list | generics_specifier )?)
  	|	struct_or_union_specifier
  