ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/src/mdParser/MDLexer.cpp
Revision: 1746
Committed: Wed Jun 6 02:18:54 2012 UTC (12 years, 10 months ago) by gezelter
File size: 50724 byte(s)
Log Message:
added a minimizer parsing block

File Contents

# Content
1 /* $ANTLR 2.7.7 (20110725): "MDParser.g" -> "MDLexer.cpp"$ */
2 #include "MDLexer.hpp"
3 #include <antlr/CharBuffer.hpp>
4 #include <antlr/TokenStreamException.hpp>
5 #include <antlr/TokenStreamIOException.hpp>
6 #include <antlr/TokenStreamRecognitionException.hpp>
7 #include <antlr/CharStreamException.hpp>
8 #include <antlr/CharStreamIOException.hpp>
9 #include <antlr/NoViableAltForCharException.hpp>
10
11 #line 1 "MDParser.g"
12 #line 13 "MDLexer.cpp"
13 MDLexer::MDLexer(ANTLR_USE_NAMESPACE(std)istream& in)
14 : ANTLR_USE_NAMESPACE(antlr)CharScanner(new ANTLR_USE_NAMESPACE(antlr)CharBuffer(in),true)
15 {
16 initLiterals();
17 }
18
19 MDLexer::MDLexer(ANTLR_USE_NAMESPACE(antlr)InputBuffer& ib)
20 : ANTLR_USE_NAMESPACE(antlr)CharScanner(ib,true)
21 {
22 initLiterals();
23 }
24
25 MDLexer::MDLexer(const ANTLR_USE_NAMESPACE(antlr)LexerSharedInputState& state)
26 : ANTLR_USE_NAMESPACE(antlr)CharScanner(state,true)
27 {
28 initLiterals();
29 }
30
31 void MDLexer::initLiterals()
32 {
33 literals["flucQ"] = 20;
34 literals["cutoffGroup"] = 14;
35 literals["RNEMD"] = 21;
36 literals["rigidBody"] = 13;
37 literals["fragment"] = 15;
38 literals["zconstraint"] = 6;
39 literals["minimizer"] = 22;
40 literals["component"] = 4;
41 literals["center"] = 17;
42 literals["members"] = 16;
43 literals["position"] = 18;
44 literals["orientation"] = 19;
45 literals["bend"] = 10;
46 literals["torsion"] = 11;
47 literals["atom"] = 8;
48 literals["molecule"] = 5;
49 literals["restraint"] = 7;
50 literals["inversion"] = 12;
51 literals["bond"] = 9;
52 }
53
54 ANTLR_USE_NAMESPACE(antlr)RefToken MDLexer::nextToken()
55 {
56 ANTLR_USE_NAMESPACE(antlr)RefToken theRetToken;
57 for (;;) {
58 ANTLR_USE_NAMESPACE(antlr)RefToken theRetToken;
59 int _ttype = ANTLR_USE_NAMESPACE(antlr)Token::INVALID_TYPE;
60 resetText();
61 try { // for lexical and char stream error handling
62 switch ( LA(1)) {
63 case 0x3d /* '=' */ :
64 {
65 mASSIGNEQUAL(true);
66 theRetToken=_returnToken;
67 break;
68 }
69 case 0x3a /* ':' */ :
70 {
71 mCOLON(true);
72 theRetToken=_returnToken;
73 break;
74 }
75 case 0x2c /* ',' */ :
76 {
77 mCOMMA(true);
78 theRetToken=_returnToken;
79 break;
80 }
81 case 0x3f /* '?' */ :
82 {
83 mQUESTIONMARK(true);
84 theRetToken=_returnToken;
85 break;
86 }
87 case 0x3b /* ';' */ :
88 {
89 mSEMICOLON(true);
90 theRetToken=_returnToken;
91 break;
92 }
93 case 0x28 /* '(' */ :
94 {
95 mLPAREN(true);
96 theRetToken=_returnToken;
97 break;
98 }
99 case 0x29 /* ')' */ :
100 {
101 mRPAREN(true);
102 theRetToken=_returnToken;
103 break;
104 }
105 case 0x5b /* '[' */ :
106 {
107 mLBRACKET(true);
108 theRetToken=_returnToken;
109 break;
110 }
111 case 0x5d /* ']' */ :
112 {
113 mRBRACKET(true);
114 theRetToken=_returnToken;
115 break;
116 }
117 case 0x7b /* '{' */ :
118 {
119 mLCURLY(true);
120 theRetToken=_returnToken;
121 break;
122 }
123 case 0x7d /* '}' */ :
124 {
125 mRCURLY(true);
126 theRetToken=_returnToken;
127 break;
128 }
129 case 0x9 /* '\t' */ :
130 case 0xa /* '\n' */ :
131 case 0xc /* '\14' */ :
132 case 0xd /* '\r' */ :
133 case 0x20 /* ' ' */ :
134 case 0x5c /* '\\' */ :
135 {
136 mWhitespace(true);
137 theRetToken=_returnToken;
138 break;
139 }
140 case 0x23 /* '#' */ :
141 {
142 mPREPROC_DIRECTIVE(true);
143 theRetToken=_returnToken;
144 break;
145 }
146 case 0x22 /* '\"' */ :
147 {
148 mStringLiteral(true);
149 theRetToken=_returnToken;
150 break;
151 }
152 case 0x27 /* '\'' */ :
153 {
154 mCharLiteral(true);
155 theRetToken=_returnToken;
156 break;
157 }
158 case 0x41 /* 'A' */ :
159 case 0x42 /* 'B' */ :
160 case 0x43 /* 'C' */ :
161 case 0x44 /* 'D' */ :
162 case 0x45 /* 'E' */ :
163 case 0x46 /* 'F' */ :
164 case 0x47 /* 'G' */ :
165 case 0x48 /* 'H' */ :
166 case 0x49 /* 'I' */ :
167 case 0x4a /* 'J' */ :
168 case 0x4b /* 'K' */ :
169 case 0x4c /* 'L' */ :
170 case 0x4d /* 'M' */ :
171 case 0x4e /* 'N' */ :
172 case 0x4f /* 'O' */ :
173 case 0x50 /* 'P' */ :
174 case 0x51 /* 'Q' */ :
175 case 0x52 /* 'R' */ :
176 case 0x53 /* 'S' */ :
177 case 0x54 /* 'T' */ :
178 case 0x55 /* 'U' */ :
179 case 0x56 /* 'V' */ :
180 case 0x57 /* 'W' */ :
181 case 0x58 /* 'X' */ :
182 case 0x59 /* 'Y' */ :
183 case 0x5a /* 'Z' */ :
184 case 0x5f /* '_' */ :
185 case 0x61 /* 'a' */ :
186 case 0x62 /* 'b' */ :
187 case 0x63 /* 'c' */ :
188 case 0x64 /* 'd' */ :
189 case 0x65 /* 'e' */ :
190 case 0x66 /* 'f' */ :
191 case 0x67 /* 'g' */ :
192 case 0x68 /* 'h' */ :
193 case 0x69 /* 'i' */ :
194 case 0x6a /* 'j' */ :
195 case 0x6b /* 'k' */ :
196 case 0x6c /* 'l' */ :
197 case 0x6d /* 'm' */ :
198 case 0x6e /* 'n' */ :
199 case 0x6f /* 'o' */ :
200 case 0x70 /* 'p' */ :
201 case 0x71 /* 'q' */ :
202 case 0x72 /* 'r' */ :
203 case 0x73 /* 's' */ :
204 case 0x74 /* 't' */ :
205 case 0x75 /* 'u' */ :
206 case 0x76 /* 'v' */ :
207 case 0x77 /* 'w' */ :
208 case 0x78 /* 'x' */ :
209 case 0x79 /* 'y' */ :
210 case 0x7a /* 'z' */ :
211 {
212 mID(true);
213 theRetToken=_returnToken;
214 break;
215 }
216 case 0x2b /* '+' */ :
217 case 0x2d /* '-' */ :
218 case 0x2e /* '.' */ :
219 case 0x30 /* '0' */ :
220 case 0x31 /* '1' */ :
221 case 0x32 /* '2' */ :
222 case 0x33 /* '3' */ :
223 case 0x34 /* '4' */ :
224 case 0x35 /* '5' */ :
225 case 0x36 /* '6' */ :
226 case 0x37 /* '7' */ :
227 case 0x38 /* '8' */ :
228 case 0x39 /* '9' */ :
229 {
230 mNUM_INT(true);
231 theRetToken=_returnToken;
232 break;
233 }
234 default:
235 if ((LA(1) == 0x2f /* '/' */ ) && (LA(2) == 0x2a /* '*' */ )) {
236 mComment(true);
237 theRetToken=_returnToken;
238 }
239 else if ((LA(1) == 0x2f /* '/' */ ) && (LA(2) == 0x2f /* '/' */ )) {
240 mCPPComment(true);
241 theRetToken=_returnToken;
242 }
243 else {
244 if (LA(1)==EOF_CHAR)
245 {
246 uponEOF();
247 _returnToken = makeToken(ANTLR_USE_NAMESPACE(antlr)Token::EOF_TYPE);
248 }
249 else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
250 }
251 }
252 if ( !_returnToken )
253 goto tryAgain; // found SKIP token
254
255 _ttype = _returnToken->getType();
256 _returnToken->setType(_ttype);
257 return _returnToken;
258 }
259 catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& e) {
260 throw ANTLR_USE_NAMESPACE(antlr)TokenStreamRecognitionException(e);
261 }
262 catch (ANTLR_USE_NAMESPACE(antlr)CharStreamIOException& csie) {
263 throw ANTLR_USE_NAMESPACE(antlr)TokenStreamIOException(csie.io);
264 }
265 catch (ANTLR_USE_NAMESPACE(antlr)CharStreamException& cse) {
266 throw ANTLR_USE_NAMESPACE(antlr)TokenStreamException(cse.getMessage());
267 }
268 tryAgain:;
269 }
270 }
271
272 void MDLexer::mASSIGNEQUAL(bool _createToken) {
273 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
274 _ttype = ASSIGNEQUAL;
275 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
276
277 match('=' /* charlit */ );
278 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
279 _token = makeToken(_ttype);
280 _token->setText(text.substr(_begin, text.length()-_begin));
281 }
282 _returnToken = _token;
283 _saveIndex=0;
284 }
285
286 void MDLexer::mCOLON(bool _createToken) {
287 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
288 _ttype = COLON;
289 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
290
291 match(':' /* charlit */ );
292 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
293 _token = makeToken(_ttype);
294 _token->setText(text.substr(_begin, text.length()-_begin));
295 }
296 _returnToken = _token;
297 _saveIndex=0;
298 }
299
300 void MDLexer::mCOMMA(bool _createToken) {
301 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
302 _ttype = COMMA;
303 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
304
305 match(',' /* charlit */ );
306 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
307 _token = makeToken(_ttype);
308 _token->setText(text.substr(_begin, text.length()-_begin));
309 }
310 _returnToken = _token;
311 _saveIndex=0;
312 }
313
314 void MDLexer::mQUESTIONMARK(bool _createToken) {
315 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
316 _ttype = QUESTIONMARK;
317 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
318
319 match('?' /* charlit */ );
320 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
321 _token = makeToken(_ttype);
322 _token->setText(text.substr(_begin, text.length()-_begin));
323 }
324 _returnToken = _token;
325 _saveIndex=0;
326 }
327
328 void MDLexer::mSEMICOLON(bool _createToken) {
329 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
330 _ttype = SEMICOLON;
331 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
332
333 match(';' /* charlit */ );
334 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
335 _token = makeToken(_ttype);
336 _token->setText(text.substr(_begin, text.length()-_begin));
337 }
338 _returnToken = _token;
339 _saveIndex=0;
340 }
341
342 void MDLexer::mLPAREN(bool _createToken) {
343 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
344 _ttype = LPAREN;
345 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
346
347 match('(' /* charlit */ );
348 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
349 _token = makeToken(_ttype);
350 _token->setText(text.substr(_begin, text.length()-_begin));
351 }
352 _returnToken = _token;
353 _saveIndex=0;
354 }
355
356 void MDLexer::mRPAREN(bool _createToken) {
357 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
358 _ttype = RPAREN;
359 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
360
361 match(')' /* charlit */ );
362 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
363 _token = makeToken(_ttype);
364 _token->setText(text.substr(_begin, text.length()-_begin));
365 }
366 _returnToken = _token;
367 _saveIndex=0;
368 }
369
370 void MDLexer::mLBRACKET(bool _createToken) {
371 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
372 _ttype = LBRACKET;
373 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
374
375 match('[' /* charlit */ );
376 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
377 _token = makeToken(_ttype);
378 _token->setText(text.substr(_begin, text.length()-_begin));
379 }
380 _returnToken = _token;
381 _saveIndex=0;
382 }
383
384 void MDLexer::mRBRACKET(bool _createToken) {
385 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
386 _ttype = RBRACKET;
387 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
388
389 match(']' /* charlit */ );
390 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
391 _token = makeToken(_ttype);
392 _token->setText(text.substr(_begin, text.length()-_begin));
393 }
394 _returnToken = _token;
395 _saveIndex=0;
396 }
397
398 void MDLexer::mLCURLY(bool _createToken) {
399 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
400 _ttype = LCURLY;
401 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
402
403 match('{' /* charlit */ );
404 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
405 _token = makeToken(_ttype);
406 _token->setText(text.substr(_begin, text.length()-_begin));
407 }
408 _returnToken = _token;
409 _saveIndex=0;
410 }
411
412 void MDLexer::mRCURLY(bool _createToken) {
413 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
414 _ttype = RCURLY;
415 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
416
417 match('}' /* charlit */ );
418 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
419 _token = makeToken(_ttype);
420 _token->setText(text.substr(_begin, text.length()-_begin));
421 }
422 _returnToken = _token;
423 _saveIndex=0;
424 }
425
426 void MDLexer::mWhitespace(bool _createToken) {
427 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
428 _ttype = Whitespace;
429 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
430
431 {
432 switch ( LA(1)) {
433 case 0x9 /* '\t' */ :
434 case 0xc /* '\14' */ :
435 case 0x20 /* ' ' */ :
436 {
437 {
438 switch ( LA(1)) {
439 case 0x20 /* ' ' */ :
440 {
441 match(' ' /* charlit */ );
442 break;
443 }
444 case 0x9 /* '\t' */ :
445 {
446 match('\t' /* charlit */ );
447 break;
448 }
449 case 0xc /* '\14' */ :
450 {
451 match('\14' /* charlit */ );
452 break;
453 }
454 default:
455 {
456 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
457 }
458 }
459 }
460 break;
461 }
462 case 0xa /* '\n' */ :
463 case 0xd /* '\r' */ :
464 {
465 {
466 if ((LA(1) == 0xd /* '\r' */ ) && (LA(2) == 0xa /* '\n' */ )) {
467 match('\r' /* charlit */ );
468 match('\n' /* charlit */ );
469 }
470 else if ((LA(1) == 0xd /* '\r' */ ) && (true)) {
471 match('\r' /* charlit */ );
472 }
473 else if ((LA(1) == 0xa /* '\n' */ )) {
474 match('\n' /* charlit */ );
475 }
476 else {
477 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
478 }
479
480 }
481 if ( inputState->guessing==0 ) {
482 #line 248 "MDParser.g"
483 newline();
484 #line 485 "MDLexer.cpp"
485 }
486 break;
487 }
488 case 0x5c /* '\\' */ :
489 {
490 {
491 if ((LA(1) == 0x5c /* '\\' */ ) && (LA(2) == 0xd /* '\r' */ ) && (LA(3) == 0xa /* '\n' */ )) {
492 match('\\' /* charlit */ );
493 match('\r' /* charlit */ );
494 match('\n' /* charlit */ );
495 }
496 else if ((LA(1) == 0x5c /* '\\' */ ) && (LA(2) == 0xd /* '\r' */ ) && (true)) {
497 match('\\' /* charlit */ );
498 match('\r' /* charlit */ );
499 }
500 else if ((LA(1) == 0x5c /* '\\' */ ) && (LA(2) == 0xa /* '\n' */ )) {
501 match('\\' /* charlit */ );
502 match('\n' /* charlit */ );
503 }
504 else {
505 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
506 }
507
508 }
509 if ( inputState->guessing==0 ) {
510 #line 253 "MDParser.g"
511 printf("CPP_parser.g continuation line detected\n");
512 deferredNewline();
513 #line 514 "MDLexer.cpp"
514 }
515 break;
516 }
517 default:
518 {
519 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
520 }
521 }
522 }
523 if ( inputState->guessing==0 ) {
524 #line 256 "MDParser.g"
525 _ttype = ANTLR_USE_NAMESPACE(antlr)Token::SKIP;
526 #line 527 "MDLexer.cpp"
527 }
528 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
529 _token = makeToken(_ttype);
530 _token->setText(text.substr(_begin, text.length()-_begin));
531 }
532 _returnToken = _token;
533 _saveIndex=0;
534 }
535
536 void MDLexer::mComment(bool _createToken) {
537 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
538 _ttype = Comment;
539 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
540
541 match("/*");
542 { // ( ... )*
543 for (;;) {
544 if (((LA(1) == 0x2a /* '*' */ ) && ((LA(2) >= 0x0 /* '\0' */ && LA(2) <= 0xff)) && ((LA(3) >= 0x0 /* '\0' */ && LA(3) <= 0xff)))&&(LA(2) != '/')) {
545 match('*' /* charlit */ );
546 }
547 else if ((LA(1) == 0xa /* '\n' */ || LA(1) == 0xd /* '\r' */ )) {
548 mEndOfLine(false);
549 if ( inputState->guessing==0 ) {
550 #line 263 "MDParser.g"
551 deferredNewline();
552 #line 553 "MDLexer.cpp"
553 }
554 }
555 else if ((_tokenSet_0.member(LA(1)))) {
556 {
557 match(_tokenSet_0);
558 }
559 }
560 else {
561 goto _loop95;
562 }
563
564 }
565 _loop95:;
566 } // ( ... )*
567 match("*/");
568 if ( inputState->guessing==0 ) {
569 #line 266 "MDParser.g"
570 _ttype = ANTLR_USE_NAMESPACE(antlr)Token::SKIP;
571 #line 572 "MDLexer.cpp"
572 }
573 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
574 _token = makeToken(_ttype);
575 _token->setText(text.substr(_begin, text.length()-_begin));
576 }
577 _returnToken = _token;
578 _saveIndex=0;
579 }
580
581 void MDLexer::mEndOfLine(bool _createToken) {
582 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
583 _ttype = EndOfLine;
584 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
585
586 {
587 if ((LA(1) == 0xd /* '\r' */ ) && (LA(2) == 0xa /* '\n' */ ) && (true)) {
588 match("\r\n");
589 }
590 else if ((LA(1) == 0xd /* '\r' */ ) && (true) && (true)) {
591 match('\r' /* charlit */ );
592 }
593 else if ((LA(1) == 0xa /* '\n' */ )) {
594 match('\n' /* charlit */ );
595 }
596 else {
597 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
598 }
599
600 }
601 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
602 _token = makeToken(_ttype);
603 _token->setText(text.substr(_begin, text.length()-_begin));
604 }
605 _returnToken = _token;
606 _saveIndex=0;
607 }
608
609 void MDLexer::mCPPComment(bool _createToken) {
610 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
611 _ttype = CPPComment;
612 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
613
614 match("//");
615 { // ( ... )*
616 for (;;) {
617 if ((_tokenSet_1.member(LA(1)))) {
618 {
619 match(_tokenSet_1);
620 }
621 }
622 else {
623 goto _loop99;
624 }
625
626 }
627 _loop99:;
628 } // ( ... )*
629 mEndOfLine(false);
630 if ( inputState->guessing==0 ) {
631 #line 272 "MDParser.g"
632 _ttype = ANTLR_USE_NAMESPACE(antlr)Token::SKIP; newline();
633 #line 634 "MDLexer.cpp"
634 }
635 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
636 _token = makeToken(_ttype);
637 _token->setText(text.substr(_begin, text.length()-_begin));
638 }
639 _returnToken = _token;
640 _saveIndex=0;
641 }
642
643 void MDLexer::mPREPROC_DIRECTIVE(bool _createToken) {
644 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
645 _ttype = PREPROC_DIRECTIVE;
646 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
647
648 match('#' /* charlit */ );
649 mLineDirective(false);
650 if ( inputState->guessing==0 ) {
651 #line 279 "MDParser.g"
652 _ttype = ANTLR_USE_NAMESPACE(antlr)Token::SKIP; newline();
653 #line 654 "MDLexer.cpp"
654 }
655 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
656 _token = makeToken(_ttype);
657 _token->setText(text.substr(_begin, text.length()-_begin));
658 }
659 _returnToken = _token;
660 _saveIndex=0;
661 }
662
663 void MDLexer::mLineDirective(bool _createToken) {
664 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
665 _ttype = LineDirective;
666 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
667 ANTLR_USE_NAMESPACE(antlr)RefToken n;
668 ANTLR_USE_NAMESPACE(antlr)RefToken sl;
669
670 if ( inputState->guessing==0 ) {
671 #line 285 "MDParser.g"
672
673 deferredLineCount = 0;
674
675 #line 676 "MDLexer.cpp"
676 }
677 {
678 switch ( LA(1)) {
679 case 0x6c /* 'l' */ :
680 {
681 match("line");
682 break;
683 }
684 case 0x9 /* '\t' */ :
685 case 0xc /* '\14' */ :
686 case 0x20 /* ' ' */ :
687 {
688 break;
689 }
690 default:
691 {
692 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
693 }
694 }
695 }
696 { // ( ... )+
697 int _cnt104=0;
698 for (;;) {
699 if ((LA(1) == 0x9 /* '\t' */ || LA(1) == 0xc /* '\14' */ || LA(1) == 0x20 /* ' ' */ )) {
700 mSpace(false);
701 }
702 else {
703 if ( _cnt104>=1 ) { goto _loop104; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
704 }
705
706 _cnt104++;
707 }
708 _loop104:;
709 } // ( ... )+
710 mDecimal(true);
711 n=_returnToken;
712 if ( inputState->guessing==0 ) {
713 #line 290 "MDParser.g"
714 setLine(OpenMD::lexi_cast<int>(n->getText()) - 1);
715 #line 716 "MDLexer.cpp"
716 }
717 { // ( ... )+
718 int _cnt106=0;
719 for (;;) {
720 if ((LA(1) == 0x9 /* '\t' */ || LA(1) == 0xc /* '\14' */ || LA(1) == 0x20 /* ' ' */ )) {
721 mSpace(false);
722 }
723 else {
724 if ( _cnt106>=1 ) { goto _loop106; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
725 }
726
727 _cnt106++;
728 }
729 _loop106:;
730 } // ( ... )+
731 {
732 mStringLiteral(true);
733 sl=_returnToken;
734 }
735 if ( inputState->guessing==0 ) {
736 #line 292 "MDParser.g"
737 std::string filename = sl->getText().substr(1,sl->getText().length()-2); observer->notify(filename);
738 #line 739 "MDLexer.cpp"
739 }
740 { // ( ... )*
741 for (;;) {
742 if ((LA(1) == 0x9 /* '\t' */ || LA(1) == 0xc /* '\14' */ || LA(1) == 0x20 /* ' ' */ )) {
743 { // ( ... )+
744 int _cnt110=0;
745 for (;;) {
746 if ((LA(1) == 0x9 /* '\t' */ || LA(1) == 0xc /* '\14' */ || LA(1) == 0x20 /* ' ' */ )) {
747 mSpace(false);
748 }
749 else {
750 if ( _cnt110>=1 ) { goto _loop110; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
751 }
752
753 _cnt110++;
754 }
755 _loop110:;
756 } // ( ... )+
757 mDecimal(false);
758 }
759 else {
760 goto _loop111;
761 }
762
763 }
764 _loop111:;
765 } // ( ... )*
766 mEndOfLine(false);
767 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
768 _token = makeToken(_ttype);
769 _token->setText(text.substr(_begin, text.length()-_begin));
770 }
771 _returnToken = _token;
772 _saveIndex=0;
773 }
774
775 void MDLexer::mSpace(bool _createToken) {
776 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
777 _ttype = Space;
778 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
779
780 {
781 switch ( LA(1)) {
782 case 0x20 /* ' ' */ :
783 {
784 match(' ' /* charlit */ );
785 break;
786 }
787 case 0x9 /* '\t' */ :
788 {
789 match('\t' /* charlit */ );
790 break;
791 }
792 case 0xc /* '\14' */ :
793 {
794 match('\14' /* charlit */ );
795 break;
796 }
797 default:
798 {
799 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
800 }
801 }
802 }
803 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
804 _token = makeToken(_ttype);
805 _token->setText(text.substr(_begin, text.length()-_begin));
806 }
807 _returnToken = _token;
808 _saveIndex=0;
809 }
810
811 void MDLexer::mDecimal(bool _createToken) {
812 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
813 _ttype = Decimal;
814 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
815
816 { // ( ... )+
817 int _cnt141=0;
818 for (;;) {
819 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
820 matchRange('0','9');
821 }
822 else {
823 if ( _cnt141>=1 ) { goto _loop141; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
824 }
825
826 _cnt141++;
827 }
828 _loop141:;
829 } // ( ... )+
830 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
831 _token = makeToken(_ttype);
832 _token->setText(text.substr(_begin, text.length()-_begin));
833 }
834 _returnToken = _token;
835 _saveIndex=0;
836 }
837
838 void MDLexer::mStringLiteral(bool _createToken) {
839 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
840 _ttype = StringLiteral;
841 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
842
843 match('\"' /* charlit */ );
844 { // ( ... )*
845 for (;;) {
846 if ((LA(1) == 0x5c /* '\\' */ ) && (_tokenSet_2.member(LA(2)))) {
847 mEscape(false);
848 }
849 else if ((LA(1) == 0x5c /* '\\' */ ) && (LA(2) == 0xa /* '\n' */ || LA(2) == 0xd /* '\r' */ )) {
850 {
851 if ((LA(1) == 0x5c /* '\\' */ ) && (LA(2) == 0xd /* '\r' */ ) && (LA(3) == 0xa /* '\n' */ )) {
852 match("\\\r\n");
853 }
854 else if ((LA(1) == 0x5c /* '\\' */ ) && (LA(2) == 0xd /* '\r' */ ) && (_tokenSet_1.member(LA(3)))) {
855 match("\\\r");
856 }
857 else if ((LA(1) == 0x5c /* '\\' */ ) && (LA(2) == 0xa /* '\n' */ )) {
858 match("\\\n");
859 }
860 else {
861 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
862 }
863
864 }
865 if ( inputState->guessing==0 ) {
866 #line 332 "MDParser.g"
867 deferredNewline();
868 #line 869 "MDLexer.cpp"
869 }
870 }
871 else if ((_tokenSet_3.member(LA(1)))) {
872 {
873 match(_tokenSet_3);
874 }
875 }
876 else {
877 goto _loop121;
878 }
879
880 }
881 _loop121:;
882 } // ( ... )*
883 match('\"' /* charlit */ );
884 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
885 _token = makeToken(_ttype);
886 _token->setText(text.substr(_begin, text.length()-_begin));
887 }
888 _returnToken = _token;
889 _saveIndex=0;
890 }
891
892 void MDLexer::mCharLiteral(bool _createToken) {
893 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
894 _ttype = CharLiteral;
895 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
896
897 match('\'' /* charlit */ );
898 {
899 if ((LA(1) == 0x5c /* '\\' */ ) && (_tokenSet_2.member(LA(2))) && (_tokenSet_4.member(LA(3)))) {
900 mEscape(false);
901 }
902 else if ((_tokenSet_5.member(LA(1))) && (LA(2) == 0x27 /* '\'' */ ) && (true)) {
903 {
904 match(_tokenSet_5);
905 }
906 }
907 else {
908 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
909 }
910
911 }
912 match('\'' /* charlit */ );
913 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
914 _token = makeToken(_ttype);
915 _token->setText(text.substr(_begin, text.length()-_begin));
916 }
917 _returnToken = _token;
918 _saveIndex=0;
919 }
920
921 void MDLexer::mEscape(bool _createToken) {
922 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
923 _ttype = Escape;
924 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
925
926 match('\\' /* charlit */ );
927 {
928 switch ( LA(1)) {
929 case 0x61 /* 'a' */ :
930 {
931 match('a' /* charlit */ );
932 break;
933 }
934 case 0x62 /* 'b' */ :
935 {
936 match('b' /* charlit */ );
937 break;
938 }
939 case 0x66 /* 'f' */ :
940 {
941 match('f' /* charlit */ );
942 break;
943 }
944 case 0x6e /* 'n' */ :
945 {
946 match('n' /* charlit */ );
947 break;
948 }
949 case 0x72 /* 'r' */ :
950 {
951 match('r' /* charlit */ );
952 break;
953 }
954 case 0x74 /* 't' */ :
955 {
956 match('t' /* charlit */ );
957 break;
958 }
959 case 0x76 /* 'v' */ :
960 {
961 match('v' /* charlit */ );
962 break;
963 }
964 case 0x22 /* '\"' */ :
965 {
966 match('\"' /* charlit */ );
967 break;
968 }
969 case 0x27 /* '\'' */ :
970 {
971 match('\'' /* charlit */ );
972 break;
973 }
974 case 0x5c /* '\\' */ :
975 {
976 match('\\' /* charlit */ );
977 break;
978 }
979 case 0x3f /* '?' */ :
980 {
981 match('?' /* charlit */ );
982 break;
983 }
984 case 0x30 /* '0' */ :
985 case 0x31 /* '1' */ :
986 case 0x32 /* '2' */ :
987 case 0x33 /* '3' */ :
988 {
989 {
990 matchRange('0','3');
991 }
992 {
993 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (_tokenSet_1.member(LA(2))) && (true)) {
994 mDigit(false);
995 {
996 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (_tokenSet_1.member(LA(2))) && (true)) {
997 mDigit(false);
998 }
999 else if ((_tokenSet_1.member(LA(1))) && (true) && (true)) {
1000 }
1001 else {
1002 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1003 }
1004
1005 }
1006 }
1007 else if ((_tokenSet_1.member(LA(1))) && (true) && (true)) {
1008 }
1009 else {
1010 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1011 }
1012
1013 }
1014 break;
1015 }
1016 case 0x34 /* '4' */ :
1017 case 0x35 /* '5' */ :
1018 case 0x36 /* '6' */ :
1019 case 0x37 /* '7' */ :
1020 {
1021 {
1022 matchRange('4','7');
1023 }
1024 {
1025 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (_tokenSet_1.member(LA(2))) && (true)) {
1026 mDigit(false);
1027 }
1028 else if ((_tokenSet_1.member(LA(1))) && (true) && (true)) {
1029 }
1030 else {
1031 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1032 }
1033
1034 }
1035 break;
1036 }
1037 case 0x78 /* 'x' */ :
1038 {
1039 match('x' /* charlit */ );
1040 { // ( ... )+
1041 int _cnt132=0;
1042 for (;;) {
1043 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (_tokenSet_1.member(LA(2))) && (true)) {
1044 mDigit(false);
1045 }
1046 else if (((LA(1) >= 0x61 /* 'a' */ && LA(1) <= 0x66 /* 'f' */ )) && (_tokenSet_1.member(LA(2))) && (true)) {
1047 matchRange('a','f');
1048 }
1049 else if (((LA(1) >= 0x41 /* 'A' */ && LA(1) <= 0x46 /* 'F' */ )) && (_tokenSet_1.member(LA(2))) && (true)) {
1050 matchRange('A','F');
1051 }
1052 else {
1053 if ( _cnt132>=1 ) { goto _loop132; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
1054 }
1055
1056 _cnt132++;
1057 }
1058 _loop132:;
1059 } // ( ... )+
1060 break;
1061 }
1062 default:
1063 {
1064 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1065 }
1066 }
1067 }
1068 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
1069 _token = makeToken(_ttype);
1070 _token->setText(text.substr(_begin, text.length()-_begin));
1071 }
1072 _returnToken = _token;
1073 _saveIndex=0;
1074 }
1075
1076 void MDLexer::mDigit(bool _createToken) {
1077 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
1078 _ttype = Digit;
1079 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
1080
1081 matchRange('0','9');
1082 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
1083 _token = makeToken(_ttype);
1084 _token->setText(text.substr(_begin, text.length()-_begin));
1085 }
1086 _returnToken = _token;
1087 _saveIndex=0;
1088 }
1089
1090 void MDLexer::mVocabulary(bool _createToken) {
1091 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
1092 _ttype = Vocabulary;
1093 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
1094
1095 matchRange('\3',static_cast<unsigned char>('\377'));
1096 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
1097 _token = makeToken(_ttype);
1098 _token->setText(text.substr(_begin, text.length()-_begin));
1099 }
1100 _returnToken = _token;
1101 _saveIndex=0;
1102 }
1103
1104 void MDLexer::mID(bool _createToken) {
1105 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
1106 _ttype = ID;
1107 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
1108
1109 {
1110 switch ( LA(1)) {
1111 case 0x61 /* 'a' */ :
1112 case 0x62 /* 'b' */ :
1113 case 0x63 /* 'c' */ :
1114 case 0x64 /* 'd' */ :
1115 case 0x65 /* 'e' */ :
1116 case 0x66 /* 'f' */ :
1117 case 0x67 /* 'g' */ :
1118 case 0x68 /* 'h' */ :
1119 case 0x69 /* 'i' */ :
1120 case 0x6a /* 'j' */ :
1121 case 0x6b /* 'k' */ :
1122 case 0x6c /* 'l' */ :
1123 case 0x6d /* 'm' */ :
1124 case 0x6e /* 'n' */ :
1125 case 0x6f /* 'o' */ :
1126 case 0x70 /* 'p' */ :
1127 case 0x71 /* 'q' */ :
1128 case 0x72 /* 'r' */ :
1129 case 0x73 /* 's' */ :
1130 case 0x74 /* 't' */ :
1131 case 0x75 /* 'u' */ :
1132 case 0x76 /* 'v' */ :
1133 case 0x77 /* 'w' */ :
1134 case 0x78 /* 'x' */ :
1135 case 0x79 /* 'y' */ :
1136 case 0x7a /* 'z' */ :
1137 {
1138 matchRange('a','z');
1139 break;
1140 }
1141 case 0x41 /* 'A' */ :
1142 case 0x42 /* 'B' */ :
1143 case 0x43 /* 'C' */ :
1144 case 0x44 /* 'D' */ :
1145 case 0x45 /* 'E' */ :
1146 case 0x46 /* 'F' */ :
1147 case 0x47 /* 'G' */ :
1148 case 0x48 /* 'H' */ :
1149 case 0x49 /* 'I' */ :
1150 case 0x4a /* 'J' */ :
1151 case 0x4b /* 'K' */ :
1152 case 0x4c /* 'L' */ :
1153 case 0x4d /* 'M' */ :
1154 case 0x4e /* 'N' */ :
1155 case 0x4f /* 'O' */ :
1156 case 0x50 /* 'P' */ :
1157 case 0x51 /* 'Q' */ :
1158 case 0x52 /* 'R' */ :
1159 case 0x53 /* 'S' */ :
1160 case 0x54 /* 'T' */ :
1161 case 0x55 /* 'U' */ :
1162 case 0x56 /* 'V' */ :
1163 case 0x57 /* 'W' */ :
1164 case 0x58 /* 'X' */ :
1165 case 0x59 /* 'Y' */ :
1166 case 0x5a /* 'Z' */ :
1167 {
1168 matchRange('A','Z');
1169 break;
1170 }
1171 case 0x5f /* '_' */ :
1172 {
1173 match('_' /* charlit */ );
1174 break;
1175 }
1176 default:
1177 {
1178 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1179 }
1180 }
1181 }
1182 { // ( ... )*
1183 for (;;) {
1184 switch ( LA(1)) {
1185 case 0x61 /* 'a' */ :
1186 case 0x62 /* 'b' */ :
1187 case 0x63 /* 'c' */ :
1188 case 0x64 /* 'd' */ :
1189 case 0x65 /* 'e' */ :
1190 case 0x66 /* 'f' */ :
1191 case 0x67 /* 'g' */ :
1192 case 0x68 /* 'h' */ :
1193 case 0x69 /* 'i' */ :
1194 case 0x6a /* 'j' */ :
1195 case 0x6b /* 'k' */ :
1196 case 0x6c /* 'l' */ :
1197 case 0x6d /* 'm' */ :
1198 case 0x6e /* 'n' */ :
1199 case 0x6f /* 'o' */ :
1200 case 0x70 /* 'p' */ :
1201 case 0x71 /* 'q' */ :
1202 case 0x72 /* 'r' */ :
1203 case 0x73 /* 's' */ :
1204 case 0x74 /* 't' */ :
1205 case 0x75 /* 'u' */ :
1206 case 0x76 /* 'v' */ :
1207 case 0x77 /* 'w' */ :
1208 case 0x78 /* 'x' */ :
1209 case 0x79 /* 'y' */ :
1210 case 0x7a /* 'z' */ :
1211 {
1212 matchRange('a','z');
1213 break;
1214 }
1215 case 0x41 /* 'A' */ :
1216 case 0x42 /* 'B' */ :
1217 case 0x43 /* 'C' */ :
1218 case 0x44 /* 'D' */ :
1219 case 0x45 /* 'E' */ :
1220 case 0x46 /* 'F' */ :
1221 case 0x47 /* 'G' */ :
1222 case 0x48 /* 'H' */ :
1223 case 0x49 /* 'I' */ :
1224 case 0x4a /* 'J' */ :
1225 case 0x4b /* 'K' */ :
1226 case 0x4c /* 'L' */ :
1227 case 0x4d /* 'M' */ :
1228 case 0x4e /* 'N' */ :
1229 case 0x4f /* 'O' */ :
1230 case 0x50 /* 'P' */ :
1231 case 0x51 /* 'Q' */ :
1232 case 0x52 /* 'R' */ :
1233 case 0x53 /* 'S' */ :
1234 case 0x54 /* 'T' */ :
1235 case 0x55 /* 'U' */ :
1236 case 0x56 /* 'V' */ :
1237 case 0x57 /* 'W' */ :
1238 case 0x58 /* 'X' */ :
1239 case 0x59 /* 'Y' */ :
1240 case 0x5a /* 'Z' */ :
1241 {
1242 matchRange('A','Z');
1243 break;
1244 }
1245 case 0x5f /* '_' */ :
1246 {
1247 match('_' /* charlit */ );
1248 break;
1249 }
1250 case 0x30 /* '0' */ :
1251 case 0x31 /* '1' */ :
1252 case 0x32 /* '2' */ :
1253 case 0x33 /* '3' */ :
1254 case 0x34 /* '4' */ :
1255 case 0x35 /* '5' */ :
1256 case 0x36 /* '6' */ :
1257 case 0x37 /* '7' */ :
1258 case 0x38 /* '8' */ :
1259 case 0x39 /* '9' */ :
1260 {
1261 matchRange('0','9');
1262 break;
1263 }
1264 default:
1265 {
1266 goto _loop137;
1267 }
1268 }
1269 }
1270 _loop137:;
1271 } // ( ... )*
1272 _ttype = testLiteralsTable(_ttype);
1273 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
1274 _token = makeToken(_ttype);
1275 _token->setText(text.substr(_begin, text.length()-_begin));
1276 }
1277 _returnToken = _token;
1278 _saveIndex=0;
1279 }
1280
1281 void MDLexer::mHEX_DIGIT(bool _createToken) {
1282 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
1283 _ttype = HEX_DIGIT;
1284 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
1285
1286 {
1287 switch ( LA(1)) {
1288 case 0x30 /* '0' */ :
1289 case 0x31 /* '1' */ :
1290 case 0x32 /* '2' */ :
1291 case 0x33 /* '3' */ :
1292 case 0x34 /* '4' */ :
1293 case 0x35 /* '5' */ :
1294 case 0x36 /* '6' */ :
1295 case 0x37 /* '7' */ :
1296 case 0x38 /* '8' */ :
1297 case 0x39 /* '9' */ :
1298 {
1299 matchRange('0','9');
1300 break;
1301 }
1302 case 0x41 /* 'A' */ :
1303 case 0x42 /* 'B' */ :
1304 case 0x43 /* 'C' */ :
1305 case 0x44 /* 'D' */ :
1306 case 0x45 /* 'E' */ :
1307 case 0x46 /* 'F' */ :
1308 {
1309 matchRange('A','F');
1310 break;
1311 }
1312 case 0x61 /* 'a' */ :
1313 case 0x62 /* 'b' */ :
1314 case 0x63 /* 'c' */ :
1315 case 0x64 /* 'd' */ :
1316 case 0x65 /* 'e' */ :
1317 case 0x66 /* 'f' */ :
1318 {
1319 matchRange('a','f');
1320 break;
1321 }
1322 default:
1323 {
1324 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1325 }
1326 }
1327 }
1328 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
1329 _token = makeToken(_ttype);
1330 _token->setText(text.substr(_begin, text.length()-_begin));
1331 }
1332 _returnToken = _token;
1333 _saveIndex=0;
1334 }
1335
1336 void MDLexer::mNUM_INT(bool _createToken) {
1337 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
1338 _ttype = NUM_INT;
1339 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
1340 ANTLR_USE_NAMESPACE(antlr)RefToken f1;
1341 ANTLR_USE_NAMESPACE(antlr)RefToken f2;
1342 ANTLR_USE_NAMESPACE(antlr)RefToken f3;
1343 ANTLR_USE_NAMESPACE(antlr)RefToken f4;
1344 #line 425 "MDParser.g"
1345
1346 bool isDecimal = false;
1347 ANTLR_USE_NAMESPACE(antlr)RefToken t = ANTLR_USE_NAMESPACE(antlr)nullToken;
1348
1349 #line 1350 "MDLexer.cpp"
1350
1351 {
1352 switch ( LA(1)) {
1353 case 0x2b /* '+' */ :
1354 {
1355 match('+' /* charlit */ );
1356 break;
1357 }
1358 case 0x2d /* '-' */ :
1359 {
1360 match('-' /* charlit */ );
1361 break;
1362 }
1363 case 0x2e /* '.' */ :
1364 case 0x30 /* '0' */ :
1365 case 0x31 /* '1' */ :
1366 case 0x32 /* '2' */ :
1367 case 0x33 /* '3' */ :
1368 case 0x34 /* '4' */ :
1369 case 0x35 /* '5' */ :
1370 case 0x36 /* '6' */ :
1371 case 0x37 /* '7' */ :
1372 case 0x38 /* '8' */ :
1373 case 0x39 /* '9' */ :
1374 {
1375 break;
1376 }
1377 default:
1378 {
1379 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1380 }
1381 }
1382 }
1383 {
1384 switch ( LA(1)) {
1385 case 0x2e /* '.' */ :
1386 {
1387 match('.' /* charlit */ );
1388 if ( inputState->guessing==0 ) {
1389 #line 432 "MDParser.g"
1390 _ttype = DOT;
1391 #line 1392 "MDLexer.cpp"
1392 }
1393 {
1394 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
1395 { // ( ... )+
1396 int _cnt149=0;
1397 for (;;) {
1398 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
1399 matchRange('0','9');
1400 }
1401 else {
1402 if ( _cnt149>=1 ) { goto _loop149; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
1403 }
1404
1405 _cnt149++;
1406 }
1407 _loop149:;
1408 } // ( ... )+
1409 {
1410 if ((_tokenSet_6.member(LA(1))) && (_tokenSet_7.member(LA(2)))) {
1411 mEXPONENT(false);
1412 }
1413 else {
1414 }
1415
1416 }
1417 {
1418 if ((_tokenSet_8.member(LA(1)))) {
1419 mFLOAT_SUFFIX(true);
1420 f1=_returnToken;
1421 if ( inputState->guessing==0 ) {
1422 #line 433 "MDParser.g"
1423 t=f1;
1424 #line 1425 "MDLexer.cpp"
1425 }
1426 }
1427 else {
1428 }
1429
1430 }
1431 if ( inputState->guessing==0 ) {
1432 #line 434 "MDParser.g"
1433
1434 if ( t &&
1435 (t->getText().find('f') != ANTLR_USE_NAMESPACE(std)string::npos ||
1436 t->getText().find('F') != ANTLR_USE_NAMESPACE(std)string::npos ) ) {
1437 _ttype = NUM_FLOAT;
1438 }
1439 else {
1440 _ttype = NUM_DOUBLE; // assume double
1441 }
1442
1443 #line 1444 "MDLexer.cpp"
1444 }
1445 }
1446 else {
1447 }
1448
1449 }
1450 break;
1451 }
1452 case 0x30 /* '0' */ :
1453 case 0x31 /* '1' */ :
1454 case 0x32 /* '2' */ :
1455 case 0x33 /* '3' */ :
1456 case 0x34 /* '4' */ :
1457 case 0x35 /* '5' */ :
1458 case 0x36 /* '6' */ :
1459 case 0x37 /* '7' */ :
1460 case 0x38 /* '8' */ :
1461 case 0x39 /* '9' */ :
1462 {
1463 {
1464 switch ( LA(1)) {
1465 case 0x30 /* '0' */ :
1466 {
1467 match('0' /* charlit */ );
1468 if ( inputState->guessing==0 ) {
1469 #line 446 "MDParser.g"
1470 isDecimal = true;
1471 #line 1472 "MDLexer.cpp"
1472 }
1473 {
1474 if ((LA(1) == 0x58 /* 'X' */ || LA(1) == 0x78 /* 'x' */ )) {
1475 {
1476 switch ( LA(1)) {
1477 case 0x78 /* 'x' */ :
1478 {
1479 match('x' /* charlit */ );
1480 break;
1481 }
1482 case 0x58 /* 'X' */ :
1483 {
1484 match('X' /* charlit */ );
1485 break;
1486 }
1487 default:
1488 {
1489 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1490 }
1491 }
1492 }
1493 { // ( ... )+
1494 int _cnt156=0;
1495 for (;;) {
1496 if ((_tokenSet_9.member(LA(1))) && (true) && (true)) {
1497 mHEX_DIGIT(false);
1498 }
1499 else {
1500 if ( _cnt156>=1 ) { goto _loop156; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
1501 }
1502
1503 _cnt156++;
1504 }
1505 _loop156:;
1506 } // ( ... )+
1507 }
1508 else {
1509 bool synPredMatched161 = false;
1510 if ((((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (true) && (true))) {
1511 int _m161 = mark();
1512 synPredMatched161 = true;
1513 inputState->guessing++;
1514 try {
1515 {
1516 { // ( ... )+
1517 int _cnt159=0;
1518 for (;;) {
1519 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
1520 matchRange('0','9');
1521 }
1522 else {
1523 if ( _cnt159>=1 ) { goto _loop159; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
1524 }
1525
1526 _cnt159++;
1527 }
1528 _loop159:;
1529 } // ( ... )+
1530 {
1531 if ((_tokenSet_6.member(LA(1))) && (_tokenSet_7.member(LA(2)))) {
1532 mEXPONENT(false);
1533 }
1534 else if ((LA(1) == 0x2e /* '.' */ )) {
1535 match('.' /* charlit */ );
1536 }
1537 else if ((_tokenSet_8.member(LA(1))) && (true)) {
1538 mFLOAT_SUFFIX(false);
1539 }
1540 else {
1541 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1542 }
1543
1544 }
1545 }
1546 }
1547 catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
1548 synPredMatched161 = false;
1549 }
1550 rewind(_m161);
1551 inputState->guessing--;
1552 }
1553 if ( synPredMatched161 ) {
1554 { // ( ... )+
1555 int _cnt163=0;
1556 for (;;) {
1557 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
1558 matchRange('0','9');
1559 }
1560 else {
1561 if ( _cnt163>=1 ) { goto _loop163; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
1562 }
1563
1564 _cnt163++;
1565 }
1566 _loop163:;
1567 } // ( ... )+
1568 }
1569 else if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x37 /* '7' */ )) && (true) && (true)) {
1570 { // ( ... )+
1571 int _cnt165=0;
1572 for (;;) {
1573 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x37 /* '7' */ ))) {
1574 matchRange('0','7');
1575 }
1576 else {
1577 if ( _cnt165>=1 ) { goto _loop165; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
1578 }
1579
1580 _cnt165++;
1581 }
1582 _loop165:;
1583 } // ( ... )+
1584 }
1585 else {
1586 }
1587 }
1588 }
1589 break;
1590 }
1591 case 0x31 /* '1' */ :
1592 case 0x32 /* '2' */ :
1593 case 0x33 /* '3' */ :
1594 case 0x34 /* '4' */ :
1595 case 0x35 /* '5' */ :
1596 case 0x36 /* '6' */ :
1597 case 0x37 /* '7' */ :
1598 case 0x38 /* '8' */ :
1599 case 0x39 /* '9' */ :
1600 {
1601 {
1602 matchRange('1','9');
1603 }
1604 { // ( ... )*
1605 for (;;) {
1606 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
1607 matchRange('0','9');
1608 }
1609 else {
1610 goto _loop168;
1611 }
1612
1613 }
1614 _loop168:;
1615 } // ( ... )*
1616 if ( inputState->guessing==0 ) {
1617 #line 463 "MDParser.g"
1618 isDecimal=true;
1619 #line 1620 "MDLexer.cpp"
1620 }
1621 break;
1622 }
1623 default:
1624 {
1625 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1626 }
1627 }
1628 }
1629 {
1630 if ((LA(1) == 0x4c /* 'L' */ || LA(1) == 0x6c /* 'l' */ )) {
1631 {
1632 switch ( LA(1)) {
1633 case 0x6c /* 'l' */ :
1634 {
1635 match('l' /* charlit */ );
1636 break;
1637 }
1638 case 0x4c /* 'L' */ :
1639 {
1640 match('L' /* charlit */ );
1641 break;
1642 }
1643 default:
1644 {
1645 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1646 }
1647 }
1648 }
1649 if ( inputState->guessing==0 ) {
1650 #line 465 "MDParser.g"
1651 _ttype = NUM_LONG;
1652 #line 1653 "MDLexer.cpp"
1653 }
1654 }
1655 else if (((_tokenSet_10.member(LA(1))))&&(isDecimal)) {
1656 {
1657 if ((_tokenSet_6.member(LA(1))) && (_tokenSet_7.member(LA(2)))) {
1658 mEXPONENT(false);
1659 {
1660 if ((_tokenSet_8.member(LA(1)))) {
1661 mFLOAT_SUFFIX(true);
1662 f3=_returnToken;
1663 if ( inputState->guessing==0 ) {
1664 #line 470 "MDParser.g"
1665 t=f3;
1666 #line 1667 "MDLexer.cpp"
1667 }
1668 }
1669 else {
1670 }
1671
1672 }
1673 }
1674 else if ((LA(1) == 0x2e /* '.' */ )) {
1675 match('.' /* charlit */ );
1676 { // ( ... )*
1677 for (;;) {
1678 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
1679 matchRange('0','9');
1680 }
1681 else {
1682 goto _loop173;
1683 }
1684
1685 }
1686 _loop173:;
1687 } // ( ... )*
1688 {
1689 if ((_tokenSet_6.member(LA(1))) && (_tokenSet_7.member(LA(2)))) {
1690 mEXPONENT(false);
1691 }
1692 else {
1693 }
1694
1695 }
1696 {
1697 if ((_tokenSet_8.member(LA(1)))) {
1698 mFLOAT_SUFFIX(true);
1699 f2=_returnToken;
1700 if ( inputState->guessing==0 ) {
1701 #line 469 "MDParser.g"
1702 t=f2;
1703 #line 1704 "MDLexer.cpp"
1704 }
1705 }
1706 else {
1707 }
1708
1709 }
1710 }
1711 else if ((_tokenSet_8.member(LA(1))) && (true)) {
1712 mFLOAT_SUFFIX(true);
1713 f4=_returnToken;
1714 if ( inputState->guessing==0 ) {
1715 #line 471 "MDParser.g"
1716 t=f4;
1717 #line 1718 "MDLexer.cpp"
1718 }
1719 }
1720 else {
1721 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1722 }
1723
1724 }
1725 if ( inputState->guessing==0 ) {
1726 #line 473 "MDParser.g"
1727
1728 if ( t &&
1729 (t->getText().find('f') != ANTLR_USE_NAMESPACE(std)string::npos ||
1730 t->getText().find('F') != ANTLR_USE_NAMESPACE(std)string::npos ) ) {
1731 _ttype = NUM_FLOAT;
1732 }
1733 else {
1734 _ttype = NUM_DOUBLE; // assume double
1735 }
1736
1737 #line 1738 "MDLexer.cpp"
1738 }
1739 }
1740 else {
1741 }
1742
1743 }
1744 break;
1745 }
1746 default:
1747 {
1748 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1749 }
1750 }
1751 }
1752 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
1753 _token = makeToken(_ttype);
1754 _token->setText(text.substr(_begin, text.length()-_begin));
1755 }
1756 _returnToken = _token;
1757 _saveIndex=0;
1758 }
1759
1760 void MDLexer::mEXPONENT(bool _createToken) {
1761 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
1762 _ttype = EXPONENT;
1763 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
1764
1765 {
1766 switch ( LA(1)) {
1767 case 0x65 /* 'e' */ :
1768 {
1769 match('e' /* charlit */ );
1770 break;
1771 }
1772 case 0x45 /* 'E' */ :
1773 {
1774 match('E' /* charlit */ );
1775 break;
1776 }
1777 case 0x64 /* 'd' */ :
1778 {
1779 match('d' /* charlit */ );
1780 break;
1781 }
1782 case 0x44 /* 'D' */ :
1783 {
1784 match('D' /* charlit */ );
1785 break;
1786 }
1787 default:
1788 {
1789 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1790 }
1791 }
1792 }
1793 {
1794 switch ( LA(1)) {
1795 case 0x2b /* '+' */ :
1796 {
1797 match('+' /* charlit */ );
1798 break;
1799 }
1800 case 0x2d /* '-' */ :
1801 {
1802 match('-' /* charlit */ );
1803 break;
1804 }
1805 case 0x30 /* '0' */ :
1806 case 0x31 /* '1' */ :
1807 case 0x32 /* '2' */ :
1808 case 0x33 /* '3' */ :
1809 case 0x34 /* '4' */ :
1810 case 0x35 /* '5' */ :
1811 case 0x36 /* '6' */ :
1812 case 0x37 /* '7' */ :
1813 case 0x38 /* '8' */ :
1814 case 0x39 /* '9' */ :
1815 {
1816 break;
1817 }
1818 default:
1819 {
1820 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1821 }
1822 }
1823 }
1824 { // ( ... )+
1825 int _cnt181=0;
1826 for (;;) {
1827 if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
1828 matchRange('0','9');
1829 }
1830 else {
1831 if ( _cnt181>=1 ) { goto _loop181; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
1832 }
1833
1834 _cnt181++;
1835 }
1836 _loop181:;
1837 } // ( ... )+
1838 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
1839 _token = makeToken(_ttype);
1840 _token->setText(text.substr(_begin, text.length()-_begin));
1841 }
1842 _returnToken = _token;
1843 _saveIndex=0;
1844 }
1845
1846 void MDLexer::mFLOAT_SUFFIX(bool _createToken) {
1847 int _ttype; ANTLR_USE_NAMESPACE(antlr)RefToken _token; ANTLR_USE_NAMESPACE(std)string::size_type _begin = text.length();
1848 _ttype = FLOAT_SUFFIX;
1849 ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
1850
1851 switch ( LA(1)) {
1852 case 0x66 /* 'f' */ :
1853 {
1854 match('f' /* charlit */ );
1855 break;
1856 }
1857 case 0x46 /* 'F' */ :
1858 {
1859 match('F' /* charlit */ );
1860 break;
1861 }
1862 case 0x64 /* 'd' */ :
1863 {
1864 match('d' /* charlit */ );
1865 break;
1866 }
1867 case 0x44 /* 'D' */ :
1868 {
1869 match('D' /* charlit */ );
1870 break;
1871 }
1872 default:
1873 {
1874 throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());
1875 }
1876 }
1877 if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
1878 _token = makeToken(_ttype);
1879 _token->setText(text.substr(_begin, text.length()-_begin));
1880 }
1881 _returnToken = _token;
1882 _saveIndex=0;
1883 }
1884
1885
1886 const unsigned long MDLexer::_tokenSet_0_data_[] = { 4294958079UL, 4294966271UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1887 // 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xb 0xc 0xe 0xf 0x10 0x11 0x12
1888 // 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f !
1889 // \" # $ % & \' ( ) + , - . / 0 1 2 3 4 5 6 7 8
1890 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_0(_tokenSet_0_data_,16);
1891 const unsigned long MDLexer::_tokenSet_1_data_[] = { 4294958079UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1892 // 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xb 0xc 0xe 0xf 0x10 0x11 0x12
1893 // 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f !
1894 // \" # $ % & \' ( ) * + , - . / 0 1 2 3 4 5 6 7 8
1895 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_1(_tokenSet_1_data_,16);
1896 const unsigned long MDLexer::_tokenSet_2_data_[] = { 0UL, 2164195460UL, 268435456UL, 22298694UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1897 // \" \' 0 1 2 3 4 5 6 7
1898 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_2(_tokenSet_2_data_,10);
1899 const unsigned long MDLexer::_tokenSet_3_data_[] = { 4294958079UL, 4294967291UL, 4026531839UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1900 // 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xb 0xc 0xe 0xf 0x10 0x11 0x12
1901 // 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f !
1902 // # $ % & \' ( ) * + , - . / 0 1 2 3 4 5 6 7 8
1903 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_3(_tokenSet_3_data_,16);
1904 const unsigned long MDLexer::_tokenSet_4_data_[] = { 0UL, 67043456UL, 126UL, 126UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1905 // \' 0 1 2 3 4 5 6 7 8
1906 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_4(_tokenSet_4_data_,10);
1907 const unsigned long MDLexer::_tokenSet_5_data_[] = { 4294967295UL, 4294967167UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 4294967295UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1908 // 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf 0x10
1909 // 0x11 0x12 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x1e
1910 // 0x1f ! \" # $ % & ( ) * + , - . / 0 1 2 3 4 5 6 7 8
1911 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_5(_tokenSet_5_data_,16);
1912 const unsigned long MDLexer::_tokenSet_6_data_[] = { 0UL, 0UL, 48UL, 48UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1913 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_6(_tokenSet_6_data_,10);
1914 const unsigned long MDLexer::_tokenSet_7_data_[] = { 0UL, 67053568UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1915 // + - 0 1 2 3 4 5 6 7 8
1916 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_7(_tokenSet_7_data_,10);
1917 const unsigned long MDLexer::_tokenSet_8_data_[] = { 0UL, 0UL, 80UL, 80UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1918 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_8(_tokenSet_8_data_,10);
1919 const unsigned long MDLexer::_tokenSet_9_data_[] = { 0UL, 67043328UL, 126UL, 126UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1920 // 0 1 2 3 4 5 6 7 8
1921 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_9(_tokenSet_9_data_,10);
1922 const unsigned long MDLexer::_tokenSet_10_data_[] = { 0UL, 16384UL, 112UL, 112UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL };
1923 // .
1924 const ANTLR_USE_NAMESPACE(antlr)BitSet MDLexer::_tokenSet_10(_tokenSet_10_data_,10);
1925

Properties

Name Value
svn:keywords Author Id Revision Date