univac
Version:
Generate AST of lots of common programming languages using antlr4. JavaScript API and CLI tool.
405 lines (384 loc) • 25.6 kB
JavaScript
// @ts-nocheck
// Generated from Ruby.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>\u0199\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\u0004\u0017",
"\t\u0017\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a",
"\u0004\u001b\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e",
"\t\u001e\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#",
"\t#\u0004$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004",
"*\t*\u0004+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u0004",
"1\t1\u00042\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u0004",
"8\t8\u00049\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0003",
"\u0002\u0003\u0002\u0003\u0002\u0003\u0003\u0003\u0003\u0003\u0003\u0007",
"\u0003\u0084\n\u0003\f\u0003\u000e\u0003\u0087\u000b\u0003\u0003\u0003",
"\u0003\u0003\u0003\u0003\u0003\u0003\u0007\u0003\u008d\n\u0003\f\u0003",
"\u000e\u0003\u0090\u000b\u0003\u0003\u0003\u0005\u0003\u0093\n\u0003",
"\u0003\u0004\u0003\u0004\u0003\u0005\u0003\u0005\u0003\u0006\u0005\u0006",
"\u009a\n\u0006\u0003\u0006\u0003\u0006\u0003\u0007\u0003\u0007\u0003",
"\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
"\b\u0003\b\u0003\b\u0003\b\u0003\t\u0003\t\u0003\t\u0003\t\u0003\n\u0003",
"\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\u000b\u0003\u000b\u0003",
"\u000b\u0003\u000b\u0003\f\u0003\f\u0003\f\u0003\r\u0003\r\u0003\r\u0003",
"\r\u0003\r\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e",
"\u0003\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f",
"\u0003\u000f\u0003\u000f\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010",
"\u0003\u0010\u0003\u0010\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0011",
"\u0003\u0011\u0003\u0011\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012",
"\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013",
"\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0015",
"\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0016",
"\u0003\u0016\u0003\u0017\u0003\u0017\u0003\u0018\u0003\u0018\u0003\u0019",
"\u0003\u0019\u0003\u001a\u0003\u001a\u0003\u001b\u0003\u001b\u0003\u001b",
"\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001d\u0003\u001d\u0003\u001d",
"\u0003\u001e\u0003\u001e\u0003\u001f\u0003\u001f\u0003 \u0003 \u0003",
" \u0003!\u0003!\u0003!\u0003\"\u0003\"\u0003#\u0003#\u0003#\u0003$\u0003",
"$\u0003$\u0003%\u0003%\u0003%\u0003&\u0003&\u0003&\u0003\'\u0003\'\u0003",
"\'\u0003(\u0003(\u0003(\u0003(\u0003)\u0003)\u0003*\u0003*\u0003+\u0003",
"+\u0003,\u0003,\u0003-\u0003-\u0003-\u0003.\u0003.\u0003.\u0003/\u0003",
"/\u0003/\u0003/\u0003/\u0005/\u0134\n/\u00030\u00030\u00030\u00030\u0005",
"0\u013a\n0\u00031\u00031\u00031\u00031\u00051\u0140\n1\u00032\u0003",
"2\u00033\u00033\u00034\u00034\u00035\u00035\u00036\u00036\u00036\u0003",
"6\u00037\u00037\u00077\u0150\n7\f7\u000e7\u0153\u000b7\u00037\u0005",
"7\u0156\n7\u00037\u00037\u00037\u00037\u00038\u00038\u00038\u00038\u0003",
"8\u00038\u00038\u00038\u00078\u0164\n8\f8\u000e8\u0167\u000b8\u0003",
"8\u00038\u00038\u00038\u00038\u00038\u00058\u016f\n8\u00038\u00038\u0003",
"8\u00038\u00039\u00069\u0176\n9\r9\u000e9\u0177\u00039\u00039\u0003",
":\u0006:\u017d\n:\r:\u000e:\u017e\u0003;\u0007;\u0182\n;\f;\u000e;\u0185",
"\u000b;\u0003;\u0003;\u0006;\u0189\n;\r;\u000e;\u018a\u0003<\u0003<",
"\u0007<\u018f\n<\f<\u000e<\u0192\u000b<\u0003=\u0003=\u0003=\u0003>",
"\u0003>\u0003>\u0005\u0085\u008e\u0165\u0002?\u0003\u0002\u0005\u0003",
"\u0007\u0004\t\u0005\u000b\u0006\r\u0007\u000f\b\u0011\t\u0013\n\u0015",
"\u000b\u0017\f\u0019\r\u001b\u000e\u001d\u000f\u001f\u0010!\u0011#\u0012",
"%\u0013\'\u0014)\u0015+\u0016-\u0017/\u00181\u00193\u001a5\u001b7\u001c",
"9\u001d;\u001e=\u001f? A!C\"E#G$I%K&M\'O(Q)S*U+W,Y-[.]/_0a1c2e3g4i5",
"k6m7o8q9s:u;w<y={>\u0003\u0002\b\u0004\u0002\f\f\u000f\u000f\u0004\u0002",
"\u000b\u000b\"\"\u0003\u00022;\u0005\u0002C\\aac|\u0006\u00022;C\\a",
"ac|\u0003\u0002AA\u0002\u01a9\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",
"\u0013\u0003\u0002\u0002\u0002\u0002\u0015\u0003\u0002\u0002\u0002\u0002",
"\u0017\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\u0002%\u0003\u0002\u0002\u0002\u0002\'\u0003",
"\u0002\u0002\u0002\u0002)\u0003\u0002\u0002\u0002\u0002+\u0003\u0002",
"\u0002\u0002\u0002-\u0003\u0002\u0002\u0002\u0002/\u0003\u0002\u0002",
"\u0002\u00021\u0003\u0002\u0002\u0002\u00023\u0003\u0002\u0002\u0002",
"\u00025\u0003\u0002\u0002\u0002\u00027\u0003\u0002\u0002\u0002\u0002",
"9\u0003\u0002\u0002\u0002\u0002;\u0003\u0002\u0002\u0002\u0002=\u0003",
"\u0002\u0002\u0002\u0002?\u0003\u0002\u0002\u0002\u0002A\u0003\u0002",
"\u0002\u0002\u0002C\u0003\u0002\u0002\u0002\u0002E\u0003\u0002\u0002",
"\u0002\u0002G\u0003\u0002\u0002\u0002\u0002I\u0003\u0002\u0002\u0002",
"\u0002K\u0003\u0002\u0002\u0002\u0002M\u0003\u0002\u0002\u0002\u0002",
"O\u0003\u0002\u0002\u0002\u0002Q\u0003\u0002\u0002\u0002\u0002S\u0003",
"\u0002\u0002\u0002\u0002U\u0003\u0002\u0002\u0002\u0002W\u0003\u0002",
"\u0002\u0002\u0002Y\u0003\u0002\u0002\u0002\u0002[\u0003\u0002\u0002",
"\u0002\u0002]\u0003\u0002\u0002\u0002\u0002_\u0003\u0002\u0002\u0002",
"\u0002a\u0003\u0002\u0002\u0002\u0002c\u0003\u0002\u0002\u0002\u0002",
"e\u0003\u0002\u0002\u0002\u0002g\u0003\u0002\u0002\u0002\u0002i\u0003",
"\u0002\u0002\u0002\u0002k\u0003\u0002\u0002\u0002\u0002m\u0003\u0002",
"\u0002\u0002\u0002o\u0003\u0002\u0002\u0002\u0002q\u0003\u0002\u0002",
"\u0002\u0002s\u0003\u0002\u0002\u0002\u0002u\u0003\u0002\u0002\u0002",
"\u0002w\u0003\u0002\u0002\u0002\u0002y\u0003\u0002\u0002\u0002\u0002",
"{\u0003\u0002\u0002\u0002\u0003}\u0003\u0002\u0002\u0002\u0005\u0092",
"\u0003\u0002\u0002\u0002\u0007\u0094\u0003\u0002\u0002\u0002\t\u0096",
"\u0003\u0002\u0002\u0002\u000b\u0099\u0003\u0002\u0002\u0002\r\u009d",
"\u0003\u0002\u0002\u0002\u000f\u00a5\u0003\u0002\u0002\u0002\u0011\u00a9",
"\u0003\u0002\u0002\u0002\u0013\u00ad\u0003\u0002\u0002\u0002\u0015\u00b4",
"\u0003\u0002\u0002\u0002\u0017\u00b8\u0003\u0002\u0002\u0002\u0019\u00bb",
"\u0003\u0002\u0002\u0002\u001b\u00c0\u0003\u0002\u0002\u0002\u001d\u00c6",
"\u0003\u0002\u0002\u0002\u001f\u00cd\u0003\u0002\u0002\u0002!\u00d3",
"\u0003\u0002\u0002\u0002#\u00d9\u0003\u0002\u0002\u0002%\u00df\u0003",
"\u0002\u0002\u0002\'\u00e3\u0003\u0002\u0002\u0002)\u00e8\u0003\u0002",
"\u0002\u0002+\u00ee\u0003\u0002\u0002\u0002-\u00f0\u0003\u0002\u0002",
"\u0002/\u00f2\u0003\u0002\u0002\u00021\u00f4\u0003\u0002\u0002\u0002",
"3\u00f6\u0003\u0002\u0002\u00025\u00f8\u0003\u0002\u0002\u00027\u00fb",
"\u0003\u0002\u0002\u00029\u00fe\u0003\u0002\u0002\u0002;\u0101\u0003",
"\u0002\u0002\u0002=\u0103\u0003\u0002\u0002\u0002?\u0105\u0003\u0002",
"\u0002\u0002A\u0108\u0003\u0002\u0002\u0002C\u010b\u0003\u0002\u0002",
"\u0002E\u010d\u0003\u0002\u0002\u0002G\u0110\u0003\u0002\u0002\u0002",
"I\u0113\u0003\u0002\u0002\u0002K\u0116\u0003\u0002\u0002\u0002M\u0119",
"\u0003\u0002\u0002\u0002O\u011c\u0003\u0002\u0002\u0002Q\u0120\u0003",
"\u0002\u0002\u0002S\u0122\u0003\u0002\u0002\u0002U\u0124\u0003\u0002",
"\u0002\u0002W\u0126\u0003\u0002\u0002\u0002Y\u0128\u0003\u0002\u0002",
"\u0002[\u012b\u0003\u0002\u0002\u0002]\u0133\u0003\u0002\u0002\u0002",
"_\u0139\u0003\u0002\u0002\u0002a\u013f\u0003\u0002\u0002\u0002c\u0141",
"\u0003\u0002\u0002\u0002e\u0143\u0003\u0002\u0002\u0002g\u0145\u0003",
"\u0002\u0002\u0002i\u0147\u0003\u0002\u0002\u0002k\u0149\u0003\u0002",
"\u0002\u0002m\u014d\u0003\u0002\u0002\u0002o\u015b\u0003\u0002\u0002",
"\u0002q\u0175\u0003\u0002\u0002\u0002s\u017c\u0003\u0002\u0002\u0002",
"u\u0183\u0003\u0002\u0002\u0002w\u018c\u0003\u0002\u0002\u0002y\u0193",
"\u0003\u0002\u0002\u0002{\u0196\u0003\u0002\u0002\u0002}~\u0007^\u0002",
"\u0002~\u007f\u0007$\u0002\u0002\u007f\u0004\u0003\u0002\u0002\u0002",
"\u0080\u0085\u0007$\u0002\u0002\u0081\u0084\u0005\u0003\u0002\u0002",
"\u0082\u0084\n\u0002\u0002\u0002\u0083\u0081\u0003\u0002\u0002\u0002",
"\u0083\u0082\u0003\u0002\u0002\u0002\u0084\u0087\u0003\u0002\u0002\u0002",
"\u0085\u0086\u0003\u0002\u0002\u0002\u0085\u0083\u0003\u0002\u0002\u0002",
"\u0086\u0088\u0003\u0002\u0002\u0002\u0087\u0085\u0003\u0002\u0002\u0002",
"\u0088\u0093\u0007$\u0002\u0002\u0089\u008e\u0007)\u0002\u0002\u008a",
"\u008d\u0005\u0003\u0002\u0002\u008b\u008d\n\u0002\u0002\u0002\u008c",
"\u008a\u0003\u0002\u0002\u0002\u008c\u008b\u0003\u0002\u0002\u0002\u008d",
"\u0090\u0003\u0002\u0002\u0002\u008e\u008f\u0003\u0002\u0002\u0002\u008e",
"\u008c\u0003\u0002\u0002\u0002\u008f\u0091\u0003\u0002\u0002\u0002\u0090",
"\u008e\u0003\u0002\u0002\u0002\u0091\u0093\u0007)\u0002\u0002\u0092",
"\u0080\u0003\u0002\u0002\u0002\u0092\u0089\u0003\u0002\u0002\u0002\u0093",
"\u0006\u0003\u0002\u0002\u0002\u0094\u0095\u0007.\u0002\u0002\u0095",
"\b\u0003\u0002\u0002\u0002\u0096\u0097\u0007=\u0002\u0002\u0097\n\u0003",
"\u0002\u0002\u0002\u0098\u009a\u0007\u000f\u0002\u0002\u0099\u0098\u0003",
"\u0002\u0002\u0002\u0099\u009a\u0003\u0002\u0002\u0002\u009a\u009b\u0003",
"\u0002\u0002\u0002\u009b\u009c\u0007\f\u0002\u0002\u009c\f\u0003\u0002",
"\u0002\u0002\u009d\u009e\u0007t\u0002\u0002\u009e\u009f\u0007g\u0002",
"\u0002\u009f\u00a0\u0007s\u0002\u0002\u00a0\u00a1\u0007w\u0002\u0002",
"\u00a1\u00a2\u0007k\u0002\u0002\u00a2\u00a3\u0007t\u0002\u0002\u00a3",
"\u00a4\u0007g\u0002\u0002\u00a4\u000e\u0003\u0002\u0002\u0002\u00a5",
"\u00a6\u0007g\u0002\u0002\u00a6\u00a7\u0007p\u0002\u0002\u00a7\u00a8",
"\u0007f\u0002\u0002\u00a8\u0010\u0003\u0002\u0002\u0002\u00a9\u00aa",
"\u0007f\u0002\u0002\u00aa\u00ab\u0007g\u0002\u0002\u00ab\u00ac\u0007",
"h\u0002\u0002\u00ac\u0012\u0003\u0002\u0002\u0002\u00ad\u00ae\u0007",
"t\u0002\u0002\u00ae\u00af\u0007g\u0002\u0002\u00af\u00b0\u0007v\u0002",
"\u0002\u00b0\u00b1\u0007w\u0002\u0002\u00b1\u00b2\u0007t\u0002\u0002",
"\u00b2\u00b3\u0007p\u0002\u0002\u00b3\u0014\u0003\u0002\u0002\u0002",
"\u00b4\u00b5\u0007r\u0002\u0002\u00b5\u00b6\u0007k\u0002\u0002\u00b6",
"\u00b7\u0007t\u0002\u0002\u00b7\u0016\u0003\u0002\u0002\u0002\u00b8",
"\u00b9\u0007k\u0002\u0002\u00b9\u00ba\u0007h\u0002\u0002\u00ba\u0018",
"\u0003\u0002\u0002\u0002\u00bb\u00bc\u0007g\u0002\u0002\u00bc\u00bd",
"\u0007n\u0002\u0002\u00bd\u00be\u0007u\u0002\u0002\u00be\u00bf\u0007",
"g\u0002\u0002\u00bf\u001a\u0003\u0002\u0002\u0002\u00c0\u00c1\u0007",
"g\u0002\u0002\u00c1\u00c2\u0007n\u0002\u0002\u00c2\u00c3\u0007u\u0002",
"\u0002\u00c3\u00c4\u0007k\u0002\u0002\u00c4\u00c5\u0007h\u0002\u0002",
"\u00c5\u001c\u0003\u0002\u0002\u0002\u00c6\u00c7\u0007w\u0002\u0002",
"\u00c7\u00c8\u0007p\u0002\u0002\u00c8\u00c9\u0007n\u0002\u0002\u00c9",
"\u00ca\u0007g\u0002\u0002\u00ca\u00cb\u0007u\u0002\u0002\u00cb\u00cc",
"\u0007u\u0002\u0002\u00cc\u001e\u0003\u0002\u0002\u0002\u00cd\u00ce",
"\u0007y\u0002\u0002\u00ce\u00cf\u0007j\u0002\u0002\u00cf\u00d0\u0007",
"k\u0002\u0002\u00d0\u00d1\u0007n\u0002\u0002\u00d1\u00d2\u0007g\u0002",
"\u0002\u00d2 \u0003\u0002\u0002\u0002\u00d3\u00d4\u0007t\u0002\u0002",
"\u00d4\u00d5\u0007g\u0002\u0002\u00d5\u00d6\u0007v\u0002\u0002\u00d6",
"\u00d7\u0007t\u0002\u0002\u00d7\u00d8\u0007{\u0002\u0002\u00d8\"\u0003",
"\u0002\u0002\u0002\u00d9\u00da\u0007d\u0002\u0002\u00da\u00db\u0007",
"t\u0002\u0002\u00db\u00dc\u0007g\u0002\u0002\u00dc\u00dd\u0007c\u0002",
"\u0002\u00dd\u00de\u0007m\u0002\u0002\u00de$\u0003\u0002\u0002\u0002",
"\u00df\u00e0\u0007h\u0002\u0002\u00e0\u00e1\u0007q\u0002\u0002\u00e1",
"\u00e2\u0007t\u0002\u0002\u00e2&\u0003\u0002\u0002\u0002\u00e3\u00e4",
"\u0007v\u0002\u0002\u00e4\u00e5\u0007t\u0002\u0002\u00e5\u00e6\u0007",
"w\u0002\u0002\u00e6\u00e7\u0007g\u0002\u0002\u00e7(\u0003\u0002\u0002",
"\u0002\u00e8\u00e9\u0007h\u0002\u0002\u00e9\u00ea\u0007c\u0002\u0002",
"\u00ea\u00eb\u0007n\u0002\u0002\u00eb\u00ec\u0007u\u0002\u0002\u00ec",
"\u00ed\u0007g\u0002\u0002\u00ed*\u0003\u0002\u0002\u0002\u00ee\u00ef",
"\u0007-\u0002\u0002\u00ef,\u0003\u0002\u0002\u0002\u00f0\u00f1\u0007",
"/\u0002\u0002\u00f1.\u0003\u0002\u0002\u0002\u00f2\u00f3\u0007,\u0002",
"\u0002\u00f30\u0003\u0002\u0002\u0002\u00f4\u00f5\u00071\u0002\u0002",
"\u00f52\u0003\u0002\u0002\u0002\u00f6\u00f7\u0007\'\u0002\u0002\u00f7",
"4\u0003\u0002\u0002\u0002\u00f8\u00f9\u0007,\u0002\u0002\u00f9\u00fa",
"\u0007,\u0002\u0002\u00fa6\u0003\u0002\u0002\u0002\u00fb\u00fc\u0007",
"?\u0002\u0002\u00fc\u00fd\u0007?\u0002\u0002\u00fd8\u0003\u0002\u0002",
"\u0002\u00fe\u00ff\u0007#\u0002\u0002\u00ff\u0100\u0007?\u0002\u0002",
"\u0100:\u0003\u0002\u0002\u0002\u0101\u0102\u0007@\u0002\u0002\u0102",
"<\u0003\u0002\u0002\u0002\u0103\u0104\u0007>\u0002\u0002\u0104>\u0003",
"\u0002\u0002\u0002\u0105\u0106\u0007>\u0002\u0002\u0106\u0107\u0007",
"?\u0002\u0002\u0107@\u0003\u0002\u0002\u0002\u0108\u0109\u0007@\u0002",
"\u0002\u0109\u010a\u0007?\u0002\u0002\u010aB\u0003\u0002\u0002\u0002",
"\u010b\u010c\u0007?\u0002\u0002\u010cD\u0003\u0002\u0002\u0002\u010d",
"\u010e\u0007-\u0002\u0002\u010e\u010f\u0007?\u0002\u0002\u010fF\u0003",
"\u0002\u0002\u0002\u0110\u0111\u0007/\u0002\u0002\u0111\u0112\u0007",
"?\u0002\u0002\u0112H\u0003\u0002\u0002\u0002\u0113\u0114\u0007,\u0002",
"\u0002\u0114\u0115\u0007?\u0002\u0002\u0115J\u0003\u0002\u0002\u0002",
"\u0116\u0117\u00071\u0002\u0002\u0117\u0118\u0007?\u0002\u0002\u0118",
"L\u0003\u0002\u0002\u0002\u0119\u011a\u0007\'\u0002\u0002\u011a\u011b",
"\u0007?\u0002\u0002\u011bN\u0003\u0002\u0002\u0002\u011c\u011d\u0007",
",\u0002\u0002\u011d\u011e\u0007,\u0002\u0002\u011e\u011f\u0007?\u0002",
"\u0002\u011fP\u0003\u0002\u0002\u0002\u0120\u0121\u0007(\u0002\u0002",
"\u0121R\u0003\u0002\u0002\u0002\u0122\u0123\u0007~\u0002\u0002\u0123",
"T\u0003\u0002\u0002\u0002\u0124\u0125\u0007`\u0002\u0002\u0125V\u0003",
"\u0002\u0002\u0002\u0126\u0127\u0007\u0080\u0002\u0002\u0127X\u0003",
"\u0002\u0002\u0002\u0128\u0129\u0007>\u0002\u0002\u0129\u012a\u0007",
">\u0002\u0002\u012aZ\u0003\u0002\u0002\u0002\u012b\u012c\u0007@\u0002",
"\u0002\u012c\u012d\u0007@\u0002\u0002\u012d\\\u0003\u0002\u0002\u0002",
"\u012e\u012f\u0007c\u0002\u0002\u012f\u0130\u0007p\u0002\u0002\u0130",
"\u0134\u0007f\u0002\u0002\u0131\u0132\u0007(\u0002\u0002\u0132\u0134",
"\u0007(\u0002\u0002\u0133\u012e\u0003\u0002\u0002\u0002\u0133\u0131",
"\u0003\u0002\u0002\u0002\u0134^\u0003\u0002\u0002\u0002\u0135\u0136",
"\u0007q\u0002\u0002\u0136\u013a\u0007t\u0002\u0002\u0137\u0138\u0007",
"~\u0002\u0002\u0138\u013a\u0007~\u0002\u0002\u0139\u0135\u0003\u0002",
"\u0002\u0002\u0139\u0137\u0003\u0002\u0002\u0002\u013a`\u0003\u0002",
"\u0002\u0002\u013b\u013c\u0007p\u0002\u0002\u013c\u013d\u0007q\u0002",
"\u0002\u013d\u0140\u0007v\u0002\u0002\u013e\u0140\u0007#\u0002\u0002",
"\u013f\u013b\u0003\u0002\u0002\u0002\u013f\u013e\u0003\u0002\u0002\u0002",
"\u0140b\u0003\u0002\u0002\u0002\u0141\u0142\u0007*\u0002\u0002\u0142",
"d\u0003\u0002\u0002\u0002\u0143\u0144\u0007+\u0002\u0002\u0144f\u0003",
"\u0002\u0002\u0002\u0145\u0146\u0007]\u0002\u0002\u0146h\u0003\u0002",
"\u0002\u0002\u0147\u0148\u0007_\u0002\u0002\u0148j\u0003\u0002\u0002",
"\u0002\u0149\u014a\u0007p\u0002\u0002\u014a\u014b\u0007k\u0002\u0002",
"\u014b\u014c\u0007n\u0002\u0002\u014cl\u0003\u0002\u0002\u0002\u014d",
"\u0151\u0007%\u0002\u0002\u014e\u0150\n\u0002\u0002\u0002\u014f\u014e",
"\u0003\u0002\u0002\u0002\u0150\u0153\u0003\u0002\u0002\u0002\u0151\u014f",
"\u0003\u0002\u0002\u0002\u0151\u0152\u0003\u0002\u0002\u0002\u0152\u0155",
"\u0003\u0002\u0002\u0002\u0153\u0151\u0003\u0002\u0002\u0002\u0154\u0156",
"\u0007\u000f\u0002\u0002\u0155\u0154\u0003\u0002\u0002\u0002\u0155\u0156",
"\u0003\u0002\u0002\u0002\u0156\u0157\u0003\u0002\u0002\u0002\u0157\u0158",
"\u0007\f\u0002\u0002\u0158\u0159\u0003\u0002\u0002\u0002\u0159\u015a",
"\b7\u0002\u0002\u015an\u0003\u0002\u0002\u0002\u015b\u015c\u0007?\u0002",
"\u0002\u015c\u015d\u0007d\u0002\u0002\u015d\u015e\u0007g\u0002\u0002",
"\u015e\u015f\u0007i\u0002\u0002\u015f\u0160\u0007k\u0002\u0002\u0160",
"\u0161\u0007p\u0002\u0002\u0161\u0165\u0003\u0002\u0002\u0002\u0162",
"\u0164\u000b\u0002\u0002\u0002\u0163\u0162\u0003\u0002\u0002\u0002\u0164",
"\u0167\u0003\u0002\u0002\u0002\u0165\u0166\u0003\u0002\u0002\u0002\u0165",
"\u0163\u0003\u0002\u0002\u0002\u0166\u0168\u0003\u0002\u0002\u0002\u0167",
"\u0165\u0003\u0002\u0002\u0002\u0168\u0169\u0007?\u0002\u0002\u0169",
"\u016a\u0007g\u0002\u0002\u016a\u016b\u0007p\u0002\u0002\u016b\u016c",
"\u0007f\u0002\u0002\u016c\u016e\u0003\u0002\u0002\u0002\u016d\u016f",
"\u0007\u000f\u0002\u0002\u016e\u016d\u0003\u0002\u0002\u0002\u016e\u016f",
"\u0003\u0002\u0002\u0002\u016f\u0170\u0003\u0002\u0002\u0002\u0170\u0171",
"\u0007\f\u0002\u0002\u0171\u0172\u0003\u0002\u0002\u0002\u0172\u0173",
"\b8\u0002\u0002\u0173p\u0003\u0002\u0002\u0002\u0174\u0176\t\u0003\u0002",
"\u0002\u0175\u0174\u0003\u0002\u0002\u0002\u0176\u0177\u0003\u0002\u0002",
"\u0002\u0177\u0175\u0003\u0002\u0002\u0002\u0177\u0178\u0003\u0002\u0002",
"\u0002\u0178\u0179\u0003\u0002\u0002\u0002\u0179\u017a\b9\u0002\u0002",
"\u017ar\u0003\u0002\u0002\u0002\u017b\u017d\t\u0004\u0002\u0002\u017c",
"\u017b\u0003\u0002\u0002\u0002\u017d\u017e\u0003\u0002\u0002\u0002\u017e",
"\u017c\u0003\u0002\u0002\u0002\u017e\u017f\u0003\u0002\u0002\u0002\u017f",
"t\u0003\u0002\u0002\u0002\u0180\u0182\t\u0004\u0002\u0002\u0181\u0180",
"\u0003\u0002\u0002\u0002\u0182\u0185\u0003\u0002\u0002\u0002\u0183\u0181",
"\u0003\u0002\u0002\u0002\u0183\u0184\u0003\u0002\u0002\u0002\u0184\u0186",
"\u0003\u0002\u0002\u0002\u0185\u0183\u0003\u0002\u0002\u0002\u0186\u0188",
"\u00070\u0002\u0002\u0187\u0189\t\u0004\u0002\u0002\u0188\u0187\u0003",
"\u0002\u0002\u0002\u0189\u018a\u0003\u0002\u0002\u0002\u018a\u0188\u0003",
"\u0002\u0002\u0002\u018a\u018b\u0003\u0002\u0002\u0002\u018bv\u0003",
"\u0002\u0002\u0002\u018c\u0190\t\u0005\u0002\u0002\u018d\u018f\t\u0006",
"\u0002\u0002\u018e\u018d\u0003\u0002\u0002\u0002\u018f\u0192\u0003\u0002",
"\u0002\u0002\u0190\u018e\u0003\u0002\u0002\u0002\u0190\u0191\u0003\u0002",
"\u0002\u0002\u0191x\u0003\u0002\u0002\u0002\u0192\u0190\u0003\u0002",
"\u0002\u0002\u0193\u0194\u0007&\u0002\u0002\u0194\u0195\u0005w<\u0002",
"\u0195z\u0003\u0002\u0002\u0002\u0196\u0197\u0005w<\u0002\u0197\u0198",
"\t\u0007\u0002\u0002\u0198|\u0003\u0002\u0002\u0002\u0015\u0002\u0083",
"\u0085\u008c\u008e\u0092\u0099\u0133\u0139\u013f\u0151\u0155\u0165\u016e",
"\u0177\u017e\u0183\u018a\u0190\u0003\b\u0002\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 RubyLexer(input) {
antlr4.Lexer.call(this, input);
this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache());
return this;
}
RubyLexer.prototype = Object.create(antlr4.Lexer.prototype);
RubyLexer.prototype.constructor = RubyLexer;
Object.defineProperty(RubyLexer.prototype, "atn", {
get : function() {
return atn;
}
});
RubyLexer.EOF = antlr4.Token.EOF;
RubyLexer.LITERAL = 1;
RubyLexer.COMMA = 2;
RubyLexer.SEMICOLON = 3;
RubyLexer.CRLF = 4;
RubyLexer.REQUIRE = 5;
RubyLexer.END = 6;
RubyLexer.DEF = 7;
RubyLexer.RETURN = 8;
RubyLexer.PIR = 9;
RubyLexer.IF = 10;
RubyLexer.ELSE = 11;
RubyLexer.ELSIF = 12;
RubyLexer.UNLESS = 13;
RubyLexer.WHILE = 14;
RubyLexer.RETRY = 15;
RubyLexer.BREAK = 16;
RubyLexer.FOR = 17;
RubyLexer.TRUE = 18;
RubyLexer.FALSE = 19;
RubyLexer.PLUS = 20;
RubyLexer.MINUS = 21;
RubyLexer.MUL = 22;
RubyLexer.DIV = 23;
RubyLexer.MOD = 24;
RubyLexer.EXP = 25;
RubyLexer.EQUAL = 26;
RubyLexer.NOT_EQUAL = 27;
RubyLexer.GREATER = 28;
RubyLexer.LESS = 29;
RubyLexer.LESS_EQUAL = 30;
RubyLexer.GREATER_EQUAL = 31;
RubyLexer.ASSIGN = 32;
RubyLexer.PLUS_ASSIGN = 33;
RubyLexer.MINUS_ASSIGN = 34;
RubyLexer.MUL_ASSIGN = 35;
RubyLexer.DIV_ASSIGN = 36;
RubyLexer.MOD_ASSIGN = 37;
RubyLexer.EXP_ASSIGN = 38;
RubyLexer.BIT_AND = 39;
RubyLexer.BIT_OR = 40;
RubyLexer.BIT_XOR = 41;
RubyLexer.BIT_NOT = 42;
RubyLexer.BIT_SHL = 43;
RubyLexer.BIT_SHR = 44;
RubyLexer.AND = 45;
RubyLexer.OR = 46;
RubyLexer.NOT = 47;
RubyLexer.LEFT_RBRACKET = 48;
RubyLexer.RIGHT_RBRACKET = 49;
RubyLexer.LEFT_SBRACKET = 50;
RubyLexer.RIGHT_SBRACKET = 51;
RubyLexer.NIL = 52;
RubyLexer.SL_COMMENT = 53;
RubyLexer.ML_COMMENT = 54;
RubyLexer.WS = 55;
RubyLexer.INT = 56;
RubyLexer.FLOAT = 57;
RubyLexer.ID = 58;
RubyLexer.ID_GLOBAL = 59;
RubyLexer.ID_FUNCTION = 60;
RubyLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ];
RubyLexer.prototype.modeNames = [ "DEFAULT_MODE" ];
RubyLexer.prototype.literalNames = [ null, null, "','", "';'", null, "'require'",
"'end'", "'def'", "'return'", "'pir'",
"'if'", "'else'", "'elsif'", "'unless'",
"'while'", "'retry'", "'break'", "'for'",
"'true'", "'false'", "'+'", "'-'",
"'*'", "'/'", "'%'", "'**'", "'=='",
"'!='", "'>'", "'<'", "'<='", "'>='",
"'='", "'+='", "'-='", "'*='", "'/='",
"'%='", "'**='", "'&'", "'|'", "'^'",
"'~'", "'<<'", "'>>'", null, null,
null, "'('", "')'", "'['", "']'", "'nil'" ];
RubyLexer.prototype.symbolicNames = [ null, "LITERAL", "COMMA", "SEMICOLON",
"CRLF", "REQUIRE", "END", "DEF", "RETURN",
"PIR", "IF", "ELSE", "ELSIF", "UNLESS",
"WHILE", "RETRY", "BREAK", "FOR",
"TRUE", "FALSE", "PLUS", "MINUS",
"MUL", "DIV", "MOD", "EXP", "EQUAL",
"NOT_EQUAL", "GREATER", "LESS", "LESS_EQUAL",
"GREATER_EQUAL", "ASSIGN", "PLUS_ASSIGN",
"MINUS_ASSIGN", "MUL_ASSIGN", "DIV_ASSIGN",
"MOD_ASSIGN", "EXP_ASSIGN", "BIT_AND",
"BIT_OR", "BIT_XOR", "BIT_NOT", "BIT_SHL",
"BIT_SHR", "AND", "OR", "NOT", "LEFT_RBRACKET",
"RIGHT_RBRACKET", "LEFT_SBRACKET",
"RIGHT_SBRACKET", "NIL", "SL_COMMENT",
"ML_COMMENT", "WS", "INT", "FLOAT",
"ID", "ID_GLOBAL", "ID_FUNCTION" ];
RubyLexer.prototype.ruleNames = [ "ESCAPED_QUOTE", "LITERAL", "COMMA", "SEMICOLON",
"CRLF", "REQUIRE", "END", "DEF", "RETURN",
"PIR", "IF", "ELSE", "ELSIF", "UNLESS",
"WHILE", "RETRY", "BREAK", "FOR", "TRUE",
"FALSE", "PLUS", "MINUS", "MUL", "DIV",
"MOD", "EXP", "EQUAL", "NOT_EQUAL", "GREATER",
"LESS", "LESS_EQUAL", "GREATER_EQUAL",
"ASSIGN", "PLUS_ASSIGN", "MINUS_ASSIGN",
"MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN",
"EXP_ASSIGN", "BIT_AND", "BIT_OR", "BIT_XOR",
"BIT_NOT", "BIT_SHL", "BIT_SHR", "AND",
"OR", "NOT", "LEFT_RBRACKET", "RIGHT_RBRACKET",
"LEFT_SBRACKET", "RIGHT_SBRACKET", "NIL",
"SL_COMMENT", "ML_COMMENT", "WS", "INT",
"FLOAT", "ID", "ID_GLOBAL", "ID_FUNCTION" ];
RubyLexer.prototype.grammarFileName = "Ruby.g4";
exports.RubyLexer = RubyLexer;