1 /******************************************************************************* 2 * Copyright (c) 2000, 2003 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Common Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/cpl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package net.sourceforge.phpdt.internal.compiler; 12 13 import net.sourceforge.phpdt.core.compiler.IProblem; 14 import net.sourceforge.phpdt.internal.compiler.ast.AND_AND_Expression; 15 import net.sourceforge.phpdt.internal.compiler.ast.AllocationExpression; 16 import net.sourceforge.phpdt.internal.compiler.ast.AnonymousLocalTypeDeclaration; 17 import net.sourceforge.phpdt.internal.compiler.ast.Argument; 18 import net.sourceforge.phpdt.internal.compiler.ast.ArrayAllocationExpression; 19 import net.sourceforge.phpdt.internal.compiler.ast.ArrayInitializer; 20 import net.sourceforge.phpdt.internal.compiler.ast.ArrayQualifiedTypeReference; 21 import net.sourceforge.phpdt.internal.compiler.ast.ArrayReference; 22 import net.sourceforge.phpdt.internal.compiler.ast.ArrayTypeReference; 23 import net.sourceforge.phpdt.internal.compiler.ast.AssertStatement; 24 import net.sourceforge.phpdt.internal.compiler.ast.Assignment; 25 import net.sourceforge.phpdt.internal.compiler.ast.BinaryExpression; 26 import net.sourceforge.phpdt.internal.compiler.ast.Block; 27 import net.sourceforge.phpdt.internal.compiler.ast.BreakStatement; 28 import net.sourceforge.phpdt.internal.compiler.ast.CaseStatement; 29 import net.sourceforge.phpdt.internal.compiler.ast.CastExpression; 30 import net.sourceforge.phpdt.internal.compiler.ast.Clinit; 31 import net.sourceforge.phpdt.internal.compiler.ast.CompilationUnitDeclaration; 32 import net.sourceforge.phpdt.internal.compiler.ast.CompoundAssignment; 33 import net.sourceforge.phpdt.internal.compiler.ast.ConditionalExpression; 34 import net.sourceforge.phpdt.internal.compiler.ast.ConstructorDeclaration; 35 import net.sourceforge.phpdt.internal.compiler.ast.ContinueStatement; 36 import net.sourceforge.phpdt.internal.compiler.ast.DefaultCase; 37 import net.sourceforge.phpdt.internal.compiler.ast.DoStatement; 38 import net.sourceforge.phpdt.internal.compiler.ast.DoubleLiteral; 39 import net.sourceforge.phpdt.internal.compiler.ast.EmptyStatement; 40 import net.sourceforge.phpdt.internal.compiler.ast.EqualExpression; 41 import net.sourceforge.phpdt.internal.compiler.ast.ExplicitConstructorCall; 42 import net.sourceforge.phpdt.internal.compiler.ast.ExtendedStringLiteral; 43 import net.sourceforge.phpdt.internal.compiler.ast.FalseLiteral; 44 import net.sourceforge.phpdt.internal.compiler.ast.FieldDeclaration; 45 import net.sourceforge.phpdt.internal.compiler.ast.FieldReference; 46 import net.sourceforge.phpdt.internal.compiler.ast.FloatLiteral; 47 import net.sourceforge.phpdt.internal.compiler.ast.ForStatement; 48 import net.sourceforge.phpdt.internal.compiler.ast.IfStatement; 49 import net.sourceforge.phpdt.internal.compiler.ast.ImportReference; 50 import net.sourceforge.phpdt.internal.compiler.ast.Initializer; 51 import net.sourceforge.phpdt.internal.compiler.ast.InstanceOfExpression; 52 import net.sourceforge.phpdt.internal.compiler.ast.IntLiteral; 53 import net.sourceforge.phpdt.internal.compiler.ast.LabeledStatement; 54 import net.sourceforge.phpdt.internal.compiler.ast.LocalDeclaration; 55 import net.sourceforge.phpdt.internal.compiler.ast.LocalTypeDeclaration; 56 import net.sourceforge.phpdt.internal.compiler.ast.LongLiteral; 57 import net.sourceforge.phpdt.internal.compiler.ast.MemberTypeDeclaration; 58 import net.sourceforge.phpdt.internal.compiler.ast.MessageSend; 59 import net.sourceforge.phpdt.internal.compiler.ast.MethodDeclaration; 60 import net.sourceforge.phpdt.internal.compiler.ast.NullLiteral; 61 import net.sourceforge.phpdt.internal.compiler.ast.OR_OR_Expression; 62 import net.sourceforge.phpdt.internal.compiler.ast.PostfixExpression; 63 import net.sourceforge.phpdt.internal.compiler.ast.PrefixExpression; 64 import net.sourceforge.phpdt.internal.compiler.ast.QualifiedAllocationExpression; 65 import net.sourceforge.phpdt.internal.compiler.ast.QualifiedNameReference; 66 import net.sourceforge.phpdt.internal.compiler.ast.QualifiedSuperReference; 67 import net.sourceforge.phpdt.internal.compiler.ast.QualifiedThisReference; 68 import net.sourceforge.phpdt.internal.compiler.ast.QualifiedTypeReference; 69 import net.sourceforge.phpdt.internal.compiler.ast.ReturnStatement; 70 import net.sourceforge.phpdt.internal.compiler.ast.SingleNameReference; 71 import net.sourceforge.phpdt.internal.compiler.ast.SingleTypeReference; 72 import net.sourceforge.phpdt.internal.compiler.ast.StringLiteral; 73 import net.sourceforge.phpdt.internal.compiler.ast.SuperReference; 74 import net.sourceforge.phpdt.internal.compiler.ast.SwitchStatement; 75 import net.sourceforge.phpdt.internal.compiler.ast.ThisReference; 76 import net.sourceforge.phpdt.internal.compiler.ast.ThrowStatement; 77 import net.sourceforge.phpdt.internal.compiler.ast.TrueLiteral; 78 import net.sourceforge.phpdt.internal.compiler.ast.TryStatement; 79 import net.sourceforge.phpdt.internal.compiler.ast.TypeDeclaration; 80 import net.sourceforge.phpdt.internal.compiler.ast.UnaryExpression; 81 import net.sourceforge.phpdt.internal.compiler.ast.WhileStatement; 82 import net.sourceforge.phpdt.internal.compiler.lookup.BlockScope; 83 import net.sourceforge.phpdt.internal.compiler.lookup.ClassScope; 84 import net.sourceforge.phpdt.internal.compiler.lookup.CompilationUnitScope; 85 import net.sourceforge.phpdt.internal.compiler.lookup.MethodScope; 86 87 /** 88 * A visitor interface for interating through the parse tree. 89 */ 90 public interface IAbstractSyntaxTreeVisitor { acceptProblem(IProblem problem)91 void acceptProblem(IProblem problem); 92 endVisit(AllocationExpression allocationExpression, BlockScope scope)93 void endVisit(AllocationExpression allocationExpression, BlockScope scope); 94 endVisit(AND_AND_Expression and_and_Expression, BlockScope scope)95 void endVisit(AND_AND_Expression and_and_Expression, BlockScope scope); 96 endVisit(AnonymousLocalTypeDeclaration anonymousTypeDeclaration, BlockScope scope)97 void endVisit(AnonymousLocalTypeDeclaration anonymousTypeDeclaration, 98 BlockScope scope); 99 endVisit(Argument argument, BlockScope scope)100 void endVisit(Argument argument, BlockScope scope); 101 endVisit(ArrayAllocationExpression arrayAllocationExpression, BlockScope scope)102 void endVisit(ArrayAllocationExpression arrayAllocationExpression, 103 BlockScope scope); 104 endVisit(ArrayInitializer arrayInitializer, BlockScope scope)105 void endVisit(ArrayInitializer arrayInitializer, BlockScope scope); 106 endVisit(ArrayQualifiedTypeReference arrayQualifiedTypeReference, BlockScope scope)107 void endVisit(ArrayQualifiedTypeReference arrayQualifiedTypeReference, 108 BlockScope scope); 109 endVisit(ArrayQualifiedTypeReference arrayQualifiedTypeReference, ClassScope scope)110 void endVisit(ArrayQualifiedTypeReference arrayQualifiedTypeReference, 111 ClassScope scope); 112 endVisit(ArrayReference arrayReference, BlockScope scope)113 void endVisit(ArrayReference arrayReference, BlockScope scope); 114 endVisit(ArrayTypeReference arrayTypeReference, BlockScope scope)115 void endVisit(ArrayTypeReference arrayTypeReference, BlockScope scope); 116 endVisit(ArrayTypeReference arrayTypeReference, ClassScope scope)117 void endVisit(ArrayTypeReference arrayTypeReference, ClassScope scope); 118 endVisit(AssertStatement assertStatement, BlockScope scope)119 void endVisit(AssertStatement assertStatement, BlockScope scope); 120 endVisit(Assignment assignment, BlockScope scope)121 void endVisit(Assignment assignment, BlockScope scope); 122 endVisit(BinaryExpression binaryExpression, BlockScope scope)123 void endVisit(BinaryExpression binaryExpression, BlockScope scope); 124 endVisit(Block block, BlockScope scope)125 void endVisit(Block block, BlockScope scope); 126 endVisit(BreakStatement breakStatement, BlockScope scope)127 void endVisit(BreakStatement breakStatement, BlockScope scope); 128 endVisit(CaseStatement caseStatement, BlockScope scope)129 void endVisit(CaseStatement caseStatement, BlockScope scope); 130 endVisit(CastExpression castExpression, BlockScope scope)131 void endVisit(CastExpression castExpression, BlockScope scope); 132 133 // void endVisit(CharLiteral charLiteral, BlockScope scope); 134 // void endVisit(ClassLiteralAccess classLiteral, BlockScope scope); endVisit(Clinit clinit, ClassScope scope)135 void endVisit(Clinit clinit, ClassScope scope); 136 endVisit(CompilationUnitDeclaration compilationUnitDeclaration, CompilationUnitScope scope)137 void endVisit(CompilationUnitDeclaration compilationUnitDeclaration, 138 CompilationUnitScope scope); 139 endVisit(CompoundAssignment compoundAssignment, BlockScope scope)140 void endVisit(CompoundAssignment compoundAssignment, BlockScope scope); 141 endVisit(ConditionalExpression conditionalExpression, BlockScope scope)142 void endVisit(ConditionalExpression conditionalExpression, BlockScope scope); 143 endVisit(ConstructorDeclaration constructorDeclaration, ClassScope scope)144 void endVisit(ConstructorDeclaration constructorDeclaration, 145 ClassScope scope); 146 endVisit(ContinueStatement continueStatement, BlockScope scope)147 void endVisit(ContinueStatement continueStatement, BlockScope scope); 148 endVisit(DefaultCase defaultCaseStatement, BlockScope scope)149 void endVisit(DefaultCase defaultCaseStatement, BlockScope scope); 150 endVisit(DoStatement doStatement, BlockScope scope)151 void endVisit(DoStatement doStatement, BlockScope scope); 152 endVisit(DoubleLiteral doubleLiteral, BlockScope scope)153 void endVisit(DoubleLiteral doubleLiteral, BlockScope scope); 154 endVisit(EqualExpression equalExpression, BlockScope scope)155 void endVisit(EqualExpression equalExpression, BlockScope scope); 156 endVisit(EmptyStatement statement, BlockScope scope)157 void endVisit(EmptyStatement statement, BlockScope scope); 158 endVisit(ExplicitConstructorCall explicitConstructor, BlockScope scope)159 void endVisit(ExplicitConstructorCall explicitConstructor, BlockScope scope); 160 endVisit(ExtendedStringLiteral extendedStringLiteral, BlockScope scope)161 void endVisit(ExtendedStringLiteral extendedStringLiteral, BlockScope scope); 162 endVisit(FalseLiteral falseLiteral, BlockScope scope)163 void endVisit(FalseLiteral falseLiteral, BlockScope scope); 164 endVisit(FieldDeclaration fieldDeclaration, MethodScope scope)165 void endVisit(FieldDeclaration fieldDeclaration, MethodScope scope); 166 endVisit(FieldReference fieldReference, BlockScope scope)167 void endVisit(FieldReference fieldReference, BlockScope scope); 168 endVisit(FloatLiteral floatLiteral, BlockScope scope)169 void endVisit(FloatLiteral floatLiteral, BlockScope scope); 170 endVisit(ForStatement forStatement, BlockScope scope)171 void endVisit(ForStatement forStatement, BlockScope scope); 172 endVisit(IfStatement ifStatement, BlockScope scope)173 void endVisit(IfStatement ifStatement, BlockScope scope); 174 endVisit(ImportReference importRef, CompilationUnitScope scope)175 void endVisit(ImportReference importRef, CompilationUnitScope scope); 176 endVisit(Initializer initializer, MethodScope scope)177 void endVisit(Initializer initializer, MethodScope scope); 178 endVisit(InstanceOfExpression instanceOfExpression, BlockScope scope)179 void endVisit(InstanceOfExpression instanceOfExpression, BlockScope scope); 180 endVisit(IntLiteral intLiteral, BlockScope scope)181 void endVisit(IntLiteral intLiteral, BlockScope scope); 182 endVisit(LabeledStatement labeledStatement, BlockScope scope)183 void endVisit(LabeledStatement labeledStatement, BlockScope scope); 184 endVisit(LocalDeclaration localDeclaration, BlockScope scope)185 void endVisit(LocalDeclaration localDeclaration, BlockScope scope); 186 endVisit(LocalTypeDeclaration localTypeDeclaration, BlockScope scope)187 void endVisit(LocalTypeDeclaration localTypeDeclaration, BlockScope scope); 188 endVisit(LongLiteral longLiteral, BlockScope scope)189 void endVisit(LongLiteral longLiteral, BlockScope scope); 190 endVisit(MemberTypeDeclaration memberTypeDeclaration, ClassScope scope)191 void endVisit(MemberTypeDeclaration memberTypeDeclaration, ClassScope scope); 192 endVisit(MessageSend messageSend, BlockScope scope)193 void endVisit(MessageSend messageSend, BlockScope scope); 194 endVisit(MethodDeclaration methodDeclaration, ClassScope scope)195 void endVisit(MethodDeclaration methodDeclaration, ClassScope scope); 196 endVisit(NullLiteral nullLiteral, BlockScope scope)197 void endVisit(NullLiteral nullLiteral, BlockScope scope); 198 endVisit(OR_OR_Expression or_or_Expression, BlockScope scope)199 void endVisit(OR_OR_Expression or_or_Expression, BlockScope scope); 200 endVisit(PostfixExpression postfixExpression, BlockScope scope)201 void endVisit(PostfixExpression postfixExpression, BlockScope scope); 202 endVisit(PrefixExpression prefixExpression, BlockScope scope)203 void endVisit(PrefixExpression prefixExpression, BlockScope scope); 204 endVisit(QualifiedAllocationExpression qualifiedAllocationExpression, BlockScope scope)205 void endVisit(QualifiedAllocationExpression qualifiedAllocationExpression, 206 BlockScope scope); 207 endVisit(QualifiedNameReference qualifiedNameReference, BlockScope scope)208 void endVisit(QualifiedNameReference qualifiedNameReference, 209 BlockScope scope); 210 endVisit(QualifiedSuperReference qualifiedSuperReference, BlockScope scope)211 void endVisit(QualifiedSuperReference qualifiedSuperReference, 212 BlockScope scope); 213 endVisit(QualifiedThisReference qualifiedThisReference, BlockScope scope)214 void endVisit(QualifiedThisReference qualifiedThisReference, 215 BlockScope scope); 216 endVisit(QualifiedTypeReference qualifiedTypeReference, BlockScope scope)217 void endVisit(QualifiedTypeReference qualifiedTypeReference, 218 BlockScope scope); 219 endVisit(QualifiedTypeReference qualifiedTypeReference, ClassScope scope)220 void endVisit(QualifiedTypeReference qualifiedTypeReference, 221 ClassScope scope); 222 endVisit(ReturnStatement returnStatement, BlockScope scope)223 void endVisit(ReturnStatement returnStatement, BlockScope scope); 224 endVisit(SingleNameReference singleNameReference, BlockScope scope)225 void endVisit(SingleNameReference singleNameReference, BlockScope scope); 226 endVisit(SingleTypeReference singleTypeReference, BlockScope scope)227 void endVisit(SingleTypeReference singleTypeReference, BlockScope scope); 228 endVisit(SingleTypeReference singleTypeReference, ClassScope scope)229 void endVisit(SingleTypeReference singleTypeReference, ClassScope scope); 230 endVisit(StringLiteral stringLiteral, BlockScope scope)231 void endVisit(StringLiteral stringLiteral, BlockScope scope); 232 endVisit(SuperReference superReference, BlockScope scope)233 void endVisit(SuperReference superReference, BlockScope scope); 234 endVisit(SwitchStatement switchStatement, BlockScope scope)235 void endVisit(SwitchStatement switchStatement, BlockScope scope); 236 237 // void endVisit(SynchronizedStatement synchronizedStatement, BlockScope 238 // scope); endVisit(ThisReference thisReference, BlockScope scope)239 void endVisit(ThisReference thisReference, BlockScope scope); 240 endVisit(ThrowStatement throwStatement, BlockScope scope)241 void endVisit(ThrowStatement throwStatement, BlockScope scope); 242 endVisit(TrueLiteral trueLiteral, BlockScope scope)243 void endVisit(TrueLiteral trueLiteral, BlockScope scope); 244 endVisit(TryStatement tryStatement, BlockScope scope)245 void endVisit(TryStatement tryStatement, BlockScope scope); 246 endVisit(TypeDeclaration typeDeclaration, CompilationUnitScope scope)247 void endVisit(TypeDeclaration typeDeclaration, CompilationUnitScope scope); 248 endVisit(UnaryExpression unaryExpression, BlockScope scope)249 void endVisit(UnaryExpression unaryExpression, BlockScope scope); 250 endVisit(WhileStatement whileStatement, BlockScope scope)251 void endVisit(WhileStatement whileStatement, BlockScope scope); 252 visit(AllocationExpression allocationExpression, BlockScope scope)253 boolean visit(AllocationExpression allocationExpression, BlockScope scope); 254 visit(AND_AND_Expression and_and_Expression, BlockScope scope)255 boolean visit(AND_AND_Expression and_and_Expression, BlockScope scope); 256 visit(AnonymousLocalTypeDeclaration anonymousTypeDeclaration, BlockScope scope)257 boolean visit(AnonymousLocalTypeDeclaration anonymousTypeDeclaration, 258 BlockScope scope); 259 visit(Argument argument, BlockScope scope)260 boolean visit(Argument argument, BlockScope scope); 261 visit(ArrayAllocationExpression arrayAllocationExpression, BlockScope scope)262 boolean visit(ArrayAllocationExpression arrayAllocationExpression, 263 BlockScope scope); 264 visit(ArrayInitializer arrayInitializer, BlockScope scope)265 boolean visit(ArrayInitializer arrayInitializer, BlockScope scope); 266 visit(ArrayQualifiedTypeReference arrayQualifiedTypeReference, BlockScope scope)267 boolean visit(ArrayQualifiedTypeReference arrayQualifiedTypeReference, 268 BlockScope scope); 269 visit(ArrayQualifiedTypeReference arrayQualifiedTypeReference, ClassScope scope)270 boolean visit(ArrayQualifiedTypeReference arrayQualifiedTypeReference, 271 ClassScope scope); 272 visit(ArrayReference arrayReference, BlockScope scope)273 boolean visit(ArrayReference arrayReference, BlockScope scope); 274 visit(ArrayTypeReference arrayTypeReference, BlockScope scope)275 boolean visit(ArrayTypeReference arrayTypeReference, BlockScope scope); 276 visit(ArrayTypeReference arrayTypeReference, ClassScope scope)277 boolean visit(ArrayTypeReference arrayTypeReference, ClassScope scope); 278 visit(AssertStatement assertStatement, BlockScope scope)279 boolean visit(AssertStatement assertStatement, BlockScope scope); 280 visit(Assignment assignment, BlockScope scope)281 boolean visit(Assignment assignment, BlockScope scope); 282 visit(BinaryExpression binaryExpression, BlockScope scope)283 boolean visit(BinaryExpression binaryExpression, BlockScope scope); 284 visit(Block block, BlockScope scope)285 boolean visit(Block block, BlockScope scope); 286 visit(BreakStatement breakStatement, BlockScope scope)287 boolean visit(BreakStatement breakStatement, BlockScope scope); 288 visit(CaseStatement caseStatement, BlockScope scope)289 boolean visit(CaseStatement caseStatement, BlockScope scope); 290 visit(CastExpression castExpression, BlockScope scope)291 boolean visit(CastExpression castExpression, BlockScope scope); 292 293 // boolean visit(CharLiteral charLiteral, BlockScope scope); 294 // boolean visit(ClassLiteralAccess classLiteral, BlockScope scope); visit(Clinit clinit, ClassScope scope)295 boolean visit(Clinit clinit, ClassScope scope); 296 visit(CompilationUnitDeclaration compilationUnitDeclaration, CompilationUnitScope scope)297 boolean visit(CompilationUnitDeclaration compilationUnitDeclaration, 298 CompilationUnitScope scope); 299 visit(CompoundAssignment compoundAssignment, BlockScope scope)300 boolean visit(CompoundAssignment compoundAssignment, BlockScope scope); 301 visit(ConditionalExpression conditionalExpression, BlockScope scope)302 boolean visit(ConditionalExpression conditionalExpression, BlockScope scope); 303 visit(ConstructorDeclaration constructorDeclaration, ClassScope scope)304 boolean visit(ConstructorDeclaration constructorDeclaration, 305 ClassScope scope); 306 visit(ContinueStatement continueStatement, BlockScope scope)307 boolean visit(ContinueStatement continueStatement, BlockScope scope); 308 visit(DefaultCase defaultCaseStatement, BlockScope scope)309 boolean visit(DefaultCase defaultCaseStatement, BlockScope scope); 310 visit(DoStatement doStatement, BlockScope scope)311 boolean visit(DoStatement doStatement, BlockScope scope); 312 visit(DoubleLiteral doubleLiteral, BlockScope scope)313 boolean visit(DoubleLiteral doubleLiteral, BlockScope scope); 314 visit(EqualExpression equalExpression, BlockScope scope)315 boolean visit(EqualExpression equalExpression, BlockScope scope); 316 visit(EmptyStatement statement, BlockScope scope)317 boolean visit(EmptyStatement statement, BlockScope scope); 318 visit(ExplicitConstructorCall explicitConstructor, BlockScope scope)319 boolean visit(ExplicitConstructorCall explicitConstructor, BlockScope scope); 320 visit(ExtendedStringLiteral extendedStringLiteral, BlockScope scope)321 boolean visit(ExtendedStringLiteral extendedStringLiteral, BlockScope scope); 322 visit(FalseLiteral falseLiteral, BlockScope scope)323 boolean visit(FalseLiteral falseLiteral, BlockScope scope); 324 visit(FieldDeclaration fieldDeclaration, MethodScope scope)325 boolean visit(FieldDeclaration fieldDeclaration, MethodScope scope); 326 visit(FieldReference fieldReference, BlockScope scope)327 boolean visit(FieldReference fieldReference, BlockScope scope); 328 visit(FloatLiteral floatLiteral, BlockScope scope)329 boolean visit(FloatLiteral floatLiteral, BlockScope scope); 330 visit(ForStatement forStatement, BlockScope scope)331 boolean visit(ForStatement forStatement, BlockScope scope); 332 visit(IfStatement ifStatement, BlockScope scope)333 boolean visit(IfStatement ifStatement, BlockScope scope); 334 visit(ImportReference importRef, CompilationUnitScope scope)335 boolean visit(ImportReference importRef, CompilationUnitScope scope); 336 visit(Initializer initializer, MethodScope scope)337 boolean visit(Initializer initializer, MethodScope scope); 338 visit(InstanceOfExpression instanceOfExpression, BlockScope scope)339 boolean visit(InstanceOfExpression instanceOfExpression, BlockScope scope); 340 visit(IntLiteral intLiteral, BlockScope scope)341 boolean visit(IntLiteral intLiteral, BlockScope scope); 342 visit(LabeledStatement labeledStatement, BlockScope scope)343 boolean visit(LabeledStatement labeledStatement, BlockScope scope); 344 visit(LocalDeclaration localDeclaration, BlockScope scope)345 boolean visit(LocalDeclaration localDeclaration, BlockScope scope); 346 visit(LocalTypeDeclaration localTypeDeclaration, BlockScope scope)347 boolean visit(LocalTypeDeclaration localTypeDeclaration, BlockScope scope); 348 visit(LongLiteral longLiteral, BlockScope scope)349 boolean visit(LongLiteral longLiteral, BlockScope scope); 350 visit(MemberTypeDeclaration memberTypeDeclaration, ClassScope scope)351 boolean visit(MemberTypeDeclaration memberTypeDeclaration, ClassScope scope); 352 visit(MessageSend messageSend, BlockScope scope)353 boolean visit(MessageSend messageSend, BlockScope scope); 354 visit(MethodDeclaration methodDeclaration, ClassScope scope)355 boolean visit(MethodDeclaration methodDeclaration, ClassScope scope); 356 visit(NullLiteral nullLiteral, BlockScope scope)357 boolean visit(NullLiteral nullLiteral, BlockScope scope); 358 visit(OR_OR_Expression or_or_Expression, BlockScope scope)359 boolean visit(OR_OR_Expression or_or_Expression, BlockScope scope); 360 visit(PostfixExpression postfixExpression, BlockScope scope)361 boolean visit(PostfixExpression postfixExpression, BlockScope scope); 362 visit(PrefixExpression prefixExpression, BlockScope scope)363 boolean visit(PrefixExpression prefixExpression, BlockScope scope); 364 visit(QualifiedAllocationExpression qualifiedAllocationExpression, BlockScope scope)365 boolean visit(QualifiedAllocationExpression qualifiedAllocationExpression, 366 BlockScope scope); 367 visit(QualifiedNameReference qualifiedNameReference, BlockScope scope)368 boolean visit(QualifiedNameReference qualifiedNameReference, 369 BlockScope scope); 370 visit(QualifiedSuperReference qualifiedSuperReference, BlockScope scope)371 boolean visit(QualifiedSuperReference qualifiedSuperReference, 372 BlockScope scope); 373 visit(QualifiedThisReference qualifiedThisReference, BlockScope scope)374 boolean visit(QualifiedThisReference qualifiedThisReference, 375 BlockScope scope); 376 visit(QualifiedTypeReference qualifiedTypeReference, BlockScope scope)377 boolean visit(QualifiedTypeReference qualifiedTypeReference, 378 BlockScope scope); 379 visit(QualifiedTypeReference qualifiedTypeReference, ClassScope scope)380 boolean visit(QualifiedTypeReference qualifiedTypeReference, 381 ClassScope scope); 382 visit(ReturnStatement returnStatement, BlockScope scope)383 boolean visit(ReturnStatement returnStatement, BlockScope scope); 384 visit(SingleNameReference singleNameReference, BlockScope scope)385 boolean visit(SingleNameReference singleNameReference, BlockScope scope); 386 visit(SingleTypeReference singleTypeReference, BlockScope scope)387 boolean visit(SingleTypeReference singleTypeReference, BlockScope scope); 388 visit(SingleTypeReference singleTypeReference, ClassScope scope)389 boolean visit(SingleTypeReference singleTypeReference, ClassScope scope); 390 visit(StringLiteral stringLiteral, BlockScope scope)391 boolean visit(StringLiteral stringLiteral, BlockScope scope); 392 visit(SuperReference superReference, BlockScope scope)393 boolean visit(SuperReference superReference, BlockScope scope); 394 visit(SwitchStatement switchStatement, BlockScope scope)395 boolean visit(SwitchStatement switchStatement, BlockScope scope); 396 397 // boolean visit(SynchronizedStatement synchronizedStatement, BlockScope 398 // scope); visit(ThisReference thisReference, BlockScope scope)399 boolean visit(ThisReference thisReference, BlockScope scope); 400 visit(ThrowStatement throwStatement, BlockScope scope)401 boolean visit(ThrowStatement throwStatement, BlockScope scope); 402 visit(TrueLiteral trueLiteral, BlockScope scope)403 boolean visit(TrueLiteral trueLiteral, BlockScope scope); 404 visit(TryStatement tryStatement, BlockScope scope)405 boolean visit(TryStatement tryStatement, BlockScope scope); 406 visit(TypeDeclaration typeDeclaration, CompilationUnitScope scope)407 boolean visit(TypeDeclaration typeDeclaration, CompilationUnitScope scope); 408 visit(UnaryExpression unaryExpression, BlockScope scope)409 boolean visit(UnaryExpression unaryExpression, BlockScope scope); 410 visit(WhileStatement whileStatement, BlockScope scope)411 boolean visit(WhileStatement whileStatement, BlockScope scope); 412 } 413