firebase-rules-parser
Version:
Parser for Firebase rule files
354 lines (334 loc) • 22.9 kB
JavaScript
// Generated from FirebaseRules.g4 by ANTLR 4.7.1
// jshint ignore: start
var antlr4 = require('antlr4/index');
var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
"\u00027\u014e\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\u0003\u0002\u0003",
"\u0002\u0003\u0003\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\b\u0003\t\u0003\t\u0003\n\u0003\n\u0003\u000b\u0003",
"\u000b\u0003\f\u0003\f\u0003\r\u0003\r\u0003\u000e\u0003\u000e\u0003",
"\u000f\u0003\u000f\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0011\u0003",
"\u0011\u0003\u0011\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013\u0003",
"\u0013\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0015\u0003\u0015\u0003",
"\u0015\u0003\u0016\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\u001c\u0003\u001c\u0003\u001d\u0003\u001d\u0003",
"\u001e\u0003\u001e\u0003\u001f\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(\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/\u0003/\u0003/\u0003/\u00030\u00030\u00030\u00030\u0003",
"0\u00030\u00030\u00030\u00031\u00061\u011b\n1\r1\u000e1\u011c\u0003",
"1\u00031\u00061\u0121\n1\r1\u000e1\u0122\u00051\u0125\n1\u00032\u0003",
"2\u00072\u0129\n2\f2\u000e2\u012c\u000b2\u00032\u00032\u00032\u0007",
"2\u0131\n2\f2\u000e2\u0134\u000b2\u00032\u00052\u0137\n2\u00033\u0003",
"3\u00073\u013b\n3\f3\u000e3\u013e\u000b3\u00034\u00034\u00035\u0003",
"5\u00035\u00035\u00036\u00036\u00036\u00036\u00076\u014a\n6\f6\u000e",
"6\u014d\u000b6\u0002\u00027\u0003\u0003\u0005\u0004\u0007\u0005\t\u0006",
"\u000b\u0007\r\b\u000f\t\u0011\n\u0013\u000b\u0015\f\u0017\r\u0019\u000e",
"\u001b\u000f\u001d\u0010\u001f\u0011!\u0012#\u0013%\u0014\'\u0015)\u0016",
"+\u0017-\u0018/\u00191\u001a3\u001b5\u001c7\u001d9\u001e;\u001f= ?!",
"A\"C#E$G%I&K\'M(O)Q*S+U,W-Y.[/]0_1a2c3e4g5i6k7\u0003\u0002\b\u0003\u0002",
"))\u0003\u0002$$\u0005\u0002C\\aac|\u0007\u0002//2;C\\aac|\u0005\u0002",
"\u000b\f\u000f\u000f\"\"\u0003\u0002\f\f\u0002\u0155\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\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\u0002",
"1\u0003\u0002\u0002\u0002\u00023\u0003\u0002\u0002\u0002\u00025\u0003",
"\u0002\u0002\u0002\u00027\u0003\u0002\u0002\u0002\u00029\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\u0002",
"G\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\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\u0003m\u0003\u0002\u0002\u0002",
"\u0005o\u0003\u0002\u0002\u0002\u0007r\u0003\u0002\u0002\u0002\tt\u0003",
"\u0002\u0002\u0002\u000bv\u0003\u0002\u0002\u0002\rx\u0003\u0002\u0002",
"\u0002\u000fz\u0003\u0002\u0002\u0002\u0011}\u0003\u0002\u0002\u0002",
"\u0013\u007f\u0003\u0002\u0002\u0002\u0015\u0081\u0003\u0002\u0002\u0002",
"\u0017\u0083\u0003\u0002\u0002\u0002\u0019\u0085\u0003\u0002\u0002\u0002",
"\u001b\u0087\u0003\u0002\u0002\u0002\u001d\u0089\u0003\u0002\u0002\u0002",
"\u001f\u008b\u0003\u0002\u0002\u0002!\u008e\u0003\u0002\u0002\u0002",
"#\u0091\u0003\u0002\u0002\u0002%\u0093\u0003\u0002\u0002\u0002\'\u0096",
"\u0003\u0002\u0002\u0002)\u0099\u0003\u0002\u0002\u0002+\u009c\u0003",
"\u0002\u0002\u0002-\u009f\u0003\u0002\u0002\u0002/\u00a1\u0003\u0002",
"\u0002\u00021\u00a3\u0003\u0002\u0002\u00023\u00a5\u0003\u0002\u0002",
"\u00025\u00a7\u0003\u0002\u0002\u00027\u00a9\u0003\u0002\u0002\u0002",
"9\u00ab\u0003\u0002\u0002\u0002;\u00ad\u0003\u0002\u0002\u0002=\u00af",
"\u0003\u0002\u0002\u0002?\u00b2\u0003\u0002\u0002\u0002A\u00b8\u0003",
"\u0002\u0002\u0002C\u00be\u0003\u0002\u0002\u0002E\u00c1\u0003\u0002",
"\u0002\u0002G\u00c5\u0003\u0002\u0002\u0002I\u00cc\u0003\u0002\u0002",
"\u0002K\u00d1\u0003\u0002\u0002\u0002M\u00d7\u0003\u0002\u0002\u0002",
"O\u00dc\u0003\u0002\u0002\u0002Q\u00e3\u0003\u0002\u0002\u0002S\u00ea",
"\u0003\u0002\u0002\u0002U\u00ef\u0003\u0002\u0002\u0002W\u00f5\u0003",
"\u0002\u0002\u0002Y\u00fc\u0003\u0002\u0002\u0002[\u0105\u0003\u0002",
"\u0002\u0002]\u010c\u0003\u0002\u0002\u0002_\u0111\u0003\u0002\u0002",
"\u0002a\u011a\u0003\u0002\u0002\u0002c\u0136\u0003\u0002\u0002\u0002",
"e\u0138\u0003\u0002\u0002\u0002g\u013f\u0003\u0002\u0002\u0002i\u0141",
"\u0003\u0002\u0002\u0002k\u0145\u0003\u0002\u0002\u0002mn\u0007?\u0002",
"\u0002n\u0004\u0003\u0002\u0002\u0002op\u0007,\u0002\u0002pq\u0007,",
"\u0002\u0002q\u0006\u0003\u0002\u0002\u0002rs\u0007}\u0002\u0002s\b",
"\u0003\u0002\u0002\u0002tu\u0007\u007f\u0002\u0002u\n\u0003\u0002\u0002",
"\u0002vw\u0007*\u0002\u0002w\f\u0003\u0002\u0002\u0002xy\u0007+\u0002",
"\u0002y\u000e\u0003\u0002\u0002\u0002z{\u0007&\u0002\u0002{|\u0007*",
"\u0002\u0002|\u0010\u0003\u0002\u0002\u0002}~\u0007]\u0002\u0002~\u0012",
"\u0003\u0002\u0002\u0002\u007f\u0080\u0007_\u0002\u0002\u0080\u0014",
"\u0003\u0002\u0002\u0002\u0081\u0082\u00070\u0002\u0002\u0082\u0016",
"\u0003\u0002\u0002\u0002\u0083\u0084\u0007<\u0002\u0002\u0084\u0018",
"\u0003\u0002\u0002\u0002\u0085\u0086\u0007.\u0002\u0002\u0086\u001a",
"\u0003\u0002\u0002\u0002\u0087\u0088\u0007=\u0002\u0002\u0088\u001c",
"\u0003\u0002\u0002\u0002\u0089\u008a\u0007>\u0002\u0002\u008a\u001e",
"\u0003\u0002\u0002\u0002\u008b\u008c\u0007>\u0002\u0002\u008c\u008d",
"\u0007?\u0002\u0002\u008d \u0003\u0002\u0002\u0002\u008e\u008f\u0007",
"@\u0002\u0002\u008f\u0090\u0007?\u0002\u0002\u0090\"\u0003\u0002\u0002",
"\u0002\u0091\u0092\u0007@\u0002\u0002\u0092$\u0003\u0002\u0002\u0002",
"\u0093\u0094\u0007?\u0002\u0002\u0094\u0095\u0007?\u0002\u0002\u0095",
"&\u0003\u0002\u0002\u0002\u0096\u0097\u0007#\u0002\u0002\u0097\u0098",
"\u0007?\u0002\u0002\u0098(\u0003\u0002\u0002\u0002\u0099\u009a\u0007",
"(\u0002\u0002\u009a\u009b\u0007(\u0002\u0002\u009b*\u0003\u0002\u0002",
"\u0002\u009c\u009d\u0007~\u0002\u0002\u009d\u009e\u0007~\u0002\u0002",
"\u009e,\u0003\u0002\u0002\u0002\u009f\u00a0\u0007#\u0002\u0002\u00a0",
".\u0003\u0002\u0002\u0002\u00a1\u00a2\u0007(\u0002\u0002\u00a20\u0003",
"\u0002\u0002\u0002\u00a3\u00a4\u0007~\u0002\u0002\u00a42\u0003\u0002",
"\u0002\u0002\u00a5\u00a6\u0007-\u0002\u0002\u00a64\u0003\u0002\u0002",
"\u0002\u00a7\u00a8\u0007/\u0002\u0002\u00a86\u0003\u0002\u0002\u0002",
"\u00a9\u00aa\u0007,\u0002\u0002\u00aa8\u0003\u0002\u0002\u0002\u00ab",
"\u00ac\u0007`\u0002\u0002\u00ac:\u0003\u0002\u0002\u0002\u00ad\u00ae",
"\u0007\'\u0002\u0002\u00ae<\u0003\u0002\u0002\u0002\u00af\u00b0\u0007",
"k\u0002\u0002\u00b0\u00b1\u0007p\u0002\u0002\u00b1>\u0003\u0002\u0002",
"\u0002\u00b2\u00b3\u0007c\u0002\u0002\u00b3\u00b4\u0007n\u0002\u0002",
"\u00b4\u00b5\u0007n\u0002\u0002\u00b5\u00b6\u0007q\u0002\u0002\u00b6",
"\u00b7\u0007y\u0002\u0002\u00b7@\u0003\u0002\u0002\u0002\u00b8\u00b9",
"\u0007o\u0002\u0002\u00b9\u00ba\u0007c\u0002\u0002\u00ba\u00bb\u0007",
"v\u0002\u0002\u00bb\u00bc\u0007e\u0002\u0002\u00bc\u00bd\u0007j\u0002",
"\u0002\u00bdB\u0003\u0002\u0002\u0002\u00be\u00bf\u0007k\u0002\u0002",
"\u00bf\u00c0\u0007h\u0002\u0002\u00c0D\u0003\u0002\u0002\u0002\u00c1",
"\u00c2\u0007i\u0002\u0002\u00c2\u00c3\u0007g\u0002\u0002\u00c3\u00c4",
"\u0007v\u0002\u0002\u00c4F\u0003\u0002\u0002\u0002\u00c5\u00c6\u0007",
"g\u0002\u0002\u00c6\u00c7\u0007z\u0002\u0002\u00c7\u00c8\u0007k\u0002",
"\u0002\u00c8\u00c9\u0007u\u0002\u0002\u00c9\u00ca\u0007v\u0002\u0002",
"\u00ca\u00cb\u0007u\u0002\u0002\u00cbH\u0003\u0002\u0002\u0002\u00cc",
"\u00cd\u0007v\u0002\u0002\u00cd\u00ce\u0007t\u0002\u0002\u00ce\u00cf",
"\u0007w\u0002\u0002\u00cf\u00d0\u0007g\u0002\u0002\u00d0J\u0003\u0002",
"\u0002\u0002\u00d1\u00d2\u0007h\u0002\u0002\u00d2\u00d3\u0007c\u0002",
"\u0002\u00d3\u00d4\u0007n\u0002\u0002\u00d4\u00d5\u0007u\u0002\u0002",
"\u00d5\u00d6\u0007g\u0002\u0002\u00d6L\u0003\u0002\u0002\u0002\u00d7",
"\u00d8\u0007n\u0002\u0002\u00d8\u00d9\u0007k\u0002\u0002\u00d9\u00da",
"\u0007u\u0002\u0002\u00da\u00db\u0007v\u0002\u0002\u00dbN\u0003\u0002",
"\u0002\u0002\u00dc\u00dd\u0007e\u0002\u0002\u00dd\u00de\u0007t\u0002",
"\u0002\u00de\u00df\u0007g\u0002\u0002\u00df\u00e0\u0007c\u0002\u0002",
"\u00e0\u00e1\u0007v\u0002\u0002\u00e1\u00e2\u0007g\u0002\u0002\u00e2",
"P\u0003\u0002\u0002\u0002\u00e3\u00e4\u0007w\u0002\u0002\u00e4\u00e5",
"\u0007r\u0002\u0002\u00e5\u00e6\u0007f\u0002\u0002\u00e6\u00e7\u0007",
"c\u0002\u0002\u00e7\u00e8\u0007v\u0002\u0002\u00e8\u00e9\u0007g\u0002",
"\u0002\u00e9R\u0003\u0002\u0002\u0002\u00ea\u00eb\u0007t\u0002\u0002",
"\u00eb\u00ec\u0007g\u0002\u0002\u00ec\u00ed\u0007c\u0002\u0002\u00ed",
"\u00ee\u0007f\u0002\u0002\u00eeT\u0003\u0002\u0002\u0002\u00ef\u00f0",
"\u0007y\u0002\u0002\u00f0\u00f1\u0007t\u0002\u0002\u00f1\u00f2\u0007",
"k\u0002\u0002\u00f2\u00f3\u0007v\u0002\u0002\u00f3\u00f4\u0007g\u0002",
"\u0002\u00f4V\u0003\u0002\u0002\u0002\u00f5\u00f6\u0007f\u0002\u0002",
"\u00f6\u00f7\u0007g\u0002\u0002\u00f7\u00f8\u0007n\u0002\u0002\u00f8",
"\u00f9\u0007g\u0002\u0002\u00f9\u00fa\u0007v\u0002\u0002\u00fa\u00fb",
"\u0007g\u0002\u0002\u00fbX\u0003\u0002\u0002\u0002\u00fc\u00fd\u0007",
"h\u0002\u0002\u00fd\u00fe\u0007w\u0002\u0002\u00fe\u00ff\u0007p\u0002",
"\u0002\u00ff\u0100\u0007e\u0002\u0002\u0100\u0101\u0007v\u0002\u0002",
"\u0101\u0102\u0007k\u0002\u0002\u0102\u0103\u0007q\u0002\u0002\u0103",
"\u0104\u0007p\u0002\u0002\u0104Z\u0003\u0002\u0002\u0002\u0105\u0106",
"\u0007t\u0002\u0002\u0106\u0107\u0007g\u0002\u0002\u0107\u0108\u0007",
"v\u0002\u0002\u0108\u0109\u0007w\u0002\u0002\u0109\u010a\u0007t\u0002",
"\u0002\u010a\u010b\u0007p\u0002\u0002\u010b\\\u0003\u0002\u0002\u0002",
"\u010c\u010d\u0007p\u0002\u0002\u010d\u010e\u0007w\u0002\u0002\u010e",
"\u010f\u0007n\u0002\u0002\u010f\u0110\u0007n\u0002\u0002\u0110^\u0003",
"\u0002\u0002\u0002\u0111\u0112\u0007u\u0002\u0002\u0112\u0113\u0007",
"g\u0002\u0002\u0113\u0114\u0007t\u0002\u0002\u0114\u0115\u0007x\u0002",
"\u0002\u0115\u0116\u0007k\u0002\u0002\u0116\u0117\u0007e\u0002\u0002",
"\u0117\u0118\u0007g\u0002\u0002\u0118`\u0003\u0002\u0002\u0002\u0119",
"\u011b\u00042;\u0002\u011a\u0119\u0003\u0002\u0002\u0002\u011b\u011c",
"\u0003\u0002\u0002\u0002\u011c\u011a\u0003\u0002\u0002\u0002\u011c\u011d",
"\u0003\u0002\u0002\u0002\u011d\u0124\u0003\u0002\u0002\u0002\u011e\u0120",
"\u00070\u0002\u0002\u011f\u0121\u00042;\u0002\u0120\u011f\u0003\u0002",
"\u0002\u0002\u0121\u0122\u0003\u0002\u0002\u0002\u0122\u0120\u0003\u0002",
"\u0002\u0002\u0122\u0123\u0003\u0002\u0002\u0002\u0123\u0125\u0003\u0002",
"\u0002\u0002\u0124\u011e\u0003\u0002\u0002\u0002\u0124\u0125\u0003\u0002",
"\u0002\u0002\u0125b\u0003\u0002\u0002\u0002\u0126\u012a\u0007)\u0002",
"\u0002\u0127\u0129\n\u0002\u0002\u0002\u0128\u0127\u0003\u0002\u0002",
"\u0002\u0129\u012c\u0003\u0002\u0002\u0002\u012a\u0128\u0003\u0002\u0002",
"\u0002\u012a\u012b\u0003\u0002\u0002\u0002\u012b\u012d\u0003\u0002\u0002",
"\u0002\u012c\u012a\u0003\u0002\u0002\u0002\u012d\u0137\u0007)\u0002",
"\u0002\u012e\u0132\u0007$\u0002\u0002\u012f\u0131\n\u0003\u0002\u0002",
"\u0130\u012f\u0003\u0002\u0002\u0002\u0131\u0134\u0003\u0002\u0002\u0002",
"\u0132\u0130\u0003\u0002\u0002\u0002\u0132\u0133\u0003\u0002\u0002\u0002",
"\u0133\u0135\u0003\u0002\u0002\u0002\u0134\u0132\u0003\u0002\u0002\u0002",
"\u0135\u0137\u0007$\u0002\u0002\u0136\u0126\u0003\u0002\u0002\u0002",
"\u0136\u012e\u0003\u0002\u0002\u0002\u0137d\u0003\u0002\u0002\u0002",
"\u0138\u013c\t\u0004\u0002\u0002\u0139\u013b\t\u0005\u0002\u0002\u013a",
"\u0139\u0003\u0002\u0002\u0002\u013b\u013e\u0003\u0002\u0002\u0002\u013c",
"\u013a\u0003\u0002\u0002\u0002\u013c\u013d\u0003\u0002\u0002\u0002\u013d",
"f\u0003\u0002\u0002\u0002\u013e\u013c\u0003\u0002\u0002\u0002\u013f",
"\u0140\u00071\u0002\u0002\u0140h\u0003\u0002\u0002\u0002\u0141\u0142",
"\t\u0006\u0002\u0002\u0142\u0143\u0003\u0002\u0002\u0002\u0143\u0144",
"\b5\u0002\u0002\u0144j\u0003\u0002\u0002\u0002\u0145\u0146\u00071\u0002",
"\u0002\u0146\u0147\u00071\u0002\u0002\u0147\u014b\u0003\u0002\u0002",
"\u0002\u0148\u014a\n\u0007\u0002\u0002\u0149\u0148\u0003\u0002\u0002",
"\u0002\u014a\u014d\u0003\u0002\u0002\u0002\u014b\u0149\u0003\u0002\u0002",
"\u0002\u014b\u014c\u0003\u0002\u0002\u0002\u014cl\u0003\u0002\u0002",
"\u0002\u014d\u014b\u0003\u0002\u0002\u0002\u000b\u0002\u011c\u0122\u0124",
"\u012a\u0132\u0136\u013c\u014b\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 FirebaseRulesLexer(input) {
antlr4.Lexer.call(this, input);
this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache());
return this;
}
FirebaseRulesLexer.prototype = Object.create(antlr4.Lexer.prototype);
FirebaseRulesLexer.prototype.constructor = FirebaseRulesLexer;
Object.defineProperty(FirebaseRulesLexer.prototype, "atn", {
get : function() {
return atn;
}
});
FirebaseRulesLexer.EOF = antlr4.Token.EOF;
FirebaseRulesLexer.T__0 = 1;
FirebaseRulesLexer.T__1 = 2;
FirebaseRulesLexer.CurlyOpen = 3;
FirebaseRulesLexer.CurlyClose = 4;
FirebaseRulesLexer.BracketOpen = 5;
FirebaseRulesLexer.BracketClose = 6;
FirebaseRulesLexer.PathVariableBracket = 7;
FirebaseRulesLexer.SquareBracketOpen = 8;
FirebaseRulesLexer.SquareBracketClose = 9;
FirebaseRulesLexer.Dot = 10;
FirebaseRulesLexer.Colon = 11;
FirebaseRulesLexer.Comma = 12;
FirebaseRulesLexer.Semicolon = 13;
FirebaseRulesLexer.LessThan = 14;
FirebaseRulesLexer.LessOrEqual = 15;
FirebaseRulesLexer.GreaterOrEqual = 16;
FirebaseRulesLexer.GreaterThan = 17;
FirebaseRulesLexer.Equals = 18;
FirebaseRulesLexer.Unequal = 19;
FirebaseRulesLexer.LogicalAnd = 20;
FirebaseRulesLexer.LogicalOr = 21;
FirebaseRulesLexer.LogicalNot = 22;
FirebaseRulesLexer.BinaryAnd = 23;
FirebaseRulesLexer.BinaryOr = 24;
FirebaseRulesLexer.ArithmeticAdd = 25;
FirebaseRulesLexer.ArithmeticSub = 26;
FirebaseRulesLexer.ArithmeticMul = 27;
FirebaseRulesLexer.ArithmeticExp = 28;
FirebaseRulesLexer.ArithmeticModus = 29;
FirebaseRulesLexer.InOperator = 30;
FirebaseRulesLexer.Allow = 31;
FirebaseRulesLexer.Match = 32;
FirebaseRulesLexer.If = 33;
FirebaseRulesLexer.Get = 34;
FirebaseRulesLexer.Exists = 35;
FirebaseRulesLexer.True = 36;
FirebaseRulesLexer.False = 37;
FirebaseRulesLexer.List = 38;
FirebaseRulesLexer.Create = 39;
FirebaseRulesLexer.Update = 40;
FirebaseRulesLexer.Read = 41;
FirebaseRulesLexer.Write = 42;
FirebaseRulesLexer.Delete = 43;
FirebaseRulesLexer.Function = 44;
FirebaseRulesLexer.Return = 45;
FirebaseRulesLexer.Null = 46;
FirebaseRulesLexer.Service = 47;
FirebaseRulesLexer.Number = 48;
FirebaseRulesLexer.String = 49;
FirebaseRulesLexer.Identifier = 50;
FirebaseRulesLexer.Slash = 51;
FirebaseRulesLexer.WS = 52;
FirebaseRulesLexer.Comment = 53;
FirebaseRulesLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ];
FirebaseRulesLexer.prototype.modeNames = [ "DEFAULT_MODE" ];
FirebaseRulesLexer.prototype.literalNames = [ null, "'='", "'**'", "'{'",
"'}'", "'('", "')'", "'$('",
"'['", "']'", "'.'", "':'",
"','", "';'", "'<'", "'<='",
"'>='", "'>'", "'=='", "'!='",
"'&&'", "'||'", "'!'", "'&'",
"'|'", "'+'", "'-'", "'*'",
"'^'", "'%'", "'in'", "'allow'",
"'match'", "'if'", "'get'",
"'exists'", "'true'", "'false'",
"'list'", "'create'", "'update'",
"'read'", "'write'", "'delete'",
"'function'", "'return'",
"'null'", "'service'", null,
null, null, "'/'" ];
FirebaseRulesLexer.prototype.symbolicNames = [ null, null, null, "CurlyOpen",
"CurlyClose", "BracketOpen",
"BracketClose", "PathVariableBracket",
"SquareBracketOpen", "SquareBracketClose",
"Dot", "Colon", "Comma",
"Semicolon", "LessThan",
"LessOrEqual", "GreaterOrEqual",
"GreaterThan", "Equals",
"Unequal", "LogicalAnd",
"LogicalOr", "LogicalNot",
"BinaryAnd", "BinaryOr",
"ArithmeticAdd", "ArithmeticSub",
"ArithmeticMul", "ArithmeticExp",
"ArithmeticModus", "InOperator",
"Allow", "Match", "If", "Get",
"Exists", "True", "False",
"List", "Create", "Update",
"Read", "Write", "Delete",
"Function", "Return", "Null",
"Service", "Number", "String",
"Identifier", "Slash", "WS",
"Comment" ];
FirebaseRulesLexer.prototype.ruleNames = [ "T__0", "T__1", "CurlyOpen",
"CurlyClose", "BracketOpen",
"BracketClose", "PathVariableBracket",
"SquareBracketOpen", "SquareBracketClose",
"Dot", "Colon", "Comma", "Semicolon",
"LessThan", "LessOrEqual", "GreaterOrEqual",
"GreaterThan", "Equals", "Unequal",
"LogicalAnd", "LogicalOr", "LogicalNot",
"BinaryAnd", "BinaryOr", "ArithmeticAdd",
"ArithmeticSub", "ArithmeticMul",
"ArithmeticExp", "ArithmeticModus",
"InOperator", "Allow", "Match",
"If", "Get", "Exists", "True",
"False", "List", "Create", "Update",
"Read", "Write", "Delete", "Function",
"Return", "Null", "Service",
"Number", "String", "Identifier",
"Slash", "WS", "Comment" ];
FirebaseRulesLexer.prototype.grammarFileName = "FirebaseRules.g4";
exports.FirebaseRulesLexer = FirebaseRulesLexer;