anchor.diff:      | expr bop=(PLUS|MINUS) expr                                           #binOp
       // handle bitwise shifts below, not in lexer
       | expr (LT LT | GT GT GT | GT GT) expr                                 #bitShift
  -    | expr bop=LITERAL_INSTANCEOF (patternDefinition | typeType[true])     #instanceOfExp
  +    | expr bop=LITERAL_INSTANCEOF (primaryPattern | typeType[true])        #instanceOfExp
       | expr bop=(LE | GE | GT | LT) expr                                    #binOp
       | expr bop=(EQUAL | NOT_EQUAL) expr                                    #binOp
       | expr bop=BAND expr                                                   #binOp
  
positive.code:     : LPAREN expressionList? RPAREN
      ;
  
  patternDefinition
      : patternVariableDefinition
      ;
  
  patternVariableDefinition
  
negative.code:     ;
  
  caseConstants
      : caseConstant (COMMA caseConstant)*
      ;
  
  caseConstant
      : expression
      ;
  
  forControl
  