|
||||||||||
| 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 KjcVisitorvisitLocalVariableExpression in class KjcEmptyVisitor
public void visitVariableDefinition(JVariableDefinition self,
int modifiers,
CType type,
String ident,
JExpression expr)
visitVariableDefinition in interface KjcVisitorvisitVariableDefinition in class KjcEmptyVisitor
public void visitFormalParameters(JFormalParameter self,
boolean isFinal,
CType type,
String ident)
visitFormalParameters in interface KjcVisitorvisitFormalParameters in class KjcEmptyVisitor
public void visitInitStatement(SIRInitStatement self,
SIRStream target)
visitInitStatement in interface SLIRVisitorvisitInitStatement 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 | |||||||||