MCPcopy Create free account
hub / github.com/dynjs/dynjs / nextToken

Method nextToken

src/main/java/org/dynjs/parser/js/Lexer.java:150–493  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

148 }
149
150 public Token nextToken() throws LexerException {
151 int d;
152
153 Token token = null;
154
155 loop: while (token == null) {
156 int c = la();
157 switch (c) {
158 case -1:
159 token = newToken(EOF, null);
160 break loop;
161 case '{':
162 consume();
163 token = newToken(LEFT_BRACE, "{");
164 break loop;
165 case '}':
166 consume();
167 token = newToken(RIGHT_BRACE, "}");
168 break loop;
169 case '(':
170 consume();
171 token = newToken(LEFT_PAREN, "(");
172 break loop;
173 case ')':
174 consume();
175 token = newToken(RIGHT_PAREN, ")");
176 break loop;
177 case '[':
178 consume();
179 token = newToken(LEFT_BRACKET, "[");
180 break loop;
181 case ']':
182 consume();
183 token = newToken(RIGHT_BRACKET, "[");
184 break loop;
185 case '.':
186 d = la(2);
187 if (d >= '0' && d <= '9') {
188 token = decimalLiteral();
189 break loop;
190 }
191 consume();
192 token = newToken(DOT, ".");
193 break loop;
194 case ';':
195 consume();
196 token = newToken(SEMICOLON, ";");
197 break loop;
198 case ',':
199 consume();
200 token = newToken(COMMA, ",");
201 break loop;
202 case ':':
203 consume();
204 token = newToken(COLON, ":");
205 break loop;
206 case '?':
207 consume();

Callers 8

lexMethod · 0.95
earley-boyer.jsFile · 0.80
peekTokenMethod · 0.80
consumeMethod · 0.80
callMethod · 0.80
callMethod · 0.80
parseArrayMethod · 0.80
parseObjectMethod · 0.80

Calls 14

laMethod · 0.95
newTokenMethod · 0.95
consumeMethod · 0.95
decimalLiteralMethod · 0.95
isRegexpEnabledMethod · 0.95
regexpLiteralMethod · 0.95
singleLineCommentMethod · 0.95
multiLineCommentMethod · 0.95
incrementLineMethod · 0.95
numericLiteralMethod · 0.95
stringLiteralMethod · 0.95

Tested by 1

lexMethod · 0.76