|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjif.types.hierarchy.LabelEnv_c
public class LabelEnv_c
The wrapper of a set of assumptions that can be used to decide whether L1 <= L2.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface jif.types.hierarchy.LabelEnv |
---|
LabelEnv.SearchState |
Field Summary | |
---|---|
protected java.lang.StringBuffer |
displayLabelAssertions
|
protected boolean |
hasVariables
Do any of the assertions have variables in them? |
protected java.util.List |
labelAssertions
|
protected LabelEnv_c |
parent
|
protected PrincipalHierarchy |
ph
|
protected Solver |
solver
|
protected static java.util.Collection |
topics
Topics to report |
protected JifTypeSystem |
ts
|
protected boolean |
useCache
|
Constructor Summary | |
---|---|
|
LabelEnv_c(JifTypeSystem ts,
boolean useCache)
|
protected |
LabelEnv_c(JifTypeSystem ts,
PrincipalHierarchy ph,
java.util.List assertions,
java.lang.String displayLabelAssertions,
boolean hasVariables,
boolean useCache,
LabelEnv_c parent)
|
Method Summary | |
---|---|
void |
addActsFor(Principal p1,
Principal p2)
|
void |
addAssertionLE(Label L1,
Label L2)
|
void |
addEquiv(Label L1,
Label L2)
|
void |
addEquiv(Principal p1,
Principal p2)
|
protected void |
cacheResult(jif.types.hierarchy.LabelEnv_c.LeqGoal g,
LabelEnv.SearchState s,
boolean result)
|
protected java.lang.Boolean |
checkCache(jif.types.hierarchy.LabelEnv_c.LeqGoal g)
|
LabelEnv_c |
copy()
|
java.util.Map |
definitions(VarMap bounds,
java.util.Set seenComponents)
Returns a Map of Strings to List[String]s which is the descriptions of any components that appear in the environment. |
Label |
findUpperBound(Label L)
Finds a PairLabel upper bound. |
protected LabelEnv.SearchState |
freshSearchState()
|
boolean |
hasVariables()
Do any of the assertions in this label environment contain variables? |
boolean |
isEmpty()
Is this enviornment empty, or does is contain some constraints? |
boolean |
leq(ConfPolicy p1,
ConfPolicy p2,
LabelEnv.SearchState state)
|
boolean |
leq(IntegPolicy p1,
IntegPolicy p2,
LabelEnv.SearchState state)
|
boolean |
leq(Label L1,
Label L2)
|
boolean |
leq(Label L1,
Label L2,
LabelEnv.SearchState state)
Recursive implementation of L1 <= L2. |
boolean |
leq(Policy p1,
Policy p2)
|
boolean |
leq(Policy p1,
Policy p2,
LabelEnv.SearchState state)
|
PrincipalHierarchy |
ph()
|
void |
setSolver(Solver s)
Set the solver used for this Label Environment. |
java.lang.String |
toString()
|
Label |
triggerTransforms(Label label)
Trigger the transformation of WritersToReaders labels. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected final PrincipalHierarchy ph
protected final java.util.List labelAssertions
protected final java.lang.StringBuffer displayLabelAssertions
protected final JifTypeSystem ts
protected final LabelEnv_c parent
protected Solver solver
protected boolean hasVariables
protected static java.util.Collection topics
protected final boolean useCache
Constructor Detail |
---|
public LabelEnv_c(JifTypeSystem ts, boolean useCache)
protected LabelEnv_c(JifTypeSystem ts, PrincipalHierarchy ph, java.util.List assertions, java.lang.String displayLabelAssertions, boolean hasVariables, boolean useCache, LabelEnv_c parent)
Method Detail |
---|
public void setSolver(Solver s)
LabelEnv
setSolver
in interface LabelEnv
public PrincipalHierarchy ph()
ph
in interface LabelEnv
public boolean hasVariables()
LabelEnv
hasVariables
in interface LabelEnv
public void addActsFor(Principal p1, Principal p2)
public void addEquiv(Principal p1, Principal p2)
public void addAssertionLE(Label L1, Label L2)
public void addEquiv(Label L1, Label L2)
public LabelEnv_c copy()
public boolean leq(Label L1, Label L2)
leq
in interface LabelEnv
public boolean leq(Label L1, Label L2, LabelEnv.SearchState state)
leq
in interface LabelEnv
protected java.lang.Boolean checkCache(jif.types.hierarchy.LabelEnv_c.LeqGoal g)
protected void cacheResult(jif.types.hierarchy.LabelEnv_c.LeqGoal g, LabelEnv.SearchState s, boolean result)
public boolean leq(Policy p1, Policy p2)
leq
in interface LabelEnv
public boolean leq(Policy p1, Policy p2, LabelEnv.SearchState state)
leq
in interface LabelEnv
public boolean leq(ConfPolicy p1, ConfPolicy p2, LabelEnv.SearchState state)
public boolean leq(IntegPolicy p1, IntegPolicy p2, LabelEnv.SearchState state)
public boolean isEmpty()
isEmpty
in interface LabelEnv
public Label findUpperBound(Label L)
findUpperBound
in interface LabelEnv
public java.lang.String toString()
toString
in class java.lang.Object
public java.util.Map definitions(VarMap bounds, java.util.Set seenComponents)
definitions
in interface LabelEnv
public Label triggerTransforms(Label label)
triggerTransforms
in interface LabelEnv
protected LabelEnv.SearchState freshSearchState()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |