edu.cmu.cs.crystal.internal
Class ControlFlowVisitor

java.lang.Object
  extended by org.eclipse.jdt.core.dom.ASTVisitor
      extended by edu.cmu.cs.crystal.internal.ControlFlowVisitor

public class ControlFlowVisitor
extends org.eclipse.jdt.core.dom.ASTVisitor

An ASTVisitor that traverses the ASTNode structure and connects ControlFlowNodes to form a control flow graph of the ASTNode.

Author:
David Dickey

Constructor Summary
ControlFlowVisitor(ControlFlowNode cfn)
           
 
Method Summary
 void performVisit()
          Carries out the visit to the stored node.
 void preVisit(org.eclipse.jdt.core.dom.ASTNode node)
          Called before performing a visit
 boolean visit(org.eclipse.jdt.core.dom.AnnotationTypeDeclaration node)
          AnnotationTypeDeclaration This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.AnnotationTypeMemberDeclaration node)
          AnnotationTypeMemberDeclaration This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.AnonymousClassDeclaration node)
          AnonymousClassDeclaration This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.ArrayAccess node)
          Example: myArray[0]
 boolean visit(org.eclipse.jdt.core.dom.ArrayCreation node)
          Example: new int[10]{1,2,3,4,5,6,7,8,9,10};
 boolean visit(org.eclipse.jdt.core.dom.ArrayInitializer node)
          Example: {1.2f, 2.3f, 3.4f}
 boolean visit(org.eclipse.jdt.core.dom.ArrayType node)
          ArrayType This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.AssertStatement node)
          Example: assert (x != 0) : "x is " + x + " which is not 0";
 boolean visit(org.eclipse.jdt.core.dom.Assignment node)
          Example: x = y
 boolean visit(org.eclipse.jdt.core.dom.Block node)
          Example: { int x = 1; x++; } or {}
 boolean visit(org.eclipse.jdt.core.dom.BlockComment node)
          BlockComment This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.BooleanLiteral node)
          BooleanLiteral This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.BreakStatement node)
          Example: break; or break ToHere;
 boolean visit(org.eclipse.jdt.core.dom.CastExpression node)
          Example: (Square) myShape
 boolean visit(org.eclipse.jdt.core.dom.CatchClause node)
          Example: catch (RuntimeException re) { System.out.println("RE: " + re); }
 boolean visit(org.eclipse.jdt.core.dom.CharacterLiteral node)
          CharacterLiteral This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.ClassInstanceCreation node)
          Example: new MyClass(5, "hello");
 boolean visit(org.eclipse.jdt.core.dom.CompilationUnit node)
          CompilationUnit This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.ConditionalExpression node)
          Example: (isTrue) ? "yep" : "nope";
 boolean visit(org.eclipse.jdt.core.dom.ConstructorInvocation node)
          Example: this(1, 23, 2005);
 boolean visit(org.eclipse.jdt.core.dom.ContinueStatement node)
          Example: continue; or continue ToHere;
 boolean visit(org.eclipse.jdt.core.dom.DoStatement node)
          Example: do { int x = 5; method(x++); } while(x < 10);
 boolean visit(org.eclipse.jdt.core.dom.EmptyStatement node)
          Example: ;
 boolean visit(org.eclipse.jdt.core.dom.EnhancedForStatement node)
           
 boolean visit(org.eclipse.jdt.core.dom.EnumConstantDeclaration node)
          Example: enum MyEnum { CONST_1, CONST_2, CONST_2 }
 boolean visit(org.eclipse.jdt.core.dom.EnumDeclaration node)
          Example: enum MyEnum { CONST_1, CONST_2 }
 boolean visit(org.eclipse.jdt.core.dom.ExpressionStatement node)
          Example: x = 5;
 boolean visit(org.eclipse.jdt.core.dom.FieldAccess node)
          Example: x = this.myField;
 boolean visit(org.eclipse.jdt.core.dom.FieldDeclaration node)
          Example: protected int myField = 18;
 boolean visit(org.eclipse.jdt.core.dom.ForStatement node)
           
 boolean visit(org.eclipse.jdt.core.dom.IfStatement node)
          Example: if(bool) x = 5; else x = 7;
 boolean visit(org.eclipse.jdt.core.dom.ImportDeclaration node)
          ImportDeclaration This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.InfixExpression node)
          Example: "Hello " + "World " + "How " + "Are " + "You?" left + right + extOp1 + extOp2 + extOp3
 boolean visit(org.eclipse.jdt.core.dom.Initializer node)
           
 boolean visit(org.eclipse.jdt.core.dom.InstanceofExpression node)
          Example: myVar instanceof MyClass
 boolean visit(org.eclipse.jdt.core.dom.Javadoc node)
          Javadoc This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.LabeledStatement node)
          Example: MyLabel: { int x = 5; }
 boolean visit(org.eclipse.jdt.core.dom.LineComment node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.MarkerAnnotation node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.MemberRef node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.MemberValuePair node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.MethodDeclaration node)
          Example: public void myMethod(int x) { return x * x; }
 boolean visit(org.eclipse.jdt.core.dom.MethodInvocation node)
          Example: var.getRef.myMethod(1, "two", true);
 boolean visit(org.eclipse.jdt.core.dom.MethodRef node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.MethodRefParameter node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.Modifier node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.NormalAnnotation node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.NullLiteral node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.NumberLiteral node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.PackageDeclaration node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.ParameterizedType node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.ParenthesizedExpression node)
          Example: (5 + 3)
 boolean visit(org.eclipse.jdt.core.dom.PostfixExpression node)
          Example: x++;
 boolean visit(org.eclipse.jdt.core.dom.PrefixExpression node)
          Example: ++x;
 boolean visit(org.eclipse.jdt.core.dom.PrimitiveType node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.QualifiedName node)
          Example: (2 in 1) java.lang.System.out.println("Hello");
 boolean visit(org.eclipse.jdt.core.dom.QualifiedType node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.ReturnStatement node)
          Example: return "goodbye";
 boolean visit(org.eclipse.jdt.core.dom.SimpleName node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.SimpleType node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.SingleMemberAnnotation node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.SingleVariableDeclaration node)
           
 boolean visit(org.eclipse.jdt.core.dom.StringLiteral node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.SuperConstructorInvocation node)
          Example: super(arg1);
 boolean visit(org.eclipse.jdt.core.dom.SuperFieldAccess node)
           
 boolean visit(org.eclipse.jdt.core.dom.SuperMethodInvocation node)
           
 boolean visit(org.eclipse.jdt.core.dom.SwitchCase node)
           
 boolean visit(org.eclipse.jdt.core.dom.SwitchStatement node)
           
 boolean visit(org.eclipse.jdt.core.dom.SynchronizedStatement node)
          Example: synchronized (myVar) { myMethod(); }
 boolean visit(org.eclipse.jdt.core.dom.TagElement node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.TextElement node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.ThisExpression node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.ThrowStatement node)
          The throw statement will either be caught locally or be thrown up the stack (ie leave the method).
 boolean visit(org.eclipse.jdt.core.dom.TryStatement node)
          Example: try { int x; }
 boolean visit(org.eclipse.jdt.core.dom.TypeDeclaration node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.TypeDeclarationStatement node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.TypeLiteral node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.TypeParameter node)
          This node does not influence control flow.
 boolean visit(org.eclipse.jdt.core.dom.VariableDeclarationExpression node)
           
 boolean visit(org.eclipse.jdt.core.dom.VariableDeclarationFragment node)
          Example: int a[] = {5, 4}, x = 5, y; VariableDeclarationFragments: (a[] = {5, 4}), (x = 5), & (y)
 boolean visit(org.eclipse.jdt.core.dom.VariableDeclarationStatement node)
           
 boolean visit(org.eclipse.jdt.core.dom.WhileStatement node)
           
 boolean visit(org.eclipse.jdt.core.dom.WildcardType node)
          This node does not influence control flow.
 
