univac
Version:
Generate AST of lots of common programming languages using antlr4. JavaScript API and CLI tool.
200 lines (179 loc) • 12.2 kB
JavaScript
// @ts-nocheck
// Generated from Abnf.g4 by ANTLR 4.7.2
// jshint ignore: start
var antlr4 = require('antlr4/index');
var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
"\u0002\u0010\u00c9\b\u0001\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004",
"\u0004\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t",
"\u0007\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004",
"\f\t\f\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010",
"\t\u0010\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013",
"\u0004\u0014\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0003\u0002",
"\u0003\u0002\u0003\u0003\u0003\u0003\u0003\u0004\u0003\u0004\u0003\u0005",
"\u0003\u0005\u0003\u0006\u0003\u0006\u0003\u0007\u0003\u0007\u0003\b",
"\u0003\b\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t@\n\t\u0003\n\u0003",
"\n\u0006\nD\n\n\r\n\u000e\nE\u0003\n\u0003\n\u0006\nJ\n\n\r\n\u000e",
"\nK\u0006\nN\n\n\r\n\u000e\nO\u0003\n\u0003\n\u0006\nT\n\n\r\n\u000e",
"\nU\u0005\nX\n\n\u0003\u000b\u0003\u000b\u0006\u000b\\\n\u000b\r\u000b",
"\u000e\u000b]\u0003\u000b\u0003\u000b\u0006\u000bb\n\u000b\r\u000b\u000e",
"\u000bc\u0006\u000bf\n\u000b\r\u000b\u000e\u000bg\u0003\u000b\u0003",
"\u000b\u0006\u000bl\n\u000b\r\u000b\u000e\u000bm\u0005\u000bp\n\u000b",
"\u0003\f\u0003\f\u0006\ft\n\f\r\f\u000e\fu\u0003\f\u0003\f\u0006\fz",
"\n\f\r\f\u000e\f{\u0006\f~\n\f\r\f\u000e\f\u007f\u0003\f\u0003\f\u0006",
"\f\u0084\n\f\r\f\u000e\f\u0085\u0005\f\u0088\n\f\u0003\r\u0003\r\u0007",
"\r\u008c\n\r\f\r\u000e\r\u008f\u000b\r\u0003\r\u0003\r\u0003\u000e\u0003",
"\u000e\u0003\u000e\u0003\u000e\u0007\u000e\u0097\n\u000e\f\u000e\u000e",
"\u000e\u009a\u000b\u000e\u0003\u000f\u0006\u000f\u009d\n\u000f\r\u000f",
"\u000e\u000f\u009e\u0003\u0010\u0003\u0010\u0007\u0010\u00a3\n\u0010",
"\f\u0010\u000e\u0010\u00a6\u000b\u0010\u0003\u0010\u0005\u0010\u00a9",
"\n\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0011",
"\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0012\u0003\u0012\u0003\u0012",
"\u0003\u0012\u0005\u0012\u00b7\n\u0012\u0003\u0012\u0003\u0012\u0007",
"\u0012\u00bb\n\u0012\f\u0012\u000e\u0012\u00be\u000b\u0012\u0003\u0012",
"\u0003\u0012\u0003\u0013\u0003\u0013\u0003\u0014\u0003\u0014\u0003\u0015",
"\u0003\u0015\u0003\u0016\u0003\u0016\u0002\u0002\u0017\u0003\u0003\u0005",
"\u0004\u0007\u0005\t\u0006\u000b\u0007\r\b\u000f\t\u0011\n\u0013\u0002",
"\u0015\u0002\u0017\u0002\u0019\u000b\u001b\f\u001d\r\u001f\u000e!\u000f",
"#\u0010%\u0002\'\u0002)\u0002+\u0002\u0003\u0002\b\u0003\u0002@@\u0004",
"\u0002\f\f\u000f\u000f\u0005\u0002\u000b\f\u000f\u000f\"\"\u0003\u0002",
"$$\u0004\u0002C\\c|\u0005\u00022;CHch\u0002\u00df\u0002\u0003\u0003",
"\u0002\u0002\u0002\u0002\u0005\u0003\u0002\u0002\u0002\u0002\u0007\u0003",
"\u0002\u0002\u0002\u0002\t\u0003\u0002\u0002\u0002\u0002\u000b\u0003",
"\u0002\u0002\u0002\u0002\r\u0003\u0002\u0002\u0002\u0002\u000f\u0003",
"\u0002\u0002\u0002\u0002\u0011\u0003\u0002\u0002\u0002\u0002\u0019\u0003",
"\u0002\u0002\u0002\u0002\u001b\u0003\u0002\u0002\u0002\u0002\u001d\u0003",
"\u0002\u0002\u0002\u0002\u001f\u0003\u0002\u0002\u0002\u0002!\u0003",
"\u0002\u0002\u0002\u0002#\u0003\u0002\u0002\u0002\u0003-\u0003\u0002",
"\u0002\u0002\u0005/\u0003\u0002\u0002\u0002\u00071\u0003\u0002\u0002",
"\u0002\t3\u0003\u0002\u0002\u0002\u000b5\u0003\u0002\u0002\u0002\r7",
"\u0003\u0002\u0002\u0002\u000f9\u0003\u0002\u0002\u0002\u0011;\u0003",
"\u0002\u0002\u0002\u0013A\u0003\u0002\u0002\u0002\u0015Y\u0003\u0002",
"\u0002\u0002\u0017q\u0003\u0002\u0002\u0002\u0019\u0089\u0003\u0002",
"\u0002\u0002\u001b\u0092\u0003\u0002\u0002\u0002\u001d\u009c\u0003\u0002",
"\u0002\u0002\u001f\u00a0\u0003\u0002\u0002\u0002!\u00ae\u0003\u0002",
"\u0002\u0002#\u00b6\u0003\u0002\u0002\u0002%\u00c1\u0003\u0002\u0002",
"\u0002\'\u00c3\u0003\u0002\u0002\u0002)\u00c5\u0003\u0002\u0002\u0002",
"+\u00c7\u0003\u0002\u0002\u0002-.\u0007?\u0002\u0002.\u0004\u0003\u0002",
"\u0002\u0002/0\u00071\u0002\u00020\u0006\u0003\u0002\u0002\u000212\u0007",
",\u0002\u00022\b\u0003\u0002\u0002\u000234\u0007*\u0002\u00024\n\u0003",
"\u0002\u0002\u000256\u0007+\u0002\u00026\f\u0003\u0002\u0002\u00027",
"8\u0007]\u0002\u00028\u000e\u0003\u0002\u0002\u00029:\u0007_\u0002\u0002",
":\u0010\u0003\u0002\u0002\u0002;?\u0007\'\u0002\u0002<@\u0005\u0013",
"\n\u0002=@\u0005\u0015\u000b\u0002>@\u0005\u0017\f\u0002?<\u0003\u0002",
"\u0002\u0002?=\u0003\u0002\u0002\u0002?>\u0003\u0002\u0002\u0002@\u0012",
"\u0003\u0002\u0002\u0002AC\u0007d\u0002\u0002BD\u0005\'\u0014\u0002",
"CB\u0003\u0002\u0002\u0002DE\u0003\u0002\u0002\u0002EC\u0003\u0002\u0002",
"\u0002EF\u0003\u0002\u0002\u0002FW\u0003\u0002\u0002\u0002GI\u00070",
"\u0002\u0002HJ\u0005\'\u0014\u0002IH\u0003\u0002\u0002\u0002JK\u0003",
"\u0002\u0002\u0002KI\u0003\u0002\u0002\u0002KL\u0003\u0002\u0002\u0002",
"LN\u0003\u0002\u0002\u0002MG\u0003\u0002\u0002\u0002NO\u0003\u0002\u0002",
"\u0002OM\u0003\u0002\u0002\u0002OP\u0003\u0002\u0002\u0002PX\u0003\u0002",
"\u0002\u0002QS\u0007/\u0002\u0002RT\u0005\'\u0014\u0002SR\u0003\u0002",
"\u0002\u0002TU\u0003\u0002\u0002\u0002US\u0003\u0002\u0002\u0002UV\u0003",
"\u0002\u0002\u0002VX\u0003\u0002\u0002\u0002WM\u0003\u0002\u0002\u0002",
"WQ\u0003\u0002\u0002\u0002WX\u0003\u0002\u0002\u0002X\u0014\u0003\u0002",
"\u0002\u0002Y[\u0007f\u0002\u0002Z\\\u0005)\u0015\u0002[Z\u0003\u0002",
"\u0002\u0002\\]\u0003\u0002\u0002\u0002][\u0003\u0002\u0002\u0002]^",
"\u0003\u0002\u0002\u0002^o\u0003\u0002\u0002\u0002_a\u00070\u0002\u0002",
"`b\u0005)\u0015\u0002a`\u0003\u0002\u0002\u0002bc\u0003\u0002\u0002",
"\u0002ca\u0003\u0002\u0002\u0002cd\u0003\u0002\u0002\u0002df\u0003\u0002",
"\u0002\u0002e_\u0003\u0002\u0002\u0002fg\u0003\u0002\u0002\u0002ge\u0003",
"\u0002\u0002\u0002gh\u0003\u0002\u0002\u0002hp\u0003\u0002\u0002\u0002",
"ik\u0007/\u0002\u0002jl\u0005)\u0015\u0002kj\u0003\u0002\u0002\u0002",
"lm\u0003\u0002\u0002\u0002mk\u0003\u0002\u0002\u0002mn\u0003\u0002\u0002",
"\u0002np\u0003\u0002\u0002\u0002oe\u0003\u0002\u0002\u0002oi\u0003\u0002",
"\u0002\u0002op\u0003\u0002\u0002\u0002p\u0016\u0003\u0002\u0002\u0002",
"qs\u0007z\u0002\u0002rt\u0005+\u0016\u0002sr\u0003\u0002\u0002\u0002",
"tu\u0003\u0002\u0002\u0002us\u0003\u0002\u0002\u0002uv\u0003\u0002\u0002",
"\u0002v\u0087\u0003\u0002\u0002\u0002wy\u00070\u0002\u0002xz\u0005+",
"\u0016\u0002yx\u0003\u0002\u0002\u0002z{\u0003\u0002\u0002\u0002{y\u0003",
"\u0002\u0002\u0002{|\u0003\u0002\u0002\u0002|~\u0003\u0002\u0002\u0002",
"}w\u0003\u0002\u0002\u0002~\u007f\u0003\u0002\u0002\u0002\u007f}\u0003",
"\u0002\u0002\u0002\u007f\u0080\u0003\u0002\u0002\u0002\u0080\u0088\u0003",
"\u0002\u0002\u0002\u0081\u0083\u0007/\u0002\u0002\u0082\u0084\u0005",
"+\u0016\u0002\u0083\u0082\u0003\u0002\u0002\u0002\u0084\u0085\u0003",
"\u0002\u0002\u0002\u0085\u0083\u0003\u0002\u0002\u0002\u0085\u0086\u0003",
"\u0002\u0002\u0002\u0086\u0088\u0003\u0002\u0002\u0002\u0087}\u0003",
"\u0002\u0002\u0002\u0087\u0081\u0003\u0002\u0002\u0002\u0087\u0088\u0003",
"\u0002\u0002\u0002\u0088\u0018\u0003\u0002\u0002\u0002\u0089\u008d\u0007",
">\u0002\u0002\u008a\u008c\n\u0002\u0002\u0002\u008b\u008a\u0003\u0002",
"\u0002\u0002\u008c\u008f\u0003\u0002\u0002\u0002\u008d\u008b\u0003\u0002",
"\u0002\u0002\u008d\u008e\u0003\u0002\u0002\u0002\u008e\u0090\u0003\u0002",
"\u0002\u0002\u008f\u008d\u0003\u0002\u0002\u0002\u0090\u0091\u0007@",
"\u0002\u0002\u0091\u001a\u0003\u0002\u0002\u0002\u0092\u0098\u0005%",
"\u0013\u0002\u0093\u0097\u0005%\u0013\u0002\u0094\u0097\u0005)\u0015",
"\u0002\u0095\u0097\u0007/\u0002\u0002\u0096\u0093\u0003\u0002\u0002",
"\u0002\u0096\u0094\u0003\u0002\u0002\u0002\u0096\u0095\u0003\u0002\u0002",
"\u0002\u0097\u009a\u0003\u0002\u0002\u0002\u0098\u0096\u0003\u0002\u0002",
"\u0002\u0098\u0099\u0003\u0002\u0002\u0002\u0099\u001c\u0003\u0002\u0002",
"\u0002\u009a\u0098\u0003\u0002\u0002\u0002\u009b\u009d\u00042;\u0002",
"\u009c\u009b\u0003\u0002\u0002\u0002\u009d\u009e\u0003\u0002\u0002\u0002",
"\u009e\u009c\u0003\u0002\u0002\u0002\u009e\u009f\u0003\u0002\u0002\u0002",
"\u009f\u001e\u0003\u0002\u0002\u0002\u00a0\u00a4\u0007=\u0002\u0002",
"\u00a1\u00a3\n\u0003\u0002\u0002\u00a2\u00a1\u0003\u0002\u0002\u0002",
"\u00a3\u00a6\u0003\u0002\u0002\u0002\u00a4\u00a2\u0003\u0002\u0002\u0002",
"\u00a4\u00a5\u0003\u0002\u0002\u0002\u00a5\u00a8\u0003\u0002\u0002\u0002",
"\u00a6\u00a4\u0003\u0002\u0002\u0002\u00a7\u00a9\u0007\u000f\u0002\u0002",
"\u00a8\u00a7\u0003\u0002\u0002\u0002\u00a8\u00a9\u0003\u0002\u0002\u0002",
"\u00a9\u00aa\u0003\u0002\u0002\u0002\u00aa\u00ab\u0007\f\u0002\u0002",
"\u00ab\u00ac\u0003\u0002\u0002\u0002\u00ac\u00ad\b\u0010\u0002\u0002",
"\u00ad \u0003\u0002\u0002\u0002\u00ae\u00af\t\u0004\u0002\u0002\u00af",
"\u00b0\u0003\u0002\u0002\u0002\u00b0\u00b1\b\u0011\u0002\u0002\u00b1",
"\"\u0003\u0002\u0002\u0002\u00b2\u00b3\u0007\'\u0002\u0002\u00b3\u00b7",
"\u0007u\u0002\u0002\u00b4\u00b5\u0007\'\u0002\u0002\u00b5\u00b7\u0007",
"k\u0002\u0002\u00b6\u00b2\u0003\u0002\u0002\u0002\u00b6\u00b4\u0003",
"\u0002\u0002\u0002\u00b6\u00b7\u0003\u0002\u0002\u0002\u00b7\u00b8\u0003",
"\u0002\u0002\u0002\u00b8\u00bc\u0007$\u0002\u0002\u00b9\u00bb\n\u0005",
"\u0002\u0002\u00ba\u00b9\u0003\u0002\u0002\u0002\u00bb\u00be\u0003\u0002",
"\u0002\u0002\u00bc\u00ba\u0003\u0002\u0002\u0002\u00bc\u00bd\u0003\u0002",
"\u0002\u0002\u00bd\u00bf\u0003\u0002\u0002\u0002\u00be\u00bc\u0003\u0002",
"\u0002\u0002\u00bf\u00c0\u0007$\u0002\u0002\u00c0$\u0003\u0002\u0002",
"\u0002\u00c1\u00c2\t\u0006\u0002\u0002\u00c2&\u0003\u0002\u0002\u0002",
"\u00c3\u00c4\u000423\u0002\u00c4(\u0003\u0002\u0002\u0002\u00c5\u00c6",
"\u00042;\u0002\u00c6*\u0003\u0002\u0002\u0002\u00c7\u00c8\t\u0007\u0002",
"\u0002\u00c8,\u0003\u0002\u0002\u0002\u001b\u0002?EKOUW]cgmou{\u007f",
"\u0085\u0087\u008d\u0096\u0098\u009e\u00a4\u00a8\u00b6\u00bc\u0003\u0002",
"\u0003\u0002"].join("");
var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
function AbnfLexer(input) {
antlr4.Lexer.call(this, input);
this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache());
return this;
}
AbnfLexer.prototype = Object.create(antlr4.Lexer.prototype);
AbnfLexer.prototype.constructor = AbnfLexer;
Object.defineProperty(AbnfLexer.prototype, "atn", {
get : function() {
return atn;
}
});
AbnfLexer.EOF = antlr4.Token.EOF;
AbnfLexer.T__0 = 1;
AbnfLexer.T__1 = 2;
AbnfLexer.T__2 = 3;
AbnfLexer.T__3 = 4;
AbnfLexer.T__4 = 5;
AbnfLexer.T__5 = 6;
AbnfLexer.T__6 = 7;
AbnfLexer.NumberValue = 8;
AbnfLexer.ProseValue = 9;
AbnfLexer.ID = 10;
AbnfLexer.INT = 11;
AbnfLexer.COMMENT = 12;
AbnfLexer.WS = 13;
AbnfLexer.STRING = 14;
AbnfLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ];
AbnfLexer.prototype.modeNames = [ "DEFAULT_MODE" ];
AbnfLexer.prototype.literalNames = [ null, "'='", "'/'", "'*'", "'('", "')'",
"'['", "']'" ];
AbnfLexer.prototype.symbolicNames = [ null, null, null, null, null, null,
null, null, "NumberValue", "ProseValue",
"ID", "INT", "COMMENT", "WS", "STRING" ];
AbnfLexer.prototype.ruleNames = [ "T__0", "T__1", "T__2", "T__3", "T__4",
"T__5", "T__6", "NumberValue", "BinaryValue",
"DecimalValue", "HexValue", "ProseValue",
"ID", "INT", "COMMENT", "WS", "STRING",
"LETTER", "BIT", "DIGIT", "HEX_DIGIT" ];
AbnfLexer.prototype.grammarFileName = "Abnf.g4";
exports.AbnfLexer = AbnfLexer;