|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectat.dms.kjc.KjcEmptyVisitor
at.dms.kjc.SLIREmptyVisitor
at.dms.kjc.CloningVisitor
public class CloningVisitor
This descends through a stream hierarchy and identifies local variables and stream structures that SHOULD be cloned (since their definition is within the hierarchy).
Field Summary |
---|
Fields inherited from interface at.dms.kjc.Constants |
---|
CMP_VERSION, JAV_CLASS, JAV_CLONE, JAV_CLONEABLE, JAV_CONSTRUCTOR, JAV_ERROR, JAV_EXCEPTION, JAV_INIT, JAV_LENGTH, JAV_NAME_SEPARATOR, JAV_OBJECT, JAV_OUTER_THIS, JAV_RUNTIME, JAV_RUNTIME_EXCEPTION, JAV_STATIC_INIT, JAV_STRING, JAV_STRINGBUFFER, JAV_THIS, JAV_THROWABLE, OPE_BAND, OPE_BNOT, OPE_BOR, OPE_BSR, OPE_BXOR, OPE_EQ, OPE_GE, OPE_GT, OPE_LE, OPE_LNOT, OPE_LT, OPE_MINUS, OPE_NE, OPE_PERCENT, OPE_PLUS, OPE_POSTDEC, OPE_POSTINC, OPE_PREDEC, OPE_PREINC, OPE_SIMPLE, OPE_SL, OPE_SLASH, OPE_SR, OPE_STAR, TID_ARRAY, TID_BIT, TID_BOOLEAN, TID_BYTE, TID_CHAR, TID_CLASS, TID_DOUBLE, TID_FLOAT, TID_INT, TID_LONG, TID_SHORT, TID_VECTOR, TID_VOID, VECTOR_EMPTY |
Constructor Summary | |
---|---|
CloningVisitor()
|
Method Summary | |
---|---|
HashSet<DeepCloneable> |
getToBeCloned()
Return the list of what should be cloned. |
void |
postVisitFeedbackLoop(SIRFeedbackLoop self,
SIRFeedbackLoopIter iter)
|
void |
postVisitPipeline(SIRPipeline self,
SIRPipelineIter iter)
POST-VISITS |
void |
postVisitSplitJoin(SIRSplitJoin self,
SIRSplitJoinIter iter)
|
void |
preVisitFeedbackLoop(SIRFeedbackLoop self,
SIRFeedbackLoopIter iter)
|
void |
preVisitPipeline(SIRPipeline self,
SIRPipelineIter iter)
PRE-VISITS |
void |
preVisitSplitJoin(SIRSplitJoin self,
SIRSplitJoinIter iter)
|
void |
visitBlockStatement(int offset,
JBlock self,
JavaStyleComment[] comments)
Used by deepCopy(int offset,JBlock oldObj) above |
void |
visitFilter(SIRFilter self,
SIRFilterIter iter)
PLAIN-VISITS |
void |
visitFormalParameters(JFormalParameter self,
boolean isFinal,
CType type,
String ident)
visits a formal param. |
void |
visitInitStatement(SIRInitStatement self,
SIRStream target)
Visits an init statement (recurses into the target stream) |
void |
visitLocalVariableExpression(JLocalVariableExpression self,
String ident)
Right now the super doesn't visit the variable in a jlocal var, but make sure we don't, either. |
void |
visitPhasedFilter(SIRPhasedFilter self,
SIRPhasedFilterIter iter)
|
void |
visitVariableDefinition(JVariableDefinition self,
int modifiers,
CType type,
String ident,
JExpression expr)
Visits a variable decl. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public CloningVisitor()
Method Detail |
---|
public void visitBlockStatement(int offset, JBlock self, JavaStyleComment[] comments)
public HashSet<DeepCloneable> getToBeCloned()
public void visitLocalVariableExpression(JLocalVariableExpression self, String ident)
visitLocalVariableExpression
in interface KjcVisitor
visitLocalVariableExpression
in class KjcEmptyVisitor
public void visitVariableDefinition(JVariableDefinition self, int modifiers, CType type, String ident, JExpression expr)
visitVariableDefinition
in interface KjcVisitor
visitVariableDefinition
in class KjcEmptyVisitor
public void visitFormalParameters(JFormalParameter self, boolean isFinal, CType type, String ident)
visitFormalParameters
in interface KjcVisitor
visitFormalParameters
in class KjcEmptyVisitor
public void visitInitStatement(SIRInitStatement self, SIRStream target)
visitInitStatement
in interface SLIRVisitor
visitInitStatement
in class SLIREmptyVisitor
public void visitFilter(SIRFilter self, SIRFilterIter iter)
StreamVisitor
visitFilter
in interface StreamVisitor
public void visitPhasedFilter(SIRPhasedFilter self, SIRPhasedFilterIter iter)
visitPhasedFilter
in interface StreamVisitor
public void preVisitPipeline(SIRPipeline self, SIRPipelineIter iter)
preVisitPipeline
in interface StreamVisitor
public void preVisitSplitJoin(SIRSplitJoin self, SIRSplitJoinIter iter)
preVisitSplitJoin
in interface StreamVisitor
public void preVisitFeedbackLoop(SIRFeedbackLoop self, SIRFeedbackLoopIter iter)
preVisitFeedbackLoop
in interface StreamVisitor
public void postVisitPipeline(SIRPipeline self, SIRPipelineIter iter)
postVisitPipeline
in interface StreamVisitor
public void postVisitSplitJoin(SIRSplitJoin self, SIRSplitJoinIter iter)
postVisitSplitJoin
in interface StreamVisitor
public void postVisitFeedbackLoop(SIRFeedbackLoop self, SIRFeedbackLoopIter iter)
postVisitFeedbackLoop
in interface StreamVisitor
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |