jif.types.label
Class WriterPolicy_c

java.lang.Object
  extended by polyglot.types.TypeObject_c
      extended by jif.types.label.Policy_c
          extended by jif.types.label.WriterPolicy_c
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, IntegPolicy, Policy, WriterPolicy, polyglot.types.TypeObject, polyglot.util.Copy

public class WriterPolicy_c
extends Policy_c
implements WriterPolicy

An implementation of the PolicyLabel interface.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class polyglot.types.TypeObject_c
position, ts
 
Constructor Summary
WriterPolicy_c(Principal owner, Principal writer, JifTypeSystem ts, polyglot.util.Position pos)
           
 
Method Summary
 boolean equalsImpl(polyglot.types.TypeObject o)
           
 int hashCode()
           
 boolean isBottom()
           
 boolean isBottomIntegrity()
           
 boolean isCanonical()
           
 boolean isRuntimeRepresentable()
           
 boolean isSingleton()
           
 boolean isTop()
           
 boolean isTopIntegrity()
           
 IntegPolicy join(IntegPolicy p)
           
 PathMap labelCheck(JifContext A, LabelChecker lc)
           
 boolean leq_(IntegPolicy p, LabelEnv env, LabelEnv.SearchState state)
           
 IntegPolicy meet(IntegPolicy p)
           
 Principal owner()
           
protected  Policy simplifyImpl()
           
 Policy subst(LabelSubstitution substitution)
           
 java.util.List throwTypes(polyglot.types.TypeSystem ts)
           
 java.lang.String toString(java.util.Set printedLabels)
           
 Principal writer()
           
 
Methods inherited from class jif.types.label.Policy_c
copy, hasVariables, hasWritersToReaders, simplify, toString
 
Methods inherited from class polyglot.types.TypeObject_c
equals, position, typeSystem
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface jif.types.label.Policy
hasVariables, hasWritersToReaders, simplify
 
Methods inherited from interface polyglot.types.TypeObject
position, typeSystem
 
Methods inherited from interface polyglot.util.Copy
copy
 

Constructor Detail

WriterPolicy_c

public WriterPolicy_c(Principal owner,
                      Principal writer,
                      JifTypeSystem ts,
                      polyglot.util.Position pos)
Method Detail

owner

public Principal owner()
Specified by:
owner in interface WriterPolicy

writer

public Principal writer()
Specified by:
writer in interface WriterPolicy

isSingleton

public boolean isSingleton()
Specified by:
isSingleton in interface Policy

isCanonical

public boolean isCanonical()
Specified by:
isCanonical in interface Policy
Specified by:
isCanonical in interface polyglot.types.TypeObject

isRuntimeRepresentable

public boolean isRuntimeRepresentable()
Specified by:
isRuntimeRepresentable in interface Policy

simplifyImpl

protected Policy simplifyImpl()
Specified by:
simplifyImpl in class Policy_c

equalsImpl

public boolean equalsImpl(polyglot.types.TypeObject o)
Specified by:
equalsImpl in interface polyglot.types.TypeObject
Specified by:
equalsImpl in class Policy_c

hashCode

public int hashCode()
Overrides:
hashCode in class polyglot.types.TypeObject_c

leq_

public boolean leq_(IntegPolicy p,
                    LabelEnv env,
                    LabelEnv.SearchState state)
Specified by:
leq_ in interface IntegPolicy

toString

public java.lang.String toString(java.util.Set printedLabels)
Specified by:
toString in interface Policy
Specified by:
toString in class Policy_c

throwTypes

public java.util.List throwTypes(polyglot.types.TypeSystem ts)
Specified by:
throwTypes in interface Policy

subst

public Policy subst(LabelSubstitution substitution)
             throws polyglot.types.SemanticException
Specified by:
subst in interface Policy
Throws:
polyglot.types.SemanticException

labelCheck

public PathMap labelCheck(JifContext A,
                          LabelChecker lc)
Specified by:
labelCheck in interface Policy

isBottomIntegrity

public boolean isBottomIntegrity()
Specified by:
isBottomIntegrity in interface IntegPolicy

isTopIntegrity

public boolean isTopIntegrity()
Specified by:
isTopIntegrity in interface IntegPolicy

isTop

public boolean isTop()
Specified by:
isTop in interface Policy

isBottom

public boolean isBottom()
Specified by:
isBottom in interface Policy

meet

public IntegPolicy meet(IntegPolicy p)
Specified by:
meet in interface IntegPolicy

join

public IntegPolicy join(IntegPolicy p)
Specified by:
join in interface IntegPolicy