soot.dava.internal.AST
Class ASTNode

java.lang.Object
  extended bysoot.tagkit.AbstractHost
      extended bysoot.AbstractUnit
          extended bysoot.dava.internal.AST.ASTNode
All Implemented Interfaces:
Context, Host, Serializable, Switchable, Unit
Direct Known Subclasses:
ASTLabeledNode, ASTMethodNode, ASTStatementSequenceNode

public abstract class ASTNode
extends AbstractUnit

See Also:
Serialized Form

Field Summary
static String NEWLINE
           
protected  List subBodies
           
static String TAB
           
 
Fields inherited from class soot.AbstractUnit
emptyList
 
Constructor Summary
ASTNode()
           
 
Method Summary
 void apply(Analysis a)
           
protected  String body_toString(List body)
           
protected  void body_toString(UnitPrinter up, List body)
           
 boolean branches()
          Returns true if execution after this statement does not necessarily continue at the following statement.
 boolean fallsThrough()
          Returns true if execution after this statement may continue at the following statement.
 List get_SubBodies()
           
abstract  void perform_Analysis(ASTAnalysis a)
           
protected  void perform_AnalysisOnSubBodies(ASTAnalysis a)
           
abstract  void toString(UnitPrinter up)
           
 
Methods inherited from class soot.AbstractUnit
addBoxPointingToThis, apply, clearUnitBoxes, clone, getBoxesPointingToThis, getDefBoxes, getUnitBoxes, getUseAndDefBoxes, getUseBoxes, redirectJumpsToThisTo, removeBoxPointingToThis
 
Methods inherited from class soot.tagkit.AbstractHost
addAllTagsOf, addTag, getTag, getTags, hasTag, removeAllTags, removeTag
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface soot.tagkit.Host
addAllTagsOf, addTag, getTag, getTags, hasTag, removeAllTags, removeTag
 

Field Detail

TAB

public static final String TAB
See Also:
Constant Field Values

NEWLINE

public static final String NEWLINE
See Also:
Constant Field Values

subBodies

protected List subBodies
Constructor Detail

ASTNode

public ASTNode()
Method Detail

toString

public abstract void toString(UnitPrinter up)

body_toString

protected void body_toString(UnitPrinter up,
                             List body)

body_toString

protected String body_toString(List body)

get_SubBodies

public List get_SubBodies()

perform_Analysis

public abstract void perform_Analysis(ASTAnalysis a)

perform_AnalysisOnSubBodies

protected void perform_AnalysisOnSubBodies(ASTAnalysis a)

fallsThrough

public boolean fallsThrough()
Description copied from interface: Unit
Returns true if execution after this statement may continue at the following statement. GotoStmt will return false but IfStmt will return true.


branches

public boolean branches()
Description copied from interface: Unit
Returns true if execution after this statement does not necessarily continue at the following statement. GotoStmt and IfStmt will both return true.


apply

public void apply(Analysis a)