anchor.diff:  reflectedLiteral 
       : '#' ( memberName | ( parameterizedType ('.' memberName)? ) )
       -> ^(REFLECTED_LITERAL parameterizedType? memberName?)
  -    ;
  -
  -qualifiedTypeName
  -    : UIDENTIFIER ('.' UIDENTIFIER)*
  -    -> ^(TYPE_NAME UIDENTIFIER+) 
       ;
   
   typeName
  
positive.code:     -> ^(WHILE_STMT doBlock loopCondition)
      ;
  
  while
      : loopCondition whileBlock
      -> ^(WHILE_STMT loopCondition whileBlock)
      ;
  
negative.code:     ;
  
  controlStructure
      : ifElse | switchCaseElse | simpleWhile | doWhile | forFail | tryCatchFinally
      ;
      
  ifElse
  