anchor.diff:  
   setter
    : {_input.LT(1).getText().equals("set")}? Identifier propertyName
  - ;
  -
  -eos
  - : SemiColon
  - | {lineTerminatorAhead()}?
  - | {_input.LT(1).getType() == CloseBrace}?
    ;
   
   eof
  
positive.code:  : propertyName ':' singleExpression                            # PropertyExpressionAssignment
   | getter '(' ')' '{' functionBody '}'                          # PropertyGetter
   | setter '(' propertySetParameterList ')' '{' functionBody '}' # PropertySetter
   ;           
      
  /// PropertyName :
  ///     IdentifierName
  ///     StringLiteral
  ///     NumericLiteral
  propertyName
   : identifierName
   | StringLiteral
   | numericLiteral
   ;
      
  /// PropertySetParameterList :
  ///     Identifier
  propertySetParameterList
  
negative.code:      * @return {@code true} iff the lexer can match a regex literal.
       */
      private boolean isRegexPossible() {
  
          if (this.lastToken == null) {
              // No token has been produced yet: at the start of the input,
              // no division is possible, so a regex literal _is_ possible.
              return true;
          }
  
          switch (this.lastToken.getType()) {
              case Identifier:
              case NullLiteral:
  