soot.dava.internal.AST
Class ASTNode

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

public abstract class ASTNode
extends AbstractUnit

See Also:
Serialized Form

Field Summary
static String NEWLINE
           
protected  List<Object> 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<Object> body)
           
protected  void body_toString(UnitPrinter up, List<Object> 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<Object> 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<Object> subBodies
Constructor Detail

ASTNode

public ASTNode()
Method Detail

toString

public abstract void toString(UnitPrinter up)

body_toString

protected void body_toString(UnitPrinter up,
                             List<Object> body)

body_toString

protected String body_toString(List<Object> body)

get_SubBodies

public List<Object> 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)