Methods inherited from class org.eclipse.jdt.core.dom.ASTVisitor
endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, postVisit
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ControlFlowVisitor

public ControlFlowVisitor(ControlFlowNode cfn)
Method Detail

performVisit

public void performVisit()
Carries out the visit to the stored node.


preVisit

public void preVisit(org.eclipse.jdt.core.dom.ASTNode node)
Called before performing a visit

Overrides:
preVisit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.AnnotationTypeDeclaration node)
AnnotationTypeDeclaration This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.AnnotationTypeMemberDeclaration node)
AnnotationTypeMemberDeclaration This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.AnonymousClassDeclaration node)
AnonymousClassDeclaration This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ArrayAccess node)
Example: myArray[0]

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ArrayCreation node)
Example: new int[10]{1,2,3,4,5,6,7,8,9,10};

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ArrayInitializer node)
Example: {1.2f, 2.3f, 3.4f}

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ArrayType node)
ArrayType This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.AssertStatement node)
Example: assert (x != 0) : "x is " + x + " which is not 0";

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.Assignment node)
Example: x = y

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.Block node)
Example: { int x = 1; x++; } or {}

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.BlockComment node)
BlockComment This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.BooleanLiteral node)
BooleanLiteral This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.BreakStatement node)
Example: break; or break ToHere;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.CastExpression node)
Example: (Square) myShape

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.CatchClause node)
Example: catch (RuntimeException re) { System.out.println("RE: " + re); }

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.CharacterLiteral node)
CharacterLiteral This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ClassInstanceCreation node)
Example: new MyClass(5, "hello");

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.CompilationUnit node)
CompilationUnit This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ConditionalExpression node)
Example: (isTrue) ? "yep" : "nope";

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ConstructorInvocation node)
Example: this(1, 23, 2005);

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ContinueStatement node)
Example: continue; or continue ToHere;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.DoStatement node)
Example: do { int x = 5; method(x++); } while(x < 10);

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.EmptyStatement node)
Example: ;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.EnhancedForStatement node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.EnumConstantDeclaration node)
Example: enum MyEnum { CONST_1, CONST_2, CONST_2 }

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.EnumDeclaration node)
Example: enum MyEnum { CONST_1, CONST_2 }

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ExpressionStatement node)
Example: x = 5;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.FieldAccess node)
Example: x = this.myField;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.FieldDeclaration node)
Example: protected int myField = 18;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ForStatement node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.IfStatement node)
Example: if(bool) x = 5; else x = 7;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ImportDeclaration node)
ImportDeclaration This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.InfixExpression node)
Example: "Hello " + "World " + "How " + "Are " + "You?" left + right + extOp1 + extOp2 + extOp3

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.Initializer node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.InstanceofExpression node)
Example: myVar instanceof MyClass

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.Javadoc node)
Javadoc This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.LabeledStatement node)
Example: MyLabel: { int x = 5; }

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.LineComment node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.MarkerAnnotation node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.MemberRef node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.MemberValuePair node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.MethodDeclaration node)
Example: public void myMethod(int x) { return x * x; }

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.MethodInvocation node)
Example: var.getRef.myMethod(1, "two", true);

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.MethodRef node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.MethodRefParameter node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.Modifier node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.NormalAnnotation node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.NullLiteral node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.NumberLiteral node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.PackageDeclaration node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ParameterizedType node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ParenthesizedExpression node)
Example: (5 + 3)

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.PostfixExpression node)
Example: x++;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.PrefixExpression node)
Example: ++x;

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.PrimitiveType node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.QualifiedName node)
Example: (2 in 1) java.lang.System.out.println("Hello");

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.QualifiedType node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ReturnStatement node)
Example: return "goodbye";

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SimpleName node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SimpleType node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SingleMemberAnnotation node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SingleVariableDeclaration node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.StringLiteral node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SuperConstructorInvocation node)
Example: super(arg1);

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SuperFieldAccess node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SuperMethodInvocation node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SwitchCase node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SwitchStatement node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.SynchronizedStatement node)
Example: synchronized (myVar) { myMethod(); }

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.TagElement node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.TextElement node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ThisExpression node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.ThrowStatement node)
The throw statement will either be caught locally or be thrown up the stack (ie leave the method).

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.TryStatement node)
Example: try { int x; }

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.TypeDeclaration node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.TypeDeclarationStatement node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.TypeLiteral node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.TypeParameter node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.VariableDeclarationExpression node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.VariableDeclarationFragment node)
Example: int a[] = {5, 4}, x = 5, y; VariableDeclarationFragments: (a[] = {5, 4}), (x = 5), & (y)

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.VariableDeclarationStatement node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.WhileStatement node)
Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor

visit

public boolean visit(org.eclipse.jdt.core.dom.WildcardType node)
This node does not influence control flow.

Overrides:
visit in class org.eclipse.jdt.core.dom.ASTVisitor