2 import Analysis.MLP.VariableSourceToken;
3 import IR.Tree.SESENode;
6 public class FlatSESEEnterNode extends FlatNode {
7 private static int identifier=0;
9 protected FlatSESEExitNode exit;
10 protected SESENode treeNode;
11 protected Set<FlatSESEEnterNode> children;
12 protected Set<TempDescriptor> inVars;
13 protected Set<VariableSourceToken> outVars;
14 protected FlatMethod enclosing;
16 public FlatSESEEnterNode( SESENode sn ) {
17 this.id = identifier++;
19 children = new HashSet<FlatSESEEnterNode>();
20 inVars = new HashSet<TempDescriptor>();
21 outVars = new HashSet<VariableSourceToken>();
24 public void rewriteUse() {
27 public void rewriteDef() {
30 public void addChild( FlatSESEEnterNode child ) {
31 children.add( child );
34 public Set<FlatSESEEnterNode> getChildren() {
38 public void addInVar( TempDescriptor td ) {
42 public void addOutVar( VariableSourceToken vst ) {
46 public void addInVarSet( Set<TempDescriptor> s ) {
50 public void addOutVarSet( Set<VariableSourceToken> s ) {
54 public Set<TempDescriptor> getInVarSet() {
58 public Set<VariableSourceToken> getOutVarSet() {
62 public void setEnclosingFlatMeth( FlatMethod fm ) {
66 public FlatMethod getEnclosingFlatMeth() {
70 public SESENode getTreeNode() {
74 public int getIdentifier() {
78 public String getPrettyIdentifier() {
79 if( treeNode.getID() != null ) {
80 return treeNode.getID();
85 public String toString() {
86 return "sese "+getPrettyIdentifier()+" enter";
89 public void setFlatExit( FlatSESEExitNode fsexn ) {
93 public FlatSESEExitNode getFlatExit() {
98 return FKind.FlatSESEEnterNode;