001// 002// Generated by JTB 1.3.2 003// 004 005package jtb.visitor; 006import jtb.syntaxtree.*; 007import java.util.*; 008 009/** 010 * Provides default methods which visit each node in the tree in depth-first 011 * order. Your visitors may extend this class. 012 */ 013public class GJNoArguDepthFirst<R> implements GJNoArguVisitor<R> { 014 // 015 // Auto class visitors--probably don't need to be overridden. 016 // 017 public R visit(NodeList n) { 018 R _ret=null; 019 int _count=0; 020 for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) { 021 e.nextElement().accept(this); 022 _count++; 023 } 024 return _ret; 025 } 026 027 public R visit(NodeListOptional n) { 028 if ( n.present() ) { 029 R _ret=null; 030 int _count=0; 031 for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) { 032 e.nextElement().accept(this); 033 _count++; 034 } 035 return _ret; 036 } 037 else 038 return null; 039 } 040 041 public R visit(NodeOptional n) { 042 if ( n.present() ) 043 return n.node.accept(this); 044 else 045 return null; 046 } 047 048 public R visit(NodeSequence n) { 049 R _ret=null; 050 int _count=0; 051 for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) { 052 e.nextElement().accept(this); 053 _count++; 054 } 055 return _ret; 056 } 057 058 public R visit(NodeToken n) { return null; } 059 060 // 061 // User-generated visitor methods below 062 // 063 064 // f0 -> [ PackageDeclaration() ] 065 // f1 -> ( ImportDeclaration() )* 066 // f2 -> ( TypeDeclaration() )* 067 // f3 -> ( <"\u001a"> )? 068 // f4 -> ( <STUFF_TO_IGNORE: ~[]> )? 069 // f5 -> <EOF> 070 public R visit(CompilationUnit n) { 071 R _ret=null; 072 n.f0.accept(this); 073 n.f1.accept(this); 074 n.f2.accept(this); 075 n.f3.accept(this); 076 n.f4.accept(this); 077 n.f5.accept(this); 078 return _ret; 079 } 080 081 // f0 -> Modifiers() 082 // f1 -> "package" 083 // f2 -> Name() 084 // f3 -> ";" 085 public R visit(PackageDeclaration n) { 086 R _ret=null; 087 n.f0.accept(this); 088 n.f1.accept(this); 089 n.f2.accept(this); 090 n.f3.accept(this); 091 return _ret; 092 } 093 094 // f0 -> "import" 095 // f1 -> [ "static" ] 096 // f2 -> Name() 097 // f3 -> [ "." "*" ] 098 // f4 -> ";" 099 public R visit(ImportDeclaration n) { 100 R _ret=null; 101 n.f0.accept(this); 102 n.f1.accept(this); 103 n.f2.accept(this); 104 n.f3.accept(this); 105 n.f4.accept(this); 106 return _ret; 107 } 108 109 // f0 -> ( ( "public" | "static" | "protected" | "private" | "final" | "abstract" | "synchronized" | "native" | "transient" | "volatile" | "strictfp" | Annotation() ) )* 110 public R visit(Modifiers n) { 111 R _ret=null; 112 n.f0.accept(this); 113 return _ret; 114 } 115 116 // f0 -> ";" 117 // | Modifiers() ( ClassOrInterfaceDeclaration(modifiers) | EnumDeclaration(modifiers) | AnnotationTypeDeclaration(modifiers) ) 118 public R visit(TypeDeclaration n) { 119 R _ret=null; 120 n.f0.accept(this); 121 return _ret; 122 } 123 124 // f0 -> ( "class" | "interface" ) 125 // f1 -> <IDENTIFIER> 126 // f2 -> [ TypeParameters() ] 127 // f3 -> [ ExtendsList(isInterface) ] 128 // f4 -> [ ImplementsList(isInterface) ] 129 // f5 -> ClassOrInterfaceBody(isInterface) 130 public R visit(ClassOrInterfaceDeclaration n) { 131 R _ret=null; 132 n.f0.accept(this); 133 n.f1.accept(this); 134 n.f2.accept(this); 135 n.f3.accept(this); 136 n.f4.accept(this); 137 n.f5.accept(this); 138 return _ret; 139 } 140 141 // f0 -> "extends" 142 // f1 -> ClassOrInterfaceType() 143 // f2 -> ( "," ClassOrInterfaceType() )* 144 public R visit(ExtendsList n) { 145 R _ret=null; 146 n.f0.accept(this); 147 n.f1.accept(this); 148 n.f2.accept(this); 149 return _ret; 150 } 151 152 // f0 -> "implements" 153 // f1 -> ClassOrInterfaceType() 154 // f2 -> ( "," ClassOrInterfaceType() )* 155 public R visit(ImplementsList n) { 156 R _ret=null; 157 n.f0.accept(this); 158 n.f1.accept(this); 159 n.f2.accept(this); 160 return _ret; 161 } 162 163 // f0 -> "enum" 164 // f1 -> <IDENTIFIER> 165 // f2 -> [ ImplementsList(false) ] 166 // f3 -> EnumBody() 167 public R visit(EnumDeclaration n) { 168 R _ret=null; 169 n.f0.accept(this); 170 n.f1.accept(this); 171 n.f2.accept(this); 172 n.f3.accept(this); 173 return _ret; 174 } 175 176 // f0 -> "{" 177 // f1 -> [ EnumConstant() ( "," EnumConstant() )* ] 178 // f2 -> [ "," ] 179 // f3 -> [ ";" ( ClassOrInterfaceBodyDeclaration(false) )* ] 180 // f4 -> "}" 181 public R visit(EnumBody n) { 182 R _ret=null; 183 n.f0.accept(this); 184 n.f1.accept(this); 185 n.f2.accept(this); 186 n.f3.accept(this); 187 n.f4.accept(this); 188 return _ret; 189 } 190 191 // f0 -> Modifiers() 192 // f1 -> <IDENTIFIER> 193 // f2 -> [ Arguments() ] 194 // f3 -> [ ClassOrInterfaceBody(false) ] 195 public R visit(EnumConstant n) { 196 R _ret=null; 197 n.f0.accept(this); 198 n.f1.accept(this); 199 n.f2.accept(this); 200 n.f3.accept(this); 201 return _ret; 202 } 203 204 // f0 -> "<" 205 // f1 -> TypeParameter() 206 // f2 -> ( "," TypeParameter() )* 207 // f3 -> ">" 208 public R visit(TypeParameters n) { 209 R _ret=null; 210 n.f0.accept(this); 211 n.f1.accept(this); 212 n.f2.accept(this); 213 n.f3.accept(this); 214 return _ret; 215 } 216 217 // f0 -> <IDENTIFIER> 218 // f1 -> [ TypeBound() ] 219 public R visit(TypeParameter n) { 220 R _ret=null; 221 n.f0.accept(this); 222 n.f1.accept(this); 223 return _ret; 224 } 225 226 // f0 -> "extends" 227 // f1 -> ClassOrInterfaceType() 228 // f2 -> ( "&" ClassOrInterfaceType() )* 229 public R visit(TypeBound n) { 230 R _ret=null; 231 n.f0.accept(this); 232 n.f1.accept(this); 233 n.f2.accept(this); 234 return _ret; 235 } 236 237 // f0 -> "{" 238 // f1 -> ( ClassOrInterfaceBodyDeclaration(isInterface) )* 239 // f2 -> "}" 240 public R visit(ClassOrInterfaceBody n) { 241 R _ret=null; 242 n.f0.accept(this); 243 n.f1.accept(this); 244 n.f2.accept(this); 245 return _ret; 246 } 247 248 // f0 -> Initializer() 249 // | Modifiers() ( ClassOrInterfaceDeclaration(modifiers) | EnumDeclaration(modifiers) | ConstructorDeclaration() | FieldDeclaration(modifiers) | MethodDeclaration(modifiers) | AnnotationTypeDeclaration(modifiers) ) 250 // | ";" 251 public R visit(ClassOrInterfaceBodyDeclaration n) { 252 R _ret=null; 253 n.f0.accept(this); 254 return _ret; 255 } 256 257 // f0 -> Type() 258 // f1 -> VariableDeclarator() 259 // f2 -> ( "," VariableDeclarator() )* 260 // f3 -> ";" 261 public R visit(FieldDeclaration n) { 262 R _ret=null; 263 n.f0.accept(this); 264 n.f1.accept(this); 265 n.f2.accept(this); 266 n.f3.accept(this); 267 return _ret; 268 } 269 270 // f0 -> VariableDeclaratorId() 271 // f1 -> [ "=" VariableInitializer() ] 272 public R visit(VariableDeclarator n) { 273 R _ret=null; 274 n.f0.accept(this); 275 n.f1.accept(this); 276 return _ret; 277 } 278 279 // f0 -> <IDENTIFIER> 280 // f1 -> ( "[" "]" )* 281 public R visit(VariableDeclaratorId n) { 282 R _ret=null; 283 n.f0.accept(this); 284 n.f1.accept(this); 285 return _ret; 286 } 287 288 // f0 -> ArrayInitializer() 289 // | Expression() 290 public R visit(VariableInitializer n) { 291 R _ret=null; 292 n.f0.accept(this); 293 return _ret; 294 } 295 296 // f0 -> "{" 297 // f1 -> [ VariableInitializer() ( "," VariableInitializer() )* ] 298 // f2 -> [ "," ] 299 // f3 -> "}" 300 public R visit(ArrayInitializer n) { 301 R _ret=null; 302 n.f0.accept(this); 303 n.f1.accept(this); 304 n.f2.accept(this); 305 n.f3.accept(this); 306 return _ret; 307 } 308 309 // f0 -> [ TypeParameters() ] 310 // f1 -> ResultType() 311 // f2 -> MethodDeclarator() 312 // f3 -> [ "throws" NameList() ] 313 // f4 -> ( Block() | ";" ) 314 public R visit(MethodDeclaration n) { 315 R _ret=null; 316 n.f0.accept(this); 317 n.f1.accept(this); 318 n.f2.accept(this); 319 n.f3.accept(this); 320 n.f4.accept(this); 321 return _ret; 322 } 323 324 // f0 -> <IDENTIFIER> 325 // f1 -> FormalParameters() 326 // f2 -> ( "[" "]" )* 327 public R visit(MethodDeclarator n) { 328 R _ret=null; 329 n.f0.accept(this); 330 n.f1.accept(this); 331 n.f2.accept(this); 332 return _ret; 333 } 334 335 // f0 -> "(" 336 // f1 -> [ FormalParameter() ( "," FormalParameter() )* ] 337 // f2 -> ")" 338 public R visit(FormalParameters n) { 339 R _ret=null; 340 n.f0.accept(this); 341 n.f1.accept(this); 342 n.f2.accept(this); 343 return _ret; 344 } 345 346 // f0 -> Modifiers() 347 // f1 -> [ "final" | Annotation() ] 348 // f2 -> Type() 349 // f3 -> [ "..." ] 350 // f4 -> VariableDeclaratorId() 351 public R visit(FormalParameter n) { 352 R _ret=null; 353 n.f0.accept(this); 354 n.f1.accept(this); 355 n.f2.accept(this); 356 n.f3.accept(this); 357 n.f4.accept(this); 358 return _ret; 359 } 360 361 // f0 -> [ TypeParameters() ] 362 // f1 -> <IDENTIFIER> 363 // f2 -> FormalParameters() 364 // f3 -> [ "throws" NameList() ] 365 // f4 -> "{" 366 // f5 -> [ ExplicitConstructorInvocation() ] 367 // f6 -> ( BlockStatement() )* 368 // f7 -> "}" 369 public R visit(ConstructorDeclaration n) { 370 R _ret=null; 371 n.f0.accept(this); 372 n.f1.accept(this); 373 n.f2.accept(this); 374 n.f3.accept(this); 375 n.f4.accept(this); 376 n.f5.accept(this); 377 n.f6.accept(this); 378 n.f7.accept(this); 379 return _ret; 380 } 381 382 // f0 -> [ TypeArguments() ] ( "this" | "super" ) Arguments() ";" 383 // | PrimaryExpression() "." [ TypeArguments() ] "super" Arguments() ";" 384 public R visit(ExplicitConstructorInvocation n) { 385 R _ret=null; 386 n.f0.accept(this); 387 return _ret; 388 } 389 390 // f0 -> [ "static" ] 391 // f1 -> Block() 392 public R visit(Initializer n) { 393 R _ret=null; 394 n.f0.accept(this); 395 n.f1.accept(this); 396 return _ret; 397 } 398 399 // f0 -> ReferenceType() 400 // | PrimitiveType() 401 public R visit(Type n) { 402 R _ret=null; 403 n.f0.accept(this); 404 return _ret; 405 } 406 407 // f0 -> PrimitiveType() ( "[" "]" )+ 408 // | ( ClassOrInterfaceType() ) ( "[" "]" )* 409 public R visit(ReferenceType n) { 410 R _ret=null; 411 n.f0.accept(this); 412 return _ret; 413 } 414 415 // f0 -> <IDENTIFIER> 416 // f1 -> [ TypeArguments() ] 417 // f2 -> ( "." <IDENTIFIER> [ TypeArguments() ] )* 418 public R visit(ClassOrInterfaceType n) { 419 R _ret=null; 420 n.f0.accept(this); 421 n.f1.accept(this); 422 n.f2.accept(this); 423 return _ret; 424 } 425 426 // f0 -> "<" 427 // f1 -> TypeArgument() 428 // f2 -> ( "," TypeArgument() )* 429 // f3 -> ">" 430 public R visit(TypeArguments n) { 431 R _ret=null; 432 n.f0.accept(this); 433 n.f1.accept(this); 434 n.f2.accept(this); 435 n.f3.accept(this); 436 return _ret; 437 } 438 439 // f0 -> ReferenceType() 440 // | "?" [ WildcardBounds() ] 441 public R visit(TypeArgument n) { 442 R _ret=null; 443 n.f0.accept(this); 444 return _ret; 445 } 446 447 // f0 -> "extends" ReferenceType() 448 // | "super" ReferenceType() 449 public R visit(WildcardBounds n) { 450 R _ret=null; 451 n.f0.accept(this); 452 return _ret; 453 } 454 455 // f0 -> "boolean" 456 // | "char" 457 // | "byte" 458 // | "short" 459 // | "int" 460 // | "long" 461 // | "float" 462 // | "double" 463 public R visit(PrimitiveType n) { 464 R _ret=null; 465 n.f0.accept(this); 466 return _ret; 467 } 468 469 // f0 -> "void" 470 // | Type() 471 public R visit(ResultType n) { 472 R _ret=null; 473 n.f0.accept(this); 474 return _ret; 475 } 476 477 // f0 -> <IDENTIFIER> 478 // f1 -> ( "." <IDENTIFIER> )* 479 public R visit(Name n) { 480 R _ret=null; 481 n.f0.accept(this); 482 n.f1.accept(this); 483 return _ret; 484 } 485 486 // f0 -> Name() 487 // f1 -> ( "," Name() )* 488 public R visit(NameList n) { 489 R _ret=null; 490 n.f0.accept(this); 491 n.f1.accept(this); 492 return _ret; 493 } 494 495 // f0 -> ConditionalExpression() 496 // f1 -> [ AssignmentOperator() Expression() ] 497 public R visit(Expression n) { 498 R _ret=null; 499 n.f0.accept(this); 500 n.f1.accept(this); 501 return _ret; 502 } 503 504 // f0 -> "=" 505 // | "*=" 506 // | "/=" 507 // | "%=" 508 // | "+=" 509 // | "-=" 510 // | "<<=" 511 // | ">>=" 512 // | ">>>=" 513 // | "&=" 514 // | "^=" 515 // | "|=" 516 public R visit(AssignmentOperator n) { 517 R _ret=null; 518 n.f0.accept(this); 519 return _ret; 520 } 521 522 // f0 -> ConditionalOrExpression() 523 // f1 -> [ "?" Expression() ":" Expression() ] 524 public R visit(ConditionalExpression n) { 525 R _ret=null; 526 n.f0.accept(this); 527 n.f1.accept(this); 528 return _ret; 529 } 530 531 // f0 -> ConditionalAndExpression() 532 // f1 -> ( "||" ConditionalAndExpression() )* 533 public R visit(ConditionalOrExpression n) { 534 R _ret=null; 535 n.f0.accept(this); 536 n.f1.accept(this); 537 return _ret; 538 } 539 540 // f0 -> InclusiveOrExpression() 541 // f1 -> ( "&&" InclusiveOrExpression() )* 542 public R visit(ConditionalAndExpression n) { 543 R _ret=null; 544 n.f0.accept(this); 545 n.f1.accept(this); 546 return _ret; 547 } 548 549 // f0 -> ExclusiveOrExpression() 550 // f1 -> ( "|" ExclusiveOrExpression() )* 551 public R visit(InclusiveOrExpression n) { 552 R _ret=null; 553 n.f0.accept(this); 554 n.f1.accept(this); 555 return _ret; 556 } 557 558 // f0 -> AndExpression() 559 // f1 -> ( "^" AndExpression() )* 560 public R visit(ExclusiveOrExpression n) { 561 R _ret=null; 562 n.f0.accept(this); 563 n.f1.accept(this); 564 return _ret; 565 } 566 567 // f0 -> EqualityExpression() 568 // f1 -> ( "&" EqualityExpression() )* 569 public R visit(AndExpression n) { 570 R _ret=null; 571 n.f0.accept(this); 572 n.f1.accept(this); 573 return _ret; 574 } 575 576 // f0 -> InstanceOfExpression() 577 // f1 -> ( ( "==" | "!=" ) InstanceOfExpression() )* 578 public R visit(EqualityExpression n) { 579 R _ret=null; 580 n.f0.accept(this); 581 n.f1.accept(this); 582 return _ret; 583 } 584 585 // f0 -> RelationalExpression() 586 // f1 -> [ "instanceof" Type() ] 587 public R visit(InstanceOfExpression n) { 588 R _ret=null; 589 n.f0.accept(this); 590 n.f1.accept(this); 591 return _ret; 592 } 593 594 // f0 -> ShiftExpression() 595 // f1 -> ( ( "<" | ">" | "<=" | ">=" ) ShiftExpression() )* 596 public R visit(RelationalExpression n) { 597 R _ret=null; 598 n.f0.accept(this); 599 n.f1.accept(this); 600 return _ret; 601 } 602 603 // f0 -> AdditiveExpression() 604 // f1 -> ( ( "<<" | RSIGNEDSHIFT() | RUNSIGNEDSHIFT() ) AdditiveExpression() )* 605 public R visit(ShiftExpression n) { 606 R _ret=null; 607 n.f0.accept(this); 608 n.f1.accept(this); 609 return _ret; 610 } 611 612 // f0 -> MultiplicativeExpression() 613 // f1 -> ( ( "+" | "-" ) MultiplicativeExpression() )* 614 public R visit(AdditiveExpression n) { 615 R _ret=null; 616 n.f0.accept(this); 617 n.f1.accept(this); 618 return _ret; 619 } 620 621 // f0 -> UnaryExpression() 622 // f1 -> ( ( "*" | "/" | "%" ) UnaryExpression() )* 623 public R visit(MultiplicativeExpression n) { 624 R _ret=null; 625 n.f0.accept(this); 626 n.f1.accept(this); 627 return _ret; 628 } 629 630 // f0 -> ( "+" | "-" ) UnaryExpression() 631 // | PreIncrementExpression() 632 // | PreDecrementExpression() 633 // | UnaryExpressionNotPlusMinus() 634 public R visit(UnaryExpression n) { 635 R _ret=null; 636 n.f0.accept(this); 637 return _ret; 638 } 639 640 // f0 -> "++" 641 // f1 -> PrimaryExpression() 642 public R visit(PreIncrementExpression n) { 643 R _ret=null; 644 n.f0.accept(this); 645 n.f1.accept(this); 646 return _ret; 647 } 648 649 // f0 -> "--" 650 // f1 -> PrimaryExpression() 651 public R visit(PreDecrementExpression n) { 652 R _ret=null; 653 n.f0.accept(this); 654 n.f1.accept(this); 655 return _ret; 656 } 657 658 // f0 -> ( "~" | "!" ) UnaryExpression() 659 // | CastExpression() 660 // | PostfixExpression() 661 public R visit(UnaryExpressionNotPlusMinus n) { 662 R _ret=null; 663 n.f0.accept(this); 664 return _ret; 665 } 666 667 // f0 -> "(" PrimitiveType() 668 // | "(" Type() "[" "]" 669 // | "(" Type() ")" ( "~" | "!" | "(" | <IDENTIFIER> | "this" | "super" | "new" | Literal() ) 670 public R visit(CastLookahead n) { 671 R _ret=null; 672 n.f0.accept(this); 673 return _ret; 674 } 675 676 // f0 -> PrimaryExpression() 677 // f1 -> [ "++" | "--" ] 678 public R visit(PostfixExpression n) { 679 R _ret=null; 680 n.f0.accept(this); 681 n.f1.accept(this); 682 return _ret; 683 } 684 685 // f0 -> "(" Type() ")" UnaryExpression() 686 // | "(" Type() ")" UnaryExpressionNotPlusMinus() 687 public R visit(CastExpression n) { 688 R _ret=null; 689 n.f0.accept(this); 690 return _ret; 691 } 692 693 // f0 -> PrimaryPrefix() 694 // f1 -> ( PrimarySuffix() )* 695 public R visit(PrimaryExpression n) { 696 R _ret=null; 697 n.f0.accept(this); 698 n.f1.accept(this); 699 return _ret; 700 } 701 702 // f0 -> "." 703 // f1 -> TypeArguments() 704 // f2 -> <IDENTIFIER> 705 public R visit(MemberSelector n) { 706 R _ret=null; 707 n.f0.accept(this); 708 n.f1.accept(this); 709 n.f2.accept(this); 710 return _ret; 711 } 712 713 // f0 -> Literal() 714 // | ( <IDENTIFIER> "." )* "this" 715 // | "super" "." <IDENTIFIER> 716 // | ClassOrInterfaceType() "." "super" "." <IDENTIFIER> 717 // | "(" Expression() ")" 718 // | AllocationExpression() 719 // | ResultType() "." "class" 720 // | Name() 721 public R visit(PrimaryPrefix n) { 722 R _ret=null; 723 n.f0.accept(this); 724 return _ret; 725 } 726 727 // f0 -> "." "super" 728 // | "." "this" 729 // | "." AllocationExpression() 730 // | MemberSelector() 731 // | "[" Expression() "]" 732 // | "." <IDENTIFIER> 733 // | Arguments() 734 public R visit(PrimarySuffix n) { 735 R _ret=null; 736 n.f0.accept(this); 737 return _ret; 738 } 739 740 // f0 -> <INTEGER_LITERAL> 741 // | <FLOATING_POINT_LITERAL> 742 // | <CHARACTER_LITERAL> 743 // | <STRING_LITERAL> 744 // | BooleanLiteral() 745 // | NullLiteral() 746 public R visit(Literal n) { 747 R _ret=null; 748 n.f0.accept(this); 749 return _ret; 750 } 751 752 // f0 -> "true" 753 // | "false" 754 public R visit(BooleanLiteral n) { 755 R _ret=null; 756 n.f0.accept(this); 757 return _ret; 758 } 759 760 // f0 -> "null" 761 public R visit(NullLiteral n) { 762 R _ret=null; 763 n.f0.accept(this); 764 return _ret; 765 } 766 767 // f0 -> "(" 768 // f1 -> [ ArgumentList() ] 769 // f2 -> ")" 770 public R visit(Arguments n) { 771 R _ret=null; 772 n.f0.accept(this); 773 n.f1.accept(this); 774 n.f2.accept(this); 775 return _ret; 776 } 777 778 // f0 -> Expression() 779 // f1 -> ( "," Expression() )* 780 public R visit(ArgumentList n) { 781 R _ret=null; 782 n.f0.accept(this); 783 n.f1.accept(this); 784 return _ret; 785 } 786 787 // f0 -> "new" PrimitiveType() ArrayDimsAndInits() 788 // | "new" ClassOrInterfaceType() [ TypeArguments() ] ( ArrayDimsAndInits() | Arguments() [ ClassOrInterfaceBody(false) ] ) 789 public R visit(AllocationExpression n) { 790 R _ret=null; 791 n.f0.accept(this); 792 return _ret; 793 } 794 795 // f0 -> ( "[" Expression() "]" )+ ( "[" "]" )* 796 // | ( "[" "]" )+ ArrayInitializer() 797 public R visit(ArrayDimsAndInits n) { 798 R _ret=null; 799 n.f0.accept(this); 800 return _ret; 801 } 802 803 // f0 -> LabeledStatement() 804 // | AssertStatement() 805 // | Block() 806 // | EmptyStatement() 807 // | StatementExpression() ";" 808 // | SwitchStatement() 809 // | IfStatement() 810 // | WhileStatement() 811 // | DoStatement() 812 // | ForStatement() 813 // | BreakStatement() 814 // | ContinueStatement() 815 // | ReturnStatement() 816 // | ThrowStatement() 817 // | SynchronizedStatement() 818 // | TryStatement() 819 public R visit(Statement n) { 820 R _ret=null; 821 n.f0.accept(this); 822 return _ret; 823 } 824 825 // f0 -> "assert" 826 // f1 -> Expression() 827 // f2 -> [ ":" Expression() ] 828 // f3 -> ";" 829 public R visit(AssertStatement n) { 830 R _ret=null; 831 n.f0.accept(this); 832 n.f1.accept(this); 833 n.f2.accept(this); 834 n.f3.accept(this); 835 return _ret; 836 } 837 838 // f0 -> <IDENTIFIER> 839 // f1 -> ":" 840 // f2 -> Statement() 841 public R visit(LabeledStatement n) { 842 R _ret=null; 843 n.f0.accept(this); 844 n.f1.accept(this); 845 n.f2.accept(this); 846 return _ret; 847 } 848 849 // f0 -> "{" 850 // f1 -> ( BlockStatement() )* 851 // f2 -> "}" 852 public R visit(Block n) { 853 R _ret=null; 854 n.f0.accept(this); 855 n.f1.accept(this); 856 n.f2.accept(this); 857 return _ret; 858 } 859 860 // f0 -> LocalVariableDeclaration() ";" 861 // | Statement() 862 // | ClassOrInterfaceDeclaration(0) 863 public R visit(BlockStatement n) { 864 R _ret=null; 865 n.f0.accept(this); 866 return _ret; 867 } 868 869 // f0 -> Modifiers() 870 // f1 -> Type() 871 // f2 -> VariableDeclarator() 872 // f3 -> ( "," VariableDeclarator() )* 873 public R visit(LocalVariableDeclaration n) { 874 R _ret=null; 875 n.f0.accept(this); 876 n.f1.accept(this); 877 n.f2.accept(this); 878 n.f3.accept(this); 879 return _ret; 880 } 881 882 // f0 -> ";" 883 public R visit(EmptyStatement n) { 884 R _ret=null; 885 n.f0.accept(this); 886 return _ret; 887 } 888 889 // f0 -> PreIncrementExpression() 890 // | PreDecrementExpression() 891 // | PrimaryExpression() [ "++" | "--" | AssignmentOperator() Expression() ] 892 public R visit(StatementExpression n) { 893 R _ret=null; 894 n.f0.accept(this); 895 return _ret; 896 } 897 898 // f0 -> "switch" 899 // f1 -> "(" 900 // f2 -> Expression() 901 // f3 -> ")" 902 // f4 -> "{" 903 // f5 -> ( SwitchLabel() ( BlockStatement() )* )* 904 // f6 -> "}" 905 public R visit(SwitchStatement n) { 906 R _ret=null; 907 n.f0.accept(this); 908 n.f1.accept(this); 909 n.f2.accept(this); 910 n.f3.accept(this); 911 n.f4.accept(this); 912 n.f5.accept(this); 913 n.f6.accept(this); 914 return _ret; 915 } 916 917 // f0 -> "case" Expression() ":" 918 // | "default" ":" 919 public R visit(SwitchLabel n) { 920 R _ret=null; 921 n.f0.accept(this); 922 return _ret; 923 } 924 925 // f0 -> "if" 926 // f1 -> "(" 927 // f2 -> Expression() 928 // f3 -> ")" 929 // f4 -> Statement() 930 // f5 -> [ "else" Statement() ] 931 public R visit(IfStatement n) { 932 R _ret=null; 933 n.f0.accept(this); 934 n.f1.accept(this); 935 n.f2.accept(this); 936 n.f3.accept(this); 937 n.f4.accept(this); 938 n.f5.accept(this); 939 return _ret; 940 } 941 942 // f0 -> "while" 943 // f1 -> "(" 944 // f2 -> Expression() 945 // f3 -> ")" 946 // f4 -> Statement() 947 public R visit(WhileStatement n) { 948 R _ret=null; 949 n.f0.accept(this); 950 n.f1.accept(this); 951 n.f2.accept(this); 952 n.f3.accept(this); 953 n.f4.accept(this); 954 return _ret; 955 } 956 957 // f0 -> "do" 958 // f1 -> Statement() 959 // f2 -> "while" 960 // f3 -> "(" 961 // f4 -> Expression() 962 // f5 -> ")" 963 // f6 -> ";" 964 public R visit(DoStatement n) { 965 R _ret=null; 966 n.f0.accept(this); 967 n.f1.accept(this); 968 n.f2.accept(this); 969 n.f3.accept(this); 970 n.f4.accept(this); 971 n.f5.accept(this); 972 n.f6.accept(this); 973 return _ret; 974 } 975 976 // f0 -> "for" 977 // f1 -> "(" 978 // f2 -> ( Modifiers() Type() <IDENTIFIER> ":" Expression() | [ ForInit() ] ";" [ Expression() ] ";" [ ForUpdate() ] ) 979 // f3 -> ")" 980 // f4 -> Statement() 981 public R visit(ForStatement n) { 982 R _ret=null; 983 n.f0.accept(this); 984 n.f1.accept(this); 985 n.f2.accept(this); 986 n.f3.accept(this); 987 n.f4.accept(this); 988 return _ret; 989 } 990 991 // f0 -> LocalVariableDeclaration() 992 // | StatementExpressionList() 993 public R visit(ForInit n) { 994 R _ret=null; 995 n.f0.accept(this); 996 return _ret; 997 } 998 999 // f0 -> StatementExpression() 1000 // f1 -> ( "," StatementExpression() )* 1001 public R visit(StatementExpressionList n) { 1002 R _ret=null; 1003 n.f0.accept(this); 1004 n.f1.accept(this); 1005 return _ret; 1006 } 1007 1008 // f0 -> StatementExpressionList() 1009 public R visit(ForUpdate n) { 1010 R _ret=null; 1011 n.f0.accept(this); 1012 return _ret; 1013 } 1014 1015 // f0 -> "break" 1016 // f1 -> [ <IDENTIFIER> ] 1017 // f2 -> ";" 1018 public R visit(BreakStatement n) { 1019 R _ret=null; 1020 n.f0.accept(this); 1021 n.f1.accept(this); 1022 n.f2.accept(this); 1023 return _ret; 1024 } 1025 1026 // f0 -> "continue" 1027 // f1 -> [ <IDENTIFIER> ] 1028 // f2 -> ";" 1029 public R visit(ContinueStatement n) { 1030 R _ret=null; 1031 n.f0.accept(this); 1032 n.f1.accept(this); 1033 n.f2.accept(this); 1034 return _ret; 1035 } 1036 1037 // f0 -> "return" 1038 // f1 -> [ Expression() ] 1039 // f2 -> ";" 1040 public R visit(ReturnStatement n) { 1041 R _ret=null; 1042 n.f0.accept(this); 1043 n.f1.accept(this); 1044 n.f2.accept(this); 1045 return _ret; 1046 } 1047 1048 // f0 -> "throw" 1049 // f1 -> Expression() 1050 // f2 -> ";" 1051 public R visit(ThrowStatement n) { 1052 R _ret=null; 1053 n.f0.accept(this); 1054 n.f1.accept(this); 1055 n.f2.accept(this); 1056 return _ret; 1057 } 1058 1059 // f0 -> "synchronized" 1060 // f1 -> "(" 1061 // f2 -> Expression() 1062 // f3 -> ")" 1063 // f4 -> Block() 1064 public R visit(SynchronizedStatement n) { 1065 R _ret=null; 1066 n.f0.accept(this); 1067 n.f1.accept(this); 1068 n.f2.accept(this); 1069 n.f3.accept(this); 1070 n.f4.accept(this); 1071 return _ret; 1072 } 1073 1074 // f0 -> "try" 1075 // f1 -> Block() 1076 // f2 -> ( "catch" "(" FormalParameter() ")" Block() )* 1077 // f3 -> [ "finally" Block() ] 1078 public R visit(TryStatement n) { 1079 R _ret=null; 1080 n.f0.accept(this); 1081 n.f1.accept(this); 1082 n.f2.accept(this); 1083 n.f3.accept(this); 1084 return _ret; 1085 } 1086 1087 // f0 -> ( ">" ">" ">" ) 1088 public R visit(RUNSIGNEDSHIFT n) { 1089 R _ret=null; 1090 n.f0.accept(this); 1091 return _ret; 1092 } 1093 1094 // f0 -> ( ">" ">" ) 1095 public R visit(RSIGNEDSHIFT n) { 1096 R _ret=null; 1097 n.f0.accept(this); 1098 return _ret; 1099 } 1100 1101 // f0 -> NormalAnnotation() 1102 // | SingleMemberAnnotation() 1103 // | MarkerAnnotation() 1104 public R visit(Annotation n) { 1105 R _ret=null; 1106 n.f0.accept(this); 1107 return _ret; 1108 } 1109 1110 // f0 -> "@" 1111 // f1 -> Name() 1112 // f2 -> "(" 1113 // f3 -> [ MemberValuePairs() ] 1114 // f4 -> ")" 1115 public R visit(NormalAnnotation n) { 1116 R _ret=null; 1117 n.f0.accept(this); 1118 n.f1.accept(this); 1119 n.f2.accept(this); 1120 n.f3.accept(this); 1121 n.f4.accept(this); 1122 return _ret; 1123 } 1124 1125 // f0 -> "@" 1126 // f1 -> Name() 1127 public R visit(MarkerAnnotation n) { 1128 R _ret=null; 1129 n.f0.accept(this); 1130 n.f1.accept(this); 1131 return _ret; 1132 } 1133 1134 // f0 -> "@" 1135 // f1 -> Name() 1136 // f2 -> "(" 1137 // f3 -> MemberValue() 1138 // f4 -> ")" 1139 public R visit(SingleMemberAnnotation n) { 1140 R _ret=null; 1141 n.f0.accept(this); 1142 n.f1.accept(this); 1143 n.f2.accept(this); 1144 n.f3.accept(this); 1145 n.f4.accept(this); 1146 return _ret; 1147 } 1148 1149 // f0 -> MemberValuePair() 1150 // f1 -> ( "," MemberValuePair() )* 1151 public R visit(MemberValuePairs n) { 1152 R _ret=null; 1153 n.f0.accept(this); 1154 n.f1.accept(this); 1155 return _ret; 1156 } 1157 1158 // f0 -> <IDENTIFIER> 1159 // f1 -> "=" 1160 // f2 -> MemberValue() 1161 public R visit(MemberValuePair n) { 1162 R _ret=null; 1163 n.f0.accept(this); 1164 n.f1.accept(this); 1165 n.f2.accept(this); 1166 return _ret; 1167 } 1168 1169 // f0 -> Annotation() 1170 // | MemberValueArrayInitializer() 1171 // | ConditionalExpression() 1172 public R visit(MemberValue n) { 1173 R _ret=null; 1174 n.f0.accept(this); 1175 return _ret; 1176 } 1177 1178 // f0 -> "{" 1179 // f1 -> ( MemberValue() ( "," MemberValue() )* [ "," ] )? 1180 // f2 -> "}" 1181 public R visit(MemberValueArrayInitializer n) { 1182 R _ret=null; 1183 n.f0.accept(this); 1184 n.f1.accept(this); 1185 n.f2.accept(this); 1186 return _ret; 1187 } 1188 1189 // f0 -> "@" 1190 // f1 -> "interface" 1191 // f2 -> <IDENTIFIER> 1192 // f3 -> AnnotationTypeBody() 1193 public R visit(AnnotationTypeDeclaration n) { 1194 R _ret=null; 1195 n.f0.accept(this); 1196 n.f1.accept(this); 1197 n.f2.accept(this); 1198 n.f3.accept(this); 1199 return _ret; 1200 } 1201 1202 // f0 -> "{" 1203 // f1 -> ( AnnotationTypeMemberDeclaration() )* 1204 // f2 -> "}" 1205 public R visit(AnnotationTypeBody n) { 1206 R _ret=null; 1207 n.f0.accept(this); 1208 n.f1.accept(this); 1209 n.f2.accept(this); 1210 return _ret; 1211 } 1212 1213 // f0 -> Modifiers() ( Type() <IDENTIFIER> "(" ")" [ DefaultValue() ] ";" | ClassOrInterfaceDeclaration(modifiers) | EnumDeclaration(modifiers) | AnnotationTypeDeclaration(modifiers) | FieldDeclaration(modifiers) ) 1214 // | ( ";" ) 1215 public R visit(AnnotationTypeMemberDeclaration n) { 1216 R _ret=null; 1217 n.f0.accept(this); 1218 return _ret; 1219 } 1220 1221 // f0 -> "default" 1222 // f1 -> MemberValue() 1223 public R visit(DefaultValue n) { 1224 R _ret=null; 1225 n.f0.accept(this); 1226 n.f1.accept(this); 1227 return _ret; 1228 } 1229 1230}