anchor.diff:  
   identifier : Identifier | contextSensitiveKeyword ;
   
  -keyword : 'convenience' | 'class' | 'deinit' | 'enum' | 'extension' | 'func' | 'import' | 'init' | 'let' | 'protocol' | 'static' | 'struct' | 'subscript' | 'typealias' | 'var' | 'break' | 'case' | 'continue' | 'default' | 'do' | 'else' | 'fallthrough' | 'if' | 'in' | 'for' | 'return' | 'switch' | 'where' | 'while' | 'as' | 'dynamicType' | 'is' | 'new' | 'super' | 'self' | 'Self' | 'Type' ;
  +keyword : 'convenience' | 'class' | 'deinit' | 'enum' | 'extension' | 'func' | 'import' | 'init' | 'let' | 'protocol' | 'static' | 'struct' | 'subscript' | 'typealias' | 'var' | 'break' | 'case' | 'continue' | 'default' | 'do' | 'else' | 'fallthrough' | 'if' | 'in' | 'for' | 'return' | 'switch' | 'where' | 'while' | 'as' | 'dynamicType' | 'is' | 'new' | 'super' | 'self' | 'Self' | 'Type' | 'repeat' ;
   
   contextSensitiveKeyword :
    'associativity' | 'didSet' | 'get' | 'infix' | 'inout' | 'left' | 'mutating' | 'none' |
    'nonmutating' | 'operator' | 'override' | 'postfix' | 'precedence' | 'prefix' | 'right' |
  - 'set' | 'unowned' | 'unowned(safe)' | 'unowned(unsafe)' | 'weak' | 'willSet'
  - ;
  -
  -AssignmentOperator: '=' ;
  -
  -EqualityOperator: '==' ;
  -
  -LessThanOperator: '<' ;
  -
  -GreaterThanOperator: '>' ;
  -
  -NotOperator: '!';
  + 'set' | 'unowned' | 'unowned(safe)' | 'unowned(unsafe)' | 'weak' | 'willSet' | 'required'
  + ;
   
   Operator
     : OperatorHead OperatorCharacter*
  
positive.code: 
  // GRAMMAR OF A TYPE
  
  sType
   : sType '[' ']'
   | sType '->' sType
   | typeIdentifier
   | tupleType
   | sType '?'
   | sType NotOperator
   | protocolCompositionType
   | sType '.' 'Type'
   | sType '.' 'Protocol'
   ;
  
  // GRAMMAR OF A TYPE ANNOTATION
  
  
negative.code: 
  // GRAMMAR OF A PROTOCOL COMPOSITION TYPE
  
  protocolCompositionType : 'protocol' '<' protocolIdentifierList? '>'  ;
  protocolIdentifierList : protocolIdentifier | protocolIdentifier ',' protocolIdentifierList  ;
  protocolIdentifier : typeIdentifier  ;
  
  