ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/src/mdParser/MDLexer.cpp
Revision: 1731
Committed: Thu May 31 12:25:30 2012 UTC (12 years, 11 months ago) by gezelter
File size: 50681 byte(s)
Log Message:
Reorganized source directories, added RNEMD and flucQ blocks for
options parsing.

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

Properties

Name Value
svn:keywords Author Id Revision Date