anchor.diff:  // multi-character string. All literals are single quote delimited and
   // may contain unicode escape sequences of the form \uxxxx, where x
   // is a valid hexadecimal number (per Unicode standard).
  -
   STRING_LITERAL
  -	: SQuoteLiteral
  -	;
  +   : SQuoteLiteral
  +   ;
   
   UNTERMINATED_STRING_LITERAL
  -	: USQuoteLiteral
  -	;
  -
  +   : USQuoteLiteral
  +   ;
   
   // -------------------------
   // Arguments
  
positive.code:  *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
   *  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   */
  
  /**
   *	A grammar for ANTLR v4 implemented using v4 syntax
   *
  
negative.code: // literal string representation in the target language. We assume
  // that they are delimited by ' or " and so consume these
  // in their own alts so as not to inadvertantly match {}.
  mode TargetLanguageAction;
  NESTED_ACTION
     : LBrace -> type (ACTION_CONTENT) , pushMode (TargetLanguageAction)
     ;
  
  ACTION_ESCAPE
     : EscAny -> type (ACTION_CONTENT)
     ;
  
  ACTION_STRING_LITERAL
     : DQuoteLiteral -> type (ACTION_CONTENT)
     ;
  
  ACTION_CHAR_LITERAL
     : SQuoteLiteral -> type (ACTION_CONTENT)
     ;
  
  ACTION_DOC_COMMENT
     : DocComment -> type (ACTION_CONTENT)
     ;
  
  ACTION_BLOCK_COMMENT
     : BlockComment -> type (ACTION_CONTENT)
     ;
  
  ACTION_LINE_COMMENT
     : LineComment -> type (ACTION_CONTENT)
     ;
  
  END_ACTION
     : RBrace
     { self.handleEndAction() }
     ;
  
  UNTERMINATED_ACTION
     : EOF -> popMode
     ;
  
  ACTION_CONTENT
     : .
     ;
  
  // -------------------------
  mode LexerCharSet;
  LEXER_CHAR_SET_BODY
     : (~ [\]\\] | EscAny)+ -> more
     ;
  
  LEXER_CHAR_SET
     : RBrack -> popMode
     ;
  
  UNTERMINATED_CHAR_SET
     : EOF -> popMode
     ;
  
  // ------------------------------------------------------------------------------
  // Grammar specific Keywords, Punctuation, etc.
  fragment Id
     : NameStartChar NameChar*
     ;
     
  