Package: IPOContextStack

IPOContextStack

Coverage

1: package org.overture.pog.pub;
2:
3: import java.util.Map;
4:
5: import org.overture.ast.expressions.AVariableExp;
6: import org.overture.ast.expressions.PExp;
7: import org.overture.ast.intf.lex.ILexNameToken;
8: import org.overture.ast.types.PType;
9: import org.overture.pog.utility.UniqueNameGenerator;
10:
11: public interface IPOContextStack
12: {
13:
14:         public IPOContext push(IPOContext context);
15:
16:         public IPOContext pop();
17:
18:         public int size();
19:
20:         PType checkType(PExp exp, PType expected);
21:
22:         void noteType(PExp exp, PType PType);
23:
24:         public abstract PExp getPredWithContext(PExp initialPredicate);
25:
26:         public abstract String getName();
27:
28:         public abstract String getObligation(String root);
29:
30:         public void clearStateContexts();
31:
32:         public void setGenerator(UniqueNameGenerator gen);
33:
34:         public UniqueNameGenerator getGenerator();
35:
36:         public Map<ILexNameToken, AVariableExp> getLast_Vars();
37:
38: }