org.siebengeisslein.pclass
Class BlockStatement

java.lang.Object
  extended by org.siebengeisslein.client.Persistent
      extended by org.siebengeisslein.pclass.AbstractStatement
          extended by org.siebengeisslein.pclass.BlockStatement
All Implemented Interfaces:
Instrumented, CodeFragment, Statement
Direct Known Subclasses:
ForStatement, IfStatement, SwitchCaseEntry, SwitchDefaultEntry, SwitchStatement

public class BlockStatement
extends AbstractStatement
implements Statement


Constructor Summary
BlockStatement(PInternalMethod method, BlockStatement parent, VariableManager parentVarManager)
           
 
Method Summary
 void add(Statement statement)
           
 void addAfter(Statement statement, Statement newStatement)
           
 void addBefore(Statement statement, Statement newStatement)
           
 void delete(Statement statement)
           
 DataDirectory getDataDirectory()
           
 int getLineCount()
           
 PInternalMethod getMethod()
           
 Statement getNext()
           
 PClass getOwnerClass()
           
 Statement getStatementAtLine(int line)
           
 java.util.List<Statement> getStatements()
           
 TypeManager getTypeManager()
           
 BlockVariableManager getVariableManager()
           
 boolean needsReturn()
           
 Statement next(Statement child)
           
 void onRemove()
           
 Statement prev(Statement child)
           
 void remove(Statement statement)
           
 void replace(Statement statement, Statement newStatement)
           
 int size()
           
 java.lang.String toString()
           
 java.lang.String toString(java.lang.String indent)
           
 void visit(PClass clazz, org.objectweb.asm.MethodVisitor mv, Frame frame)
           
 
Methods inherited from class org.siebengeisslein.pclass.AbstractStatement
getOwnerMethod, getParent, getPrev, loadClass
 
Methods inherited from class org.siebengeisslein.client.Persistent
abort, clearUserLocals, clone, commit, disposeTransient, getGroup, getRef, getTransientValue, hashCode, initTransient, isWriteTransaction, joinWriteTransaction, readLock, setGroup, setTransientValue, toPersistent, toRef, writeExternal, writeLock
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.siebengeisslein.pclass.Statement
getParent, getPrev
 

Constructor Detail

BlockStatement

public BlockStatement(PInternalMethod method,
                      BlockStatement parent,
                      VariableManager parentVarManager)
Method Detail

getDataDirectory

public DataDirectory getDataDirectory()
Overrides:
getDataDirectory in class AbstractStatement

getStatements

public java.util.List<Statement> getStatements()

visit

public void visit(PClass clazz,
                  org.objectweb.asm.MethodVisitor mv,
                  Frame frame)
Specified by:
visit in interface Statement

next

public Statement next(Statement child)

prev

public Statement prev(Statement child)

getNext

public Statement getNext()
Specified by:
getNext in interface Statement
Overrides:
getNext in class AbstractStatement

add

public void add(Statement statement)

addBefore

public void addBefore(Statement statement,
                      Statement newStatement)

addAfter

public void addAfter(Statement statement,
                     Statement newStatement)

replace

public void replace(Statement statement,
                    Statement newStatement)

getLineCount

public int getLineCount()

getVariableManager

public BlockVariableManager getVariableManager()
Specified by:
getVariableManager in interface Statement
Overrides:
getVariableManager in class AbstractStatement

getTypeManager

public TypeManager getTypeManager()
Specified by:
getTypeManager in interface Statement
Overrides:
getTypeManager in class AbstractStatement

getStatementAtLine

public Statement getStatementAtLine(int line)

getMethod

public PInternalMethod getMethod()
Specified by:
getMethod in interface Statement
Overrides:
getMethod in class AbstractStatement

needsReturn

public boolean needsReturn()

delete

public void delete(Statement statement)

getOwnerClass

public PClass getOwnerClass()
Overrides:
getOwnerClass in class AbstractStatement

toString

public java.lang.String toString()
Overrides:
toString in class AbstractStatement

toString

public java.lang.String toString(java.lang.String indent)
Specified by:
toString in interface Statement

remove

public void remove(Statement statement)

size

public int size()

onRemove

public void onRemove()
Specified by:
onRemove in interface Statement