package org.overture.pog.contexts;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.overture.ast.expressions.AVariableExp;
import org.overture.ast.intf.lex.ILexNameToken;
import org.overture.pog.pub.IPOContextStack;
import org.overture.pog.utility.Substitution;
import org.overture.pog.utility.UniqueNameGenerator;
public abstract class StatefulContext extends POContext
{
boolean first = true;
public StatefulContext()
{
}
public StatefulContext(IPOContextStack ctxt)
{
this.last_vars = ctxt.getLast_Vars() == null ? new HashMap<ILexNameToken, AVariableExp>()
: ctxt.getLast_Vars();
}
protected Map<ILexNameToken, AVariableExp> last_vars;
protected UniqueNameGenerator gen;
List<Substitution> subs;
@Override
public boolean isStateful()
{
return true;
}
public Map<ILexNameToken, AVariableExp> getLast_vars()
{
return last_vars;
}
}