// This file was generated by DAJ from Sample.trv. import edu.neu.ccs.demeter.*; public aspect Sample { public void S.listAll() { Printer v = new Printer(); each(v); } /* strategy: each: from S to T traversal: Start set: [S: {0}] Nodes: S: {0} X1: {0} java.lang.Object: {0} H1: {0} X2: {0} H2: {0} X3: {0} T: {0} NX3: {0} NX2: {0} NX1: {0} Edges: -> S,x1,X1: {0} -> X1,h1,H1: {0} -> H1,x2,X2: {0} -> X2,h2,H2: {0} -> H2,x3,X3: {0} -> X3,t,T: {0} -> H2,nX3,NX3: {0} -> NX3,t,T: {0} -> H1,nX2,NX2: {0} -> NX2,h2,H2: {0} -> S,nX1,NX1: {0} -> NX1,h1,H1: {0} Finish set: [T: {0}] */ void S.each() { java.util.BitSet[] tokens = { new java.util.BitSet() }; tokens[0].set(0); each(tokens); } void S.each(java.util.BitSet[] tokens) { { java.util.BitSet[] newTokens = { new java.util.BitSet() }; if (tokens[0].get(0)) { newTokens[0].set(0); } } { java.util.BitSet[] newTokens = { new java.util.BitSet() }; if (tokens[0].get(0)) { newTokens[0].set(0); } } } void T.each(java.util.BitSet[] tokens) { } void S.each(Printer v) { each(); } before(Printer v, S host): execution(void each(java.util.BitSet[])) && target(host) && cflow(execution(void each(Printer)) && args(v)) && if(thisJoinPoint.getSignature().getDeclaringType().getName().equals("S" )) { v.before(host); } before(Printer v, X1 host): execution(void each(java.util.BitSet[])) && target(host) && cflow(execution(void each(Printer)) && args(v)) && if(thisJoinPoint.getSignature().getDeclaringType().getName().equals("X1" )) { v.before(host); } before(Printer v, X2 host): execution(void each(java.util.BitSet[])) && target(host) && cflow(execution(void each(Printer)) && args(v)) && if(thisJoinPoint.getSignature().getDeclaringType().getName().equals("X2" )) { v.before(host); } before(Printer v, T host): execution(void each(java.util.BitSet[])) && target(host) && cflow(execution(void each(Printer)) && args(v)) && if(thisJoinPoint.getSignature().getDeclaringType().getName().equals("T" )) { v.before(host); } before(Printer v, NX2 host): execution(void each(java.util.BitSet[])) && target(host) && cflow(execution(void each(Printer)) && args(v)) && if(thisJoinPoint.getSignature().getDeclaringType().getName().equals("NX2" )) { v.before(host); } before(Printer v, NX1 host): execution(void each(java.util.BitSet[])) && target(host) && cflow(execution(void each(Printer)) && args(v)) && if(thisJoinPoint.getSignature().getDeclaringType().getName().equals("NX1" )) { v.before(host); } } // Sample