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,550   Methods: 499
NCLOC: 1,461   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
JExpressionIFPrunableDepthFirstVisitor.java 40.5% 62.9% 72.9% 61.7%
coverage coverage
 1    /*BEGIN_COPYRIGHT_BLOCK
 2    *
 3    * Copyright (c) 2001-2010, JavaPLT group at Rice University (drjava@rice.edu)
 4    * All rights reserved.
 5    *
 6    * Redistribution and use in source and binary forms, with or without
 7    * modification, are permitted provided that the following conditions are met:
 8    * * Redistributions of source code must retain the above copyright
 9    * notice, this list of conditions and the following disclaimer.
 10    * * Redistributions in binary form must reproduce the above copyright
 11    * notice, this list of conditions and the following disclaimer in the
 12    * documentation and/or other materials provided with the distribution.
 13    * * Neither the names of DrJava, the JavaPLT group, Rice University, nor the
 14    * names of its contributors may be used to endorse or promote products
 15    * derived from this software without specific prior written permission.
 16    *
 17    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 18    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 19    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 20    * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
 21    * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 22    * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 23    * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 24    * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 25    * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 26    * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 27    * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 28    *
 29    * This software is Open Source Initiative approved Open Source Software.
 30    * Open Source Initative Approved is a trademark of the Open Source Initiative.
 31    *
 32    * This file is part of DrJava. Download the current version of this project
 33    * from http://www.drjava.org/ or http://sourceforge.net/projects/drjava/
 34    *
 35    * END_COPYRIGHT_BLOCK*/
 36   
 37    package edu.rice.cs.javalanglevels;
 38   
 39    import edu.rice.cs.javalanglevels.tree.*;
 40   
 41    /** It would be nice if this file could be automatically generated. Currently,
 42    * it must be generated by copying any changes to the AST from
 43    * JExpressionIFDepthFirstVistor_void and pasting them here. Then the
 44    * if (prune(that)) ... line must be pasted into each for... method.
 45    */
 46   
 47    /** An abstract implementation of a visitor over JExpressionIF that does not return a value.
 48    * This visitor implements the visitor interface with methods that
 49    * first visit children, and then call visitCASEOnly().
 50    * (CASE is replaced by the case name.) After each DOFirst method is called,
 51    * the method pruneAt(JExpressionIF) is used to determine if the depth-first
 52    * traversal should be pruned at the specified node. If not, traversal continues
 53    * through each of the child nodes, followed by the only method. If so,
 54    * control returns immediately to the parent node. Default implementation of
 55    * pruneAt always returns true.
 56    * The default implementation of the forCASEOnly methods call
 57    * protected method defaultCase(). This method defaults to no-op.
 58    */
 59    public class JExpressionIFPrunableDepthFirstVisitor implements JExpressionIFVisitor<Void> {
 60    /* Methods to visit an item. */
 61  3531 public Void forJExpressionDoFirst(JExpression that) { return defaultDoFirst(that); }
 62  3811 public Void forJExpressionOnly(JExpression that) { return defaultCase(that); }
 63  0 public Void forSourceFileDoFirst(SourceFile that) { return forJExpressionDoFirst(that); }
 64  137 public Void forSourceFileOnly(SourceFile that) { return forJExpressionOnly(that);}
 65  0 public Void forModifiersAndVisibilityDoFirst(ModifiersAndVisibility that) { return forJExpressionDoFirst(that); }
 66  627 public Void forModifiersAndVisibilityOnly(ModifiersAndVisibility that) { return forJExpressionOnly(that); }
 67  30 public Void forCompoundWordDoFirst(CompoundWord that) { return forJExpressionDoFirst(that); }
 68  30 public Void forCompoundWordOnly(CompoundWord that) { return forJExpressionOnly(that); }
 69  525 public Void forWordDoFirst(Word that) { return forJExpressionDoFirst(that); }
 70  525 public Void forWordOnly(Word that) { return forJExpressionOnly(that); }
 71  241 public Void forTypeDefBaseDoFirst(TypeDefBase that) { return forJExpressionDoFirst(that); }
 72  227 public Void forTypeDefBaseOnly(TypeDefBase that) { return forJExpressionOnly(that); }
 73  0 public Void forClassDefDoFirst(ClassDef that) { return forTypeDefBaseDoFirst(that); }
 74  198 public Void forClassDefOnly(ClassDef that) { return forTypeDefBaseOnly(that); }
 75  32 public Void forInnerClassDefDoFirst(InnerClassDef that) {
 76    // System.err.println("JEIFPDFV.forInnerClassDefDoFirst called for " + that.getName());
 77  32 return forClassDefDoFirst(that);
 78    }
 79  32 public Void forInnerClassDefOnly(InnerClassDef that) { return forClassDefOnly(that); }
 80  0 public Void forInterfaceDefDoFirst(InterfaceDef that) { return forTypeDefBaseDoFirst(that); }
 81  29 public Void forInterfaceDefOnly(InterfaceDef that) { return forTypeDefBaseOnly(that); }
 82  0 public Void forInnerInterfaceDefDoFirst(InnerInterfaceDef that) { return forInterfaceDefDoFirst(that); }
 83  10 public Void forInnerInterfaceDefOnly(InnerInterfaceDef that) { return forInterfaceDefOnly(that); }
 84  29 public Void forConstructorDefDoFirst(ConstructorDef that) { return forJExpressionDoFirst(that); }
 85  20 public Void forConstructorDefOnly(ConstructorDef that) { return forJExpressionOnly(that); }
 86  1 public Void forInitializerDoFirst(Initializer that) { return forJExpressionDoFirst(that); }
 87  2 public Void forInitializerOnly(Initializer that) { return forJExpressionOnly(that); }
 88  0 public Void forInstanceInitializerDoFirst(InstanceInitializer that) { return forInitializerDoFirst(that); }
 89  0 public Void forInstanceInitializerOnly(InstanceInitializer that) { return forInitializerOnly(that); }
 90  1 public Void forStaticInitializerDoFirst(StaticInitializer that) { return forInitializerDoFirst(that); }
 91  2 public Void forStaticInitializerOnly(StaticInitializer that) { return forInitializerOnly(that); }
 92   
 93  14 public Void forPackageStatementDoFirst(PackageStatement that) { return forJExpressionDoFirst(that); }
 94  0 public Void forPackageStatementOnly(PackageStatement that) { return forJExpressionOnly(that); }
 95  16 public Void forImportStatementDoFirst(ImportStatement that) { return forJExpressionDoFirst(that); }
 96  16 public Void forImportStatementOnly(ImportStatement that) { return forJExpressionOnly(that); }
 97  9 public Void forClassImportStatementDoFirst(ClassImportStatement that) { return forImportStatementDoFirst(that); }
 98  0 public Void forClassImportStatementOnly(ClassImportStatement that) { return forImportStatementOnly(that); }
 99  7 public Void forPackageImportStatementDoFirst(PackageImportStatement that) { return forImportStatementDoFirst(that); }
 100  0 public Void forPackageImportStatementOnly(PackageImportStatement that) { return forImportStatementOnly(that); }
 101  322 public Void forStatementDoFirst(Statement that) { return forJExpressionDoFirst(that); }
 102  330 public Void forStatementOnly(Statement that) { return forJExpressionOnly(that); }
 103   
 104  1 public Void forLabeledStatementDoFirst(LabeledStatement that) { return forStatementDoFirst(that); }
 105  2 public Void forLabeledStatementOnly(LabeledStatement that) { return forStatementOnly(that); }
 106  64 public Void forBlockDoFirst(Block that) { return forStatementDoFirst(that); }
 107   
 108  64 public Void forBlockOnly(Block that) { return forStatementOnly(that); }
 109  56 public Void forExpressionStatementDoFirst(ExpressionStatement that) { return forStatementDoFirst(that); }
 110  56 public Void forExpressionStatementOnly(ExpressionStatement that) { return forStatementOnly(that); }
 111  6 public Void forSwitchStatementDoFirst(SwitchStatement that) { return forStatementDoFirst(that); }
 112  6 public Void forSwitchStatementOnly(SwitchStatement that) { return forStatementOnly(that); }
 113  17 public Void forIfThenStatementDoFirst(IfThenStatement that) { return forStatementDoFirst(that); }
 114  17 public Void forIfThenStatementOnly(IfThenStatement that) { return forStatementOnly(that); }
 115  11 public Void forIfThenElseStatementDoFirst(IfThenElseStatement that) { return forIfThenStatementDoFirst(that); }
 116  11 public Void forIfThenElseStatementOnly(IfThenElseStatement that) { return forIfThenStatementOnly(that); }
 117  2 public Void forWhileStatementDoFirst(WhileStatement that) { return forStatementDoFirst(that); }
 118  2 public Void forWhileStatementOnly(WhileStatement that) { return forStatementOnly(that); }
 119  2 public Void forDoStatementDoFirst(DoStatement that) { return forStatementDoFirst(that); }
 120  2 public Void forDoStatementOnly(DoStatement that) { return forStatementOnly(that); }
 121  4 public Void forForStatementDoFirst(ForStatement that) { return forStatementDoFirst(that); }
 122  4 public Void forForStatementOnly(ForStatement that) { return forStatementOnly(that); }
 123  10 public Void forBreakStatementDoFirst(BreakStatement that) { return forStatementDoFirst(that); }
 124  11 public Void forBreakStatementOnly(BreakStatement that) { return forStatementOnly(that); }
 125  0 public Void forLabeledBreakStatementDoFirst(LabeledBreakStatement that) { return forBreakStatementDoFirst(that); }
 126  1 public Void forLabeledBreakStatementOnly(LabeledBreakStatement that) { return forBreakStatementOnly(that); }
 127  10 public Void forUnlabeledBreakStatementDoFirst(UnlabeledBreakStatement that) { return forBreakStatementDoFirst(that); }
 128  10 public Void forUnlabeledBreakStatementOnly(UnlabeledBreakStatement that) { return forBreakStatementOnly(that); }
 129  1 public Void forContinueStatementDoFirst(ContinueStatement that) { return forStatementDoFirst(that); }
 130  2 public Void forContinueStatementOnly(ContinueStatement that) { return forStatementOnly(that); }
 131  0 public Void forLabeledContinueStatementDoFirst(LabeledContinueStatement that) {
 132  0 return forContinueStatementDoFirst(that);
 133    }
 134  1 public Void forLabeledContinueStatementOnly(LabeledContinueStatement that) { return forContinueStatementOnly(that); }
 135  1 public Void forUnlabeledContinueStatementDoFirst(UnlabeledContinueStatement that) {
 136  1 return forContinueStatementDoFirst(that);
 137    }
 138  1 public Void forUnlabeledContinueStatementOnly(UnlabeledContinueStatement that) {
 139  1 return forContinueStatementOnly(that);
 140    }
 141  125 public Void forReturnStatementDoFirst(ReturnStatement that) { return forStatementDoFirst(that); }
 142  125 public Void forReturnStatementOnly(ReturnStatement that) { return forStatementOnly(that); }
 143  0 public Void forVoidReturnStatementDoFirst(VoidReturnStatement that) { return forReturnStatementDoFirst(that); }
 144  0 public Void forVoidReturnStatementOnly(VoidReturnStatement that) { return forReturnStatementOnly(that); }
 145  125 public Void forValueReturnStatementDoFirst(ValueReturnStatement that) { return forReturnStatementDoFirst(that); }
 146  125 public Void forValueReturnStatementOnly(ValueReturnStatement that) { return forReturnStatementOnly(that); }
 147  16 public Void forThrowStatementDoFirst(ThrowStatement that) { return forStatementDoFirst(that); }
 148  16 public Void forThrowStatementOnly(ThrowStatement that) { return forStatementOnly(that); }
 149  0 public Void forSynchronizedStatementDoFirst(SynchronizedStatement that) { return forStatementDoFirst(that); }
 150  1 public Void forSynchronizedStatementOnly(SynchronizedStatement that) { return forStatementOnly(that); }
 151  13 public Void forTryCatchStatementDoFirst(TryCatchStatement that) { return forStatementDoFirst(that); }
 152  17 public Void forTryCatchStatementOnly(TryCatchStatement that) { return forStatementOnly(that); }
 153  6 public Void forTryCatchFinallyStatementDoFirst(TryCatchFinallyStatement that) {
 154  6 return forTryCatchStatementDoFirst(that);
 155    }
 156  6 public Void forTryCatchFinallyStatementOnly(TryCatchFinallyStatement that) { return forTryCatchStatementOnly(that); }
 157  11 public Void forNormalTryCatchStatementDoFirst(NormalTryCatchStatement that) {
 158  11 return forTryCatchStatementDoFirst(that);
 159    }
 160  11 public Void forNormalTryCatchStatementOnly(NormalTryCatchStatement that) { return forTryCatchStatementOnly(that); }
 161  5 public Void forEmptyStatementDoFirst(EmptyStatement that) { return forStatementDoFirst(that); }
 162  5 public Void forEmptyStatementOnly(EmptyStatement that) { return forStatementOnly(that); }
 163  190 public Void forMethodDefDoFirst(MethodDef that) { return forJExpressionDoFirst(that); }
 164  110 public Void forMethodDefOnly(MethodDef that) { return forJExpressionOnly(that); }
 165  149 public Void forConcreteMethodDefDoFirst(ConcreteMethodDef that) { return forMethodDefDoFirst(that); }
 166  105 public Void forConcreteMethodDefOnly(ConcreteMethodDef that) { return forMethodDefOnly(that); }
 167  43 public Void forAbstractMethodDefDoFirst(AbstractMethodDef that) { return forMethodDefDoFirst(that); }
 168  5 public Void forAbstractMethodDefOnly(AbstractMethodDef that) { return forMethodDefOnly(that); }
 169  4 public Void forFormalParameterDoFirst(FormalParameter that) { return forJExpressionDoFirst(that); }
 170  0 public Void forFormalParameterOnly(FormalParameter that) { return forJExpressionOnly(that); }
 171  174 public Void forVariableDeclarationDoFirst(VariableDeclaration that) { return forJExpressionDoFirst(that); }
 172  0 public Void forVariableDeclarationOnly(VariableDeclaration that) { return forJExpressionOnly(that); }
 173  193 public Void forVariableDeclaratorDoFirst(VariableDeclarator that) { return forJExpressionDoFirst(that); }
 174  193 public Void forVariableDeclaratorOnly(VariableDeclarator that) { return forJExpressionOnly(that); }
 175  125 public Void forUninitializedVariableDeclaratorDoFirst(UninitializedVariableDeclarator that) {
 176  125 return forVariableDeclaratorDoFirst(that);
 177    }
 178  125 public Void forUninitializedVariableDeclaratorOnly(UninitializedVariableDeclarator that) {
 179  125 return forVariableDeclaratorOnly(that);
 180    }
 181  68 public Void forInitializedVariableDeclaratorDoFirst(InitializedVariableDeclarator that) {
 182  68 return forVariableDeclaratorDoFirst(that);
 183    }
 184  68 public Void forInitializedVariableDeclaratorOnly(InitializedVariableDeclarator that) {
 185  68 return forVariableDeclaratorOnly(that);
 186    }
 187  0 public Void forTypeParameterDoFirst(TypeParameter that) { return forJExpressionDoFirst(that); }
 188  1 public Void forTypeParameterOnly(TypeParameter that) { return forJExpressionOnly(that); }
 189  6 public Void forArrayInitializerDoFirst(ArrayInitializer that) { return forJExpressionDoFirst(that); }
 190  6 public Void forArrayInitializerOnly(ArrayInitializer that) { return forJExpressionOnly(that); }
 191  485 public Void forTypeDoFirst(Type that) { return forJExpressionDoFirst(that); }
 192  463 public Void forTypeOnly(Type that) { return forJExpressionOnly(that); }
 193  141 public Void forPrimitiveTypeDoFirst(PrimitiveType that) { return forTypeDoFirst(that); }
 194  141 public Void forPrimitiveTypeOnly(PrimitiveType that) { return forTypeOnly(that); }
 195  22 public Void forArrayTypeDoFirst(ArrayType that) { return forTypeDoFirst(that); }
 196  0 public Void forArrayTypeOnly(ArrayType that) { return forTypeOnly(that); }
 197  322 public Void forReferenceTypeDoFirst(ReferenceType that) { return forTypeDoFirst(that); }
 198  322 public Void forReferenceTypeOnly(ReferenceType that) { return forTypeOnly(that); }
 199  4 public Void forMemberTypeDoFirst(MemberType that) { return forReferenceTypeDoFirst(that); }
 200  4 public Void forMemberTypeOnly(MemberType that) { return forReferenceTypeOnly(that); }
 201  317 public Void forClassOrInterfaceTypeDoFirst(ClassOrInterfaceType that) { return forReferenceTypeDoFirst(that); }
 202  317 public Void forClassOrInterfaceTypeOnly(ClassOrInterfaceType that) { return forReferenceTypeOnly(that); }
 203  1 public Void forTypeVariableDoFirst(TypeVariable that) { return forReferenceTypeDoFirst(that); }
 204  1 public Void forTypeVariableOnly(TypeVariable that) { return forReferenceTypeOnly(that); }
 205  0 public Void forVoidReturnDoFirst(VoidReturn that) { return forJExpressionDoFirst(that); }
 206  0 public Void forVoidReturnOnly(VoidReturn that) { return forJExpressionOnly(that); }
 207  16 public Void forSwitchCaseDoFirst(SwitchCase that) { return forJExpressionDoFirst(that); }
 208  16 public Void forSwitchCaseOnly(SwitchCase that) { return forJExpressionOnly(that); }
 209  10 public Void forLabeledCaseDoFirst(LabeledCase that) { return forSwitchCaseDoFirst(that); }
 210  10 public Void forLabeledCaseOnly(LabeledCase that) { return forSwitchCaseOnly(that); }
 211  6 public Void forDefaultCaseDoFirst(DefaultCase that) { return forSwitchCaseDoFirst(that); }
 212  6 public Void forDefaultCaseOnly(DefaultCase that) { return forSwitchCaseOnly(that); }
 213  13 public Void forCatchBlockDoFirst(CatchBlock that) { return forJExpressionDoFirst(that); }
 214  13 public Void forCatchBlockOnly(CatchBlock that) { return forJExpressionOnly(that); }
 215  483 public Void forExpressionDoFirst(Expression that) { return forJExpressionDoFirst(that); }
 216  475 public Void forExpressionOnly(Expression that) { return forJExpressionOnly(that); }
 217  32 public Void forAssignmentExpressionDoFirst(AssignmentExpression that) { return forExpressionDoFirst(that); }
 218  38 public Void forAssignmentExpressionOnly(AssignmentExpression that) { return forExpressionOnly(that); }
 219  31 public Void forSimpleAssignmentExpressionDoFirst(SimpleAssignmentExpression that) {
 220  31 return forAssignmentExpressionDoFirst(that);
 221    }
 222  31 public Void forSimpleAssignmentExpressionOnly(SimpleAssignmentExpression that) {
 223  31 return forAssignmentExpressionOnly(that);
 224    }
 225  1 public Void forPlusAssignmentExpressionDoFirst(PlusAssignmentExpression that) {
 226  1 return forAssignmentExpressionDoFirst(that);
 227    }
 228  1 public Void forPlusAssignmentExpressionOnly(PlusAssignmentExpression that) {
 229  1 return forAssignmentExpressionOnly(that);
 230    }
 231  0 public Void forNumericAssignmentExpressionDoFirst(NumericAssignmentExpression that) {
 232  0 return forAssignmentExpressionDoFirst(that);
 233    }
 234  0 public Void forNumericAssignmentExpressionOnly(NumericAssignmentExpression that) {
 235  0 return forAssignmentExpressionOnly(that);
 236    }
 237  0 public Void forMinusAssignmentExpressionDoFirst(MinusAssignmentExpression that) {
 238  0 return forNumericAssignmentExpressionDoFirst(that);
 239    }
 240  0 public Void forMinusAssignmentExpressionOnly(MinusAssignmentExpression that) {
 241  0 return forNumericAssignmentExpressionOnly(that);
 242    }
 243  0 public Void forMultiplyAssignmentExpressionDoFirst(MultiplyAssignmentExpression that) {
 244  0 return forNumericAssignmentExpressionDoFirst(that);
 245    }
 246  0 public Void forMultiplyAssignmentExpressionOnly(MultiplyAssignmentExpression that) {
 247  0 return forNumericAssignmentExpressionOnly(that);
 248    }
 249  0 public Void forDivideAssignmentExpressionDoFirst(DivideAssignmentExpression that) {
 250  0 return forNumericAssignmentExpressionDoFirst(that);
 251    }
 252  0 public Void forDivideAssignmentExpressionOnly(DivideAssignmentExpression that) {
 253  0 return forNumericAssignmentExpressionOnly(that);
 254    }
 255  0 public Void forModAssignmentExpressionDoFirst(ModAssignmentExpression that) {
 256  0 return forNumericAssignmentExpressionDoFirst(that);
 257    }
 258  0 public Void forModAssignmentExpressionOnly(ModAssignmentExpression that) {
 259  0 return forNumericAssignmentExpressionOnly(that);
 260    }
 261  0 public Void forShiftAssignmentExpressionDoFirst(ShiftAssignmentExpression that) {
 262  0 return forAssignmentExpressionDoFirst(that);
 263    }
 264  3 public Void forShiftAssignmentExpressionOnly(ShiftAssignmentExpression that) {
 265  3 return forAssignmentExpressionOnly(that);
 266    }
 267  1 public Void forLeftShiftAssignmentExpressionDoFirst(LeftShiftAssignmentExpression that) {
 268  1 return forShiftAssignmentExpressionDoFirst(that);
 269    }
 270  1 public Void forLeftShiftAssignmentExpressionOnly(LeftShiftAssignmentExpression that) {
 271  1 return forShiftAssignmentExpressionOnly(that);
 272    }
 273  1 public Void forRightSignedShiftAssignmentExpressionDoFirst(RightSignedShiftAssignmentExpression that) {
 274  1 return forShiftAssignmentExpressionDoFirst(that);
 275    }
 276  1 public Void forRightSignedShiftAssignmentExpressionOnly(RightSignedShiftAssignmentExpression that) {
 277  1 return forShiftAssignmentExpressionOnly(that);
 278    }
 279  1 public Void forRightUnsignedShiftAssignmentExpressionDoFirst(RightUnsignedShiftAssignmentExpression that) {
 280  1 return forShiftAssignmentExpressionDoFirst(that);
 281    }
 282  1 public Void forRightUnsignedShiftAssignmentExpressionOnly(RightUnsignedShiftAssignmentExpression that) {
 283  1 return forShiftAssignmentExpressionOnly(that);
 284    }
 285  0 public Void forBitwiseAssignmentExpressionDoFirst(BitwiseAssignmentExpression that) {
 286  0 return forAssignmentExpressionDoFirst(that);
 287    }
 288  3 public Void forBitwiseAssignmentExpressionOnly(BitwiseAssignmentExpression that) {
 289  3 return forAssignmentExpressionOnly(that);
 290    }
 291  1 public Void forBitwiseAndAssignmentExpressionDoFirst(BitwiseAndAssignmentExpression that) {
 292  1 return forBitwiseAssignmentExpressionDoFirst(that);
 293    }
 294  1 public Void forBitwiseAndAssignmentExpressionOnly(BitwiseAndAssignmentExpression that) {
 295  1 return forBitwiseAssignmentExpressionOnly(that);
 296    }
 297  1 public Void forBitwiseOrAssignmentExpressionDoFirst(BitwiseOrAssignmentExpression that) {
 298  1 return forBitwiseAssignmentExpressionDoFirst(that);
 299    }
 300  1 public Void forBitwiseOrAssignmentExpressionOnly(BitwiseOrAssignmentExpression that) {
 301  1 return forBitwiseAssignmentExpressionOnly(that);
 302    }
 303  1 public Void forBitwiseXorAssignmentExpressionDoFirst(BitwiseXorAssignmentExpression that) {
 304  1 return forBitwiseAssignmentExpressionDoFirst(that);
 305    }
 306  1 public Void forBitwiseXorAssignmentExpressionOnly(BitwiseXorAssignmentExpression that) {
 307  1 return forBitwiseAssignmentExpressionOnly(that);
 308    }
 309  62 public Void forBinaryExpressionDoFirst(BinaryExpression that) { return forExpressionDoFirst(that); }
 310  76 public Void forBinaryExpressionOnly(BinaryExpression that) { return forExpressionOnly(that); }
 311  1 public Void forBooleanExpressionDoFirst(BooleanExpression that) { return forBinaryExpressionDoFirst(that); }
 312  1 public Void forBooleanExpressionOnly(BooleanExpression that) { return forBinaryExpressionOnly(that); }
 313  0 public Void forOrExpressionDoFirst(OrExpression that) { return forBooleanExpressionDoFirst(that); }
 314  0 public Void forOrExpressionOnly(OrExpression that) { return forBooleanExpressionOnly(that); }
 315  1 public Void forAndExpressionDoFirst(AndExpression that) { return forBooleanExpressionDoFirst(that); }
 316  1 public Void forAndExpressionOnly(AndExpression that) { return forBooleanExpressionOnly(that); }
 317  0 public Void forBitwiseBinaryExpressionDoFirst(BitwiseBinaryExpression that) {
 318  0 return forBinaryExpressionDoFirst(that);
 319    }
 320  9 public Void forBitwiseBinaryExpressionOnly(BitwiseBinaryExpression that) { return forBinaryExpressionOnly(that); }
 321  0 public Void forBitwiseOrExpressionDoFirst(BitwiseOrExpression that) {
 322  0 return forBitwiseBinaryExpressionDoFirst(that);
 323    }
 324  6 public Void forBitwiseOrExpressionOnly(BitwiseOrExpression that) { return forBitwiseBinaryExpressionOnly(that); }
 325  0 public Void forBitwiseXorExpressionDoFirst(BitwiseXorExpression that) {
 326  0 return forBitwiseBinaryExpressionDoFirst(that);
 327    }
 328  1 public Void forBitwiseXorExpressionOnly(BitwiseXorExpression that) { return forBitwiseBinaryExpressionOnly(that); }
 329  0 public Void forBitwiseAndExpressionDoFirst(BitwiseAndExpression that) {
 330  0 return forBitwiseBinaryExpressionDoFirst(that);
 331    }
 332  2 public Void forBitwiseAndExpressionOnly(BitwiseAndExpression that) { return forBitwiseBinaryExpressionOnly(that); }
 333  6 public Void forEqualityExpressionDoFirst(EqualityExpression that) { return forBinaryExpressionDoFirst(that); }
 334  6 public Void forEqualityExpressionOnly(EqualityExpression that) { return forBinaryExpressionOnly(that); }
 335  5 public Void forEqualsExpressionDoFirst(EqualsExpression that) { return forEqualityExpressionDoFirst(that); }
 336  5 public Void forEqualsExpressionOnly(EqualsExpression that) { return forEqualityExpressionOnly(that); }
 337  1 public Void forNotEqualExpressionDoFirst(NotEqualExpression that) { return forEqualityExpressionDoFirst(that); }
 338  1 public Void forNotEqualExpressionOnly(NotEqualExpression that) { return forEqualityExpressionOnly(that); }
 339  20 public Void forComparisonExpressionDoFirst(ComparisonExpression that) { return forBinaryExpressionDoFirst(that); }
 340  20 public Void forComparisonExpressionOnly(ComparisonExpression that) { return forBinaryExpressionOnly(that); }
 341  17 public Void forLessThanExpressionDoFirst(LessThanExpression that) { return forComparisonExpressionDoFirst(that); }
 342  17 public Void forLessThanExpressionOnly(LessThanExpression that) { return forComparisonExpressionOnly(that); }
 343  1 public Void forLessThanOrEqualExpressionDoFirst(LessThanOrEqualExpression that) {
 344  1 return forComparisonExpressionDoFirst(that);
 345    }
 346  1 public Void forLessThanOrEqualExpressionOnly(LessThanOrEqualExpression that) {
 347  1 return forComparisonExpressionOnly(that);
 348    }
 349  2 public Void forGreaterThanExpressionDoFirst(GreaterThanExpression that) {
 350  2 return forComparisonExpressionDoFirst(that);
 351    }
 352  2 public Void forGreaterThanExpressionOnly(GreaterThanExpression that) { return forComparisonExpressionOnly(that); }
 353  0 public Void forGreaterThanOrEqualExpressionDoFirst(GreaterThanOrEqualExpression that) {
 354  0 return forComparisonExpressionDoFirst(that);
 355    }
 356  0 public Void forGreaterThanOrEqualExpressionOnly(GreaterThanOrEqualExpression that) {
 357  0 return forComparisonExpressionOnly(that);
 358    }
 359  0 public Void forShiftBinaryExpressionDoFirst(ShiftBinaryExpression that) { return forBinaryExpressionDoFirst(that); }
 360  4 public Void forShiftBinaryExpressionOnly(ShiftBinaryExpression that) { return forBinaryExpressionOnly(that); }
 361  2 public Void forLeftShiftExpressionDoFirst(LeftShiftExpression that) { return forShiftBinaryExpressionDoFirst(that); }
 362  2 public Void forLeftShiftExpressionOnly(LeftShiftExpression that) { return forShiftBinaryExpressionOnly(that); }
 363  1 public Void forRightSignedShiftExpressionDoFirst(RightSignedShiftExpression that) {
 364  1 return forShiftBinaryExpressionDoFirst(that);
 365    }
 366  1 public Void forRightSignedShiftExpressionOnly(RightSignedShiftExpression that) {
 367  1 return forShiftBinaryExpressionOnly(that);
 368    }
 369  1 public Void forRightUnsignedShiftExpressionDoFirst(RightUnsignedShiftExpression that) {
 370  1 return forShiftBinaryExpressionDoFirst(that);
 371    }
 372  1 public Void forRightUnsignedShiftExpressionOnly(RightUnsignedShiftExpression that) {
 373  1 return forShiftBinaryExpressionOnly(that);
 374    }
 375  27 public Void forPlusExpressionDoFirst(PlusExpression that) { return forBinaryExpressionDoFirst(that); }
 376  27 public Void forPlusExpressionOnly(PlusExpression that) { return forBinaryExpressionOnly(that); }
 377  8 public Void forNumericBinaryExpressionDoFirst(NumericBinaryExpression that) {
 378  8 return forBinaryExpressionDoFirst(that);
 379    }
 380  8 public Void forNumericBinaryExpressionOnly(NumericBinaryExpression that) { return forBinaryExpressionOnly(that); }
 381  0 public Void forMinusExpressionDoFirst(MinusExpression that) { return forNumericBinaryExpressionDoFirst(that); }
 382  0 public Void forMinusExpressionOnly(MinusExpression that) { return forNumericBinaryExpressionOnly(that); }
 383  7 public Void forMultiplyExpressionDoFirst(MultiplyExpression that) { return forNumericBinaryExpressionDoFirst(that); }
 384  7 public Void forMultiplyExpressionOnly(MultiplyExpression that) { return forNumericBinaryExpressionOnly(that); }
 385  1 public Void forDivideExpressionDoFirst(DivideExpression that) { return forNumericBinaryExpressionDoFirst(that); }
 386  1 public Void forDivideExpressionOnly(DivideExpression that) { return forNumericBinaryExpressionOnly(that); }
 387  0 public Void forModExpressionDoFirst(ModExpression that) { return forNumericBinaryExpressionDoFirst(that); }
 388  0 public Void forModExpressionOnly(ModExpression that) { return forNumericBinaryExpressionOnly(that); }
 389  0 public Void forNoOpExpressionDoFirst(NoOpExpression that) { return forBinaryExpressionDoFirst(that); }
 390  1 public Void forNoOpExpressionOnly(NoOpExpression that) { return forBinaryExpressionOnly(that); }
 391  2 public Void forUnaryExpressionDoFirst(UnaryExpression that) { return forExpressionDoFirst(that); }
 392  4 public Void forUnaryExpressionOnly(UnaryExpression that) { return forExpressionOnly(that); }
 393  2 public Void forIncrementExpressionDoFirst(IncrementExpression that) { return forUnaryExpressionDoFirst(that); }
 394  2 public Void forIncrementExpressionOnly(IncrementExpression that) { return forUnaryExpressionOnly(that); }
 395  0 public Void forPrefixIncrementExpressionDoFirst(PrefixIncrementExpression that) {
 396  0 return forIncrementExpressionDoFirst(that);
 397    }
 398  0 public Void forPrefixIncrementExpressionOnly(PrefixIncrementExpression that) {
 399  0 return forIncrementExpressionOnly(that);
 400    }
 401  0 public Void forPositivePrefixIncrementExpressionDoFirst(PositivePrefixIncrementExpression that) {
 402  0 return forPrefixIncrementExpressionDoFirst(that);
 403    }
 404  0 public Void forPositivePrefixIncrementExpressionOnly(PositivePrefixIncrementExpression that) {
 405  0 return forPrefixIncrementExpressionOnly(that);
 406    }
 407  0 public Void forNegativePrefixIncrementExpressionDoFirst(NegativePrefixIncrementExpression that) {
 408  0 return forPrefixIncrementExpressionDoFirst(that);
 409    }
 410  0 public Void forNegativePrefixIncrementExpressionOnly(NegativePrefixIncrementExpression that) {
 411  0 return forPrefixIncrementExpressionOnly(that);
 412    }
 413  2 public Void forPostfixIncrementExpressionDoFirst(PostfixIncrementExpression that) {
 414  2 return forIncrementExpressionDoFirst(that);
 415    }
 416  2 public Void forPostfixIncrementExpressionOnly(PostfixIncrementExpression that) {
 417  2 return forIncrementExpressionOnly(that);
 418    }
 419  2 public Void forPositivePostfixIncrementExpressionDoFirst(PositivePostfixIncrementExpression that) {
 420  2 return forPostfixIncrementExpressionDoFirst(that);
 421    }
 422  2 public Void forPositivePostfixIncrementExpressionOnly(PositivePostfixIncrementExpression that) {
 423  2 return forPostfixIncrementExpressionOnly(that);
 424    }
 425  0 public Void forNegativePostfixIncrementExpressionDoFirst(NegativePostfixIncrementExpression that) {
 426  0 return forPostfixIncrementExpressionDoFirst(that);
 427    }
 428  0 public Void forNegativePostfixIncrementExpressionOnly(NegativePostfixIncrementExpression that) {
 429  0 return forPostfixIncrementExpressionOnly(that);
 430    }
 431  0 public Void forNumericUnaryExpressionDoFirst(NumericUnaryExpression that) { return forUnaryExpressionDoFirst(that); }
 432  0 public Void forNumericUnaryExpressionOnly(NumericUnaryExpression that) { return forUnaryExpressionOnly(that); }
 433  0 public Void forPositiveExpressionDoFirst(PositiveExpression that) { return forNumericUnaryExpressionDoFirst(that); }
 434  0 public Void forPositiveExpressionOnly(PositiveExpression that) { return forNumericUnaryExpressionOnly(that); }
 435  0 public Void forNegativeExpressionDoFirst(NegativeExpression that) { return forNumericUnaryExpressionDoFirst(that); }
 436  0 public Void forNegativeExpressionOnly(NegativeExpression that) { return forNumericUnaryExpressionOnly(that); }
 437  0 public Void forBitwiseNotExpressionDoFirst(BitwiseNotExpression that) { return forUnaryExpressionDoFirst(that); }
 438  2 public Void forBitwiseNotExpressionOnly(BitwiseNotExpression that) { return forUnaryExpressionOnly(that); }
 439  0 public Void forNotExpressionDoFirst(NotExpression that) { return forUnaryExpressionDoFirst(that); }
 440  0 public Void forNotExpressionOnly(NotExpression that) { return forUnaryExpressionOnly(that); }
 441  0 public Void forConditionalExpressionDoFirst(ConditionalExpression that) { return forExpressionDoFirst(that); }
 442  1 public Void forConditionalExpressionOnly(ConditionalExpression that) { return forExpressionOnly(that); }
 443  0 public Void forInstanceofExpressionDoFirst(InstanceofExpression that) { return forExpressionDoFirst(that); }
 444  0 public Void forInstanceofExpressionOnly(InstanceofExpression that) { return forExpressionOnly(that); }
 445  6 public Void forCastExpressionDoFirst(CastExpression that) { return forExpressionDoFirst(that); }
 446  6 public Void forCastExpressionOnly(CastExpression that) { return forExpressionOnly(that); }
 447  381 public Void forPrimaryDoFirst(Primary that) { return forExpressionDoFirst(that); }
 448  350 public Void forPrimaryOnly(Primary that) { return forExpressionOnly(that); }
 449  258 public Void forLexicalLiteralDoFirst(LexicalLiteral that) { return forPrimaryDoFirst(that); }
 450  209 public Void forLexicalLiteralOnly(LexicalLiteral that) { return forPrimaryOnly(that); }
 451  135 public Void forIntegerLiteralDoFirst(IntegerLiteral that) { return forLexicalLiteralDoFirst(that); }
 452  135 public Void forIntegerLiteralOnly(IntegerLiteral that) { return forLexicalLiteralOnly(that); }
 453  0 public Void forLongLiteralDoFirst(LongLiteral that) { return forLexicalLiteralDoFirst(that); }
 454  0 public Void forLongLiteralOnly(LongLiteral that) { return forLexicalLiteralOnly(that); }
 455  8 public Void forDoubleLiteralDoFirst(DoubleLiteral that) { return forLexicalLiteralDoFirst(that); }
 456  8 public Void forDoubleLiteralOnly(DoubleLiteral that) { return forLexicalLiteralOnly(that); }
 457  0 public Void forFloatLiteralDoFirst(FloatLiteral that) { return forLexicalLiteralDoFirst(that); }
 458  0 public Void forFloatLiteralOnly(FloatLiteral that) { return forLexicalLiteralOnly(that); }
 459  18 public Void forBooleanLiteralDoFirst(BooleanLiteral that) { return forLexicalLiteralDoFirst(that); }
 460  18 public Void forBooleanLiteralOnly(BooleanLiteral that) { return forLexicalLiteralOnly(that); }
 461  7 public Void forCharLiteralDoFirst(CharLiteral that) { return forLexicalLiteralDoFirst(that); }
 462  7 public Void forCharLiteralOnly(CharLiteral that) { return forLexicalLiteralOnly(that); }
 463  49 public Void forStringLiteralDoFirst(StringLiteral that) { return forLexicalLiteralDoFirst(that); }
 464  0 public Void forStringLiteralOnly(StringLiteral that) { return forLexicalLiteralOnly(that); }
 465  41 public Void forNullLiteralDoFirst(NullLiteral that) { return forLexicalLiteralDoFirst(that); }
 466  41 public Void forNullLiteralOnly(NullLiteral that) { return forLexicalLiteralOnly(that); }
 467  59 public Void forInstantiationDoFirst(Instantiation that) { return forPrimaryDoFirst(that); }
 468  59 public Void forInstantiationOnly(Instantiation that) { return forPrimaryOnly(that); }
 469  51 public Void forClassInstantiationDoFirst(ClassInstantiation that) { return forInstantiationDoFirst(that); }
 470  51 public Void forClassInstantiationOnly(ClassInstantiation that) { return forInstantiationOnly(that); }
 471  46 public Void forNamedClassInstantiationDoFirst(NamedClassInstantiation that) {
 472  46 return forClassInstantiationDoFirst(that);
 473    }
 474  46 public Void forNamedClassInstantiationOnly(NamedClassInstantiation that) { return forClassInstantiationOnly(that); }
 475  45 public Void forSimpleNamedClassInstantiationDoFirst(SimpleNamedClassInstantiation that) {
 476  45 return forNamedClassInstantiationDoFirst(that);
 477    }
 478  45 public Void forSimpleNamedClassInstantiationOnly(SimpleNamedClassInstantiation that) {
 479  45 return forNamedClassInstantiationOnly(that);
 480    }
 481  1 public Void forComplexNamedClassInstantiationDoFirst(ComplexNamedClassInstantiation that) {
 482  1 return forNamedClassInstantiationDoFirst(that);
 483    }
 484  1 public Void forComplexNamedClassInstantiationOnly(ComplexNamedClassInstantiation that) {
 485  1 return forNamedClassInstantiationOnly(that);
 486    }
 487  5 public Void forAnonymousClassInstantiationDoFirst(AnonymousClassInstantiation that) {
 488  5 return forClassInstantiationDoFirst(that);
 489    }
 490  5 public Void forAnonymousClassInstantiationOnly(AnonymousClassInstantiation that) {
 491  5 return forClassInstantiationOnly(that);
 492    }
 493  4 public Void forSimpleAnonymousClassInstantiationDoFirst(SimpleAnonymousClassInstantiation that) {
 494  4 return forAnonymousClassInstantiationDoFirst(that);
 495    }
 496  4 public Void forSimpleAnonymousClassInstantiationOnly(SimpleAnonymousClassInstantiation that) {
 497  4 return forAnonymousClassInstantiationOnly(that);
 498    }
 499  1 public Void forComplexAnonymousClassInstantiationDoFirst(ComplexAnonymousClassInstantiation that) {
 500  1 return forAnonymousClassInstantiationDoFirst(that);
 501    }
 502  1 public Void forComplexAnonymousClassInstantiationOnly(ComplexAnonymousClassInstantiation that) {
 503  1 return forAnonymousClassInstantiationOnly(that);
 504    }
 505  8 public Void forArrayInstantiationDoFirst(ArrayInstantiation that) { return forInstantiationDoFirst(that); }
 506  8 public Void forArrayInstantiationOnly(ArrayInstantiation that) { return forInstantiationOnly(that); }
 507  5 public Void forUninitializedArrayInstantiationDoFirst(UninitializedArrayInstantiation that) {
 508  5 return forArrayInstantiationDoFirst(that);
 509    }
 510  5 public Void forUninitializedArrayInstantiationOnly(UninitializedArrayInstantiation that) {
 511  5 return forArrayInstantiationOnly(that);
 512    }
 513  5 public Void forSimpleUninitializedArrayInstantiationDoFirst(SimpleUninitializedArrayInstantiation that) {
 514  5 return forUninitializedArrayInstantiationDoFirst(that);
 515    }
 516  5 public Void forSimpleUninitializedArrayInstantiationOnly(SimpleUninitializedArrayInstantiation that) {
 517  5 return forUninitializedArrayInstantiationOnly(that);
 518    }
 519  0 public Void forComplexUninitializedArrayInstantiationDoFirst(ComplexUninitializedArrayInstantiation that) {
 520  0 return forUninitializedArrayInstantiationDoFirst(that);
 521    }
 522  0 public Void forComplexUninitializedArrayInstantiationOnly(ComplexUninitializedArrayInstantiation that) {
 523  0 return forUninitializedArrayInstantiationOnly(that);
 524    }
 525  3 public Void forInitializedArrayInstantiationDoFirst(InitializedArrayInstantiation that) {
 526  3 return forArrayInstantiationDoFirst(that);
 527    }
 528  3 public Void forInitializedArrayInstantiationOnly(InitializedArrayInstantiation that) {
 529  3 return forArrayInstantiationOnly(that);
 530    }
 531  3 public Void forSimpleInitializedArrayInstantiationDoFirst(SimpleInitializedArrayInstantiation that) {
 532  3 return forInitializedArrayInstantiationDoFirst(that);
 533    }
 534  3 public Void forSimpleInitializedArrayInstantiationOnly(SimpleInitializedArrayInstantiation that) {
 535  3 return forInitializedArrayInstantiationOnly(that);
 536    }
 537  0 public Void forComplexInitializedArrayInstantiationDoFirst(ComplexInitializedArrayInstantiation that) {
 538  0 return forInitializedArrayInstantiationDoFirst(that);
 539    }
 540  0 public Void forComplexInitializedArrayInstantiationOnly(ComplexInitializedArrayInstantiation that) {
 541  0 return forInitializedArrayInstantiationOnly(that);
 542    }
 543  1 public Void forVariableReferenceDoFirst(VariableReference that) { return forPrimaryDoFirst(that); }
 544  18 public Void forVariableReferenceOnly(VariableReference that) { return forPrimaryOnly(that); }
 545  0 public Void forNameReferenceDoFirst(NameReference that) { return forVariableReferenceDoFirst(that); }
 546  0 public Void forNameReferenceOnly(NameReference that) { return forVariableReferenceOnly(that); }
 547  0 public Void forSimpleNameReferenceDoFirst(SimpleNameReference that) { return forNameReferenceDoFirst(that); }
 548  0 public Void forSimpleNameReferenceOnly(SimpleNameReference that) { return forNameReferenceOnly(that); }
 549  0 public Void forComplexNameReferenceDoFirst(ComplexNameReference that) { return forNameReferenceDoFirst(that); }
 550  0 public Void forComplexNameReferenceOnly(ComplexNameReference that) { return forNameReferenceOnly(that); }
 551  0 public Void forThisReferenceDoFirst(ThisReference that) { return forVariableReferenceDoFirst(that); }
 552  13 public Void forThisReferenceOnly(ThisReference that) { return forVariableReferenceOnly(that); }
 553  9 public Void forSimpleThisReferenceDoFirst(SimpleThisReference that) { return forThisReferenceDoFirst(that); }
 554  9 public Void forSimpleThisReferenceOnly(SimpleThisReference that) { return forThisReferenceOnly(that); }
 555  4 public Void forComplexThisReferenceDoFirst(ComplexThisReference that) { return forThisReferenceDoFirst(that); }
 556  4 public Void forComplexThisReferenceOnly(ComplexThisReference that) { return forThisReferenceOnly(that); }
 557  1 public Void forSuperReferenceDoFirst(SuperReference that) { return forVariableReferenceDoFirst(that); }
 558  5 public Void forSuperReferenceOnly(SuperReference that) { return forVariableReferenceOnly(that); }
 559  3 public Void forSimpleSuperReferenceDoFirst(SimpleSuperReference that) { return forSuperReferenceDoFirst(that); }
 560  3 public Void forSimpleSuperReferenceOnly(SimpleSuperReference that) { return forSuperReferenceOnly(that); }
 561  2 public Void forComplexSuperReferenceDoFirst(ComplexSuperReference that) { return forSuperReferenceDoFirst(that); }
 562  2 public Void forComplexSuperReferenceOnly(ComplexSuperReference that) { return forSuperReferenceOnly(that); }
 563  51 public Void forFunctionInvocationDoFirst(FunctionInvocation that) { return forPrimaryDoFirst(that); }
 564  51 public Void forFunctionInvocationOnly(FunctionInvocation that) { return forPrimaryOnly(that); }
 565  49 public Void forMethodInvocationDoFirst(MethodInvocation that) { return forFunctionInvocationDoFirst(that); }
 566  49 public Void forMethodInvocationOnly(MethodInvocation that) { return forFunctionInvocationOnly(that); }
 567  16 public Void forSimpleMethodInvocationDoFirst(SimpleMethodInvocation that) { return forMethodInvocationDoFirst(that); }
 568  16 public Void forSimpleMethodInvocationOnly(SimpleMethodInvocation that) { return forMethodInvocationOnly(that); }
 569  33 public Void forComplexMethodInvocationDoFirst(ComplexMethodInvocation that) {
 570  33 return forMethodInvocationDoFirst(that);
 571    }
 572  33 public Void forComplexMethodInvocationOnly(ComplexMethodInvocation that) { return forMethodInvocationOnly(that); }
 573  0 public Void forThisConstructorInvocationDoFirst(ThisConstructorInvocation that) {
 574  0 return forFunctionInvocationDoFirst(that);
 575    }
 576  0 public Void forThisConstructorInvocationOnly(ThisConstructorInvocation that) {
 577  0 return forFunctionInvocationOnly(that);
 578    }
 579  0 public Void forSimpleThisConstructorInvocationDoFirst(SimpleThisConstructorInvocation that) {
 580  0 return forThisConstructorInvocationDoFirst(that);
 581    }
 582  0 public Void forSimpleThisConstructorInvocationOnly(SimpleThisConstructorInvocation that) {
 583  0 return forThisConstructorInvocationOnly(that);
 584    }
 585  0 public Void forComplexThisConstructorInvocationDoFirst(ComplexThisConstructorInvocation that) {
 586  0 return forThisConstructorInvocationDoFirst(that);
 587    }
 588  0 public Void forComplexThisConstructorInvocationOnly(ComplexThisConstructorInvocation that) {
 589  0 return forThisConstructorInvocationOnly(that);
 590    }
 591  2 public Void forSuperConstructorInvocationDoFirst(SuperConstructorInvocation that) {
 592  2 return forFunctionInvocationDoFirst(that);
 593    }
 594  2 public Void forSuperConstructorInvocationOnly(SuperConstructorInvocation that) {
 595  2 return forFunctionInvocationOnly(that);
 596    }
 597  2 public Void forSimpleSuperConstructorInvocationDoFirst(SimpleSuperConstructorInvocation that) {
 598  2 return forSuperConstructorInvocationDoFirst(that);
 599    }
 600  2 public Void forSimpleSuperConstructorInvocationOnly(SimpleSuperConstructorInvocation that) {
 601  2 return forSuperConstructorInvocationOnly(that);
 602    }
 603  0 public Void forComplexSuperConstructorInvocationDoFirst(ComplexSuperConstructorInvocation that) {
 604  0 return forSuperConstructorInvocationDoFirst(that);
 605    }
 606  0 public Void forComplexSuperConstructorInvocationOnly(ComplexSuperConstructorInvocation that) {
 607  0 return forSuperConstructorInvocationOnly(that);
 608    }
 609  0 public Void forClassLiteralDoFirst(ClassLiteral that) { return forPrimaryDoFirst(that); }
 610  0 public Void forClassLiteralOnly(ClassLiteral that) { return forPrimaryOnly(that); }
 611  2 public Void forArrayAccessDoFirst(ArrayAccess that) { return forPrimaryDoFirst(that); }
 612  2 public Void forArrayAccessOnly(ArrayAccess that) { return forPrimaryOnly(that); }
 613  10 public Void forParenthesizedDoFirst(Parenthesized that) { return forPrimaryDoFirst(that); }
 614  10 public Void forParenthesizedOnly(Parenthesized that) { return forPrimaryOnly(that); }
 615  0 public Void forEmptyExpressionDoFirst(EmptyExpression that) { return forPrimaryDoFirst(that); }
 616  1 public Void forEmptyExpressionOnly(EmptyExpression that) { return forPrimaryOnly(that); }
 617    // public void forEmptyDimensionExpressionDoFirst(EmptyDimensionExpression that) {
 618    // forPrimaryDoFirst(that);
 619    // }
 620   
 621    // public void forEmptyDimensionExpressionOnly(EmptyDimensionExpression that) {
 622    // forPrimaryOnly(that);
 623    // }
 624   
 625  490 public Void forBodyDoFirst(Body that) { return forJExpressionDoFirst(that); }
 626  490 public Void forBodyOnly(Body that) { return forJExpressionOnly(that); }
 627  474 public Void forBracedBodyDoFirst(BracedBody that) { return forBodyDoFirst(that); }
 628  474 public Void forBracedBodyOnly(BracedBody that) { return forBodyOnly(that); }
 629  16 public Void forUnbracedBodyDoFirst(UnbracedBody that) { return forBodyDoFirst(that); }
 630  16 public Void forUnbracedBodyOnly(UnbracedBody that) { return forBodyOnly(that); }
 631  114 public Void forExpressionListDoFirst(ExpressionList that) { return forJExpressionDoFirst(that); }
 632  114 public Void forExpressionListOnly(ExpressionList that) { return forJExpressionOnly(that); }
 633  102 public Void forParenthesizedExpressionListDoFirst(ParenthesizedExpressionList that) {
 634  102 return forExpressionListDoFirst(that);
 635    }
 636  102 public Void forParenthesizedExpressionListOnly(ParenthesizedExpressionList that) {
 637  102 return forExpressionListOnly(that);
 638    }
 639  7 public Void forUnparenthesizedExpressionListDoFirst(UnparenthesizedExpressionList that) {
 640  7 return forExpressionListDoFirst(that);
 641    }
 642  7 public Void forUnparenthesizedExpressionListOnly(UnparenthesizedExpressionList that) {
 643  7 return forExpressionListOnly(that);
 644    }
 645  5 public Void forDimensionExpressionListDoFirst(DimensionExpressionList that) { return forExpressionListDoFirst(that); }
 646  5 public Void forDimensionExpressionListOnly(DimensionExpressionList that) { return forExpressionListOnly(that); }
 647  0 public Void forEmptyForConditionDoFirst(EmptyForCondition that) { return forJExpressionDoFirst(that); }
 648  0 public Void forEmptyForConditionOnly(EmptyForCondition that) { return forJExpressionOnly(that); }
 649   
 650    /* Implementation of JExpressionIFVisitor_void methods to implement depth-first traversal. */
 651  0 public Void forSourceFile(SourceFile that) {
 652  0 forSourceFileDoFirst(that);
 653  0 if (prune(that)) return null;
 654  0 for (int i = 0; i < that.getPackageStatements().length; i++) that.getPackageStatements()[i].visit(this);
 655  0 for (int i = 0; i < that.getImportStatements().length; i++) that.getImportStatements()[i].visit(this);
 656  0 for (int i = 0; i < that.getTypes().length; i++) that.getTypes()[i].visit(this);
 657  0 return forSourceFileOnly(that);
 658    }
 659  633 public Void forModifiersAndVisibility(ModifiersAndVisibility that) {
 660  633 forModifiersAndVisibilityDoFirst(that);
 661  6 if (prune(that)) return null;
 662  627 return forModifiersAndVisibilityOnly(that);
 663    }
 664  30 public Void forCompoundWord(CompoundWord that) {
 665  30 forCompoundWordDoFirst(that);
 666  0 if (prune(that)) return null;
 667  58 for (int i = 0; i < that.getWords().length; i++) that.getWords()[i].visit(this);
 668  30 return forCompoundWordOnly(that);
 669    }
 670  525 public Void forWord(Word that) {
 671  525 forWordDoFirst(that);
 672  0 if (prune(that)) return null;
 673  525 return forWordOnly(that);
 674    }
 675   
 676  2 public Void forClassDef(ClassDef that) {
 677  2 forClassDefDoFirst(that);
 678  0 if (prune(that)) return null;
 679  2 that.getMav().visit(this);
 680  2 that.getName().visit(this);
 681  0 for (int i = 0; i < that.getTypeParameters().length; i++) that.getTypeParameters()[i].visit(this);
 682   
 683  2 that.getSuperclass().visit(this);
 684   
 685  0 for (int i = 0; i < that.getInterfaces().length; i++) that.getInterfaces()[i].visit(this);
 686   
 687  2 that.getBody().visit(this);
 688  2 return forClassDefOnly(that);
 689    }
 690   
 691  1 public Void forInnerClassDef(InnerClassDef that) {
 692    // System.err.println("Visiting inner class " + that.getName() + " in JExpIfPrunDFV from " + this);
 693  1 forInnerClassDefDoFirst(that);
 694  0 if (prune(that)) return null;
 695    // System.err.println("Passed the prune control point in JEIFPDFV.forInnerClassDef for " + that.getName());
 696  1 that.getMav().visit(this);
 697  1 that.getName().visit(this);
 698   
 699  0 for (int i = 0; i < that.getTypeParameters().length; i++) that.getTypeParameters()[i].visit(this);
 700  1 that.getSuperclass().visit(this);
 701  0 for (int i = 0; i < that.getInterfaces().length; i++) that.getInterfaces()[i].visit(this);
 702   
 703  1 that.getBody().visit(this);
 704  1 return forInnerClassDefOnly(that);
 705    }
 706   
 707  2 public Void forInterfaceDef(InterfaceDef that) {
 708  2 forInterfaceDefDoFirst(that);
 709  0 if (prune(that)) return null;
 710  2 that.getMav().visit(this);
 711  0 for (int i = 0; i < that.getTypeParameters().length; i++) that.getTypeParameters()[i].visit(this);
 712  0 for (int i = 0; i < that.getInterfaces().length; i++) that.getInterfaces()[i].visit(this);
 713  2 that.getBody().visit(this);
 714  2 return forInterfaceDefOnly(that);
 715    }
 716  3 public Void forInnerInterfaceDef(InnerInterfaceDef that) {
 717  3 forInnerInterfaceDefDoFirst(that);
 718  0 if (prune(that)) return null;
 719  3 that.getMav().visit(this);
 720  0 for (int i = 0; i < that.getTypeParameters().length; i++) that.getTypeParameters()[i].visit(this);
 721  0 for (int i = 0; i < that.getInterfaces().length; i++) that.getInterfaces()[i].visit(this);
 722  3 that.getBody().visit(this);
 723  3 return forInnerInterfaceDefOnly(that);
 724    }
 725  2 public Void forConstructorDef(ConstructorDef that) {
 726  2 forConstructorDefDoFirst(that);
 727  0 if (prune(that)) return null;
 728  2 that.getName().visit(this);
 729  2 that.getMav().visit(this);
 730  0 for (int i = 0; i < that.getParameters().length; i++) that.getParameters()[i].visit(this);
 731  0 for (int i = 0; i < that.getThrows().length; i++) that.getThrows()[i].visit(this);
 732  2 that.getStatements().visit(this);
 733  2 return forConstructorDefOnly(that);
 734    }
 735  4 public Void forInstanceInitializer(InstanceInitializer that) {
 736  4 forInstanceInitializerDoFirst(that);
 737  4 if (prune(that)) return null;
 738  0 that.getCode().visit(this);
 739  0 return forInstanceInitializerOnly(that);
 740    }
 741  2 public Void forStaticInitializer(StaticInitializer that) {
 742  2 forStaticInitializerDoFirst(that);
 743  0 if (prune(that)) return null;
 744  2 that.getCode().visit(this);
 745  2 return forStaticInitializerOnly(that);
 746    }
 747  14 public Void forPackageStatement(PackageStatement that) {
 748  14 forPackageStatementDoFirst(that);
 749  0 if (prune(that)) return null;
 750  14 that.getCWord().visit(this);
 751  14 return forPackageStatementOnly(that);
 752    }
 753  9 public Void forClassImportStatement(ClassImportStatement that) {
 754  9 forClassImportStatementDoFirst(that);
 755  0 if (prune(that)) return null;
 756  9 that.getCWord().visit(this);
 757  9 return forClassImportStatementOnly(that);
 758    }
 759  7 public Void forPackageImportStatement(PackageImportStatement that) {
 760  7 forPackageImportStatementDoFirst(that);
 761  0 if (prune(that)) return null;
 762  7 that.getCWord().visit(this);
 763  7 return forPackageImportStatementOnly(that);
 764    }
 765  2 public Void forLabeledStatement(LabeledStatement that) {
 766  2 forLabeledStatementDoFirst(that);
 767  0 if (prune(that)) return null;
 768  2 that.getLabel().visit(this);
 769  2 that.getStatement().visit(this);
 770  2 return forLabeledStatementOnly(that);
 771    }
 772  4 public Void forBlock(Block that) {
 773  4 forBlockDoFirst(that);
 774  0 if (prune(that)) return null;
 775  4 that.getStatements().visit(this);
 776  4 return forBlockOnly(that);
 777    }
 778  56 public Void forExpressionStatement(ExpressionStatement that) {
 779  56 forExpressionStatementDoFirst(that);
 780  0 if (prune(that)) return null;
 781  56 that.getExpression().visit(this);
 782  56 return forExpressionStatementOnly(that);
 783    }
 784  6 public Void forSwitchStatement(SwitchStatement that) {
 785  6 forSwitchStatementDoFirst(that);
 786  0 if (prune(that)) return null;
 787  6 that.getTest().visit(this);
 788  16 for (int i = 0; i < that.getCases().length; i++) that.getCases()[i].visit(this);
 789  6 return forSwitchStatementOnly(that);
 790    }
 791  6 public Void forIfThenStatement(IfThenStatement that) {
 792  6 forIfThenStatementDoFirst(that);
 793  0 if (prune(that)) return null;
 794  6 that.getTestExpression().visit(this);
 795  6 that.getThenStatement().visit(this);
 796  6 return forIfThenStatementOnly(that);
 797    }
 798  11 public Void forIfThenElseStatement(IfThenElseStatement that) {
 799  11 forIfThenElseStatementDoFirst(that);
 800  0 if (prune(that)) return null;
 801  11 that.getTestExpression().visit(this);
 802  11 that.getThenStatement().visit(this);
 803  11 that.getElseStatement().visit(this);
 804  11 return forIfThenElseStatementOnly(that);
 805    }
 806  2 public Void forWhileStatement(WhileStatement that) {
 807  2 forWhileStatementDoFirst(that);
 808  0 if (prune(that)) return null;
 809  2 that.getCondition().visit(this);
 810  2 that.getCode().visit(this);
 811  2 return forWhileStatementOnly(that);
 812    }
 813  2 public Void forDoStatement(DoStatement that) {
 814  2 forDoStatementDoFirst(that);
 815  0 if (prune(that)) return null;
 816  2 that.getCode().visit(this);
 817  2 that.getCondition().visit(this);
 818  2 return forDoStatementOnly(that);
 819    }
 820  4 public Void forForStatement(ForStatement that) {
 821  4 forForStatementDoFirst(that);
 822  0 if (prune(that)) return null;
 823  4 that.getInit().visit(this);
 824  4 that.getCondition().visit(this);
 825  4 that.getUpdate().visit(this);
 826  4 that.getCode().visit(this);
 827  4 return forForStatementOnly(that);
 828    }
 829  1 public Void forLabeledBreakStatement(LabeledBreakStatement that) {
 830  1 forLabeledBreakStatementDoFirst(that);
 831  0 if (prune(that)) return null;
 832  1 that.getLabel().visit(this);
 833  1 return forLabeledBreakStatementOnly(that);
 834    }
 835  10 public Void forUnlabeledBreakStatement(UnlabeledBreakStatement that) {
 836  10 forUnlabeledBreakStatementDoFirst(that);
 837  0 if (prune(that)) return null;
 838  10 return forUnlabeledBreakStatementOnly(that);
 839    }
 840  1 public Void forLabeledContinueStatement(LabeledContinueStatement that) {
 841  1 forLabeledContinueStatementDoFirst(that);
 842  0 if (prune(that)) return null;
 843  1 that.getLabel().visit(this);
 844  1 return forLabeledContinueStatementOnly(that);
 845    }
 846  1 public Void forUnlabeledContinueStatement(UnlabeledContinueStatement that) {
 847  1 forUnlabeledContinueStatementDoFirst(that);
 848  0 if (prune(that)) return null;
 849  1 return forUnlabeledContinueStatementOnly(that);
 850    }
 851  0 public Void forVoidReturnStatement(VoidReturnStatement that) {
 852  0 forVoidReturnStatementDoFirst(that);
 853  0 if (prune(that)) return null;
 854  0 return forVoidReturnStatementOnly(that);
 855    }
 856  125 public Void forValueReturnStatement(ValueReturnStatement that) {
 857  125 forValueReturnStatementDoFirst(that);
 858  0 if (prune(that)) return null;
 859  125 that.getValue().visit(this);
 860  125 return forValueReturnStatementOnly(that);
 861    }
 862  16 public Void forThrowStatement(ThrowStatement that) {
 863  16 forThrowStatementDoFirst(that);
 864  0 if (prune(that)) return null;
 865  16 that.getThrown().visit(this);
 866  16 return forThrowStatementOnly(that);
 867    }
 868  2 public Void forSynchronizedStatement(SynchronizedStatement that) {
 869  2 forSynchronizedStatementDoFirst(that);
 870  1 if (prune(that)) return null;
 871  1 that.getLockExpr().visit(this);
 872  1 that.getBlock().visit(this);
 873  1 return forSynchronizedStatementOnly(that);
 874    }
 875  6 public Void forTryCatchFinallyStatement(TryCatchFinallyStatement that) {
 876  6 forTryCatchFinallyStatementDoFirst(that);
 877  0 if (prune(that)) return null;
 878  6 that.getTryBlock().visit(this);
 879  4 for (int i = 0; i < that.getCatchBlocks().length; i++) that.getCatchBlocks()[i].visit(this);
 880  6 that.getFinallyBlock().visit(this);
 881  6 return forTryCatchFinallyStatementOnly(that);
 882    }
 883  11 public Void forNormalTryCatchStatement(NormalTryCatchStatement that) {
 884  11 forNormalTryCatchStatementDoFirst(that);
 885  0 if (prune(that)) return null;
 886  11 that.getTryBlock().visit(this);
 887  9 for (int i = 0; i < that.getCatchBlocks().length; i++) that.getCatchBlocks()[i].visit(this);
 888  11 return forNormalTryCatchStatementOnly(that);
 889    }
 890  5 public Void forEmptyStatement(EmptyStatement that) {
 891  5 forEmptyStatementDoFirst(that);
 892  0 if (prune(that)) return null;
 893  5 return forEmptyStatementOnly(that);
 894    }
 895  4 public Void forConcreteMethodDef(ConcreteMethodDef that) {
 896  4 forConcreteMethodDefDoFirst(that);
 897  3 if (prune(that)) return null;
 898  1 that.getMav().visit(this);
 899  0 for (int i = 0; i < that.getTypeParams().length; i++) that.getTypeParams()[i].visit(this);
 900  1 that.getResult().visit(this);
 901  0 for (int i = 0; i < that.getParams().length; i++) that.getParams()[i].visit(this);
 902  0 for (int i = 0; i < that.getThrows().length; i++) that.getThrows()[i].visit(this);
 903  1 that.getBody().visit(this);
 904  1 return forConcreteMethodDefOnly(that);
 905    }
 906  0 public Void forAbstractMethodDef(AbstractMethodDef that) {
 907  0 forAbstractMethodDefDoFirst(that);
 908  0 if (prune(that)) return null;
 909  0 that.getMav().visit(this);
 910  0 for (int i = 0; i < that.getTypeParams().length; i++) that.getTypeParams()[i].visit(this);
 911  0 that.getResult().visit(this);
 912  0 for (int i = 0; i < that.getParams().length; i++) that.getParams()[i].visit(this);
 913  0 for (int i = 0; i < that.getThrows().length; i++) that.getThrows()[i].visit(this);
 914  0 return forAbstractMethodDefOnly(that);
 915    }
 916  0 public Void forFormalParameter(FormalParameter that) {
 917  0 forFormalParameterDoFirst(that);
 918  0 if (prune(that)) return null;
 919  0 that.getDeclarator().visit(this);
 920  0 return forFormalParameterOnly(that);
 921    }
 922  0 public Void forVariableDeclaration(VariableDeclaration that) {
 923  0 forVariableDeclarationDoFirst(that);
 924  0 if (prune(that)) return null;
 925  0 that.getMav().visit(this);
 926  0 for (int i = 0; i < that.getDeclarators().length; i++) that.getDeclarators()[i].visit(this);
 927  0 return forVariableDeclarationOnly(that);
 928    }
 929  125 public Void forUninitializedVariableDeclarator(UninitializedVariableDeclarator that) {
 930  125 forUninitializedVariableDeclaratorDoFirst(that);
 931  0 if (prune(that)) return null;
 932  125 that.getType().visit(this);
 933  125 return forUninitializedVariableDeclaratorOnly(that);
 934    }
 935  68 public Void forInitializedVariableDeclarator(InitializedVariableDeclarator that) {
 936  68 forInitializedVariableDeclaratorDoFirst(that);
 937  0 if (prune(that)) return null;
 938  68 that.getType().visit(this);
 939  68 that.getInitializer().visit(this);
 940  68 return forInitializedVariableDeclaratorOnly(that);
 941    }
 942  2 public Void forTypeParameter(TypeParameter that) {
 943  2 forTypeParameterDoFirst(that);
 944  1 if (prune(that)) return null;
 945  1 that.getVariable().visit(this);
 946  1 that.getBound().visit(this);
 947  1 return forTypeParameterOnly(that);
 948    }
 949  6 public Void forArrayInitializer(ArrayInitializer that) {
 950  6 forArrayInitializerDoFirst(that);
 951  0 if (prune(that)) return null;
 952  14 for (int i = 0; i < that.getItems().length; i++) that.getItems()[i].visit(this);
 953  6 return forArrayInitializerOnly(that);
 954    }
 955  141 public Void forPrimitiveType(PrimitiveType that) {
 956  141 forPrimitiveTypeDoFirst(that);
 957  0 if (prune(that)) return null;
 958  141 return forPrimitiveTypeOnly(that);
 959    }
 960  0 public Void forArrayType(ArrayType that) {
 961  0 forArrayTypeDoFirst(that);
 962  0 if (prune(that)) return null;
 963  0 that.getElementType().visit(this);
 964  0 return forArrayTypeOnly(that);
 965    }
 966  0 public Void forMemberType(MemberType that) {
 967  0 forMemberTypeDoFirst(that);
 968  0 if (prune(that)) return null;
 969  0 that.getLeft().visit(this);
 970  0 that.getRight().visit(this);
 971  0 return forMemberTypeOnly(that);
 972    }
 973  317 public Void forClassOrInterfaceType(ClassOrInterfaceType that) {
 974  317 forClassOrInterfaceTypeDoFirst(that);
 975  0 if (prune(that)) return null;
 976  0 for (int i = 0; i < that.getTypeArguments().length; i++) that.getTypeArguments()[i].visit(this);
 977  317 return forClassOrInterfaceTypeOnly(that);
 978    }
 979  1 public Void forTypeVariable(TypeVariable that) {
 980  1 forTypeVariableDoFirst(that);
 981  0 if (prune(that)) return null;
 982  1 return forTypeVariableOnly(that);
 983    }
 984  0 public Void forVoidReturn(VoidReturn that) {
 985  0 forVoidReturnDoFirst(that);
 986  0 if (prune(that)) return null;
 987  0 return forVoidReturnOnly(that);
 988    }
 989  10 public Void forLabeledCase(LabeledCase that) {
 990  10 forLabeledCaseDoFirst(that);
 991  0 if (prune(that)) return null;
 992  10 that.getLabel().visit(this);
 993  10 that.getCode().visit(this);
 994  10 return forLabeledCaseOnly(that);
 995    }
 996  6 public Void forDefaultCase(DefaultCase that) {
 997  6 forDefaultCaseDoFirst(that);
 998  0 if (prune(that)) return null;
 999  6 that.getCode().visit(this);
 1000  6 return forDefaultCaseOnly(that);
 1001    }
 1002  0 public Void forCatchBlock(CatchBlock that) {
 1003  0 forCatchBlockDoFirst(that);
 1004  0 if (prune(that)) return null;
 1005  0 that.getException().visit(this);
 1006  0 that.getBlock().visit(this);
 1007  0 return forCatchBlockOnly(that);
 1008    }
 1009  31 public Void forSimpleAssignmentExpression(SimpleAssignmentExpression that) {
 1010  31 forSimpleAssignmentExpressionDoFirst(that);
 1011  0 if (prune(that)) return null;
 1012  31 that.getName().visit(this);
 1013  31 that.getValue().visit(this);
 1014  31 return forSimpleAssignmentExpressionOnly(that);
 1015    }
 1016  1 public Void forPlusAssignmentExpression(PlusAssignmentExpression that) {
 1017  1 forPlusAssignmentExpressionDoFirst(that);
 1018  0 if (prune(that)) return null;
 1019  1 that.getName().visit(this);
 1020  1 that.getValue().visit(this);
 1021  1 return forPlusAssignmentExpressionOnly(that);
 1022    }
 1023  0 public Void forMinusAssignmentExpression(MinusAssignmentExpression that) {
 1024  0 forMinusAssignmentExpressionDoFirst(that);
 1025  0 if (prune(that)) return null;
 1026  0 that.getName().visit(this);
 1027  0 that.getValue().visit(this);
 1028  0 return forMinusAssignmentExpressionOnly(that);
 1029    }
 1030  0 public Void forMultiplyAssignmentExpression(MultiplyAssignmentExpression that) {
 1031  0 forMultiplyAssignmentExpressionDoFirst(that);
 1032  0 if (prune(that)) return null;
 1033  0 that.getName().visit(this);
 1034  0 that.getValue().visit(this);
 1035  0 return forMultiplyAssignmentExpressionOnly(that);
 1036    }
 1037  0 public Void forDivideAssignmentExpression(DivideAssignmentExpression that) {
 1038  0 forDivideAssignmentExpressionDoFirst(that);
 1039  0 if (prune(that)) return null;
 1040  0 that.getName().visit(this);
 1041  0 that.getValue().visit(this);
 1042  0 return forDivideAssignmentExpressionOnly(that);
 1043    }
 1044  0 public Void forModAssignmentExpression(ModAssignmentExpression that) {
 1045  0 forModAssignmentExpressionDoFirst(that);
 1046  0 if (prune(that)) return null;
 1047  0 that.getName().visit(this);
 1048  0 that.getValue().visit(this);
 1049  0 return forModAssignmentExpressionOnly(that);
 1050    }
 1051  1 public Void forLeftShiftAssignmentExpression(LeftShiftAssignmentExpression that) {
 1052  1 forLeftShiftAssignmentExpressionDoFirst(that);
 1053  0 if (prune(that)) return null;
 1054  1 that.getName().visit(this);
 1055  1 that.getValue().visit(this);
 1056  1 return forLeftShiftAssignmentExpressionOnly(that);
 1057    }
 1058  1 public Void forRightSignedShiftAssignmentExpression(RightSignedShiftAssignmentExpression that) {
 1059  1 forRightSignedShiftAssignmentExpressionDoFirst(that);
 1060  0 if (prune(that)) return null;
 1061  1 that.getName().visit(this);
 1062  1 that.getValue().visit(this);
 1063  1 return forRightSignedShiftAssignmentExpressionOnly(that);
 1064    }
 1065  1 public Void forRightUnsignedShiftAssignmentExpression(RightUnsignedShiftAssignmentExpression that) {
 1066  1 forRightUnsignedShiftAssignmentExpressionDoFirst(that);
 1067  0 if (prune(that)) return null;
 1068  1 that.getName().visit(this);
 1069  1 that.getValue().visit(this);
 1070  1 return forRightUnsignedShiftAssignmentExpressionOnly(that);
 1071    }
 1072  1 public Void forBitwiseAndAssignmentExpression(BitwiseAndAssignmentExpression that) {
 1073  1 forBitwiseAndAssignmentExpressionDoFirst(that);
 1074  0 if (prune(that)) return null;
 1075  1 that.getName().visit(this);
 1076  1 that.getValue().visit(this);
 1077  1 return forBitwiseAndAssignmentExpressionOnly(that);
 1078    }
 1079  1 public Void forBitwiseOrAssignmentExpression(BitwiseOrAssignmentExpression that) {
 1080  1 forBitwiseOrAssignmentExpressionDoFirst(that);
 1081  0 if (prune(that)) return null;
 1082  1 that.getName().visit(this);
 1083  1 that.getValue().visit(this);
 1084  1 return forBitwiseOrAssignmentExpressionOnly(that);
 1085    }
 1086  1 public Void forBitwiseXorAssignmentExpression(BitwiseXorAssignmentExpression that) {
 1087  1 forBitwiseXorAssignmentExpressionDoFirst(that);
 1088  0 if (prune(that)) return null;
 1089  1 that.getName().visit(this);
 1090  1 that.getValue().visit(this);
 1091  1 return forBitwiseXorAssignmentExpressionOnly(that);
 1092    }
 1093  0 public Void forOrExpression(OrExpression that) {
 1094  0 forOrExpressionDoFirst(that);
 1095  0 if (prune(that)) return null;
 1096  0 that.getLeft().visit(this);
 1097  0 that.getRight().visit(this);
 1098  0 return forOrExpressionOnly(that);
 1099    }
 1100  1 public Void forAndExpression(AndExpression that) {
 1101  1 forAndExpressionDoFirst(that);
 1102  0 if (prune(that)) return null;
 1103  1 that.getLeft().visit(this);
 1104  1 that.getRight().visit(this);
 1105  1 return forAndExpressionOnly(that);
 1106    }
 1107  6 public Void forBitwiseOrExpression(BitwiseOrExpression that) {
 1108  6 forBitwiseOrExpressionDoFirst(that);
 1109  0 if (prune(that)) return null;
 1110  6 that.getLeft().visit(this);
 1111  6 that.getRight().visit(this);
 1112  6 return forBitwiseOrExpressionOnly(that);
 1113    }
 1114  1 public Void forBitwiseXorExpression(BitwiseXorExpression that) {
 1115  1 forBitwiseXorExpressionDoFirst(that);
 1116  0 if (prune(that)) return null;
 1117  1 that.getLeft().visit(this);
 1118  1 that.getRight().visit(this);
 1119  1 return forBitwiseXorExpressionOnly(that);
 1120    }
 1121  2 public Void forBitwiseAndExpression(BitwiseAndExpression that) {
 1122  2 forBitwiseAndExpressionDoFirst(that);
 1123  0 if (prune(that)) return null;
 1124  2 that.getLeft().visit(this);
 1125  2 that.getRight().visit(this);
 1126  2 return forBitwiseAndExpressionOnly(that);
 1127    }
 1128  5 public Void forEqualsExpression(EqualsExpression that) {
 1129  5 forEqualsExpressionDoFirst(that);
 1130  0 if (prune(that)) return null;
 1131  5 that.getLeft().visit(this);
 1132  5 that.getRight().visit(this);
 1133  5 return forEqualsExpressionOnly(that);
 1134    }
 1135  1 public Void forNotEqualExpression(NotEqualExpression that) {
 1136  1 forNotEqualExpressionDoFirst(that);
 1137  0 if (prune(that)) return null;
 1138  1 that.getLeft().visit(this);
 1139  1 that.getRight().visit(this);
 1140  1 return forNotEqualExpressionOnly(that);
 1141    }
 1142  17 public Void forLessThanExpression(LessThanExpression that) {
 1143  17 forLessThanExpressionDoFirst(that);
 1144  0 if (prune(that)) return null;
 1145  17 that.getLeft().visit(this);
 1146  17 that.getRight().visit(this);
 1147  17 return forLessThanExpressionOnly(that);
 1148    }
 1149  1 public Void forLessThanOrEqualExpression(LessThanOrEqualExpression that) {
 1150  1 forLessThanOrEqualExpressionDoFirst(that);
 1151  0 if (prune(that)) return null;
 1152  1 that.getLeft().visit(this);
 1153  1 that.getRight().visit(this);
 1154  1 return forLessThanOrEqualExpressionOnly(that);
 1155    }
 1156  2 public Void forGreaterThanExpression(GreaterThanExpression that) {
 1157  2 forGreaterThanExpressionDoFirst(that);
 1158  0 if (prune(that)) return null;
 1159  2 that.getLeft().visit(this);
 1160  2 that.getRight().visit(this);
 1161  2 return forGreaterThanExpressionOnly(that);
 1162    }
 1163  0 public Void forGreaterThanOrEqualExpression(GreaterThanOrEqualExpression that) {
 1164  0 forGreaterThanOrEqualExpressionDoFirst(that);
 1165  0 if (prune(that)) return null;
 1166  0 that.getLeft().visit(this);
 1167  0 that.getRight().visit(this);
 1168  0 return forGreaterThanOrEqualExpressionOnly(that);
 1169    }
 1170  2 public Void forLeftShiftExpression(LeftShiftExpression that) {
 1171  2 forLeftShiftExpressionDoFirst(that);
 1172  0 if (prune(that)) return null;
 1173  2 that.getLeft().visit(this);
 1174  2 that.getRight().visit(this);
 1175  2 return forLeftShiftExpressionOnly(that);
 1176    }
 1177  1 public Void forRightSignedShiftExpression(RightSignedShiftExpression that) {
 1178  1 forRightSignedShiftExpressionDoFirst(that);
 1179  0 if (prune(that)) return null;
 1180  1 that.getLeft().visit(this);
 1181  1 that.getRight().visit(this);
 1182  1 return forRightSignedShiftExpressionOnly(that);
 1183    }
 1184  1 public Void forRightUnsignedShiftExpression(RightUnsignedShiftExpression that) {
 1185  1 forRightUnsignedShiftExpressionDoFirst(that);
 1186  0 if (prune(that)) return null;
 1187  1 that.getLeft().visit(this);
 1188  1 that.getRight().visit(this);
 1189  1 return forRightUnsignedShiftExpressionOnly(that);
 1190    }
 1191  27 public Void forPlusExpression(PlusExpression that) {
 1192  27 forPlusExpressionDoFirst(that);
 1193  0 if (prune(that)) return null;
 1194  27 that.getLeft().visit(this);
 1195  27 that.getRight().visit(this);
 1196  27 return forPlusExpressionOnly(that);
 1197    }
 1198  0 public Void forMinusExpression(MinusExpression that) {
 1199  0 forMinusExpressionDoFirst(that);
 1200  0 if (prune(that)) return null;
 1201  0 that.getLeft().visit(this);
 1202  0 that.getRight().visit(this);
 1203  0 return forMinusExpressionOnly(that);
 1204    }
 1205  7 public Void forMultiplyExpression(MultiplyExpression that) {
 1206  7 forMultiplyExpressionDoFirst(that);
 1207  0 if (prune(that)) return null;
 1208  7 that.getLeft().visit(this);
 1209  7 that.getRight().visit(this);
 1210  7 return forMultiplyExpressionOnly(that);
 1211    }
 1212  1 public Void forDivideExpression(DivideExpression that) {
 1213  1 forDivideExpressionDoFirst(that);
 1214  0 if (prune(that)) return null;
 1215  1 that.getLeft().visit(this);
 1216  1 that.getRight().visit(this);
 1217  1 return forDivideExpressionOnly(that);
 1218    }
 1219  0 public Void forModExpression(ModExpression that) {
 1220  0 forModExpressionDoFirst(that);
 1221  0 if (prune(that)) return null;
 1222  0 that.getLeft().visit(this);
 1223  0 that.getRight().visit(this);
 1224  0 return forModExpressionOnly(that);
 1225    }
 1226  1 public Void forNoOpExpression(NoOpExpression that) {
 1227  1 forNoOpExpressionDoFirst(that);
 1228  0 if (prune(that)) return null;
 1229  1 that.getLeft().visit(this);
 1230  1 that.getRight().visit(this);
 1231  1 return forNoOpExpressionOnly(that);
 1232    }
 1233  0 public Void forPositivePrefixIncrementExpression(PositivePrefixIncrementExpression that) {
 1234  0 forPositivePrefixIncrementExpressionDoFirst(that);
 1235  0 if (prune(that)) return null;
 1236  0 that.getValue().visit(this);
 1237  0 return forPositivePrefixIncrementExpressionOnly(that);
 1238    }
 1239  0 public Void forNegativePrefixIncrementExpression(NegativePrefixIncrementExpression that) {
 1240  0 forNegativePrefixIncrementExpressionDoFirst(that);
 1241  0 if (prune(that)) return null;
 1242  0 that.getValue().visit(this);
 1243  0 return forNegativePrefixIncrementExpressionOnly(that);
 1244    }
 1245  2 public Void forPositivePostfixIncrementExpression(PositivePostfixIncrementExpression that) {
 1246  2 forPositivePostfixIncrementExpressionDoFirst(that);
 1247  0 if (prune(that)) return null;
 1248  2 that.getValue().visit(this);
 1249  2 return forPositivePostfixIncrementExpressionOnly(that);
 1250    }
 1251  0 public Void forNegativePostfixIncrementExpression(NegativePostfixIncrementExpression that) {
 1252  0 forNegativePostfixIncrementExpressionDoFirst(that);
 1253  0 if (prune(that)) return null;
 1254  0 that.getValue().visit(this);
 1255  0 return forNegativePostfixIncrementExpressionOnly(that);
 1256    }
 1257  0 public Void forPositiveExpression(PositiveExpression that) {
 1258  0 forPositiveExpressionDoFirst(that);
 1259  0 if (prune(that)) return null;
 1260  0 that.getValue().visit(this);
 1261  0 return forPositiveExpressionOnly(that);
 1262    }
 1263  0 public Void forNegativeExpression(NegativeExpression that) {
 1264  0 forNegativeExpressionDoFirst(that);
 1265  0 if (prune(that)) return null;
 1266  0 that.getValue().visit(this);
 1267  0 return forNegativeExpressionOnly(that);
 1268    }
 1269  2 public Void forBitwiseNotExpression(BitwiseNotExpression that) {
 1270  2 forBitwiseNotExpressionDoFirst(that);
 1271  0 if (prune(that)) return null;
 1272  2 that.getValue().visit(this);
 1273  2 return forBitwiseNotExpressionOnly(that);
 1274    }
 1275  0 public Void forNotExpression(NotExpression that) {
 1276  0 forNotExpressionDoFirst(that);
 1277  0 if (prune(that)) return null;
 1278  0 that.getValue().visit(this);
 1279  0 return forNotExpressionOnly(that);
 1280    }
 1281  1 public Void forConditionalExpression(ConditionalExpression that) {
 1282  1 forConditionalExpressionDoFirst(that);
 1283  0 if (prune(that)) return null;
 1284  1 that.getCondition().visit(this);
 1285  1 that.getForTrue().visit(this);
 1286  1 that.getForFalse().visit(this);
 1287  1 return forConditionalExpressionOnly(that);
 1288    }
 1289  0 public Void forInstanceofExpression(InstanceofExpression that) {
 1290  0 forInstanceofExpressionDoFirst(that);
 1291  0 if (prune(that)) return null;
 1292  0 that.getValue().visit(this);
 1293  0 that.getType().visit(this);
 1294  0 return forInstanceofExpressionOnly(that);
 1295    }
 1296  6 public Void forCastExpression(CastExpression that) {
 1297  6 forCastExpressionDoFirst(that);
 1298  0 if (prune(that)) return null;
 1299  6 that.getType().visit(this);
 1300  6 that.getValue().visit(this);
 1301  6 return forCastExpressionOnly(that);
 1302    }
 1303  135 public Void forIntegerLiteral(IntegerLiteral that) {
 1304  135 forIntegerLiteralDoFirst(that);
 1305  0 if (prune(that)) return null;
 1306  135 return forIntegerLiteralOnly(that);
 1307    }
 1308  0 public Void forLongLiteral(LongLiteral that) {
 1309  0 forLongLiteralDoFirst(that);
 1310  0 if (prune(that)) return null;
 1311  0 return forLongLiteralOnly(that);
 1312    }
 1313  8 public Void forDoubleLiteral(DoubleLiteral that) {
 1314  8 forDoubleLiteralDoFirst(that);
 1315  0 if (prune(that)) return null;
 1316  8 return forDoubleLiteralOnly(that);
 1317    }
 1318  0 public Void forFloatLiteral(FloatLiteral that) {
 1319  0 forFloatLiteralDoFirst(that);
 1320  0 if (prune(that)) return null;
 1321  0 return forFloatLiteralOnly(that);
 1322    }
 1323  18 public Void forBooleanLiteral(BooleanLiteral that) {
 1324  18 forBooleanLiteralDoFirst(that);
 1325  0 if (prune(that)) return null;
 1326  18 return forBooleanLiteralOnly(that);
 1327    }
 1328  7 public Void forCharLiteral(CharLiteral that) {
 1329  7 forCharLiteralDoFirst(that);
 1330  0 if (prune(that)) return null;
 1331  7 return forCharLiteralOnly(that);
 1332    }
 1333  49 public Void forStringLiteral(StringLiteral that) {
 1334  49 forStringLiteralDoFirst(that);
 1335  0 if (prune(that)) return null;
 1336  49 return forStringLiteralOnly(that);
 1337    }
 1338  41 public Void forNullLiteral(NullLiteral that) {
 1339  41 forNullLiteralDoFirst(that);
 1340  0 if (prune(that)) return null;
 1341  41 return forNullLiteralOnly(that);
 1342    }
 1343  0 public Void forSimpleNamedClassInstantiation(SimpleNamedClassInstantiation that) {
 1344  0 forSimpleNamedClassInstantiationDoFirst(that);
 1345  0 if (prune(that)) return null;
 1346  0 that.getType().visit(this);
 1347  0 that.getArguments().visit(this);
 1348  0 return forSimpleNamedClassInstantiationOnly(that);
 1349    }
 1350  1 public Void forComplexNamedClassInstantiation(ComplexNamedClassInstantiation that) {
 1351  1 forComplexNamedClassInstantiationDoFirst(that);
 1352  0 if (prune(that)) return null;
 1353  1 that.getEnclosing().visit(this);
 1354  1 that.getType().visit(this);
 1355  1 that.getArguments().visit(this);
 1356  1 return forComplexNamedClassInstantiationOnly(that);
 1357    }
 1358  0 public Void forSimpleAnonymousClassInstantiation(SimpleAnonymousClassInstantiation that) {
 1359  0 forSimpleAnonymousClassInstantiationDoFirst(that);
 1360  0 if (prune(that)) return null;
 1361  0 that.getType().visit(this);
 1362  0 that.getArguments().visit(this);
 1363  0 that.getBody().visit(this);
 1364  0 return forSimpleAnonymousClassInstantiationOnly(that);
 1365    }
 1366  0 public Void forComplexAnonymousClassInstantiation(ComplexAnonymousClassInstantiation that) {
 1367  0 forComplexAnonymousClassInstantiationDoFirst(that);
 1368  0 if (prune(that)) return null;
 1369  0 that.getEnclosing().visit(this);
 1370  0 that.getType().visit(this);
 1371  0 that.getArguments().visit(this);
 1372  0 that.getBody().visit(this);
 1373  0 return forComplexAnonymousClassInstantiationOnly(that);
 1374    }
 1375  5 public Void forSimpleUninitializedArrayInstantiation(SimpleUninitializedArrayInstantiation that) {
 1376  5 forSimpleUninitializedArrayInstantiationDoFirst(that);
 1377  0 if (prune(that)) return null;
 1378  5 that.getType().visit(this);
 1379  5 that.getDimensionSizes().visit(this);
 1380  5 return forSimpleUninitializedArrayInstantiationOnly(that);
 1381    }
 1382  0 public Void forComplexUninitializedArrayInstantiation(ComplexUninitializedArrayInstantiation that) {
 1383  0 forComplexUninitializedArrayInstantiationDoFirst(that);
 1384  0 if (prune(that)) return null;
 1385  0 that.getEnclosing().visit(this);
 1386  0 that.getType().visit(this);
 1387  0 that.getDimensionSizes().visit(this);
 1388  0 return forComplexUninitializedArrayInstantiationOnly(that);
 1389    }
 1390  3 public Void forSimpleInitializedArrayInstantiation(SimpleInitializedArrayInstantiation that) {
 1391  3 forSimpleInitializedArrayInstantiationDoFirst(that);
 1392  0 if (prune(that)) return null;
 1393  3 that.getType().visit(this);
 1394  3 that.getInitializer().visit(this);
 1395  3 return forSimpleInitializedArrayInstantiationOnly(that);
 1396    }
 1397  0 public Void forComplexInitializedArrayInstantiation(ComplexInitializedArrayInstantiation that) {
 1398  0 forComplexInitializedArrayInstantiationDoFirst(that);
 1399  0 if (prune(that)) return null;
 1400  0 that.getEnclosing().visit(this);
 1401  0 that.getType().visit(this);
 1402  0 that.getInitializer().visit(this);
 1403  0 return forComplexInitializedArrayInstantiationOnly(that);
 1404    }
 1405  0 public Void forSimpleNameReference(SimpleNameReference that) {
 1406  0 forSimpleNameReferenceDoFirst(that);
 1407  0 if (prune(that)) return null;
 1408  0 that.getName().visit(this);
 1409  0 return forSimpleNameReferenceOnly(that);
 1410    }
 1411  0 public Void forComplexNameReference(ComplexNameReference that) {
 1412  0 forComplexNameReferenceDoFirst(that);
 1413  0 if (prune(that)) return null;
 1414  0 that.getEnclosing().visit(this);
 1415  0 that.getName().visit(this);
 1416  0 return forComplexNameReferenceOnly(that);
 1417    }
 1418  9 public Void forSimpleThisReference(SimpleThisReference that) {
 1419  9 forSimpleThisReferenceDoFirst(that);
 1420  0 if (prune(that)) return null;
 1421  9 return forSimpleThisReferenceOnly(that);
 1422    }
 1423  4 public Void forComplexThisReference(ComplexThisReference that) {
 1424  4 forComplexThisReferenceDoFirst(that);
 1425  0 if (prune(that)) return null;
 1426  4 that.getEnclosing().visit(this);
 1427  4 return forComplexThisReferenceOnly(that);
 1428    }
 1429  3 public Void forSimpleSuperReference(SimpleSuperReference that) {
 1430  3 forSimpleSuperReferenceDoFirst(that);
 1431  0 if (prune(that)) return null;
 1432  3 return forSimpleSuperReferenceOnly(that);
 1433    }
 1434  2 public Void forComplexSuperReference(ComplexSuperReference that) {
 1435  2 forComplexSuperReferenceDoFirst(that);
 1436  0 if (prune(that)) return null;
 1437  2 that.getEnclosing().visit(this);
 1438  2 return forComplexSuperReferenceOnly(that);
 1439    }
 1440  16 public Void forSimpleMethodInvocation(SimpleMethodInvocation that) {
 1441  16 forSimpleMethodInvocationDoFirst(that);
 1442  0 if (prune(that)) return null;
 1443  16 that.getName().visit(this);
 1444  16 that.getArguments().visit(this);
 1445  16 return forSimpleMethodInvocationOnly(that);
 1446    }
 1447  33 public Void forComplexMethodInvocation(ComplexMethodInvocation that) {
 1448  33 forComplexMethodInvocationDoFirst(that);
 1449  0 if (prune(that)) return null;
 1450  33 that.getEnclosing().visit(this);
 1451  33 that.getName().visit(this);
 1452  33 that.getArguments().visit(this);
 1453  33 return forComplexMethodInvocationOnly(that);
 1454    }
 1455  0 public Void forSimpleThisConstructorInvocation(SimpleThisConstructorInvocation that) {
 1456  0 forSimpleThisConstructorInvocationDoFirst(that);
 1457  0 if (prune(that)) return null;
 1458  0 that.getArguments().visit(this);
 1459  0 return forSimpleThisConstructorInvocationOnly(that);
 1460    }
 1461  0 public Void forComplexThisConstructorInvocation(ComplexThisConstructorInvocation that) {
 1462  0 forComplexThisConstructorInvocationDoFirst(that);
 1463  0 if (prune(that)) return null;
 1464  0 that.getEnclosing().visit(this);
 1465  0 that.getArguments().visit(this);
 1466  0 return forComplexThisConstructorInvocationOnly(that);
 1467    }
 1468  2 public Void forSimpleSuperConstructorInvocation(SimpleSuperConstructorInvocation that) {
 1469  2 forSimpleSuperConstructorInvocationDoFirst(that);
 1470  0 if (prune(that)) return null;
 1471  2 that.getArguments().visit(this);
 1472  2 return forSimpleSuperConstructorInvocationOnly(that);
 1473    }
 1474  0 public Void forComplexSuperConstructorInvocation(ComplexSuperConstructorInvocation that) {
 1475  0 forComplexSuperConstructorInvocationDoFirst(that);
 1476  0 if (prune(that)) return null;
 1477  0 that.getEnclosing().visit(this);
 1478  0 that.getArguments().visit(this);
 1479  0 return forComplexSuperConstructorInvocationOnly(that);
 1480    }
 1481  0 public Void forClassLiteral(ClassLiteral that) {
 1482  0 forClassLiteralDoFirst(that);
 1483  0 if (prune(that)) return null;
 1484  0 that.getType().visit(this);
 1485  0 return forClassLiteralOnly(that);
 1486    }
 1487  2 public Void forArrayAccess(ArrayAccess that) {
 1488  2 forArrayAccessDoFirst(that);
 1489  0 if (prune(that)) return null;
 1490  2 that.getArray().visit(this);
 1491  2 that.getIndex().visit(this);
 1492  2 return forArrayAccessOnly(that);
 1493    }
 1494  10 public Void forParenthesized(Parenthesized that) {
 1495  10 forParenthesizedDoFirst(that);
 1496  0 if (prune(that)) return null;
 1497  10 that.getValue().visit(this);
 1498  10 return forParenthesizedOnly(that);
 1499    }
 1500  1 public Void forEmptyExpression(EmptyExpression that) {
 1501  1 forEmptyExpressionDoFirst(that);
 1502  0 if (prune(that)) return null;
 1503  1 return forEmptyExpressionOnly(that);
 1504    }
 1505    // public void forEmptyDimensionExpression(EmptyDimensionExpression that) {
 1506    // forEmptyDimensionExpressionDoFirst(that);
 1507    // if (prune(that)) return;
 1508    // forEmptyDimensionExpressionOnly(that);
 1509    // }
 1510   
 1511  474 public Void forBracedBody(BracedBody that) {
 1512  474 forBracedBodyDoFirst(that);
 1513  0 if (prune(that)) return null;
 1514  592 for (int i = 0; i < that.getStatements().length; i++) that.getStatements()[i].visit(this);
 1515  474 return forBracedBodyOnly(that);
 1516    }
 1517  16 public Void forUnbracedBody(UnbracedBody that) {
 1518  16 forUnbracedBodyDoFirst(that);
 1519  0 if (prune(that)) return null;
 1520  17 for (int i = 0; i < that.getStatements().length; i++) that.getStatements()[i].visit(this);
 1521  16 return forUnbracedBodyOnly(that);
 1522    }
 1523  102 public Void forParenthesizedExpressionList(ParenthesizedExpressionList that) {
 1524  102 forParenthesizedExpressionListDoFirst(that);
 1525  0 if (prune(that)) return null;
 1526  77 for (int i = 0; i < that.getExpressions().length; i++) that.getExpressions()[i].visit(this);
 1527  102 return forParenthesizedExpressionListOnly(that);
 1528    }
 1529  7 public Void forUnparenthesizedExpressionList(UnparenthesizedExpressionList that) {
 1530  7 forUnparenthesizedExpressionListDoFirst(that);
 1531  0 if (prune(that)) return null;
 1532  5 for (int i = 0; i < that.getExpressions().length; i++) that.getExpressions()[i].visit(this);
 1533  7 return forUnparenthesizedExpressionListOnly(that);
 1534    }
 1535  5 public Void forDimensionExpressionList(DimensionExpressionList that) {
 1536  5 forDimensionExpressionListDoFirst(that);
 1537  0 if (prune(that)) return null;
 1538  6 for (int i = 0; i < that.getExpressions().length; i++) that.getExpressions()[i].visit(this);
 1539  5 return forDimensionExpressionListOnly(that); }
 1540  0 public Void forEmptyForCondition(EmptyForCondition that) {
 1541  0 forEmptyForConditionDoFirst(that);
 1542  0 if (prune(that)) return null;
 1543  0 return forEmptyForConditionOnly(that);
 1544    }
 1545    /** This method is called by default from cases that do not override forCASEDoFirst. */
 1546  3531 protected Void defaultDoFirst(JExpressionIF that) { return null; }
 1547    /** This method is called by default from cases that do not override forCASEOnly. */
 1548  3811 protected Void defaultCase(JExpressionIF that) { return null; }
 1549  0 protected boolean prune(JExpressionIF that) { return true; }
 1550    }