| 1 | < | /* $ANTLR 2.7.5 (20050406): "MDParser.g" -> "MDParser.cpp"$ */ | 
| 1 | > | /* $ANTLR 2.7.4: "MDParser.g" -> "MDParser.cpp"$ */ | 
| 2 |  | #include "MDParser.hpp" | 
| 3 |  | #include <antlr/NoViableAltException.hpp> | 
| 4 |  | #include <antlr/SemanticException.hpp> | 
| 53 |  | } | 
| 54 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 55 |  | reportError(ex); | 
| 56 | < | recover(ex,_tokenSet_1); | 
| 56 | > | consume(); | 
| 57 | > | consumeUntil(_tokenSet_1); | 
| 58 |  | } | 
| 59 |  | returnAST = mdfile_AST; | 
| 60 |  | } | 
| 102 |  | } | 
| 103 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 104 |  | reportError(ex); | 
| 105 | < | recover(ex,_tokenSet_2); | 
| 105 | > | consume(); | 
| 106 | > | consumeUntil(_tokenSet_2); | 
| 107 |  | } | 
| 108 |  | returnAST = statement_AST; | 
| 109 |  | } | 
| 129 |  | } | 
| 130 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 131 |  | reportError(ex); | 
| 132 | < | recover(ex,_tokenSet_3); | 
| 132 | > | consume(); | 
| 133 | > | consumeUntil(_tokenSet_3); | 
| 134 |  | } | 
| 135 |  | returnAST = assignment_AST; | 
| 136 |  | } | 
| 163 |  | tmp6_AST = astFactory->create(LT(1)); | 
| 164 |  | astFactory->addASTChild(currentAST, tmp6_AST); | 
| 165 |  | match(RCURLY); | 
| 166 | < | #line 62 "MDParser.g" | 
| 166 | > | #line 65 "MDParser.g" | 
| 167 |  | tmp6_AST->setType(ENDBLOCK); | 
| 168 | < | #line 166 "MDParser.cpp" | 
| 168 | > | #line 169 "MDParser.cpp" | 
| 169 |  | componentblock_AST = currentAST.root; | 
| 170 |  | } | 
| 171 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 172 |  | reportError(ex); | 
| 173 | < | recover(ex,_tokenSet_2); | 
| 173 | > | consume(); | 
| 174 | > | consumeUntil(_tokenSet_2); | 
| 175 |  | } | 
| 176 |  | returnAST = componentblock_AST; | 
| 177 |  | } | 
| 204 |  | tmp9_AST = astFactory->create(LT(1)); | 
| 205 |  | astFactory->addASTChild(currentAST, tmp9_AST); | 
| 206 |  | match(RCURLY); | 
| 207 | < | #line 68 "MDParser.g" | 
| 207 | > | #line 71 "MDParser.g" | 
| 208 |  | tmp9_AST->setType(ENDBLOCK); | 
| 209 | < | #line 206 "MDParser.cpp" | 
| 209 | > | #line 210 "MDParser.cpp" | 
| 210 |  | moleculeblock_AST = currentAST.root; | 
| 211 |  | } | 
| 212 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 213 |  | reportError(ex); | 
| 214 | < | recover(ex,_tokenSet_2); | 
| 214 | > | consume(); | 
| 215 | > | consumeUntil(_tokenSet_2); | 
| 216 |  | } | 
| 217 |  | returnAST = moleculeblock_AST; | 
| 218 |  | } | 
| 245 |  | tmp12_AST = astFactory->create(LT(1)); | 
| 246 |  | astFactory->addASTChild(currentAST, tmp12_AST); | 
| 247 |  | match(RCURLY); | 
| 248 | < | #line 65 "MDParser.g" | 
| 248 | > | #line 68 "MDParser.g" | 
| 249 |  | tmp12_AST->setType(ENDBLOCK); | 
| 250 | < | #line 246 "MDParser.cpp" | 
| 250 | > | #line 251 "MDParser.cpp" | 
| 251 |  | zconstraintblock_AST = currentAST.root; | 
| 252 |  | } | 
| 253 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 254 |  | reportError(ex); | 
| 255 | < | recover(ex,_tokenSet_2); | 
| 255 | > | consume(); | 
| 256 | > | consumeUntil(_tokenSet_2); | 
| 257 |  | } | 
| 258 |  | returnAST = zconstraintblock_AST; | 
| 259 |  | } | 
| 265 |  |  | 
| 266 |  | try {      // for error handling | 
| 267 |  | switch ( LA(1)) { | 
| 268 | < | case OCTALINT: | 
| 269 | < | case DECIMALINT: | 
| 264 | < | case HEXADECIMALINT: | 
| 265 | < | case FLOATONE: | 
| 266 | < | case FLOATTWO: | 
| 268 | > | case NUM_INT: | 
| 269 | > | case NUM_LONG: | 
| 270 |  | { | 
| 271 | < | signedNumber(); | 
| 271 | > | intConst(); | 
| 272 | > | astFactory->addASTChild( currentAST, returnAST ); | 
| 273 | > | constant_AST = currentAST.root; | 
| 274 | > | break; | 
| 275 | > | } | 
| 276 | > | case NUM_FLOAT: | 
| 277 | > | case NUM_DOUBLE: | 
| 278 | > | { | 
| 279 | > | floatConst(); | 
| 280 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 281 |  | constant_AST = currentAST.root; | 
| 282 |  | break; | 
| 307 |  | } | 
| 308 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 309 |  | reportError(ex); | 
| 310 | < | recover(ex,_tokenSet_5); | 
| 310 | > | consume(); | 
| 311 | > | consumeUntil(_tokenSet_5); | 
| 312 |  | } | 
| 313 |  | returnAST = constant_AST; | 
| 314 |  | } | 
| 315 |  |  | 
| 316 | < | void MDParser::signedNumber() { | 
| 316 | > | void MDParser::intConst() { | 
| 317 |  | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 318 |  | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 319 | < | ANTLR_USE_NAMESPACE(antlr)RefAST signedNumber_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 319 | > | ANTLR_USE_NAMESPACE(antlr)RefAST intConst_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 320 |  |  | 
| 321 |  | try {      // for error handling | 
| 310 | – | { | 
| 322 |  | switch ( LA(1)) { | 
| 323 | < | case OCTALINT: | 
| 313 | < | case DECIMALINT: | 
| 314 | < | case HEXADECIMALINT: | 
| 323 | > | case NUM_INT: | 
| 324 |  | { | 
| 325 | < | intConst(); | 
| 326 | < | astFactory->addASTChild( currentAST, returnAST ); | 
| 325 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp15_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 326 | > | tmp15_AST = astFactory->create(LT(1)); | 
| 327 | > | astFactory->addASTChild(currentAST, tmp15_AST); | 
| 328 | > | match(NUM_INT); | 
| 329 | > | intConst_AST = currentAST.root; | 
| 330 |  | break; | 
| 331 |  | } | 
| 332 | < | case FLOATONE: | 
| 321 | < | case FLOATTWO: | 
| 332 | > | case NUM_LONG: | 
| 333 |  | { | 
| 334 | < | floatConst(); | 
| 335 | < | astFactory->addASTChild( currentAST, returnAST ); | 
| 334 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp16_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 335 | > | tmp16_AST = astFactory->create(LT(1)); | 
| 336 | > | astFactory->addASTChild(currentAST, tmp16_AST); | 
| 337 | > | match(NUM_LONG); | 
| 338 | > | intConst_AST = currentAST.root; | 
| 339 |  | break; | 
| 340 |  | } | 
| 341 |  | default: | 
| 343 |  | throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(LT(1), getFilename()); | 
| 344 |  | } | 
| 345 |  | } | 
| 332 | – | } | 
| 333 | – | signedNumber_AST = currentAST.root; | 
| 346 |  | } | 
| 347 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 348 |  | reportError(ex); | 
| 349 | < | recover(ex,_tokenSet_6); | 
| 349 | > | consume(); | 
| 350 | > | consumeUntil(_tokenSet_6); | 
| 351 |  | } | 
| 352 | < | returnAST = signedNumber_AST; | 
| 352 | > | returnAST = intConst_AST; | 
| 353 |  | } | 
| 354 |  |  | 
| 355 | + | void MDParser::floatConst() { | 
| 356 | + | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 357 | + | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 358 | + | ANTLR_USE_NAMESPACE(antlr)RefAST floatConst_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 359 | + |  | 
| 360 | + | try {      // for error handling | 
| 361 | + | switch ( LA(1)) { | 
| 362 | + | case NUM_FLOAT: | 
| 363 | + | { | 
| 364 | + | ANTLR_USE_NAMESPACE(antlr)RefAST tmp17_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 365 | + | tmp17_AST = astFactory->create(LT(1)); | 
| 366 | + | astFactory->addASTChild(currentAST, tmp17_AST); | 
| 367 | + | match(NUM_FLOAT); | 
| 368 | + | floatConst_AST = currentAST.root; | 
| 369 | + | break; | 
| 370 | + | } | 
| 371 | + | case NUM_DOUBLE: | 
| 372 | + | { | 
| 373 | + | ANTLR_USE_NAMESPACE(antlr)RefAST tmp18_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 374 | + | tmp18_AST = astFactory->create(LT(1)); | 
| 375 | + | astFactory->addASTChild(currentAST, tmp18_AST); | 
| 376 | + | match(NUM_DOUBLE); | 
| 377 | + | floatConst_AST = currentAST.root; | 
| 378 | + | break; | 
| 379 | + | } | 
| 380 | + | default: | 
| 381 | + | { | 
| 382 | + | throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(LT(1), getFilename()); | 
| 383 | + | } | 
| 384 | + | } | 
| 385 | + | } | 
| 386 | + | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 387 | + | reportError(ex); | 
| 388 | + | consume(); | 
| 389 | + | consumeUntil(_tokenSet_7); | 
| 390 | + | } | 
| 391 | + | returnAST = floatConst_AST; | 
| 392 | + | } | 
| 393 | + |  | 
| 394 |  | void MDParser::moleculestatement() { | 
| 395 |  | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 396 |  | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 462 |  | } | 
| 463 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 464 |  | reportError(ex); | 
| 465 | < | recover(ex,_tokenSet_7); | 
| 465 | > | consume(); | 
| 466 | > | consumeUntil(_tokenSet_8); | 
| 467 |  | } | 
| 468 |  | returnAST = moleculestatement_AST; | 
| 469 |  | } | 
| 474 |  | ANTLR_USE_NAMESPACE(antlr)RefAST atomblock_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 475 |  |  | 
| 476 |  | try {      // for error handling | 
| 477 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp15_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 478 | < | tmp15_AST = astFactory->create(LT(1)); | 
| 479 | < | astFactory->makeASTRoot(currentAST, tmp15_AST); | 
| 477 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp19_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 478 | > | tmp19_AST = astFactory->create(LT(1)); | 
| 479 | > | astFactory->makeASTRoot(currentAST, tmp19_AST); | 
| 480 |  | match(ATOM); | 
| 481 |  | match(LBRACKET); | 
| 482 |  | intConst(); | 
| 485 |  | match(LCURLY); | 
| 486 |  | { // ( ... )* | 
| 487 |  | for (;;) { | 
| 488 | < | if ((_tokenSet_8.member(LA(1)))) { | 
| 488 | > | if ((_tokenSet_9.member(LA(1)))) { | 
| 489 |  | atomstatement(); | 
| 490 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 491 |  | } | 
| 496 |  | } | 
| 497 |  | _loop19:; | 
| 498 |  | } // ( ... )* | 
| 499 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp19_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 500 | < | tmp19_AST = astFactory->create(LT(1)); | 
| 501 | < | astFactory->addASTChild(currentAST, tmp19_AST); | 
| 499 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp23_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 500 | > | tmp23_AST = astFactory->create(LT(1)); | 
| 501 | > | astFactory->addASTChild(currentAST, tmp23_AST); | 
| 502 |  | match(RCURLY); | 
| 503 | < | #line 81 "MDParser.g" | 
| 504 | < | tmp19_AST->setType(ENDBLOCK); | 
| 505 | < | #line 453 "MDParser.cpp" | 
| 503 | > | #line 84 "MDParser.g" | 
| 504 | > | tmp23_AST->setType(ENDBLOCK); | 
| 505 | > | #line 506 "MDParser.cpp" | 
| 506 |  | atomblock_AST = currentAST.root; | 
| 507 |  | } | 
| 508 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 509 |  | reportError(ex); | 
| 510 | < | recover(ex,_tokenSet_7); | 
| 510 | > | consume(); | 
| 511 | > | consumeUntil(_tokenSet_8); | 
| 512 |  | } | 
| 513 |  | returnAST = atomblock_AST; | 
| 514 |  | } | 
| 519 |  | ANTLR_USE_NAMESPACE(antlr)RefAST bondblock_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 520 |  |  | 
| 521 |  | try {      // for error handling | 
| 522 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp20_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 523 | < | tmp20_AST = astFactory->create(LT(1)); | 
| 524 | < | astFactory->makeASTRoot(currentAST, tmp20_AST); | 
| 522 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp24_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 523 | > | tmp24_AST = astFactory->create(LT(1)); | 
| 524 | > | astFactory->makeASTRoot(currentAST, tmp24_AST); | 
| 525 |  | match(BOND); | 
| 526 |  | { | 
| 527 |  | switch ( LA(1)) { | 
| 556 |  | } | 
| 557 |  | _loop24:; | 
| 558 |  | } // ( ... )* | 
| 559 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp24_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 560 | < | tmp24_AST = astFactory->create(LT(1)); | 
| 561 | < | astFactory->addASTChild(currentAST, tmp24_AST); | 
| 559 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp28_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 560 | > | tmp28_AST = astFactory->create(LT(1)); | 
| 561 | > | astFactory->addASTChild(currentAST, tmp28_AST); | 
| 562 |  | match(RCURLY); | 
| 563 | < | #line 90 "MDParser.g" | 
| 564 | < | tmp24_AST->setType(ENDBLOCK); | 
| 565 | < | #line 512 "MDParser.cpp" | 
| 563 | > | #line 93 "MDParser.g" | 
| 564 | > | tmp28_AST->setType(ENDBLOCK); | 
| 565 | > | #line 566 "MDParser.cpp" | 
| 566 |  | bondblock_AST = currentAST.root; | 
| 567 |  | } | 
| 568 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 569 |  | reportError(ex); | 
| 570 | < | recover(ex,_tokenSet_7); | 
| 570 | > | consume(); | 
| 571 | > | consumeUntil(_tokenSet_8); | 
| 572 |  | } | 
| 573 |  | returnAST = bondblock_AST; | 
| 574 |  | } | 
| 579 |  | ANTLR_USE_NAMESPACE(antlr)RefAST bendblock_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 580 |  |  | 
| 581 |  | try {      // for error handling | 
| 582 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp25_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 583 | < | tmp25_AST = astFactory->create(LT(1)); | 
| 584 | < | astFactory->makeASTRoot(currentAST, tmp25_AST); | 
| 582 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp29_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 583 | > | tmp29_AST = astFactory->create(LT(1)); | 
| 584 | > | astFactory->makeASTRoot(currentAST, tmp29_AST); | 
| 585 |  | match(BEND); | 
| 586 |  | { | 
| 587 |  | switch ( LA(1)) { | 
| 616 |  | } | 
| 617 |  | _loop29:; | 
| 618 |  | } // ( ... )* | 
| 619 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp29_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 620 | < | tmp29_AST = astFactory->create(LT(1)); | 
| 621 | < | astFactory->addASTChild(currentAST, tmp29_AST); | 
| 619 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp33_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 620 | > | tmp33_AST = astFactory->create(LT(1)); | 
| 621 | > | astFactory->addASTChild(currentAST, tmp33_AST); | 
| 622 |  | match(RCURLY); | 
| 623 | < | #line 97 "MDParser.g" | 
| 624 | < | tmp29_AST->setType(ENDBLOCK); | 
| 625 | < | #line 571 "MDParser.cpp" | 
| 623 | > | #line 100 "MDParser.g" | 
| 624 | > | tmp33_AST->setType(ENDBLOCK); | 
| 625 | > | #line 626 "MDParser.cpp" | 
| 626 |  | bendblock_AST = currentAST.root; | 
| 627 |  | } | 
| 628 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 629 |  | reportError(ex); | 
| 630 | < | recover(ex,_tokenSet_7); | 
| 630 | > | consume(); | 
| 631 | > | consumeUntil(_tokenSet_8); | 
| 632 |  | } | 
| 633 |  | returnAST = bendblock_AST; | 
| 634 |  | } | 
| 639 |  | ANTLR_USE_NAMESPACE(antlr)RefAST torsionblock_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 640 |  |  | 
| 641 |  | try {      // for error handling | 
| 642 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp30_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 643 | < | tmp30_AST = astFactory->create(LT(1)); | 
| 644 | < | astFactory->makeASTRoot(currentAST, tmp30_AST); | 
| 642 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp34_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 643 | > | tmp34_AST = astFactory->create(LT(1)); | 
| 644 | > | astFactory->makeASTRoot(currentAST, tmp34_AST); | 
| 645 |  | match(TORSION); | 
| 646 |  | { | 
| 647 |  | switch ( LA(1)) { | 
| 676 |  | } | 
| 677 |  | _loop34:; | 
| 678 |  | } // ( ... )* | 
| 679 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp34_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 680 | < | tmp34_AST = astFactory->create(LT(1)); | 
| 681 | < | astFactory->addASTChild(currentAST, tmp34_AST); | 
| 679 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp38_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 680 | > | tmp38_AST = astFactory->create(LT(1)); | 
| 681 | > | astFactory->addASTChild(currentAST, tmp38_AST); | 
| 682 |  | match(RCURLY); | 
| 683 | < | #line 104 "MDParser.g" | 
| 684 | < | tmp34_AST->setType(ENDBLOCK); | 
| 685 | < | #line 630 "MDParser.cpp" | 
| 683 | > | #line 107 "MDParser.g" | 
| 684 | > | tmp38_AST->setType(ENDBLOCK); | 
| 685 | > | #line 686 "MDParser.cpp" | 
| 686 |  | torsionblock_AST = currentAST.root; | 
| 687 |  | } | 
| 688 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 689 |  | reportError(ex); | 
| 690 | < | recover(ex,_tokenSet_7); | 
| 690 | > | consume(); | 
| 691 | > | consumeUntil(_tokenSet_8); | 
| 692 |  | } | 
| 693 |  | returnAST = torsionblock_AST; | 
| 694 |  | } | 
| 699 |  | ANTLR_USE_NAMESPACE(antlr)RefAST rigidbodyblock_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 700 |  |  | 
| 701 |  | try {      // for error handling | 
| 702 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp35_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 703 | < | tmp35_AST = astFactory->create(LT(1)); | 
| 704 | < | astFactory->makeASTRoot(currentAST, tmp35_AST); | 
| 702 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp39_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 703 | > | tmp39_AST = astFactory->create(LT(1)); | 
| 704 | > | astFactory->makeASTRoot(currentAST, tmp39_AST); | 
| 705 |  | match(RIGIDBODY); | 
| 706 |  | match(LBRACKET); | 
| 707 |  | intConst(); | 
| 715 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 716 |  | } | 
| 717 |  | else { | 
| 718 | < | goto _loop38; | 
| 718 | > | goto _loop43; | 
| 719 |  | } | 
| 720 |  |  | 
| 721 |  | } | 
| 722 | < | _loop38:; | 
| 722 | > | _loop43:; | 
| 723 |  | } // ( ... )* | 
| 724 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp39_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 725 | < | tmp39_AST = astFactory->create(LT(1)); | 
| 726 | < | astFactory->addASTChild(currentAST, tmp39_AST); | 
| 724 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp43_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 725 | > | tmp43_AST = astFactory->create(LT(1)); | 
| 726 | > | astFactory->addASTChild(currentAST, tmp43_AST); | 
| 727 |  | match(RCURLY); | 
| 728 | < | #line 111 "MDParser.g" | 
| 729 | < | tmp39_AST->setType(ENDBLOCK); | 
| 730 | < | #line 674 "MDParser.cpp" | 
| 728 | > | #line 121 "MDParser.g" | 
| 729 | > | tmp43_AST->setType(ENDBLOCK); | 
| 730 | > | #line 731 "MDParser.cpp" | 
| 731 |  | rigidbodyblock_AST = currentAST.root; | 
| 732 |  | } | 
| 733 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 734 |  | reportError(ex); | 
| 735 | < | recover(ex,_tokenSet_7); | 
| 735 | > | consume(); | 
| 736 | > | consumeUntil(_tokenSet_8); | 
| 737 |  | } | 
| 738 |  | returnAST = rigidbodyblock_AST; | 
| 739 |  | } | 
| 744 |  | ANTLR_USE_NAMESPACE(antlr)RefAST cutoffgroupblock_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 745 |  |  | 
| 746 |  | try {      // for error handling | 
| 747 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp40_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 748 | < | tmp40_AST = astFactory->create(LT(1)); | 
| 749 | < | astFactory->makeASTRoot(currentAST, tmp40_AST); | 
| 747 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp44_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 748 | > | tmp44_AST = astFactory->create(LT(1)); | 
| 749 | > | astFactory->makeASTRoot(currentAST, tmp44_AST); | 
| 750 |  | match(CUTOFFGROUP); | 
| 751 |  | { | 
| 752 |  | switch ( LA(1)) { | 
| 775 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 776 |  | } | 
| 777 |  | else { | 
| 778 | < | goto _loop43; | 
| 778 | > | goto _loop48; | 
| 779 |  | } | 
| 780 |  |  | 
| 781 |  | } | 
| 782 | < | _loop43:; | 
| 782 | > | _loop48:; | 
| 783 |  | } // ( ... )* | 
| 784 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp44_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 785 | < | tmp44_AST = astFactory->create(LT(1)); | 
| 786 | < | astFactory->addASTChild(currentAST, tmp44_AST); | 
| 784 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp48_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 785 | > | tmp48_AST = astFactory->create(LT(1)); | 
| 786 | > | astFactory->addASTChild(currentAST, tmp48_AST); | 
| 787 |  | match(RCURLY); | 
| 788 | < | #line 118 "MDParser.g" | 
| 789 | < | tmp44_AST->setType(ENDBLOCK); | 
| 790 | < | #line 733 "MDParser.cpp" | 
| 788 | > | #line 128 "MDParser.g" | 
| 789 | > | tmp48_AST->setType(ENDBLOCK); | 
| 790 | > | #line 791 "MDParser.cpp" | 
| 791 |  | cutoffgroupblock_AST = currentAST.root; | 
| 792 |  | } | 
| 793 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 794 |  | reportError(ex); | 
| 795 | < | recover(ex,_tokenSet_7); | 
| 795 | > | consume(); | 
| 796 | > | consumeUntil(_tokenSet_8); | 
| 797 |  | } | 
| 798 |  | returnAST = cutoffgroupblock_AST; | 
| 799 |  | } | 
| 804 |  | ANTLR_USE_NAMESPACE(antlr)RefAST fragmentblock_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 805 |  |  | 
| 806 |  | try {      // for error handling | 
| 807 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp45_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 808 | < | tmp45_AST = astFactory->create(LT(1)); | 
| 809 | < | astFactory->makeASTRoot(currentAST, tmp45_AST); | 
| 807 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp49_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 808 | > | tmp49_AST = astFactory->create(LT(1)); | 
| 809 | > | astFactory->makeASTRoot(currentAST, tmp49_AST); | 
| 810 |  | match(FRAGMENT); | 
| 811 |  | match(LBRACKET); | 
| 812 |  | intConst(); | 
| 820 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 821 |  | } | 
| 822 |  | else { | 
| 823 | < | goto _loop47; | 
| 823 | > | goto _loop52; | 
| 824 |  | } | 
| 825 |  |  | 
| 826 |  | } | 
| 827 | < | _loop47:; | 
| 827 | > | _loop52:; | 
| 828 |  | } // ( ... )* | 
| 829 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp49_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 830 | < | tmp49_AST = astFactory->create(LT(1)); | 
| 831 | < | astFactory->addASTChild(currentAST, tmp49_AST); | 
| 829 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp53_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 830 | > | tmp53_AST = astFactory->create(LT(1)); | 
| 831 | > | astFactory->addASTChild(currentAST, tmp53_AST); | 
| 832 |  | match(RCURLY); | 
| 833 | < | #line 125 "MDParser.g" | 
| 834 | < | tmp49_AST->setType(ENDBLOCK); | 
| 835 | < | #line 777 "MDParser.cpp" | 
| 833 | > | #line 135 "MDParser.g" | 
| 834 | > | tmp53_AST->setType(ENDBLOCK); | 
| 835 | > | #line 836 "MDParser.cpp" | 
| 836 |  | fragmentblock_AST = currentAST.root; | 
| 837 |  | } | 
| 838 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 839 |  | reportError(ex); | 
| 840 | < | recover(ex,_tokenSet_7); | 
| 840 | > | consume(); | 
| 841 | > | consumeUntil(_tokenSet_8); | 
| 842 |  | } | 
| 843 |  | returnAST = fragmentblock_AST; | 
| 844 |  | } | 
| 845 |  |  | 
| 786 | – | void MDParser::intConst() { | 
| 787 | – | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 788 | – | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 789 | – | ANTLR_USE_NAMESPACE(antlr)RefAST intConst_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 790 | – |  | 
| 791 | – | try {      // for error handling | 
| 792 | – | switch ( LA(1)) { | 
| 793 | – | case OCTALINT: | 
| 794 | – | { | 
| 795 | – | ANTLR_USE_NAMESPACE(antlr)RefAST tmp50_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 796 | – | tmp50_AST = astFactory->create(LT(1)); | 
| 797 | – | astFactory->addASTChild(currentAST, tmp50_AST); | 
| 798 | – | match(OCTALINT); | 
| 799 | – | intConst_AST = currentAST.root; | 
| 800 | – | break; | 
| 801 | – | } | 
| 802 | – | case DECIMALINT: | 
| 803 | – | { | 
| 804 | – | ANTLR_USE_NAMESPACE(antlr)RefAST tmp51_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 805 | – | tmp51_AST = astFactory->create(LT(1)); | 
| 806 | – | astFactory->addASTChild(currentAST, tmp51_AST); | 
| 807 | – | match(DECIMALINT); | 
| 808 | – | intConst_AST = currentAST.root; | 
| 809 | – | break; | 
| 810 | – | } | 
| 811 | – | case HEXADECIMALINT: | 
| 812 | – | { | 
| 813 | – | ANTLR_USE_NAMESPACE(antlr)RefAST tmp52_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 814 | – | tmp52_AST = astFactory->create(LT(1)); | 
| 815 | – | astFactory->addASTChild(currentAST, tmp52_AST); | 
| 816 | – | match(HEXADECIMALINT); | 
| 817 | – | intConst_AST = currentAST.root; | 
| 818 | – | break; | 
| 819 | – | } | 
| 820 | – | default: | 
| 821 | – | { | 
| 822 | – | throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(LT(1), getFilename()); | 
| 823 | – | } | 
| 824 | – | } | 
| 825 | – | } | 
| 826 | – | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 827 | – | reportError(ex); | 
| 828 | – | recover(ex,_tokenSet_9); | 
| 829 | – | } | 
| 830 | – | returnAST = intConst_AST; | 
| 831 | – | } | 
| 832 | – |  | 
| 846 |  | void MDParser::atomstatement() { | 
| 847 |  | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 848 |  | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 859 |  | } | 
| 860 |  | case POSITION: | 
| 861 |  | { | 
| 862 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp53_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 863 | < | tmp53_AST = astFactory->create(LT(1)); | 
| 864 | < | astFactory->makeASTRoot(currentAST, tmp53_AST); | 
| 862 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp54_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 863 | > | tmp54_AST = astFactory->create(LT(1)); | 
| 864 | > | astFactory->makeASTRoot(currentAST, tmp54_AST); | 
| 865 |  | match(POSITION); | 
| 866 |  | match(LPAREN); | 
| 867 | < | signedNumberTuple(); | 
| 867 | > | doubleNumberTuple(); | 
| 868 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 869 |  | match(RPAREN); | 
| 870 |  | match(SEMICOLON); | 
| 873 |  | } | 
| 874 |  | case ORIENTATION: | 
| 875 |  | { | 
| 876 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp57_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 877 | < | tmp57_AST = astFactory->create(LT(1)); | 
| 878 | < | astFactory->makeASTRoot(currentAST, tmp57_AST); | 
| 876 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp58_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 877 | > | tmp58_AST = astFactory->create(LT(1)); | 
| 878 | > | astFactory->makeASTRoot(currentAST, tmp58_AST); | 
| 879 |  | match(ORIENTATION); | 
| 880 |  | match(LPAREN); | 
| 881 | < | signedNumberTuple(); | 
| 881 | > | doubleNumberTuple(); | 
| 882 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 883 |  | match(RPAREN); | 
| 884 |  | match(SEMICOLON); | 
| 893 |  | } | 
| 894 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 895 |  | reportError(ex); | 
| 896 | < | recover(ex,_tokenSet_10); | 
| 896 | > | consume(); | 
| 897 | > | consumeUntil(_tokenSet_10); | 
| 898 |  | } | 
| 899 |  | returnAST = atomstatement_AST; | 
| 900 |  | } | 
| 901 |  |  | 
| 902 | < | void MDParser::signedNumberTuple() { | 
| 902 | > | void MDParser::doubleNumberTuple() { | 
| 903 |  | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 904 |  | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 905 | < | ANTLR_USE_NAMESPACE(antlr)RefAST signedNumberTuple_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 905 | > | ANTLR_USE_NAMESPACE(antlr)RefAST doubleNumberTuple_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 906 |  |  | 
| 907 |  | try {      // for error handling | 
| 908 | < | signedNumber(); | 
| 908 | > | doubleNumber(); | 
| 909 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 910 |  | { // ( ... )* | 
| 911 |  | for (;;) { | 
| 912 |  | if ((LA(1) == COMMA)) { | 
| 913 |  | match(COMMA); | 
| 914 | < | signedNumber(); | 
| 914 | > | doubleNumber(); | 
| 915 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 916 |  | } | 
| 917 |  | else { | 
| 918 | < | goto _loop51; | 
| 918 | > | goto _loop56; | 
| 919 |  | } | 
| 920 |  |  | 
| 921 |  | } | 
| 922 | < | _loop51:; | 
| 922 | > | _loop56:; | 
| 923 |  | } // ( ... )* | 
| 924 | < | signedNumberTuple_AST = currentAST.root; | 
| 924 | > | doubleNumberTuple_AST = currentAST.root; | 
| 925 |  | } | 
| 926 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 927 |  | reportError(ex); | 
| 928 | < | recover(ex,_tokenSet_11); | 
| 928 | > | consume(); | 
| 929 | > | consumeUntil(_tokenSet_11); | 
| 930 |  | } | 
| 931 | < | returnAST = signedNumberTuple_AST; | 
| 931 | > | returnAST = doubleNumberTuple_AST; | 
| 932 |  | } | 
| 933 |  |  | 
| 934 |  | void MDParser::bondstatement() { | 
| 947 |  | } | 
| 948 |  | case MEMBERS: | 
| 949 |  | { | 
| 950 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp62_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 951 | < | tmp62_AST = astFactory->create(LT(1)); | 
| 952 | < | astFactory->makeASTRoot(currentAST, tmp62_AST); | 
| 950 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp63_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 951 | > | tmp63_AST = astFactory->create(LT(1)); | 
| 952 | > | astFactory->makeASTRoot(currentAST, tmp63_AST); | 
| 953 |  | match(MEMBERS); | 
| 954 |  | match(LPAREN); | 
| 955 |  | inttuple(); | 
| 967 |  | } | 
| 968 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 969 |  | reportError(ex); | 
| 970 | < | recover(ex,_tokenSet_12); | 
| 970 | > | consume(); | 
| 971 | > | consumeUntil(_tokenSet_12); | 
| 972 |  | } | 
| 973 |  | returnAST = bondstatement_AST; | 
| 974 |  | } | 
| 989 |  | astFactory->addASTChild( currentAST, returnAST ); | 
| 990 |  | } | 
| 991 |  | else { | 
| 992 | < | goto _loop54; | 
| 992 | > | goto _loop59; | 
| 993 |  | } | 
| 994 |  |  | 
| 995 |  | } | 
| 996 | < | _loop54:; | 
| 996 | > | _loop59:; | 
| 997 |  | } // ( ... )* | 
| 998 |  | inttuple_AST = currentAST.root; | 
| 999 |  | } | 
| 1000 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1001 |  | reportError(ex); | 
| 1002 | < | recover(ex,_tokenSet_11); | 
| 1002 | > | consume(); | 
| 1003 | > | consumeUntil(_tokenSet_11); | 
| 1004 |  | } | 
| 1005 |  | returnAST = inttuple_AST; | 
| 1006 |  | } | 
| 1021 |  | } | 
| 1022 |  | case MEMBERS: | 
| 1023 |  | { | 
| 1024 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp67_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1025 | < | tmp67_AST = astFactory->create(LT(1)); | 
| 1026 | < | astFactory->makeASTRoot(currentAST, tmp67_AST); | 
| 1024 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp68_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1025 | > | tmp68_AST = astFactory->create(LT(1)); | 
| 1026 | > | astFactory->makeASTRoot(currentAST, tmp68_AST); | 
| 1027 |  | match(MEMBERS); | 
| 1028 |  | match(LPAREN); | 
| 1029 |  | inttuple(); | 
| 1041 |  | } | 
| 1042 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1043 |  | reportError(ex); | 
| 1044 | < | recover(ex,_tokenSet_12); | 
| 1044 | > | consume(); | 
| 1045 | > | consumeUntil(_tokenSet_12); | 
| 1046 |  | } | 
| 1047 |  | returnAST = bendstatement_AST; | 
| 1048 |  | } | 
| 1063 |  | } | 
| 1064 |  | case MEMBERS: | 
| 1065 |  | { | 
| 1066 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp71_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1067 | < | tmp71_AST = astFactory->create(LT(1)); | 
| 1068 | < | astFactory->makeASTRoot(currentAST, tmp71_AST); | 
| 1066 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp72_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1067 | > | tmp72_AST = astFactory->create(LT(1)); | 
| 1068 | > | astFactory->makeASTRoot(currentAST, tmp72_AST); | 
| 1069 |  | match(MEMBERS); | 
| 1070 |  | match(LPAREN); | 
| 1071 |  | inttuple(); | 
| 1083 |  | } | 
| 1084 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1085 |  | reportError(ex); | 
| 1086 | < | recover(ex,_tokenSet_12); | 
| 1086 | > | consume(); | 
| 1087 | > | consumeUntil(_tokenSet_12); | 
| 1088 |  | } | 
| 1089 |  | returnAST = torsionstatement_AST; | 
| 1090 |  | } | 
| 1091 |  |  | 
| 1092 | + | void MDParser::inversionblock() { | 
| 1093 | + | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1094 | + | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 1095 | + | ANTLR_USE_NAMESPACE(antlr)RefAST inversionblock_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1096 | + |  | 
| 1097 | + | try {      // for error handling | 
| 1098 | + | ANTLR_USE_NAMESPACE(antlr)RefAST tmp76_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1099 | + | tmp76_AST = astFactory->create(LT(1)); | 
| 1100 | + | astFactory->makeASTRoot(currentAST, tmp76_AST); | 
| 1101 | + | match(INVERSION); | 
| 1102 | + | { | 
| 1103 | + | switch ( LA(1)) { | 
| 1104 | + | case LBRACKET: | 
| 1105 | + | { | 
| 1106 | + | match(LBRACKET); | 
| 1107 | + | intConst(); | 
| 1108 | + | match(RBRACKET); | 
| 1109 | + | break; | 
| 1110 | + | } | 
| 1111 | + | case LCURLY: | 
| 1112 | + | { | 
| 1113 | + | break; | 
| 1114 | + | } | 
| 1115 | + | default: | 
| 1116 | + | { | 
| 1117 | + | throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(LT(1), getFilename()); | 
| 1118 | + | } | 
| 1119 | + | } | 
| 1120 | + | } | 
| 1121 | + | match(LCURLY); | 
| 1122 | + | { // ( ... )* | 
| 1123 | + | for (;;) { | 
| 1124 | + | if ((LA(1) == CENTER || LA(1) == ID)) { | 
| 1125 | + | inversionstatement(); | 
| 1126 | + | astFactory->addASTChild( currentAST, returnAST ); | 
| 1127 | + | } | 
| 1128 | + | else { | 
| 1129 | + | goto _loop39; | 
| 1130 | + | } | 
| 1131 | + |  | 
| 1132 | + | } | 
| 1133 | + | _loop39:; | 
| 1134 | + | } // ( ... )* | 
| 1135 | + | ANTLR_USE_NAMESPACE(antlr)RefAST tmp80_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1136 | + | tmp80_AST = astFactory->create(LT(1)); | 
| 1137 | + | astFactory->addASTChild(currentAST, tmp80_AST); | 
| 1138 | + | match(RCURLY); | 
| 1139 | + | #line 114 "MDParser.g" | 
| 1140 | + | tmp80_AST->setType(ENDBLOCK); | 
| 1141 | + | #line 1142 "MDParser.cpp" | 
| 1142 | + | inversionblock_AST = currentAST.root; | 
| 1143 | + | } | 
| 1144 | + | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1145 | + | reportError(ex); | 
| 1146 | + | consume(); | 
| 1147 | + | consumeUntil(_tokenSet_1); | 
| 1148 | + | } | 
| 1149 | + | returnAST = inversionblock_AST; | 
| 1150 | + | } | 
| 1151 | + |  | 
| 1152 | + | void MDParser::inversionstatement() { | 
| 1153 | + | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1154 | + | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 1155 | + | ANTLR_USE_NAMESPACE(antlr)RefAST inversionstatement_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1156 | + |  | 
| 1157 | + | try {      // for error handling | 
| 1158 | + | switch ( LA(1)) { | 
| 1159 | + | case ID: | 
| 1160 | + | { | 
| 1161 | + | assignment(); | 
| 1162 | + | astFactory->addASTChild( currentAST, returnAST ); | 
| 1163 | + | inversionstatement_AST = currentAST.root; | 
| 1164 | + | break; | 
| 1165 | + | } | 
| 1166 | + | case CENTER: | 
| 1167 | + | { | 
| 1168 | + | ANTLR_USE_NAMESPACE(antlr)RefAST tmp81_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1169 | + | tmp81_AST = astFactory->create(LT(1)); | 
| 1170 | + | astFactory->makeASTRoot(currentAST, tmp81_AST); | 
| 1171 | + | match(CENTER); | 
| 1172 | + | match(LPAREN); | 
| 1173 | + | intConst(); | 
| 1174 | + | astFactory->addASTChild( currentAST, returnAST ); | 
| 1175 | + | match(RPAREN); | 
| 1176 | + | match(SEMICOLON); | 
| 1177 | + | inversionstatement_AST = currentAST.root; | 
| 1178 | + | break; | 
| 1179 | + | } | 
| 1180 | + | default: | 
| 1181 | + | { | 
| 1182 | + | throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(LT(1), getFilename()); | 
| 1183 | + | } | 
| 1184 | + | } | 
| 1185 | + | } | 
| 1186 | + | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1187 | + | reportError(ex); | 
| 1188 | + | consume(); | 
| 1189 | + | consumeUntil(_tokenSet_13); | 
| 1190 | + | } | 
| 1191 | + | returnAST = inversionstatement_AST; | 
| 1192 | + | } | 
| 1193 | + |  | 
| 1194 |  | void MDParser::rigidbodystatement() { | 
| 1195 |  | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1196 |  | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 1207 |  | } | 
| 1208 |  | case MEMBERS: | 
| 1209 |  | { | 
| 1210 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp75_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1211 | < | tmp75_AST = astFactory->create(LT(1)); | 
| 1212 | < | astFactory->makeASTRoot(currentAST, tmp75_AST); | 
| 1210 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp85_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1211 | > | tmp85_AST = astFactory->create(LT(1)); | 
| 1212 | > | astFactory->makeASTRoot(currentAST, tmp85_AST); | 
| 1213 |  | match(MEMBERS); | 
| 1214 |  | match(LPAREN); | 
| 1215 |  | inttuple(); | 
| 1227 |  | } | 
| 1228 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1229 |  | reportError(ex); | 
| 1230 | < | recover(ex,_tokenSet_12); | 
| 1230 | > | consume(); | 
| 1231 | > | consumeUntil(_tokenSet_12); | 
| 1232 |  | } | 
| 1233 |  | returnAST = rigidbodystatement_AST; | 
| 1234 |  | } | 
| 1249 |  | } | 
| 1250 |  | case MEMBERS: | 
| 1251 |  | { | 
| 1252 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp79_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1253 | < | tmp79_AST = astFactory->create(LT(1)); | 
| 1254 | < | astFactory->makeASTRoot(currentAST, tmp79_AST); | 
| 1252 | > | ANTLR_USE_NAMESPACE(antlr)RefAST tmp89_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1253 | > | tmp89_AST = astFactory->create(LT(1)); | 
| 1254 | > | astFactory->makeASTRoot(currentAST, tmp89_AST); | 
| 1255 |  | match(MEMBERS); | 
| 1256 |  | match(LPAREN); | 
| 1257 |  | inttuple(); | 
| 1269 |  | } | 
| 1270 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1271 |  | reportError(ex); | 
| 1272 | < | recover(ex,_tokenSet_12); | 
| 1272 | > | consume(); | 
| 1273 | > | consumeUntil(_tokenSet_12); | 
| 1274 |  | } | 
| 1275 |  | returnAST = cutoffgroupstatement_AST; | 
| 1276 |  | } | 
| 1287 |  | } | 
| 1288 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1289 |  | reportError(ex); | 
| 1290 | < | recover(ex,_tokenSet_13); | 
| 1290 | > | consume(); | 
| 1291 | > | consumeUntil(_tokenSet_14); | 
| 1292 |  | } | 
| 1293 |  | returnAST = fragmentstatement_AST; | 
| 1294 |  | } | 
| 1295 |  |  | 
| 1296 | < | void MDParser::floatConst() { | 
| 1296 | > | void MDParser::doubleNumber() { | 
| 1297 |  | returnAST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1298 |  | ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; | 
| 1299 | < | ANTLR_USE_NAMESPACE(antlr)RefAST floatConst_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1299 | > | ANTLR_USE_NAMESPACE(antlr)RefAST doubleNumber_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1300 |  |  | 
| 1301 |  | try {      // for error handling | 
| 1302 | + | { | 
| 1303 |  | switch ( LA(1)) { | 
| 1304 | < | case FLOATONE: | 
| 1304 | > | case NUM_INT: | 
| 1305 | > | case NUM_LONG: | 
| 1306 |  | { | 
| 1307 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp83_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1308 | < | tmp83_AST = astFactory->create(LT(1)); | 
| 1183 | < | astFactory->addASTChild(currentAST, tmp83_AST); | 
| 1184 | < | match(FLOATONE); | 
| 1185 | < | floatConst_AST = currentAST.root; | 
| 1307 | > | intConst(); | 
| 1308 | > | astFactory->addASTChild( currentAST, returnAST ); | 
| 1309 |  | break; | 
| 1310 |  | } | 
| 1311 | < | case FLOATTWO: | 
| 1311 | > | case NUM_FLOAT: | 
| 1312 | > | case NUM_DOUBLE: | 
| 1313 |  | { | 
| 1314 | < | ANTLR_USE_NAMESPACE(antlr)RefAST tmp84_AST = ANTLR_USE_NAMESPACE(antlr)nullAST; | 
| 1315 | < | tmp84_AST = astFactory->create(LT(1)); | 
| 1192 | < | astFactory->addASTChild(currentAST, tmp84_AST); | 
| 1193 | < | match(FLOATTWO); | 
| 1194 | < | floatConst_AST = currentAST.root; | 
| 1314 | > | floatConst(); | 
| 1315 | > | astFactory->addASTChild( currentAST, returnAST ); | 
| 1316 |  | break; | 
| 1317 |  | } | 
| 1318 |  | default: | 
| 1320 |  | throw ANTLR_USE_NAMESPACE(antlr)NoViableAltException(LT(1), getFilename()); | 
| 1321 |  | } | 
| 1322 |  | } | 
| 1323 | + | } | 
| 1324 | + | doubleNumber_AST = currentAST.root; | 
| 1325 |  | } | 
| 1326 |  | catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { | 
| 1327 |  | reportError(ex); | 
| 1328 | < | recover(ex,_tokenSet_6); | 
| 1328 | > | consume(); | 
| 1329 | > | consumeUntil(_tokenSet_15); | 
| 1330 |  | } | 
| 1331 | < | returnAST = floatConst_AST; | 
| 1331 | > | returnAST = doubleNumber_AST; | 
| 1332 |  | } | 
| 1333 |  |  | 
| 1334 |  | void MDParser::initializeASTFactory( ANTLR_USE_NAMESPACE(antlr)ASTFactory& factory ) | 
| 1335 |  | { | 
| 1336 | < | factory.setMaxNodeType(53); | 
| 1336 | > | factory.setMaxNodeType(52); | 
| 1337 |  | } | 
| 1338 |  | const char* MDParser::tokenNames[] = { | 
| 1339 |  | "<0>", | 
| 1347 |  | "\"bond\"", | 
| 1348 |  | "\"bend\"", | 
| 1349 |  | "\"torsion\"", | 
| 1350 | + | "\"inversion\"", | 
| 1351 |  | "\"rigidBody\"", | 
| 1352 |  | "\"cutoffGroup\"", | 
| 1353 |  | "\"fragment\"", | 
| 1354 |  | "\"members\"", | 
| 1355 | + | "\"center\"", | 
| 1356 |  | "\"position\"", | 
| 1357 |  | "\"orientation\"", | 
| 1358 |  | "ENDBLOCK", | 
| 1367 |  | "LPAREN", | 
| 1368 |  | "RPAREN", | 
| 1369 |  | "COMMA", | 
| 1370 | < | "OCTALINT", | 
| 1371 | < | "DECIMALINT", | 
| 1372 | < | "HEXADECIMALINT", | 
| 1373 | < | "FLOATONE", | 
| 1248 | < | "FLOATTWO", | 
| 1370 | > | "NUM_INT", | 
| 1371 | > | "NUM_LONG", | 
| 1372 | > | "NUM_FLOAT", | 
| 1373 | > | "NUM_DOUBLE", | 
| 1374 |  | "DOT", | 
| 1375 |  | "COLON", | 
| 1376 |  | "QUESTIONMARK", | 
| 1383 |  | "CharLiteral", | 
| 1384 |  | "EndOfLine", | 
| 1385 |  | "Escape", | 
| 1386 | + | "Vocabulary", | 
| 1387 |  | "Digit", | 
| 1388 |  | "Decimal", | 
| 1389 | < | "LongSuffix", | 
| 1390 | < | "UnsignedSuffix", | 
| 1391 | < | "FloatSuffix", | 
| 1266 | < | "Exponent", | 
| 1267 | < | "Vocabulary", | 
| 1268 | < | "Number", | 
| 1389 | > | "HEX_DIGIT", | 
| 1390 | > | "EXPONENT", | 
| 1391 | > | "FLOAT_SUFFIX", | 
| 1392 |  | 0 | 
| 1393 |  | }; | 
| 1394 |  |  | 
| 1395 | < | const unsigned long MDParser::_tokenSet_0_data_[] = { 262256UL, 0UL, 0UL, 0UL }; | 
| 1395 | > | const unsigned long MDParser::_tokenSet_0_data_[] = { 1048688UL, 0UL, 0UL, 0UL }; | 
| 1396 |  | // "component" "molecule" "zconstraint" ID | 
| 1397 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_0(_tokenSet_0_data_,4); | 
| 1398 |  | const unsigned long MDParser::_tokenSet_1_data_[] = { 2UL, 0UL, 0UL, 0UL }; | 
| 1399 |  | // EOF | 
| 1400 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_1(_tokenSet_1_data_,4); | 
| 1401 | < | const unsigned long MDParser::_tokenSet_2_data_[] = { 262258UL, 0UL, 0UL, 0UL }; | 
| 1401 | > | const unsigned long MDParser::_tokenSet_2_data_[] = { 1048690UL, 0UL, 0UL, 0UL }; | 
| 1402 |  | // EOF "component" "molecule" "zconstraint" ID | 
| 1403 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_2(_tokenSet_2_data_,4); | 
| 1404 | < | const unsigned long MDParser::_tokenSet_3_data_[] = { 8781810UL, 0UL, 0UL, 0UL }; | 
| 1404 | > | const unsigned long MDParser::_tokenSet_3_data_[] = { 35125234UL, 0UL, 0UL, 0UL }; | 
| 1405 |  | // EOF "component" "molecule" "zconstraint" "atom" "bond" "bend" "torsion" | 
| 1406 | < | // "rigidBody" "cutoffGroup" "fragment" "members" "position" "orientation" | 
| 1406 | > | // "rigidBody" "cutoffGroup" "fragment" "members" "center" "position" "orientation" | 
| 1407 |  | // ID RCURLY | 
| 1408 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_3(_tokenSet_3_data_,4); | 
| 1409 | < | const unsigned long MDParser::_tokenSet_4_data_[] = { 278400UL, 0UL, 0UL, 0UL }; | 
| 1409 | > | const unsigned long MDParser::_tokenSet_4_data_[] = { 1079168UL, 0UL, 0UL, 0UL }; | 
| 1410 |  | // "atom" "bond" "bend" "torsion" "rigidBody" "cutoffGroup" "fragment" | 
| 1411 |  | // ID | 
| 1412 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_4(_tokenSet_4_data_,4); | 
| 1413 | < | const unsigned long MDParser::_tokenSet_5_data_[] = { 1048576UL, 0UL, 0UL, 0UL }; | 
| 1413 | > | const unsigned long MDParser::_tokenSet_5_data_[] = { 4194304UL, 0UL, 0UL, 0UL }; | 
| 1414 |  | // SEMICOLON | 
| 1415 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_5(_tokenSet_5_data_,4); | 
| 1416 | < | const unsigned long MDParser::_tokenSet_6_data_[] = { 403701760UL, 0UL, 0UL, 0UL }; | 
| 1417 | < | // SEMICOLON RPAREN COMMA | 
| 1416 | > | const unsigned long MDParser::_tokenSet_6_data_[] = { 1749024768UL, 0UL, 0UL, 0UL }; | 
| 1417 | > | // SEMICOLON RBRACKET RPAREN COMMA | 
| 1418 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_6(_tokenSet_6_data_,4); | 
| 1419 | < | const unsigned long MDParser::_tokenSet_7_data_[] = { 8667008UL, 0UL, 0UL, 0UL }; | 
| 1419 | > | const unsigned long MDParser::_tokenSet_7_data_[] = { 1614807040UL, 0UL, 0UL, 0UL }; | 
| 1420 | > | // SEMICOLON RPAREN COMMA | 
| 1421 | > | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_7(_tokenSet_7_data_,4); | 
| 1422 | > | const unsigned long MDParser::_tokenSet_8_data_[] = { 34633600UL, 0UL, 0UL, 0UL }; | 
| 1423 |  | // "atom" "bond" "bend" "torsion" "rigidBody" "cutoffGroup" "fragment" | 
| 1424 |  | // ID RCURLY | 
| 1299 | – | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_7(_tokenSet_7_data_,4); | 
| 1300 | – | const unsigned long MDParser::_tokenSet_8_data_[] = { 360448UL, 0UL, 0UL, 0UL }; | 
| 1301 | – | // "position" "orientation" ID | 
| 1425 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_8(_tokenSet_8_data_,4); | 
| 1426 | < | const unsigned long MDParser::_tokenSet_9_data_[] = { 437256192UL, 0UL, 0UL, 0UL }; | 
| 1427 | < | // SEMICOLON RBRACKET RPAREN COMMA | 
| 1426 | > | const unsigned long MDParser::_tokenSet_9_data_[] = { 1441792UL, 0UL, 0UL, 0UL }; | 
| 1427 | > | // "position" "orientation" ID | 
| 1428 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_9(_tokenSet_9_data_,4); | 
| 1429 | < | const unsigned long MDParser::_tokenSet_10_data_[] = { 8749056UL, 0UL, 0UL, 0UL }; | 
| 1429 | > | const unsigned long MDParser::_tokenSet_10_data_[] = { 34996224UL, 0UL, 0UL, 0UL }; | 
| 1430 |  | // "position" "orientation" ID RCURLY | 
| 1431 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_10(_tokenSet_10_data_,4); | 
| 1432 | < | const unsigned long MDParser::_tokenSet_11_data_[] = { 134217728UL, 0UL, 0UL, 0UL }; | 
| 1432 | > | const unsigned long MDParser::_tokenSet_11_data_[] = { 536870912UL, 0UL, 0UL, 0UL }; | 
| 1433 |  | // RPAREN | 
| 1434 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_11(_tokenSet_11_data_,4); | 
| 1435 | < | const unsigned long MDParser::_tokenSet_12_data_[] = { 8667136UL, 0UL, 0UL, 0UL }; | 
| 1435 | > | const unsigned long MDParser::_tokenSet_12_data_[] = { 34635776UL, 0UL, 0UL, 0UL }; | 
| 1436 |  | // "members" ID RCURLY | 
| 1437 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_12(_tokenSet_12_data_,4); | 
| 1438 | < | const unsigned long MDParser::_tokenSet_13_data_[] = { 8650752UL, 0UL, 0UL, 0UL }; | 
| 1439 | < | // ID RCURLY | 
| 1438 | > | const unsigned long MDParser::_tokenSet_13_data_[] = { 34668544UL, 0UL, 0UL, 0UL }; | 
| 1439 | > | // "center" ID RCURLY | 
| 1440 |  | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_13(_tokenSet_13_data_,4); | 
| 1441 | + | const unsigned long MDParser::_tokenSet_14_data_[] = { 34603008UL, 0UL, 0UL, 0UL }; | 
| 1442 | + | // ID RCURLY | 
| 1443 | + | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_14(_tokenSet_14_data_,4); | 
| 1444 | + | const unsigned long MDParser::_tokenSet_15_data_[] = { 1610612736UL, 0UL, 0UL, 0UL }; | 
| 1445 | + | // RPAREN COMMA | 
| 1446 | + | const ANTLR_USE_NAMESPACE(antlr)BitSet MDParser::_tokenSet_15(_tokenSet_15_data_,4); | 
| 1447 |  |  | 
| 1448 |  |  |