Clover coverage report - Java Language Levels Test Coverage (javalanglevels-20120305-r5436)
Coverage timestamp: Sun Mar 4 2012 22:02:46 CST
file stats: LOC: 1,590   Methods: 315
NCLOC: 1,266   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
JExpressionIFCopyDepthFirstVisitor.java 0% 0% 0% 0%
coverage
 1    package edu.rice.cs.javalanglevels.tree;
 2   
 3    /**
 4    * An extension of DF visitors that copies as it visits (by default).
 5    * Override forCASE if you want to transform an AST subtree.
 6    */
 7    public abstract class JExpressionIFCopyDepthFirstVisitor extends JExpressionIFDepthFirstVisitor<JExpressionIF> {
 8   
 9  0 protected JExpressionIF[] makeArrayOfRetType(int size) {
 10  0 return new JExpressionIF[size];
 11    }
 12   
 13    /* Methods to visit an item. */
 14  0 public JExpressionIF forJExpressionOnly(JExpression that) {
 15  0 return defaultCase(that);
 16    }
 17   
 18  0 public JExpressionIF forSourceFileOnly(SourceFile that, JExpressionIF[] packageStatements_result, JExpressionIF[] importStatements_result, JExpressionIF[] types_result) {
 19  0 return new SourceFile(that.getSourceInfo(), (PackageStatement[])packageStatements_result, (ImportStatement[])importStatements_result, (TypeDefBase[])types_result);
 20    }
 21   
 22  0 public JExpressionIF forModifiersAndVisibilityOnly(ModifiersAndVisibility that) {
 23  0 return new ModifiersAndVisibility(that.getSourceInfo(), that.getModifiers());
 24    }
 25   
 26  0 public JExpressionIF forCompoundWordOnly(CompoundWord that, JExpressionIF[] words_result) {
 27  0 return new CompoundWord(that.getSourceInfo(), (Word[])words_result);
 28    }
 29   
 30  0 public JExpressionIF forWordOnly(Word that) {
 31  0 return new Word(that.getSourceInfo(), that.getText());
 32    }
 33   
 34  0 public JExpressionIF forTypeDefBaseOnly(TypeDefBase that, JExpressionIF mav_result, JExpressionIF name_result, JExpressionIF[] typeParameters_result, JExpressionIF[] interfaces_result, JExpressionIF body_result) {
 35  0 return defaultCase(that);
 36    }
 37   
 38  0 public JExpressionIF forClassDefOnly(ClassDef that, JExpressionIF mav_result, JExpressionIF name_result, JExpressionIF[] typeParameters_result, JExpressionIF superclass_result, JExpressionIF[] interfaces_result, JExpressionIF body_result) {
 39  0 return new ClassDef(that.getSourceInfo(), (ModifiersAndVisibility)mav_result, (Word)name_result, (TypeParameter[])typeParameters_result, (ReferenceType)superclass_result, (ReferenceType[])interfaces_result, (BracedBody)body_result);
 40    }
 41   
 42  0 public JExpressionIF forInnerClassDefOnly(InnerClassDef that, JExpressionIF mav_result, JExpressionIF name_result, JExpressionIF[] typeParameters_result, JExpressionIF superclass_result, JExpressionIF[] interfaces_result, JExpressionIF body_result) {
 43  0 return new InnerClassDef(that.getSourceInfo(), (ModifiersAndVisibility)mav_result, (Word)name_result, (TypeParameter[])typeParameters_result, (ReferenceType)superclass_result, (ReferenceType[])interfaces_result, (BracedBody)body_result);
 44    }
 45   
 46  0 public JExpressionIF forInterfaceDefOnly(InterfaceDef that, JExpressionIF mav_result, JExpressionIF name_result, JExpressionIF[] typeParameters_result, JExpressionIF[] interfaces_result, JExpressionIF body_result) {
 47  0 return new InterfaceDef(that.getSourceInfo(), (ModifiersAndVisibility)mav_result, (Word)name_result, (TypeParameter[])typeParameters_result, (ReferenceType[])interfaces_result, (BracedBody)body_result);
 48    }
 49   
 50  0 public JExpressionIF forInnerInterfaceDefOnly(InnerInterfaceDef that, JExpressionIF mav_result, JExpressionIF name_result, JExpressionIF[] typeParameters_result, JExpressionIF[] interfaces_result, JExpressionIF body_result) {
 51  0 return new InnerInterfaceDef(that.getSourceInfo(), (ModifiersAndVisibility)mav_result, (Word)name_result, (TypeParameter[])typeParameters_result, (ReferenceType[])interfaces_result, (BracedBody)body_result);
 52    }
 53   
 54  0 public JExpressionIF forConstructorDefOnly(ConstructorDef that, JExpressionIF name_result, JExpressionIF mav_result, JExpressionIF[] parameters_result, JExpressionIF[] throws_result, JExpressionIF statements_result) {
 55  0 return new ConstructorDef(that.getSourceInfo(), (Word)name_result, (ModifiersAndVisibility)mav_result, (FormalParameter[])parameters_result, (ReferenceType[])throws_result, (BracedBody)statements_result);
 56    }
 57   
 58  0 public JExpressionIF forInitializerOnly(Initializer that, JExpressionIF code_result) {
 59  0 return defaultCase(that);
 60    }
 61   
 62  0 public JExpressionIF forInstanceInitializerOnly(InstanceInitializer that, JExpressionIF code_result) {
 63  0 return new InstanceInitializer(that.getSourceInfo(), (Block)code_result);
 64    }
 65   
 66  0 public JExpressionIF forStaticInitializerOnly(StaticInitializer that, JExpressionIF code_result) {
 67  0 return new StaticInitializer(that.getSourceInfo(), (Block)code_result);
 68    }
 69   
 70  0 public JExpressionIF forPackageStatementOnly(PackageStatement that, JExpressionIF cWord_result) {
 71  0 return new PackageStatement(that.getSourceInfo(), (CompoundWord)cWord_result);
 72    }
 73   
 74  0 public JExpressionIF forImportStatementOnly(ImportStatement that, JExpressionIF cWord_result) {
 75  0 return defaultCase(that);
 76    }
 77   
 78  0 public JExpressionIF forClassImportStatementOnly(ClassImportStatement that, JExpressionIF cWord_result) {
 79  0 return new ClassImportStatement(that.getSourceInfo(), (CompoundWord)cWord_result);
 80    }
 81   
 82  0 public JExpressionIF forPackageImportStatementOnly(PackageImportStatement that, JExpressionIF cWord_result) {
 83  0 return new PackageImportStatement(that.getSourceInfo(), (CompoundWord)cWord_result);
 84    }
 85   
 86  0 public JExpressionIF forStatementOnly(Statement that) {
 87  0 return defaultCase(that);
 88    }
 89   
 90  0 public JExpressionIF forLabeledStatementOnly(LabeledStatement that, JExpressionIF label_result, JExpressionIF statement_result) {
 91  0 return new LabeledStatement(that.getSourceInfo(), (Word)label_result, (Statement)statement_result);
 92    }
 93   
 94  0 public JExpressionIF forBlockOnly(Block that, JExpressionIF statements_result) {
 95  0 return new Block(that.getSourceInfo(), (BracedBody)statements_result);
 96    }
 97   
 98  0 public JExpressionIF forExpressionStatementOnly(ExpressionStatement that, JExpressionIF expression_result) {
 99  0 return new ExpressionStatement(that.getSourceInfo(), (Expression)expression_result);
 100    }
 101   
 102  0 public JExpressionIF forSwitchStatementOnly(SwitchStatement that, JExpressionIF test_result, JExpressionIF[] cases_result) {
 103  0 return new SwitchStatement(that.getSourceInfo(), (Expression)test_result, (SwitchCase[])cases_result);
 104    }
 105   
 106  0 public JExpressionIF forIfThenStatementOnly(IfThenStatement that, JExpressionIF testExpression_result, JExpressionIF thenStatement_result) {
 107  0 return new IfThenStatement(that.getSourceInfo(), (Expression)testExpression_result, (Statement)thenStatement_result);
 108    }
 109   
 110  0 public JExpressionIF forIfThenElseStatementOnly(IfThenElseStatement that, JExpressionIF testExpression_result, JExpressionIF thenStatement_result, JExpressionIF elseStatement_result) {
 111  0 return new IfThenElseStatement(that.getSourceInfo(), (Expression)testExpression_result, (Statement)thenStatement_result, (Statement)elseStatement_result);
 112    }
 113   
 114  0 public JExpressionIF forWhileStatementOnly(WhileStatement that, JExpressionIF condition_result, JExpressionIF code_result) {
 115  0 return new WhileStatement(that.getSourceInfo(), (Expression)condition_result, (Statement)code_result);
 116    }
 117   
 118  0 public JExpressionIF forDoStatementOnly(DoStatement that, JExpressionIF code_result, JExpressionIF condition_result) {
 119  0 return new DoStatement(that.getSourceInfo(), (Statement)code_result, (Expression)condition_result);
 120    }
 121   
 122  0 public JExpressionIF forForStatementOnly(ForStatement that, JExpressionIF init_result, JExpressionIF condition_result, JExpressionIF update_result, JExpressionIF code_result) {
 123  0 return new ForStatement(that.getSourceInfo(), (ForInitI)init_result, (ForConditionI)condition_result, (UnparenthesizedExpressionList)update_result, (Statement)code_result);
 124    }
 125   
 126  0 public JExpressionIF forBreakStatementOnly(BreakStatement that) {
 127  0 return defaultCase(that);
 128    }
 129   
 130  0 public JExpressionIF forLabeledBreakStatementOnly(LabeledBreakStatement that, JExpressionIF label_result) {
 131  0 return new LabeledBreakStatement(that.getSourceInfo(), (Word)label_result);
 132    }
 133   
 134  0 public JExpressionIF forUnlabeledBreakStatementOnly(UnlabeledBreakStatement that) {
 135  0 return new UnlabeledBreakStatement(that.getSourceInfo());
 136    }
 137   
 138  0 public JExpressionIF forContinueStatementOnly(ContinueStatement that) {
 139  0 return defaultCase(that);
 140    }
 141   
 142  0 public JExpressionIF forLabeledContinueStatementOnly(LabeledContinueStatement that, JExpressionIF label_result) {
 143  0 return new LabeledContinueStatement(that.getSourceInfo(), (Word)label_result);
 144    }
 145   
 146  0 public JExpressionIF forUnlabeledContinueStatementOnly(UnlabeledContinueStatement that) {
 147  0 return new UnlabeledContinueStatement(that.getSourceInfo());
 148    }
 149   
 150  0 public JExpressionIF forReturnStatementOnly(ReturnStatement that) {
 151  0 return defaultCase(that);
 152    }
 153   
 154  0 public JExpressionIF forVoidReturnStatementOnly(VoidReturnStatement that) {
 155  0 return new VoidReturnStatement(that.getSourceInfo());
 156    }
 157   
 158  0 public JExpressionIF forValueReturnStatementOnly(ValueReturnStatement that, JExpressionIF value_result) {
 159  0 return new ValueReturnStatement(that.getSourceInfo(), (Expression)value_result);
 160    }
 161   
 162  0 public JExpressionIF forThrowStatementOnly(ThrowStatement that, JExpressionIF thrown_result) {
 163  0 return new ThrowStatement(that.getSourceInfo(), (Expression)thrown_result);
 164    }
 165   
 166  0 public JExpressionIF forSynchronizedStatementOnly(SynchronizedStatement that, JExpressionIF lockExpr_result, JExpressionIF block_result) {
 167  0 return new SynchronizedStatement(that.getSourceInfo(), (Expression)lockExpr_result, (Block)block_result);
 168    }
 169   
 170  0 public JExpressionIF forTryCatchStatementOnly(TryCatchStatement that, JExpressionIF tryBlock_result, JExpressionIF[] catchBlocks_result) {
 171  0 return defaultCase(that);
 172    }
 173   
 174  0 public JExpressionIF forTryCatchFinallyStatementOnly(TryCatchFinallyStatement that, JExpressionIF tryBlock_result, JExpressionIF[] catchBlocks_result, JExpressionIF finallyBlock_result) {
 175  0 return new TryCatchFinallyStatement(that.getSourceInfo(), (Block)tryBlock_result, (CatchBlock[])catchBlocks_result, (Block)finallyBlock_result);
 176    }
 177   
 178  0 public JExpressionIF forNormalTryCatchStatementOnly(NormalTryCatchStatement that, JExpressionIF tryBlock_result, JExpressionIF[] catchBlocks_result) {
 179  0 return new NormalTryCatchStatement(that.getSourceInfo(), (Block)tryBlock_result, (CatchBlock[])catchBlocks_result);
 180    }
 181   
 182  0 public JExpressionIF forEmptyStatementOnly(EmptyStatement that) {
 183  0 return new EmptyStatement(that.getSourceInfo());
 184    }
 185   
 186  0 public JExpressionIF forMethodDefOnly(MethodDef that, JExpressionIF mav_result, JExpressionIF[] typeParams_result, JExpressionIF result_result, JExpressionIF name_result, JExpressionIF[] params_result, JExpressionIF[] throws_result) {
 187  0 return defaultCase(that);
 188    }
 189   
 190  0 public JExpressionIF forConcreteMethodDefOnly(ConcreteMethodDef that, JExpressionIF mav_result, JExpressionIF[] typeParams_result, JExpressionIF result_result, JExpressionIF name_result, JExpressionIF[] params_result, JExpressionIF[] throws_result, JExpressionIF body_result) {
 191  0 return new ConcreteMethodDef(that.getSourceInfo(), (ModifiersAndVisibility)mav_result, (TypeParameter[])typeParams_result, (ReturnTypeI)result_result, (Word)name_result, (FormalParameter[])params_result, (ReferenceType[])throws_result, (BracedBody)body_result);
 192    }
 193   
 194  0 public JExpressionIF forAbstractMethodDefOnly(AbstractMethodDef that, JExpressionIF mav_result, JExpressionIF[] typeParams_result, JExpressionIF result_result, JExpressionIF name_result, JExpressionIF[] params_result, JExpressionIF[] throws_result) {
 195  0 return new AbstractMethodDef(that.getSourceInfo(), (ModifiersAndVisibility)mav_result, (TypeParameter[])typeParams_result, (ReturnTypeI)result_result, (Word)name_result, (FormalParameter[])params_result, (ReferenceType[])throws_result);
 196    }
 197   
 198  0 public JExpressionIF forFormalParameterOnly(FormalParameter that, JExpressionIF declarator_result) {
 199  0 return new FormalParameter(that.getSourceInfo(), (VariableDeclarator)declarator_result, that.isIsFinal());
 200    }
 201   
 202  0 public JExpressionIF forVariableDeclarationOnly(VariableDeclaration that, JExpressionIF mav_result, JExpressionIF[] declarators_result) {
 203  0 return new VariableDeclaration(that.getSourceInfo(), (ModifiersAndVisibility)mav_result, (VariableDeclarator[])declarators_result);
 204    }
 205   
 206  0 public JExpressionIF forVariableDeclaratorOnly(VariableDeclarator that, JExpressionIF type_result, JExpressionIF name_result) {
 207  0 return defaultCase(that);
 208    }
 209   
 210  0 public JExpressionIF forUninitializedVariableDeclaratorOnly(UninitializedVariableDeclarator that, JExpressionIF type_result, JExpressionIF name_result) {
 211  0 return new UninitializedVariableDeclarator(that.getSourceInfo(), (Type)type_result, (Word)name_result);
 212    }
 213   
 214  0 public JExpressionIF forInitializedVariableDeclaratorOnly(InitializedVariableDeclarator that, JExpressionIF type_result, JExpressionIF name_result, JExpressionIF initializer_result) {
 215  0 return new InitializedVariableDeclarator(that.getSourceInfo(), (Type)type_result, (Word)name_result, (VariableInitializerI)initializer_result);
 216    }
 217   
 218  0 public JExpressionIF forTypeParameterOnly(TypeParameter that, JExpressionIF variable_result, JExpressionIF bound_result) {
 219  0 return new TypeParameter(that.getSourceInfo(), (TypeVariable)variable_result, (ReferenceType)bound_result);
 220    }
 221   
 222  0 public JExpressionIF forArrayInitializerOnly(ArrayInitializer that, JExpressionIF[] items_result) {
 223  0 return new ArrayInitializer(that.getSourceInfo(), (VariableInitializerI[])items_result);
 224    }
 225   
 226  0 public JExpressionIF forTypeOnly(Type that) {
 227  0 return defaultCase(that);
 228    }
 229   
 230  0 public JExpressionIF forPrimitiveTypeOnly(PrimitiveType that) {
 231  0 return new PrimitiveType(that.getSourceInfo(), that.getName());
 232    }
 233   
 234  0 public JExpressionIF forArrayTypeOnly(ArrayType that, JExpressionIF elementType_result) {
 235  0 return new ArrayType(that.getSourceInfo(), that.getName(), (Type)elementType_result);
 236    }
 237   
 238  0 public JExpressionIF forReferenceTypeOnly(ReferenceType that) {
 239  0 return defaultCase(that);
 240    }
 241   
 242  0 public JExpressionIF forMemberTypeOnly(MemberType that, JExpressionIF left_result, JExpressionIF right_result) {
 243  0 return new MemberType(that.getSourceInfo(), that.getName(), (ReferenceType)left_result, (ReferenceType)right_result);
 244    }
 245   
 246  0 public JExpressionIF forClassOrInterfaceTypeOnly(ClassOrInterfaceType that, JExpressionIF[] typeArguments_result) {
 247  0 return new ClassOrInterfaceType(that.getSourceInfo(), that.getName(), (Type[])typeArguments_result);
 248    }
 249   
 250  0 public JExpressionIF forTypeVariableOnly(TypeVariable that) {
 251  0 return new TypeVariable(that.getSourceInfo(), that.getName());
 252    }
 253   
 254  0 public JExpressionIF forVoidReturnOnly(VoidReturn that) {
 255  0 return new VoidReturn(that.getSourceInfo(), that.getName());
 256    }
 257   
 258  0 public JExpressionIF forSwitchCaseOnly(SwitchCase that, JExpressionIF code_result) {
 259  0 return defaultCase(that);
 260    }
 261   
 262  0 public JExpressionIF forLabeledCaseOnly(LabeledCase that, JExpressionIF label_result, JExpressionIF code_result) {
 263  0 return new LabeledCase(that.getSourceInfo(), (Expression)label_result, (UnbracedBody)code_result);
 264    }
 265   
 266  0 public JExpressionIF forDefaultCaseOnly(DefaultCase that, JExpressionIF code_result) {
 267  0 return new DefaultCase(that.getSourceInfo(), (UnbracedBody)code_result);
 268    }
 269   
 270  0 public JExpressionIF forCatchBlockOnly(CatchBlock that, JExpressionIF exception_result, JExpressionIF block_result) {
 271  0 return new CatchBlock(that.getSourceInfo(), (FormalParameter)exception_result, (Block)block_result);
 272    }
 273   
 274  0 public JExpressionIF forExpressionOnly(Expression that) {
 275  0 return defaultCase(that);
 276    }
 277   
 278  0 public JExpressionIF forAssignmentExpressionOnly(AssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 279  0 return defaultCase(that);
 280    }
 281   
 282  0 public JExpressionIF forSimpleAssignmentExpressionOnly(SimpleAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 283  0 return new SimpleAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 284    }
 285   
 286  0 public JExpressionIF forPlusAssignmentExpressionOnly(PlusAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 287  0 return new PlusAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 288    }
 289   
 290  0 public JExpressionIF forNumericAssignmentExpressionOnly(NumericAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 291  0 return defaultCase(that);
 292    }
 293   
 294  0 public JExpressionIF forMinusAssignmentExpressionOnly(MinusAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 295  0 return new MinusAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 296    }
 297   
 298  0 public JExpressionIF forMultiplyAssignmentExpressionOnly(MultiplyAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 299  0 return new MultiplyAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 300    }
 301   
 302  0 public JExpressionIF forDivideAssignmentExpressionOnly(DivideAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 303  0 return new DivideAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 304    }
 305   
 306  0 public JExpressionIF forModAssignmentExpressionOnly(ModAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 307  0 return new ModAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 308    }
 309   
 310  0 public JExpressionIF forShiftAssignmentExpressionOnly(ShiftAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 311  0 return defaultCase(that);
 312    }
 313   
 314  0 public JExpressionIF forLeftShiftAssignmentExpressionOnly(LeftShiftAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 315  0 return new LeftShiftAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 316    }
 317   
 318  0 public JExpressionIF forRightSignedShiftAssignmentExpressionOnly(RightSignedShiftAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 319  0 return new RightSignedShiftAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 320    }
 321   
 322  0 public JExpressionIF forRightUnsignedShiftAssignmentExpressionOnly(RightUnsignedShiftAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 323  0 return new RightUnsignedShiftAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 324    }
 325   
 326  0 public JExpressionIF forBitwiseAssignmentExpressionOnly(BitwiseAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 327  0 return defaultCase(that);
 328    }
 329   
 330  0 public JExpressionIF forBitwiseAndAssignmentExpressionOnly(BitwiseAndAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 331  0 return new BitwiseAndAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 332    }
 333   
 334  0 public JExpressionIF forBitwiseOrAssignmentExpressionOnly(BitwiseOrAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 335  0 return new BitwiseOrAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 336    }
 337   
 338  0 public JExpressionIF forBitwiseXorAssignmentExpressionOnly(BitwiseXorAssignmentExpression that, JExpressionIF name_result, JExpressionIF value_result) {
 339  0 return new BitwiseXorAssignmentExpression(that.getSourceInfo(), (Expression)name_result, (Expression)value_result);
 340    }
 341   
 342  0 public JExpressionIF forBinaryExpressionOnly(BinaryExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 343  0 return defaultCase(that);
 344    }
 345   
 346  0 public JExpressionIF forBooleanExpressionOnly(BooleanExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 347  0 return defaultCase(that);
 348    }
 349   
 350  0 public JExpressionIF forOrExpressionOnly(OrExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 351  0 return new OrExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 352    }
 353   
 354  0 public JExpressionIF forAndExpressionOnly(AndExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 355  0 return new AndExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 356    }
 357   
 358  0 public JExpressionIF forBitwiseBinaryExpressionOnly(BitwiseBinaryExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 359  0 return defaultCase(that);
 360    }
 361   
 362  0 public JExpressionIF forBitwiseOrExpressionOnly(BitwiseOrExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 363  0 return new BitwiseOrExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 364    }
 365   
 366  0 public JExpressionIF forBitwiseXorExpressionOnly(BitwiseXorExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 367  0 return new BitwiseXorExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 368    }
 369   
 370  0 public JExpressionIF forBitwiseAndExpressionOnly(BitwiseAndExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 371  0 return new BitwiseAndExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 372    }
 373   
 374  0 public JExpressionIF forEqualityExpressionOnly(EqualityExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 375  0 return defaultCase(that);
 376    }
 377   
 378  0 public JExpressionIF forEqualsExpressionOnly(EqualsExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 379  0 return new EqualsExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 380    }
 381   
 382  0 public JExpressionIF forNotEqualExpressionOnly(NotEqualExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 383  0 return new NotEqualExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 384    }
 385   
 386  0 public JExpressionIF forComparisonExpressionOnly(ComparisonExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 387  0 return defaultCase(that);
 388    }
 389   
 390  0 public JExpressionIF forLessThanExpressionOnly(LessThanExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 391  0 return new LessThanExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 392    }
 393   
 394  0 public JExpressionIF forLessThanOrEqualExpressionOnly(LessThanOrEqualExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 395  0 return new LessThanOrEqualExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 396    }
 397   
 398  0 public JExpressionIF forGreaterThanExpressionOnly(GreaterThanExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 399  0 return new GreaterThanExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 400    }
 401   
 402  0 public JExpressionIF forGreaterThanOrEqualExpressionOnly(GreaterThanOrEqualExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 403  0 return new GreaterThanOrEqualExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 404    }
 405   
 406  0 public JExpressionIF forShiftBinaryExpressionOnly(ShiftBinaryExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 407  0 return defaultCase(that);
 408    }
 409   
 410  0 public JExpressionIF forLeftShiftExpressionOnly(LeftShiftExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 411  0 return new LeftShiftExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 412    }
 413   
 414  0 public JExpressionIF forRightSignedShiftExpressionOnly(RightSignedShiftExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 415  0 return new RightSignedShiftExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 416    }
 417   
 418  0 public JExpressionIF forRightUnsignedShiftExpressionOnly(RightUnsignedShiftExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 419  0 return new RightUnsignedShiftExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 420    }
 421   
 422  0 public JExpressionIF forPlusExpressionOnly(PlusExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 423  0 return new PlusExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 424    }
 425   
 426  0 public JExpressionIF forNumericBinaryExpressionOnly(NumericBinaryExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 427  0 return defaultCase(that);
 428    }
 429   
 430  0 public JExpressionIF forMinusExpressionOnly(MinusExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 431  0 return new MinusExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 432    }
 433   
 434  0 public JExpressionIF forMultiplyExpressionOnly(MultiplyExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 435  0 return new MultiplyExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 436    }
 437   
 438  0 public JExpressionIF forDivideExpressionOnly(DivideExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 439  0 return new DivideExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 440    }
 441   
 442  0 public JExpressionIF forModExpressionOnly(ModExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 443  0 return new ModExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 444    }
 445   
 446  0 public JExpressionIF forNoOpExpressionOnly(NoOpExpression that, JExpressionIF left_result, JExpressionIF right_result) {
 447  0 return new NoOpExpression(that.getSourceInfo(), (Expression)left_result, (Expression)right_result);
 448    }
 449   
 450  0 public JExpressionIF forUnaryExpressionOnly(UnaryExpression that, JExpressionIF value_result) {
 451  0 return defaultCase(that);
 452    }
 453   
 454  0 public JExpressionIF forIncrementExpressionOnly(IncrementExpression that, JExpressionIF value_result) {
 455  0 return defaultCase(that);
 456    }
 457   
 458  0 public JExpressionIF forPrefixIncrementExpressionOnly(PrefixIncrementExpression that, JExpressionIF value_result) {
 459  0 return defaultCase(that);
 460    }
 461   
 462  0 public JExpressionIF forPositivePrefixIncrementExpressionOnly(PositivePrefixIncrementExpression that, JExpressionIF value_result) {
 463  0 return new PositivePrefixIncrementExpression(that.getSourceInfo(), (Expression)value_result);
 464    }
 465   
 466  0 public JExpressionIF forNegativePrefixIncrementExpressionOnly(NegativePrefixIncrementExpression that, JExpressionIF value_result) {
 467  0 return new NegativePrefixIncrementExpression(that.getSourceInfo(), (Expression)value_result);
 468    }
 469   
 470  0 public JExpressionIF forPostfixIncrementExpressionOnly(PostfixIncrementExpression that, JExpressionIF value_result) {
 471  0 return defaultCase(that);
 472    }
 473   
 474  0 public JExpressionIF forPositivePostfixIncrementExpressionOnly(PositivePostfixIncrementExpression that, JExpressionIF value_result) {
 475  0 return new PositivePostfixIncrementExpression(that.getSourceInfo(), (Expression)value_result);
 476    }
 477   
 478  0 public JExpressionIF forNegativePostfixIncrementExpressionOnly(NegativePostfixIncrementExpression that, JExpressionIF value_result) {
 479  0 return new NegativePostfixIncrementExpression(that.getSourceInfo(), (Expression)value_result);
 480    }
 481   
 482  0 public JExpressionIF forNumericUnaryExpressionOnly(NumericUnaryExpression that, JExpressionIF value_result) {
 483  0 return defaultCase(that);
 484    }
 485   
 486  0 public JExpressionIF forPositiveExpressionOnly(PositiveExpression that, JExpressionIF value_result) {
 487  0 return new PositiveExpression(that.getSourceInfo(), (Expression)value_result);
 488    }
 489   
 490  0 public JExpressionIF forNegativeExpressionOnly(NegativeExpression that, JExpressionIF value_result) {
 491  0 return new NegativeExpression(that.getSourceInfo(), (Expression)value_result);
 492    }
 493   
 494  0 public JExpressionIF forBitwiseNotExpressionOnly(BitwiseNotExpression that, JExpressionIF value_result) {
 495  0 return new BitwiseNotExpression(that.getSourceInfo(), (Expression)value_result);
 496    }
 497   
 498  0 public JExpressionIF forNotExpressionOnly(NotExpression that, JExpressionIF value_result) {
 499  0 return new NotExpression(that.getSourceInfo(), (Expression)value_result);
 500    }
 501   
 502  0 public JExpressionIF forConditionalExpressionOnly(ConditionalExpression that, JExpressionIF condition_result, JExpressionIF forTrue_result, JExpressionIF forFalse_result) {
 503  0 return new ConditionalExpression(that.getSourceInfo(), (Expression)condition_result, (Expression)forTrue_result, (Expression)forFalse_result);
 504    }
 505   
 506  0 public JExpressionIF forInstanceofExpressionOnly(InstanceofExpression that, JExpressionIF value_result, JExpressionIF type_result) {
 507  0 return new InstanceofExpression(that.getSourceInfo(), (Expression)value_result, (Type)type_result);
 508    }
 509   
 510  0 public JExpressionIF forCastExpressionOnly(CastExpression that, JExpressionIF type_result, JExpressionIF value_result) {
 511  0 return new CastExpression(that.getSourceInfo(), (Type)type_result, (Expression)value_result);
 512    }
 513   
 514  0 public JExpressionIF forPrimaryOnly(Primary that) {
 515  0 return defaultCase(that);
 516    }
 517   
 518  0 public JExpressionIF forLexicalLiteralOnly(LexicalLiteral that) {
 519  0 return defaultCase(that);
 520    }
 521   
 522  0 public JExpressionIF forIntegerLiteralOnly(IntegerLiteral that) {
 523  0 return new IntegerLiteral(that.getSourceInfo(), that.getValue());
 524    }
 525   
 526  0 public JExpressionIF forLongLiteralOnly(LongLiteral that) {
 527  0 return new LongLiteral(that.getSourceInfo(), that.getValue());
 528    }
 529   
 530  0 public JExpressionIF forDoubleLiteralOnly(DoubleLiteral that) {
 531  0 return new DoubleLiteral(that.getSourceInfo(), that.getValue());
 532    }
 533   
 534  0 public JExpressionIF forFloatLiteralOnly(FloatLiteral that) {
 535  0 return new FloatLiteral(that.getSourceInfo(), that.getValue());
 536    }
 537   
 538  0 public JExpressionIF forBooleanLiteralOnly(BooleanLiteral that) {
 539  0 return new BooleanLiteral(that.getSourceInfo(), that.isValue());
 540    }
 541   
 542  0 public JExpressionIF forCharLiteralOnly(CharLiteral that) {
 543  0 return new CharLiteral(that.getSourceInfo(), that.getValue());
 544    }
 545   
 546  0 public JExpressionIF forStringLiteralOnly(StringLiteral that) {
 547  0 return new StringLiteral(that.getSourceInfo(), that.getValue());
 548    }
 549   
 550  0 public JExpressionIF forNullLiteralOnly(NullLiteral that) {
 551  0 return new NullLiteral(that.getSourceInfo());
 552    }
 553   
 554  0 public JExpressionIF forInstantiationOnly(Instantiation that) {
 555  0 return defaultCase(that);
 556    }
 557   
 558  0 public JExpressionIF forClassInstantiationOnly(ClassInstantiation that, JExpressionIF type_result, JExpressionIF arguments_result) {
 559  0 return defaultCase(that);
 560    }
 561   
 562  0 public JExpressionIF forNamedClassInstantiationOnly(NamedClassInstantiation that, JExpressionIF type_result, JExpressionIF arguments_result) {
 563  0 return defaultCase(that);
 564    }
 565   
 566  0 public JExpressionIF forSimpleNamedClassInstantiationOnly(SimpleNamedClassInstantiation that, JExpressionIF type_result, JExpressionIF arguments_result) {
 567  0 return new SimpleNamedClassInstantiation(that.getSourceInfo(), (Type)type_result, (ParenthesizedExpressionList)arguments_result);
 568    }
 569   
 570  0 public JExpressionIF forComplexNamedClassInstantiationOnly(ComplexNamedClassInstantiation that, JExpressionIF enclosing_result, JExpressionIF type_result, JExpressionIF arguments_result) {
 571  0 return new ComplexNamedClassInstantiation(that.getSourceInfo(), (Expression)enclosing_result, (Type)type_result, (ParenthesizedExpressionList)arguments_result);
 572    }
 573   
 574  0 public JExpressionIF forAnonymousClassInstantiationOnly(AnonymousClassInstantiation that, JExpressionIF type_result, JExpressionIF arguments_result, JExpressionIF body_result) {
 575  0 return defaultCase(that);
 576    }
 577   
 578  0 public JExpressionIF forSimpleAnonymousClassInstantiationOnly(SimpleAnonymousClassInstantiation that, JExpressionIF type_result, JExpressionIF arguments_result, JExpressionIF body_result) {
 579  0 return new SimpleAnonymousClassInstantiation(that.getSourceInfo(), (Type)type_result, (ParenthesizedExpressionList)arguments_result, (BracedBody)body_result);
 580    }
 581   
 582  0 public JExpressionIF forComplexAnonymousClassInstantiationOnly(ComplexAnonymousClassInstantiation that, JExpressionIF enclosing_result, JExpressionIF type_result, JExpressionIF arguments_result, JExpressionIF body_result) {
 583  0 return new ComplexAnonymousClassInstantiation(that.getSourceInfo(), (Expression)enclosing_result, (Type)type_result, (ParenthesizedExpressionList)arguments_result, (BracedBody)body_result);
 584    }
 585   
 586  0 public JExpressionIF forArrayInstantiationOnly(ArrayInstantiation that, JExpressionIF type_result) {
 587  0 return defaultCase(that);
 588    }
 589   
 590  0 public JExpressionIF forUninitializedArrayInstantiationOnly(UninitializedArrayInstantiation that, JExpressionIF type_result, JExpressionIF dimensionSizes_result) {
 591  0 return defaultCase(that);
 592    }
 593   
 594  0 public JExpressionIF forSimpleUninitializedArrayInstantiationOnly(SimpleUninitializedArrayInstantiation that, JExpressionIF type_result, JExpressionIF dimensionSizes_result) {
 595  0 return new SimpleUninitializedArrayInstantiation(that.getSourceInfo(), (Type)type_result, (DimensionExpressionList)dimensionSizes_result);
 596    }
 597   
 598  0 public JExpressionIF forComplexUninitializedArrayInstantiationOnly(ComplexUninitializedArrayInstantiation that, JExpressionIF enclosing_result, JExpressionIF type_result, JExpressionIF dimensionSizes_result) {
 599  0 return new ComplexUninitializedArrayInstantiation(that.getSourceInfo(), (Expression)enclosing_result, (Type)type_result, (DimensionExpressionList)dimensionSizes_result);
 600    }
 601   
 602  0 public JExpressionIF forInitializedArrayInstantiationOnly(InitializedArrayInstantiation that, JExpressionIF type_result, JExpressionIF initializer_result) {
 603  0 return defaultCase(that);
 604    }
 605   
 606  0 public JExpressionIF forSimpleInitializedArrayInstantiationOnly(SimpleInitializedArrayInstantiation that, JExpressionIF type_result, JExpressionIF initializer_result) {
 607  0 return new SimpleInitializedArrayInstantiation(that.getSourceInfo(), (Type)type_result, (ArrayInitializer)initializer_result);
 608    }
 609   
 610  0 public JExpressionIF forComplexInitializedArrayInstantiationOnly(ComplexInitializedArrayInstantiation that, JExpressionIF enclosing_result, JExpressionIF type_result, JExpressionIF initializer_result) {
 611  0 return new ComplexInitializedArrayInstantiation(that.getSourceInfo(), (Expression)enclosing_result, (Type)type_result, (ArrayInitializer)initializer_result);
 612    }
 613   
 614  0 public JExpressionIF forVariableReferenceOnly(VariableReference that) {
 615  0 return defaultCase(that);
 616    }
 617   
 618  0 public JExpressionIF forNameReferenceOnly(NameReference that, JExpressionIF name_result) {
 619  0 return defaultCase(that);
 620    }
 621   
 622  0 public JExpressionIF forSimpleNameReferenceOnly(SimpleNameReference that, JExpressionIF name_result) {
 623  0 return new SimpleNameReference(that.getSourceInfo(), (Word)name_result);
 624    }
 625   
 626  0 public JExpressionIF forComplexNameReferenceOnly(ComplexNameReference that, JExpressionIF enclosing_result, JExpressionIF name_result) {
 627  0 return new ComplexNameReference(that.getSourceInfo(), (Expression)enclosing_result, (Word)name_result);
 628    }
 629   
 630  0 public JExpressionIF forThisReferenceOnly(ThisReference that) {
 631  0 return defaultCase(that);
 632    }
 633   
 634  0 public JExpressionIF forSimpleThisReferenceOnly(SimpleThisReference that) {
 635  0 return new SimpleThisReference(that.getSourceInfo());
 636    }
 637   
 638  0 public JExpressionIF forComplexThisReferenceOnly(ComplexThisReference that, JExpressionIF enclosing_result) {
 639  0 return new ComplexThisReference(that.getSourceInfo(), (Expression)enclosing_result);
 640    }
 641   
 642  0 public JExpressionIF forSuperReferenceOnly(SuperReference that) {
 643  0 return defaultCase(that);
 644    }
 645   
 646  0 public JExpressionIF forSimpleSuperReferenceOnly(SimpleSuperReference that) {
 647  0 return new SimpleSuperReference(that.getSourceInfo());
 648    }
 649   
 650  0 public JExpressionIF forComplexSuperReferenceOnly(ComplexSuperReference that, JExpressionIF enclosing_result) {
 651  0 return new ComplexSuperReference(that.getSourceInfo(), (Expression)enclosing_result);
 652    }
 653   
 654  0 public JExpressionIF forFunctionInvocationOnly(FunctionInvocation that, JExpressionIF arguments_result) {
 655  0 return defaultCase(that);
 656    }
 657   
 658  0 public JExpressionIF forMethodInvocationOnly(MethodInvocation that, JExpressionIF arguments_result, JExpressionIF name_result) {
 659  0 return defaultCase(that);
 660    }
 661   
 662  0 public JExpressionIF forSimpleMethodInvocationOnly(SimpleMethodInvocation that, JExpressionIF name_result, JExpressionIF arguments_result) {
 663  0 return new SimpleMethodInvocation(that.getSourceInfo(), (Word)name_result, (ParenthesizedExpressionList)arguments_result);
 664    }
 665   
 666  0 public JExpressionIF forComplexMethodInvocationOnly(ComplexMethodInvocation that, JExpressionIF enclosing_result, JExpressionIF name_result, JExpressionIF arguments_result) {
 667  0 return new ComplexMethodInvocation(that.getSourceInfo(), (Expression)enclosing_result, (Word)name_result, (ParenthesizedExpressionList)arguments_result);
 668    }
 669   
 670  0 public JExpressionIF forThisConstructorInvocationOnly(ThisConstructorInvocation that, JExpressionIF arguments_result) {
 671  0 return defaultCase(that);
 672    }
 673   
 674  0 public JExpressionIF forSimpleThisConstructorInvocationOnly(SimpleThisConstructorInvocation that, JExpressionIF arguments_result) {
 675  0 return new SimpleThisConstructorInvocation(that.getSourceInfo(), (ParenthesizedExpressionList)arguments_result);
 676    }
 677   
 678  0 public JExpressionIF forComplexThisConstructorInvocationOnly(ComplexThisConstructorInvocation that, JExpressionIF enclosing_result, JExpressionIF arguments_result) {
 679  0 return new ComplexThisConstructorInvocation(that.getSourceInfo(), (Expression)enclosing_result, (ParenthesizedExpressionList)arguments_result);
 680    }
 681   
 682  0 public JExpressionIF forSuperConstructorInvocationOnly(SuperConstructorInvocation that, JExpressionIF arguments_result) {
 683  0 return defaultCase(that);
 684    }
 685   
 686  0 public JExpressionIF forSimpleSuperConstructorInvocationOnly(SimpleSuperConstructorInvocation that, JExpressionIF arguments_result) {
 687  0 return new SimpleSuperConstructorInvocation(that.getSourceInfo(), (ParenthesizedExpressionList)arguments_result);
 688    }
 689   
 690  0 public JExpressionIF forComplexSuperConstructorInvocationOnly(ComplexSuperConstructorInvocation that, JExpressionIF enclosing_result, JExpressionIF arguments_result) {
 691  0 return new ComplexSuperConstructorInvocation(that.getSourceInfo(), (Expression)enclosing_result, (ParenthesizedExpressionList)arguments_result);
 692    }
 693   
 694  0 public JExpressionIF forClassLiteralOnly(ClassLiteral that, JExpressionIF type_result) {
 695  0 return new ClassLiteral(that.getSourceInfo(), (ReturnTypeI)type_result);
 696    }
 697   
 698  0 public JExpressionIF forArrayAccessOnly(ArrayAccess that, JExpressionIF array_result, JExpressionIF index_result) {
 699  0 return new ArrayAccess(that.getSourceInfo(), (Expression)array_result, (Expression)index_result);
 700    }
 701   
 702  0 public JExpressionIF forParenthesizedOnly(Parenthesized that, JExpressionIF value_result) {
 703  0 return new Parenthesized(that.getSourceInfo(), (Expression)value_result);
 704    }
 705   
 706  0 public JExpressionIF forEmptyExpressionOnly(EmptyExpression that) {
 707  0 return new EmptyExpression(that.getSourceInfo());
 708    }
 709   
 710  0 public JExpressionIF forBodyOnly(Body that, JExpressionIF[] statements_result) {
 711  0 return defaultCase(that);
 712    }
 713   
 714  0 public JExpressionIF forBracedBodyOnly(BracedBody that, JExpressionIF[] statements_result) {
 715  0 return new BracedBody(that.getSourceInfo(), (BodyItemI[])statements_result);
 716    }
 717   
 718  0 public JExpressionIF forUnbracedBodyOnly(UnbracedBody that, JExpressionIF[] statements_result) {
 719  0 return new UnbracedBody(that.getSourceInfo(), (BodyItemI[])statements_result);
 720    }
 721   
 722  0 public JExpressionIF forExpressionListOnly(ExpressionList that, JExpressionIF[] expressions_result) {
 723  0 return defaultCase(that);
 724    }
 725   
 726  0 public JExpressionIF forParenthesizedExpressionListOnly(ParenthesizedExpressionList that, JExpressionIF[] expressions_result) {
 727  0 return new ParenthesizedExpressionList(that.getSourceInfo(), (Expression[])expressions_result);
 728    }
 729   
 730  0 public JExpressionIF forUnparenthesizedExpressionListOnly(UnparenthesizedExpressionList that, JExpressionIF[] expressions_result) {
 731  0 return new UnparenthesizedExpressionList(that.getSourceInfo(), (Expression[])expressions_result);
 732    }
 733   
 734  0 public JExpressionIF forDimensionExpressionListOnly(DimensionExpressionList that, JExpressionIF[] expressions_result) {
 735  0 return new DimensionExpressionList(that.getSourceInfo(), (Expression[])expressions_result);
 736    }
 737   
 738  0 public JExpressionIF forEmptyForConditionOnly(EmptyForCondition that) {
 739  0 return new EmptyForCondition(that.getSourceInfo());
 740    }
 741   
 742   
 743    /** Implementation of JExpressionIFDepthFirstVisitor methods to implement depth-first traversal. */
 744  0 public JExpressionIF forSourceFile(SourceFile that) {
 745  0 final JExpressionIF[] packageStatements_result = new PackageStatement[that.getPackageStatements().length];
 746  0 for (int i = 0; i < that.getPackageStatements().length; i++) {
 747  0 packageStatements_result[i] = (PackageStatement)that.getPackageStatements()[i].visit(this);
 748    }
 749  0 final JExpressionIF[] importStatements_result = new ImportStatement[that.getImportStatements().length];
 750  0 for (int i = 0; i < that.getImportStatements().length; i++) {
 751  0 importStatements_result[i] = (ImportStatement)that.getImportStatements()[i].visit(this);
 752    }
 753  0 final JExpressionIF[] types_result = new TypeDefBase[that.getTypes().length];
 754  0 for (int i = 0; i < that.getTypes().length; i++) {
 755  0 types_result[i] = (TypeDefBase)that.getTypes()[i].visit(this);
 756    }
 757  0 return forSourceFileOnly(that, packageStatements_result, importStatements_result, types_result);
 758    }
 759   
 760  0 public JExpressionIF forModifiersAndVisibility(ModifiersAndVisibility that) {
 761  0 return forModifiersAndVisibilityOnly(that);
 762    }
 763   
 764  0 public JExpressionIF forCompoundWord(CompoundWord that) {
 765  0 final JExpressionIF[] words_result = new Word[that.getWords().length];
 766  0 for (int i = 0; i < that.getWords().length; i++) {
 767  0 words_result[i] = (Word)that.getWords()[i].visit(this);
 768    }
 769  0 return forCompoundWordOnly(that, words_result);
 770    }
 771   
 772  0 public JExpressionIF forWord(Word that) {
 773  0 return forWordOnly(that);
 774    }
 775   
 776  0 public JExpressionIF forClassDef(ClassDef that) {
 777  0 final JExpressionIF mav_result = that.getMav().visit(this);
 778  0 final JExpressionIF name_result = that.getName().visit(this);
 779  0 final JExpressionIF[] typeParameters_result = new TypeParameter[that.getTypeParameters().length];
 780  0 for (int i = 0; i < that.getTypeParameters().length; i++) {
 781  0 typeParameters_result[i] = (TypeParameter)that.getTypeParameters()[i].visit(this);
 782    }
 783  0 final JExpressionIF superclass_result = that.getSuperclass().visit(this);
 784  0 final JExpressionIF[] interfaces_result = new ReferenceType[that.getInterfaces().length];
 785  0 for (int i = 0; i < that.getInterfaces().length; i++) {
 786  0 interfaces_result[i] = (ReferenceType)that.getInterfaces()[i].visit(this);
 787    }
 788  0 final JExpressionIF body_result = that.getBody().visit(this);
 789  0 return forClassDefOnly(that, mav_result, name_result, typeParameters_result, superclass_result, interfaces_result, body_result);
 790    }
 791   
 792  0 public JExpressionIF forInnerClassDef(InnerClassDef that) {
 793  0 final JExpressionIF mav_result = that.getMav().visit(this);
 794  0 final JExpressionIF name_result = that.getName().visit(this);
 795  0 final JExpressionIF[] typeParameters_result = new TypeParameter[that.getTypeParameters().length];
 796  0 for (int i = 0; i < that.getTypeParameters().length; i++) {
 797  0 typeParameters_result[i] = (TypeParameter)that.getTypeParameters()[i].visit(this);
 798    }
 799  0 final JExpressionIF superclass_result = that.getSuperclass().visit(this);
 800  0 final JExpressionIF[] interfaces_result = new ReferenceType[that.getInterfaces().length];
 801  0 for (int i = 0; i < that.getInterfaces().length; i++) {
 802  0 interfaces_result[i] = (ReferenceType)that.getInterfaces()[i].visit(this);
 803    }
 804  0 final JExpressionIF body_result = that.getBody().visit(this);
 805  0 return forInnerClassDefOnly(that, mav_result, name_result, typeParameters_result, superclass_result, interfaces_result, body_result);
 806    }
 807   
 808  0 public JExpressionIF forInterfaceDef(InterfaceDef that) {
 809  0 final JExpressionIF mav_result = that.getMav().visit(this);
 810  0 final JExpressionIF name_result = that.getName().visit(this);
 811  0 final JExpressionIF[] typeParameters_result = new TypeParameter[that.getTypeParameters().length];
 812  0 for (int i = 0; i < that.getTypeParameters().length; i++) {
 813  0 typeParameters_result[i] = (TypeParameter)that.getTypeParameters()[i].visit(this);
 814    }
 815  0 final JExpressionIF[] interfaces_result = new ReferenceType[that.getInterfaces().length];
 816  0 for (int i = 0; i < that.getInterfaces().length; i++) {
 817  0 interfaces_result[i] = (ReferenceType)that.getInterfaces()[i].visit(this);
 818    }
 819  0 final JExpressionIF body_result = that.getBody().visit(this);
 820  0 return forInterfaceDefOnly(that, mav_result, name_result, typeParameters_result, interfaces_result, body_result);
 821    }
 822   
 823  0 public JExpressionIF forInnerInterfaceDef(InnerInterfaceDef that) {
 824  0 final JExpressionIF mav_result = that.getMav().visit(this);
 825  0 final JExpressionIF name_result = that.getName().visit(this);
 826  0 final JExpressionIF[] typeParameters_result = new TypeParameter[that.getTypeParameters().length];
 827  0 for (int i = 0; i < that.getTypeParameters().length; i++) {
 828  0 typeParameters_result[i] = (TypeParameter)that.getTypeParameters()[i].visit(this);
 829    }
 830  0 final JExpressionIF[] interfaces_result = new ReferenceType[that.getInterfaces().length];
 831  0 for (int i = 0; i < that.getInterfaces().length; i++) {
 832  0 interfaces_result[i] = (ReferenceType)that.getInterfaces()[i].visit(this);
 833    }
 834  0 final JExpressionIF body_result = that.getBody().visit(this);
 835  0 return forInnerInterfaceDefOnly(that, mav_result, name_result, typeParameters_result, interfaces_result, body_result);
 836    }
 837   
 838  0 public JExpressionIF forConstructorDef(ConstructorDef that) {
 839  0 final JExpressionIF name_result = that.getName().visit(this);
 840  0 final JExpressionIF mav_result = that.getMav().visit(this);
 841  0 final JExpressionIF[] parameters_result = new FormalParameter[that.getParameters().length];
 842  0 for (int i = 0; i < that.getParameters().length; i++) {
 843  0 parameters_result[i] = (FormalParameter)that.getParameters()[i].visit(this);
 844    }
 845  0 final JExpressionIF[] throws_result = new ReferenceType[that.getThrows().length];
 846  0 for (int i = 0; i < that.getThrows().length; i++) {
 847  0 throws_result[i] = (ReferenceType)that.getThrows()[i].visit(this);
 848    }
 849  0 final JExpressionIF statements_result = that.getStatements().visit(this);
 850  0 return forConstructorDefOnly(that, name_result, mav_result, parameters_result, throws_result, statements_result);
 851    }
 852   
 853  0 public JExpressionIF forInstanceInitializer(InstanceInitializer that) {
 854  0 final JExpressionIF code_result = that.getCode().visit(this);
 855  0 return forInstanceInitializerOnly(that, code_result);
 856    }
 857   
 858  0 public JExpressionIF forStaticInitializer(StaticInitializer that) {
 859  0 final JExpressionIF code_result = that.getCode().visit(this);
 860  0 return forStaticInitializerOnly(that, code_result);
 861    }
 862   
 863  0 public JExpressionIF forPackageStatement(PackageStatement that) {
 864  0 final JExpressionIF cWord_result = that.getCWord().visit(this);
 865  0 return forPackageStatementOnly(that, cWord_result);
 866    }
 867   
 868  0 public JExpressionIF forClassImportStatement(ClassImportStatement that) {
 869  0 final JExpressionIF cWord_result = that.getCWord().visit(this);
 870  0 return forClassImportStatementOnly(that, cWord_result);
 871    }
 872   
 873  0 public JExpressionIF forPackageImportStatement(PackageImportStatement that) {
 874  0 final JExpressionIF cWord_result = that.getCWord().visit(this);
 875  0 return forPackageImportStatementOnly(that, cWord_result);
 876    }
 877   
 878  0 public JExpressionIF forLabeledStatement(LabeledStatement that) {
 879  0 final JExpressionIF label_result = that.getLabel().visit(this);
 880  0 final JExpressionIF statement_result = that.getStatement().visit(this);
 881  0 return forLabeledStatementOnly(that, label_result, statement_result);
 882    }
 883   
 884  0 public JExpressionIF forBlock(Block that) {
 885  0 final JExpressionIF statements_result = that.getStatements().visit(this);
 886  0 return forBlockOnly(that, statements_result);
 887    }
 888   
 889  0 public JExpressionIF forExpressionStatement(ExpressionStatement that) {
 890  0 final JExpressionIF expression_result = that.getExpression().visit(this);
 891  0 return forExpressionStatementOnly(that, expression_result);
 892    }
 893   
 894  0 public JExpressionIF forSwitchStatement(SwitchStatement that) {
 895  0 final JExpressionIF test_result = that.getTest().visit(this);
 896  0 final JExpressionIF[] cases_result = new SwitchCase[that.getCases().length];
 897  0 for (int i = 0; i < that.getCases().length; i++) {
 898  0 cases_result[i] = (SwitchCase)that.getCases()[i].visit(this);
 899    }
 900  0 return forSwitchStatementOnly(that, test_result, cases_result);
 901    }
 902   
 903  0 public JExpressionIF forIfThenStatement(IfThenStatement that) {
 904  0 final JExpressionIF testExpression_result = that.getTestExpression().visit(this);
 905  0 final JExpressionIF thenStatement_result = that.getThenStatement().visit(this);
 906  0 return forIfThenStatementOnly(that, testExpression_result, thenStatement_result);
 907    }
 908   
 909  0 public JExpressionIF forIfThenElseStatement(IfThenElseStatement that) {
 910  0 final JExpressionIF testExpression_result = that.getTestExpression().visit(this);
 911  0 final JExpressionIF thenStatement_result = that.getThenStatement().visit(this);
 912  0 final JExpressionIF elseStatement_result = that.getElseStatement().visit(this);
 913  0 return forIfThenElseStatementOnly(that, testExpression_result, thenStatement_result, elseStatement_result);
 914    }
 915   
 916  0 public JExpressionIF forWhileStatement(WhileStatement that) {
 917  0 final JExpressionIF condition_result = that.getCondition().visit(this);
 918  0 final JExpressionIF code_result = that.getCode().visit(this);
 919  0 return forWhileStatementOnly(that, condition_result, code_result);
 920    }
 921   
 922  0 public JExpressionIF forDoStatement(DoStatement that) {
 923  0 final JExpressionIF code_result = that.getCode().visit(this);
 924  0 final JExpressionIF condition_result = that.getCondition().visit(this);
 925  0 return forDoStatementOnly(that, code_result, condition_result);
 926    }
 927   
 928  0 public JExpressionIF forForStatement(ForStatement that) {
 929  0 final JExpressionIF init_result = that.getInit().visit(this);
 930  0 final JExpressionIF condition_result = that.getCondition().visit(this);
 931  0 final JExpressionIF update_result = that.getUpdate().visit(this);
 932  0 final JExpressionIF code_result = that.getCode().visit(this);
 933  0 return forForStatementOnly(that, init_result, condition_result, update_result, code_result);
 934    }
 935   
 936  0 public JExpressionIF forLabeledBreakStatement(LabeledBreakStatement that) {
 937  0 final JExpressionIF label_result = that.getLabel().visit(this);
 938  0 return forLabeledBreakStatementOnly(that, label_result);
 939    }
 940   
 941  0 public JExpressionIF forUnlabeledBreakStatement(UnlabeledBreakStatement that) {
 942  0 return forUnlabeledBreakStatementOnly(that);
 943    }
 944   
 945  0 public JExpressionIF forLabeledContinueStatement(LabeledContinueStatement that) {
 946  0 final JExpressionIF label_result = that.getLabel().visit(this);
 947  0 return forLabeledContinueStatementOnly(that, label_result);
 948    }
 949   
 950  0 public JExpressionIF forUnlabeledContinueStatement(UnlabeledContinueStatement that) {
 951  0 return forUnlabeledContinueStatementOnly(that);
 952    }
 953   
 954  0 public JExpressionIF forVoidReturnStatement(VoidReturnStatement that) {
 955  0 return forVoidReturnStatementOnly(that);
 956    }
 957   
 958  0 public JExpressionIF forValueReturnStatement(ValueReturnStatement that) {
 959  0 final JExpressionIF value_result = that.getValue().visit(this);
 960  0 return forValueReturnStatementOnly(that, value_result);
 961    }
 962   
 963  0 public JExpressionIF forThrowStatement(ThrowStatement that) {
 964  0 final JExpressionIF thrown_result = that.getThrown().visit(this);
 965  0 return forThrowStatementOnly(that, thrown_result);
 966    }
 967   
 968  0 public JExpressionIF forSynchronizedStatement(SynchronizedStatement that) {
 969  0 final JExpressionIF lockExpr_result = that.getLockExpr().visit(this);
 970  0 final JExpressionIF block_result = that.getBlock().visit(this);
 971  0 return forSynchronizedStatementOnly(that, lockExpr_result, block_result);
 972    }
 973   
 974  0 public JExpressionIF forTryCatchFinallyStatement(TryCatchFinallyStatement that) {
 975  0 final JExpressionIF tryBlock_result = that.getTryBlock().visit(this);
 976  0 final JExpressionIF[] catchBlocks_result = new CatchBlock[that.getCatchBlocks().length];
 977  0 for (int i = 0; i < that.getCatchBlocks().length; i++) {
 978  0 catchBlocks_result[i] = (CatchBlock)that.getCatchBlocks()[i].visit(this);
 979    }
 980  0 final JExpressionIF finallyBlock_result = that.getFinallyBlock().visit(this);
 981  0 return forTryCatchFinallyStatementOnly(that, tryBlock_result, catchBlocks_result, finallyBlock_result);
 982    }
 983   
 984  0 public JExpressionIF forNormalTryCatchStatement(NormalTryCatchStatement that) {
 985  0 final JExpressionIF tryBlock_result = that.getTryBlock().visit(this);
 986  0 final JExpressionIF[] catchBlocks_result = new CatchBlock[that.getCatchBlocks().length];
 987  0 for (int i = 0; i < that.getCatchBlocks().length; i++) {
 988  0 catchBlocks_result[i] = (CatchBlock)that.getCatchBlocks()[i].visit(this);
 989    }
 990  0 return forNormalTryCatchStatementOnly(that, tryBlock_result, catchBlocks_result);
 991    }
 992   
 993  0 public JExpressionIF forEmptyStatement(EmptyStatement that) {
 994  0 return forEmptyStatementOnly(that);
 995    }
 996   
 997  0 public JExpressionIF forConcreteMethodDef(ConcreteMethodDef that) {
 998  0 final JExpressionIF mav_result = that.getMav().visit(this);
 999  0 final JExpressionIF[] typeParams_result = new TypeParameter[that.getTypeParams().length];
 1000  0 for (int i = 0; i < that.getTypeParams().length; i++) {
 1001  0 typeParams_result[i] = (TypeParameter)that.getTypeParams()[i].visit(this);
 1002    }
 1003  0 final JExpressionIF result_result = that.getResult().visit(this);
 1004  0 final JExpressionIF name_result = that.getName().visit(this);
 1005  0 final JExpressionIF[] params_result = new FormalParameter[that.getParams().length];
 1006  0 for (int i = 0; i < that.getParams().length; i++) {
 1007  0 params_result[i] = (FormalParameter)that.getParams()[i].visit(this);
 1008    }
 1009  0 final JExpressionIF[] throws_result = new ReferenceType[that.getThrows().length];
 1010  0 for (int i = 0; i < that.getThrows().length; i++) {
 1011  0 throws_result[i] = (ReferenceType)that.getThrows()[i].visit(this);
 1012    }
 1013  0 final JExpressionIF body_result = that.getBody().visit(this);
 1014  0 return forConcreteMethodDefOnly(that, mav_result, typeParams_result, result_result, name_result, params_result, throws_result, body_result);
 1015    }
 1016   
 1017  0 public JExpressionIF forAbstractMethodDef(AbstractMethodDef that) {
 1018  0 final JExpressionIF mav_result = that.getMav().visit(this);
 1019  0 final JExpressionIF[] typeParams_result = new TypeParameter[that.getTypeParams().length];
 1020  0 for (int i = 0; i < that.getTypeParams().length; i++) {
 1021  0 typeParams_result[i] = (TypeParameter)that.getTypeParams()[i].visit(this);
 1022    }
 1023  0 final JExpressionIF result_result = that.getResult().visit(this);
 1024  0 final JExpressionIF name_result = that.getName().visit(this);
 1025  0 final JExpressionIF[] params_result = new FormalParameter[that.getParams().length];
 1026  0 for (int i = 0; i < that.getParams().length; i++) {
 1027  0 params_result[i] = (FormalParameter)that.getParams()[i].visit(this);
 1028    }
 1029  0 final JExpressionIF[] throws_result = new ReferenceType[that.getThrows().length];
 1030  0 for (int i = 0; i < that.getThrows().length; i++) {
 1031  0 throws_result[i] = (ReferenceType)that.getThrows()[i].visit(this);
 1032    }
 1033  0 return forAbstractMethodDefOnly(that, mav_result, typeParams_result, result_result, name_result, params_result, throws_result);
 1034    }
 1035   
 1036  0 public JExpressionIF forFormalParameter(FormalParameter that) {
 1037  0 final JExpressionIF declarator_result = that.getDeclarator().visit(this);
 1038  0 return forFormalParameterOnly(that, declarator_result);
 1039    }
 1040   
 1041  0 public JExpressionIF forVariableDeclaration(VariableDeclaration that) {
 1042  0 final JExpressionIF mav_result = that.getMav().visit(this);
 1043  0 final JExpressionIF[] declarators_result = new VariableDeclarator[that.getDeclarators().length];
 1044  0 for (int i = 0; i < that.getDeclarators().length; i++) {
 1045  0 declarators_result[i] = (VariableDeclarator)that.getDeclarators()[i].visit(this);
 1046    }
 1047  0 return forVariableDeclarationOnly(that, mav_result, declarators_result);
 1048    }
 1049   
 1050  0 public JExpressionIF forUninitializedVariableDeclarator(UninitializedVariableDeclarator that) {
 1051  0 final JExpressionIF type_result = that.getType().visit(this);
 1052  0 final JExpressionIF name_result = that.getName().visit(this);
 1053  0 return forUninitializedVariableDeclaratorOnly(that, type_result, name_result);
 1054    }
 1055   
 1056  0 public JExpressionIF forInitializedVariableDeclarator(InitializedVariableDeclarator that) {
 1057  0 final JExpressionIF type_result = that.getType().visit(this);
 1058  0 final JExpressionIF name_result = that.getName().visit(this);
 1059  0 final JExpressionIF initializer_result = that.getInitializer().visit(this);
 1060  0 return forInitializedVariableDeclaratorOnly(that, type_result, name_result, initializer_result);
 1061    }
 1062   
 1063  0 public JExpressionIF forTypeParameter(TypeParameter that) {
 1064  0 final JExpressionIF variable_result = that.getVariable().visit(this);
 1065  0 final JExpressionIF bound_result = that.getBound().visit(this);
 1066  0 return forTypeParameterOnly(that, variable_result, bound_result);
 1067    }
 1068   
 1069  0 public JExpressionIF forArrayInitializer(ArrayInitializer that) {
 1070  0 final JExpressionIF[] items_result = new VariableInitializerI[that.getItems().length];
 1071  0 for (int i = 0; i < that.getItems().length; i++) {
 1072  0 items_result[i] = (VariableInitializerI)that.getItems()[i].visit(this);
 1073    }
 1074  0 return forArrayInitializerOnly(that, items_result);
 1075    }
 1076   
 1077  0 public JExpressionIF forPrimitiveType(PrimitiveType that) {
 1078  0 return forPrimitiveTypeOnly(that);
 1079    }
 1080   
 1081  0 public JExpressionIF forArrayType(ArrayType that) {
 1082  0 final JExpressionIF elementType_result = that.getElementType().visit(this);
 1083  0 return forArrayTypeOnly(that, elementType_result);
 1084    }
 1085   
 1086  0 public JExpressionIF forMemberType(MemberType that) {
 1087  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1088  0 final JExpressionIF right_result = that.getRight().visit(this);
 1089  0 return forMemberTypeOnly(that, left_result, right_result);
 1090    }
 1091   
 1092  0 public JExpressionIF forClassOrInterfaceType(ClassOrInterfaceType that) {
 1093  0 final JExpressionIF[] typeArguments_result = new Type[that.getTypeArguments().length];
 1094  0 for (int i = 0; i < that.getTypeArguments().length; i++) {
 1095  0 typeArguments_result[i] = (Type)that.getTypeArguments()[i].visit(this);
 1096    }
 1097  0 return forClassOrInterfaceTypeOnly(that, typeArguments_result);
 1098    }
 1099   
 1100  0 public JExpressionIF forTypeVariable(TypeVariable that) {
 1101  0 return forTypeVariableOnly(that);
 1102    }
 1103   
 1104  0 public JExpressionIF forVoidReturn(VoidReturn that) {
 1105  0 return forVoidReturnOnly(that);
 1106    }
 1107   
 1108  0 public JExpressionIF forLabeledCase(LabeledCase that) {
 1109  0 final JExpressionIF label_result = that.getLabel().visit(this);
 1110  0 final JExpressionIF code_result = that.getCode().visit(this);
 1111  0 return forLabeledCaseOnly(that, label_result, code_result);
 1112    }
 1113   
 1114  0 public JExpressionIF forDefaultCase(DefaultCase that) {
 1115  0 final JExpressionIF code_result = that.getCode().visit(this);
 1116  0 return forDefaultCaseOnly(that, code_result);
 1117    }
 1118   
 1119  0 public JExpressionIF forCatchBlock(CatchBlock that) {
 1120  0 final JExpressionIF exception_result = that.getException().visit(this);
 1121  0 final JExpressionIF block_result = that.getBlock().visit(this);
 1122  0 return forCatchBlockOnly(that, exception_result, block_result);
 1123    }
 1124   
 1125  0 public JExpressionIF forSimpleAssignmentExpression(SimpleAssignmentExpression that) {
 1126  0 final JExpressionIF name_result = that.getName().visit(this);
 1127  0 final JExpressionIF value_result = that.getValue().visit(this);
 1128  0 return forSimpleAssignmentExpressionOnly(that, name_result, value_result);
 1129    }
 1130   
 1131  0 public JExpressionIF forPlusAssignmentExpression(PlusAssignmentExpression that) {
 1132  0 final JExpressionIF name_result = that.getName().visit(this);
 1133  0 final JExpressionIF value_result = that.getValue().visit(this);
 1134  0 return forPlusAssignmentExpressionOnly(that, name_result, value_result);
 1135    }
 1136   
 1137  0 public JExpressionIF forMinusAssignmentExpression(MinusAssignmentExpression that) {
 1138  0 final JExpressionIF name_result = that.getName().visit(this);
 1139  0 final JExpressionIF value_result = that.getValue().visit(this);
 1140  0 return forMinusAssignmentExpressionOnly(that, name_result, value_result);
 1141    }
 1142   
 1143  0 public JExpressionIF forMultiplyAssignmentExpression(MultiplyAssignmentExpression that) {
 1144  0 final JExpressionIF name_result = that.getName().visit(this);
 1145  0 final JExpressionIF value_result = that.getValue().visit(this);
 1146  0 return forMultiplyAssignmentExpressionOnly(that, name_result, value_result);
 1147    }
 1148   
 1149  0 public JExpressionIF forDivideAssignmentExpression(DivideAssignmentExpression that) {
 1150  0 final JExpressionIF name_result = that.getName().visit(this);
 1151  0 final JExpressionIF value_result = that.getValue().visit(this);
 1152  0 return forDivideAssignmentExpressionOnly(that, name_result, value_result);
 1153    }
 1154   
 1155  0 public JExpressionIF forModAssignmentExpression(ModAssignmentExpression that) {
 1156  0 final JExpressionIF name_result = that.getName().visit(this);
 1157  0 final JExpressionIF value_result = that.getValue().visit(this);
 1158  0 return forModAssignmentExpressionOnly(that, name_result, value_result);
 1159    }
 1160   
 1161  0 public JExpressionIF forLeftShiftAssignmentExpression(LeftShiftAssignmentExpression that) {
 1162  0 final JExpressionIF name_result = that.getName().visit(this);
 1163  0 final JExpressionIF value_result = that.getValue().visit(this);
 1164  0 return forLeftShiftAssignmentExpressionOnly(that, name_result, value_result);
 1165    }
 1166   
 1167  0 public JExpressionIF forRightSignedShiftAssignmentExpression(RightSignedShiftAssignmentExpression that) {
 1168  0 final JExpressionIF name_result = that.getName().visit(this);
 1169  0 final JExpressionIF value_result = that.getValue().visit(this);
 1170  0 return forRightSignedShiftAssignmentExpressionOnly(that, name_result, value_result);
 1171    }
 1172   
 1173  0 public JExpressionIF forRightUnsignedShiftAssignmentExpression(RightUnsignedShiftAssignmentExpression that) {
 1174  0 final JExpressionIF name_result = that.getName().visit(this);
 1175  0 final JExpressionIF value_result = that.getValue().visit(this);
 1176  0 return forRightUnsignedShiftAssignmentExpressionOnly(that, name_result, value_result);
 1177    }
 1178   
 1179  0 public JExpressionIF forBitwiseAndAssignmentExpression(BitwiseAndAssignmentExpression that) {
 1180  0 final JExpressionIF name_result = that.getName().visit(this);
 1181  0 final JExpressionIF value_result = that.getValue().visit(this);
 1182  0 return forBitwiseAndAssignmentExpressionOnly(that, name_result, value_result);
 1183    }
 1184   
 1185  0 public JExpressionIF forBitwiseOrAssignmentExpression(BitwiseOrAssignmentExpression that) {
 1186  0 final JExpressionIF name_result = that.getName().visit(this);
 1187  0 final JExpressionIF value_result = that.getValue().visit(this);
 1188  0 return forBitwiseOrAssignmentExpressionOnly(that, name_result, value_result);
 1189    }
 1190   
 1191  0 public JExpressionIF forBitwiseXorAssignmentExpression(BitwiseXorAssignmentExpression that) {
 1192  0 final JExpressionIF name_result = that.getName().visit(this);
 1193  0 final JExpressionIF value_result = that.getValue().visit(this);
 1194  0 return forBitwiseXorAssignmentExpressionOnly(that, name_result, value_result);
 1195    }
 1196   
 1197  0 public JExpressionIF forOrExpression(OrExpression that) {
 1198  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1199  0 final JExpressionIF right_result = that.getRight().visit(this);
 1200  0 return forOrExpressionOnly(that, left_result, right_result);
 1201    }
 1202   
 1203  0 public JExpressionIF forAndExpression(AndExpression that) {
 1204  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1205  0 final JExpressionIF right_result = that.getRight().visit(this);
 1206  0 return forAndExpressionOnly(that, left_result, right_result);
 1207    }
 1208   
 1209  0 public JExpressionIF forBitwiseOrExpression(BitwiseOrExpression that) {
 1210  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1211  0 final JExpressionIF right_result = that.getRight().visit(this);
 1212  0 return forBitwiseOrExpressionOnly(that, left_result, right_result);
 1213    }
 1214   
 1215  0 public JExpressionIF forBitwiseXorExpression(BitwiseXorExpression that) {
 1216  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1217  0 final JExpressionIF right_result = that.getRight().visit(this);
 1218  0 return forBitwiseXorExpressionOnly(that, left_result, right_result);
 1219    }
 1220   
 1221  0 public JExpressionIF forBitwiseAndExpression(BitwiseAndExpression that) {
 1222  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1223  0 final JExpressionIF right_result = that.getRight().visit(this);
 1224  0 return forBitwiseAndExpressionOnly(that, left_result, right_result);
 1225    }
 1226   
 1227  0 public JExpressionIF forEqualsExpression(EqualsExpression that) {
 1228  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1229  0 final JExpressionIF right_result = that.getRight().visit(this);
 1230  0 return forEqualsExpressionOnly(that, left_result, right_result);
 1231    }
 1232   
 1233  0 public JExpressionIF forNotEqualExpression(NotEqualExpression that) {
 1234  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1235  0 final JExpressionIF right_result = that.getRight().visit(this);
 1236  0 return forNotEqualExpressionOnly(that, left_result, right_result);
 1237    }
 1238   
 1239  0 public JExpressionIF forLessThanExpression(LessThanExpression that) {
 1240  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1241  0 final JExpressionIF right_result = that.getRight().visit(this);
 1242  0 return forLessThanExpressionOnly(that, left_result, right_result);
 1243    }
 1244   
 1245  0 public JExpressionIF forLessThanOrEqualExpression(LessThanOrEqualExpression that) {
 1246  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1247  0 final JExpressionIF right_result = that.getRight().visit(this);
 1248  0 return forLessThanOrEqualExpressionOnly(that, left_result, right_result);
 1249    }
 1250   
 1251  0 public JExpressionIF forGreaterThanExpression(GreaterThanExpression that) {
 1252  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1253  0 final JExpressionIF right_result = that.getRight().visit(this);
 1254  0 return forGreaterThanExpressionOnly(that, left_result, right_result);
 1255    }
 1256   
 1257  0 public JExpressionIF forGreaterThanOrEqualExpression(GreaterThanOrEqualExpression that) {
 1258  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1259  0 final JExpressionIF right_result = that.getRight().visit(this);
 1260  0 return forGreaterThanOrEqualExpressionOnly(that, left_result, right_result);
 1261    }
 1262   
 1263  0 public JExpressionIF forLeftShiftExpression(LeftShiftExpression that) {
 1264  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1265  0 final JExpressionIF right_result = that.getRight().visit(this);
 1266  0 return forLeftShiftExpressionOnly(that, left_result, right_result);
 1267    }
 1268   
 1269  0 public JExpressionIF forRightSignedShiftExpression(RightSignedShiftExpression that) {
 1270  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1271  0 final JExpressionIF right_result = that.getRight().visit(this);
 1272  0 return forRightSignedShiftExpressionOnly(that, left_result, right_result);
 1273    }
 1274   
 1275  0 public JExpressionIF forRightUnsignedShiftExpression(RightUnsignedShiftExpression that) {
 1276  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1277  0 final JExpressionIF right_result = that.getRight().visit(this);
 1278  0 return forRightUnsignedShiftExpressionOnly(that, left_result, right_result);
 1279    }
 1280   
 1281  0 public JExpressionIF forPlusExpression(PlusExpression that) {
 1282  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1283  0 final JExpressionIF right_result = that.getRight().visit(this);
 1284  0 return forPlusExpressionOnly(that, left_result, right_result);
 1285    }
 1286   
 1287  0 public JExpressionIF forMinusExpression(MinusExpression that) {
 1288  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1289  0 final JExpressionIF right_result = that.getRight().visit(this);
 1290  0 return forMinusExpressionOnly(that, left_result, right_result);
 1291    }
 1292   
 1293  0 public JExpressionIF forMultiplyExpression(MultiplyExpression that) {
 1294  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1295  0 final JExpressionIF right_result = that.getRight().visit(this);
 1296  0 return forMultiplyExpressionOnly(that, left_result, right_result);
 1297    }
 1298   
 1299  0 public JExpressionIF forDivideExpression(DivideExpression that) {
 1300  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1301  0 final JExpressionIF right_result = that.getRight().visit(this);
 1302  0 return forDivideExpressionOnly(that, left_result, right_result);
 1303    }
 1304   
 1305  0 public JExpressionIF forModExpression(ModExpression that) {
 1306  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1307  0 final JExpressionIF right_result = that.getRight().visit(this);
 1308  0 return forModExpressionOnly(that, left_result, right_result);
 1309    }
 1310   
 1311  0 public JExpressionIF forNoOpExpression(NoOpExpression that) {
 1312  0 final JExpressionIF left_result = that.getLeft().visit(this);
 1313  0 final JExpressionIF right_result = that.getRight().visit(this);
 1314  0 return forNoOpExpressionOnly(that, left_result, right_result);
 1315    }
 1316   
 1317  0 public JExpressionIF forPositivePrefixIncrementExpression(PositivePrefixIncrementExpression that) {
 1318  0 final JExpressionIF value_result = that.getValue().visit(this);
 1319  0 return forPositivePrefixIncrementExpressionOnly(that, value_result);
 1320    }
 1321   
 1322  0 public JExpressionIF forNegativePrefixIncrementExpression(NegativePrefixIncrementExpression that) {
 1323  0 final JExpressionIF value_result = that.getValue().visit(this);
 1324  0 return forNegativePrefixIncrementExpressionOnly(that, value_result);
 1325    }
 1326   
 1327  0 public JExpressionIF forPositivePostfixIncrementExpression(PositivePostfixIncrementExpression that) {
 1328  0 final JExpressionIF value_result = that.getValue().visit(this);
 1329  0 return forPositivePostfixIncrementExpressionOnly(that, value_result);
 1330    }
 1331   
 1332  0 public JExpressionIF forNegativePostfixIncrementExpression(NegativePostfixIncrementExpression that) {
 1333  0 final JExpressionIF value_result = that.getValue().visit(this);
 1334  0 return forNegativePostfixIncrementExpressionOnly(that, value_result);
 1335    }
 1336   
 1337  0 public JExpressionIF forPositiveExpression(PositiveExpression that) {
 1338  0 final JExpressionIF value_result = that.getValue().visit(this);
 1339  0 return forPositiveExpressionOnly(that, value_result);
 1340    }
 1341   
 1342  0 public JExpressionIF forNegativeExpression(NegativeExpression that) {
 1343  0 final JExpressionIF value_result = that.getValue().visit(this);
 1344  0 return forNegativeExpressionOnly(that, value_result);
 1345    }
 1346   
 1347  0 public JExpressionIF forBitwiseNotExpression(BitwiseNotExpression that) {
 1348  0 final JExpressionIF value_result = that.getValue().visit(this);
 1349  0 return forBitwiseNotExpressionOnly(that, value_result);
 1350    }
 1351   
 1352  0 public JExpressionIF forNotExpression(NotExpression that) {
 1353  0 final JExpressionIF value_result = that.getValue().visit(this);
 1354  0 return forNotExpressionOnly(that, value_result);
 1355    }
 1356   
 1357  0 public JExpressionIF forConditionalExpression(ConditionalExpression that) {
 1358  0 final JExpressionIF condition_result = that.getCondition().visit(this);
 1359  0 final JExpressionIF forTrue_result = that.getForTrue().visit(this);
 1360  0 final JExpressionIF forFalse_result = that.getForFalse().visit(this);
 1361  0 return forConditionalExpressionOnly(that, condition_result, forTrue_result, forFalse_result);
 1362    }
 1363   
 1364  0 public JExpressionIF forInstanceofExpression(InstanceofExpression that) {
 1365  0 final JExpressionIF value_result = that.getValue().visit(this);
 1366  0 final JExpressionIF type_result = that.getType().visit(this);
 1367  0 return forInstanceofExpressionOnly(that, value_result, type_result);
 1368    }
 1369   
 1370  0 public JExpressionIF forCastExpression(CastExpression that) {
 1371  0 final JExpressionIF type_result = that.getType().visit(this);
 1372  0 final JExpressionIF value_result = that.getValue().visit(this);
 1373  0 return forCastExpressionOnly(that, type_result, value_result);
 1374    }
 1375   
 1376  0 public JExpressionIF forIntegerLiteral(IntegerLiteral that) {
 1377  0 return forIntegerLiteralOnly(that);
 1378    }
 1379   
 1380  0 public JExpressionIF forLongLiteral(LongLiteral that) {
 1381  0 return forLongLiteralOnly(that);
 1382    }
 1383   
 1384  0 public JExpressionIF forDoubleLiteral(DoubleLiteral that) {
 1385  0 return forDoubleLiteralOnly(that);
 1386    }
 1387   
 1388  0 public JExpressionIF forFloatLiteral(FloatLiteral that) {
 1389  0 return forFloatLiteralOnly(that);
 1390    }
 1391   
 1392  0 public JExpressionIF forBooleanLiteral(BooleanLiteral that) {
 1393  0 return forBooleanLiteralOnly(that);
 1394    }
 1395   
 1396  0 public JExpressionIF forCharLiteral(CharLiteral that) {
 1397  0 return forCharLiteralOnly(that);
 1398    }
 1399   
 1400  0 public JExpressionIF forStringLiteral(StringLiteral that) {
 1401  0 return forStringLiteralOnly(that);
 1402    }
 1403   
 1404  0 public JExpressionIF forNullLiteral(NullLiteral that) {
 1405  0 return forNullLiteralOnly(that);
 1406    }
 1407   
 1408  0 public JExpressionIF forSimpleNamedClassInstantiation(SimpleNamedClassInstantiation that) {
 1409  0 final JExpressionIF type_result = that.getType().visit(this);
 1410  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1411  0 return forSimpleNamedClassInstantiationOnly(that, type_result, arguments_result);
 1412    }
 1413   
 1414  0 public JExpressionIF forComplexNamedClassInstantiation(ComplexNamedClassInstantiation that) {
 1415  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1416  0 final JExpressionIF type_result = that.getType().visit(this);
 1417  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1418  0 return forComplexNamedClassInstantiationOnly(that, enclosing_result, type_result, arguments_result);
 1419    }
 1420   
 1421  0 public JExpressionIF forSimpleAnonymousClassInstantiation(SimpleAnonymousClassInstantiation that) {
 1422  0 final JExpressionIF type_result = that.getType().visit(this);
 1423  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1424  0 final JExpressionIF body_result = that.getBody().visit(this);
 1425  0 return forSimpleAnonymousClassInstantiationOnly(that, type_result, arguments_result, body_result);
 1426    }
 1427   
 1428  0 public JExpressionIF forComplexAnonymousClassInstantiation(ComplexAnonymousClassInstantiation that) {
 1429  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1430  0 final JExpressionIF type_result = that.getType().visit(this);
 1431  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1432  0 final JExpressionIF body_result = that.getBody().visit(this);
 1433  0 return forComplexAnonymousClassInstantiationOnly(that, enclosing_result, type_result, arguments_result, body_result);
 1434    }
 1435   
 1436  0 public JExpressionIF forSimpleUninitializedArrayInstantiation(SimpleUninitializedArrayInstantiation that) {
 1437  0 final JExpressionIF type_result = that.getType().visit(this);
 1438  0 final JExpressionIF dimensionSizes_result = that.getDimensionSizes().visit(this);
 1439  0 return forSimpleUninitializedArrayInstantiationOnly(that, type_result, dimensionSizes_result);
 1440    }
 1441   
 1442  0 public JExpressionIF forComplexUninitializedArrayInstantiation(ComplexUninitializedArrayInstantiation that) {
 1443  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1444  0 final JExpressionIF type_result = that.getType().visit(this);
 1445  0 final JExpressionIF dimensionSizes_result = that.getDimensionSizes().visit(this);
 1446  0 return forComplexUninitializedArrayInstantiationOnly(that, enclosing_result, type_result, dimensionSizes_result);
 1447    }
 1448   
 1449  0 public JExpressionIF forSimpleInitializedArrayInstantiation(SimpleInitializedArrayInstantiation that) {
 1450  0 final JExpressionIF type_result = that.getType().visit(this);
 1451  0 final JExpressionIF initializer_result = that.getInitializer().visit(this);
 1452  0 return forSimpleInitializedArrayInstantiationOnly(that, type_result, initializer_result);
 1453    }
 1454   
 1455  0 public JExpressionIF forComplexInitializedArrayInstantiation(ComplexInitializedArrayInstantiation that) {
 1456  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1457  0 final JExpressionIF type_result = that.getType().visit(this);
 1458  0 final JExpressionIF initializer_result = that.getInitializer().visit(this);
 1459  0 return forComplexInitializedArrayInstantiationOnly(that, enclosing_result, type_result, initializer_result);
 1460    }
 1461   
 1462  0 public JExpressionIF forSimpleNameReference(SimpleNameReference that) {
 1463  0 final JExpressionIF name_result = that.getName().visit(this);
 1464  0 return forSimpleNameReferenceOnly(that, name_result);
 1465    }
 1466   
 1467  0 public JExpressionIF forComplexNameReference(ComplexNameReference that) {
 1468  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1469  0 final JExpressionIF name_result = that.getName().visit(this);
 1470  0 return forComplexNameReferenceOnly(that, enclosing_result, name_result);
 1471    }
 1472   
 1473  0 public JExpressionIF forSimpleThisReference(SimpleThisReference that) {
 1474  0 return forSimpleThisReferenceOnly(that);
 1475    }
 1476   
 1477  0 public JExpressionIF forComplexThisReference(ComplexThisReference that) {
 1478  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1479  0 return forComplexThisReferenceOnly(that, enclosing_result);
 1480    }
 1481   
 1482  0 public JExpressionIF forSimpleSuperReference(SimpleSuperReference that) {
 1483  0 return forSimpleSuperReferenceOnly(that);
 1484    }
 1485   
 1486  0 public JExpressionIF forComplexSuperReference(ComplexSuperReference that) {
 1487  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1488  0 return forComplexSuperReferenceOnly(that, enclosing_result);
 1489    }
 1490   
 1491  0 public JExpressionIF forSimpleMethodInvocation(SimpleMethodInvocation that) {
 1492  0 final JExpressionIF name_result = that.getName().visit(this);
 1493  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1494  0 return forSimpleMethodInvocationOnly(that, name_result, arguments_result);
 1495    }
 1496   
 1497  0 public JExpressionIF forComplexMethodInvocation(ComplexMethodInvocation that) {
 1498  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1499  0 final JExpressionIF name_result = that.getName().visit(this);
 1500  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1501  0 return forComplexMethodInvocationOnly(that, enclosing_result, name_result, arguments_result);
 1502    }
 1503   
 1504  0 public JExpressionIF forSimpleThisConstructorInvocation(SimpleThisConstructorInvocation that) {
 1505  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1506  0 return forSimpleThisConstructorInvocationOnly(that, arguments_result);
 1507    }
 1508   
 1509  0 public JExpressionIF forComplexThisConstructorInvocation(ComplexThisConstructorInvocation that) {
 1510  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1511  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1512  0 return forComplexThisConstructorInvocationOnly(that, enclosing_result, arguments_result);
 1513    }
 1514   
 1515  0 public JExpressionIF forSimpleSuperConstructorInvocation(SimpleSuperConstructorInvocation that) {
 1516  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1517  0 return forSimpleSuperConstructorInvocationOnly(that, arguments_result);
 1518    }
 1519   
 1520  0 public JExpressionIF forComplexSuperConstructorInvocation(ComplexSuperConstructorInvocation that) {
 1521  0 final JExpressionIF enclosing_result = that.getEnclosing().visit(this);
 1522  0 final JExpressionIF arguments_result = that.getArguments().visit(this);
 1523  0 return forComplexSuperConstructorInvocationOnly(that, enclosing_result, arguments_result);
 1524    }
 1525   
 1526  0 public JExpressionIF forClassLiteral(ClassLiteral that) {
 1527  0 final JExpressionIF type_result = that.getType().visit(this);
 1528  0 return forClassLiteralOnly(that, type_result);
 1529    }
 1530   
 1531  0 public JExpressionIF forArrayAccess(ArrayAccess that) {
 1532  0 final JExpressionIF array_result = that.getArray().visit(this);
 1533  0 final JExpressionIF index_result = that.getIndex().visit(this);
 1534  0 return forArrayAccessOnly(that, array_result, index_result);
 1535    }
 1536   
 1537  0 public JExpressionIF forParenthesized(Parenthesized that) {
 1538  0 final JExpressionIF value_result = that.getValue().visit(this);
 1539  0 return forParenthesizedOnly(that, value_result);
 1540    }
 1541   
 1542  0 public JExpressionIF forEmptyExpression(EmptyExpression that) {
 1543  0 return forEmptyExpressionOnly(that);
 1544    }
 1545   
 1546  0 public JExpressionIF forBracedBody(BracedBody that) {
 1547  0 final JExpressionIF[] statements_result = new BodyItemI[that.getStatements().length];
 1548  0 for (int i = 0; i < that.getStatements().length; i++) {
 1549  0 statements_result[i] = (BodyItemI)that.getStatements()[i].visit(this);
 1550    }
 1551  0 return forBracedBodyOnly(that, statements_result);
 1552    }
 1553   
 1554  0 public JExpressionIF forUnbracedBody(UnbracedBody that) {
 1555  0 final JExpressionIF[] statements_result = new BodyItemI[that.getStatements().length];
 1556  0 for (int i = 0; i < that.getStatements().length; i++) {
 1557  0 statements_result[i] = (BodyItemI)that.getStatements()[i].visit(this);
 1558    }
 1559  0 return forUnbracedBodyOnly(that, statements_result);
 1560    }
 1561   
 1562  0 public JExpressionIF forParenthesizedExpressionList(ParenthesizedExpressionList that) {
 1563  0 final JExpressionIF[] expressions_result = new Expression[that.getExpressions().length];
 1564  0 for (int i = 0; i < that.getExpressions().length; i++) {
 1565  0 expressions_result[i] = (Expression)that.getExpressions()[i].visit(this);
 1566    }
 1567  0 return forParenthesizedExpressionListOnly(that, expressions_result);
 1568    }
 1569   
 1570  0 public JExpressionIF forUnparenthesizedExpressionList(UnparenthesizedExpressionList that) {
 1571  0 final JExpressionIF[] expressions_result = new Expression[that.getExpressions().length];
 1572  0 for (int i = 0; i < that.getExpressions().length; i++) {
 1573  0 expressions_result[i] = (Expression)that.getExpressions()[i].visit(this);
 1574    }
 1575  0 return forUnparenthesizedExpressionListOnly(that, expressions_result);
 1576    }
 1577   
 1578  0 public JExpressionIF forDimensionExpressionList(DimensionExpressionList that) {
 1579  0 final JExpressionIF[] expressions_result = new Expression[that.getExpressions().length];
 1580  0 for (int i = 0; i < that.getExpressions().length; i++) {
 1581  0 expressions_result[i] = (Expression)that.getExpressions()[i].visit(this);
 1582    }
 1583  0 return forDimensionExpressionListOnly(that, expressions_result);
 1584    }
 1585   
 1586  0 public JExpressionIF forEmptyForCondition(EmptyForCondition that) {
 1587  0 return forEmptyForConditionOnly(that);
 1588    }
 1589   
 1590    }