-
Notifications
You must be signed in to change notification settings - Fork 6
/
SingleTokenParser.js
129 lines (102 loc) · 3.76 KB
/
SingleTokenParser.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
// Generated from grammar/SingleToken.g4 by ANTLR 4.5.3
// jshint ignore: start
var antlr4 = require('antlr4/index');
var SingleTokenListener = require('./SingleTokenListener').SingleTokenListener;
var grammarFileName = "SingleToken.g4";
var serializedATN = ["\u0003\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd",
"\u0003\u0003\u000b\u0004\u0002\t\u0002\u0003\u0002\u0007\u0002\u0006",
"\n\u0002\f\u0002\u000e\u0002\t\u000b\u0002\u0003\u0002\u0002\u0002\u0003",
"\u0002\u0002\u0002\n\u0002\u0007\u0003\u0002\u0002\u0002\u0004\u0006",
"\u0007\u0003\u0002\u0002\u0005\u0004\u0003\u0002\u0002\u0002\u0006\t",
"\u0003\u0002\u0002\u0002\u0007\u0005\u0003\u0002\u0002\u0002\u0007\b",
"\u0003\u0002\u0002\u0002\b\u0003\u0003\u0002\u0002\u0002\t\u0007\u0003",
"\u0002\u0002\u0002\u0003\u0007"].join("");
var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
var sharedContextCache = new antlr4.PredictionContextCache();
var literalNames = [ null, "'token'" ];
var symbolicNames = [ null, "TOKEN" ];
var ruleNames = [ "start" ];
function SingleTokenParser (input) {
antlr4.Parser.call(this, input);
this._interp = new antlr4.atn.ParserATNSimulator(this, atn, decisionsToDFA, sharedContextCache);
this.ruleNames = ruleNames;
this.literalNames = literalNames;
this.symbolicNames = symbolicNames;
return this;
}
SingleTokenParser.prototype = Object.create(antlr4.Parser.prototype);
SingleTokenParser.prototype.constructor = SingleTokenParser;
Object.defineProperty(SingleTokenParser.prototype, "atn", {
get : function() {
return atn;
}
});
SingleTokenParser.EOF = antlr4.Token.EOF;
SingleTokenParser.TOKEN = 1;
SingleTokenParser.RULE_start = 0;
function StartContext(parser, parent, invokingState) {
if(parent===undefined) {
parent = null;
}
if(invokingState===undefined || invokingState===null) {
invokingState = -1;
}
antlr4.ParserRuleContext.call(this, parent, invokingState);
this.parser = parser;
this.ruleIndex = SingleTokenParser.RULE_start;
return this;
}
StartContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
StartContext.prototype.constructor = StartContext;
StartContext.prototype.TOKEN = function(i) {
if(i===undefined) {
i = null;
}
if(i===null) {
return this.getTokens(SingleTokenParser.TOKEN);
} else {
return this.getToken(SingleTokenParser.TOKEN, i);
}
};
StartContext.prototype.enterRule = function(listener) {
if(listener instanceof SingleTokenListener ) {
listener.enterStart(this);
}
};
StartContext.prototype.exitRule = function(listener) {
if(listener instanceof SingleTokenListener ) {
listener.exitStart(this);
}
};
SingleTokenParser.StartContext = StartContext;
SingleTokenParser.prototype.start = function() {
var localctx = new StartContext(this, this._ctx, this.state);
this.enterRule(localctx, 0, SingleTokenParser.RULE_start);
var _la = 0; // Token type
try {
this.enterOuterAlt(localctx, 1);
this.state = 5;
this._errHandler.sync(this);
_la = this._input.LA(1);
while(_la===SingleTokenParser.TOKEN) {
this.state = 2;
this.match(SingleTokenParser.TOKEN);
this.state = 7;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
} catch (re) {
if(re instanceof antlr4.error.RecognitionException) {
localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
} finally {
this.exitRule();
}
return localctx;
};
exports.SingleTokenParser = SingleTokenParser;