Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## jif.types
Class JifSubst_c

    java.lang.Object
      polyglot.ext.param.types.Subst_c
          jif.types.JifSubst_c

All Implemented Interfaces:
  java.io.Serializable, JifSubst, polyglot.ext.param.types.Subst

    public class JifSubst_c

extends polyglot.ext.param.types.Subst_c
implements JifSubst

See Also:
  Serialized Form

Nested Class Summary
`class` | `JifSubst_c.ConstraintXform`
`class` | `JifSubst_c.LabelXform`
`class` | `JifSubst_c.PrincipalXform`
`protected class` | `JifSubst_c.SubstLabelSubst` This class is a `LabelSubstitution` that performs substitutions on `Label`s and `Principal`s.

Nested classes/interfaces inherited from class polyglot.ext.param.types.Subst_c
`polyglot.ext.param.types.Subst_c.ConstructorXform, polyglot.ext.param.types.Subst_c.FieldXform, polyglot.ext.param.types.Subst_c.MethodXform, polyglot.ext.param.types.Subst_c.TypeXform`

Field Summary
`protected JifSubst_c.SubstLabelSubst` | `substLabelSubst` An instance of the nested class `SubstLabelSubst`, to be used by `substLabel(Label)` and `substPrincipal(Principal)`.

Fields inherited from class polyglot.ext.param.types.Subst_c
`cache, subst, ts`

Constructor Summary
`JifSubst_c(JifTypeSystem ts, java.util.Map subst, java.util.Map cache)`

Method Summary
`protected boolean` | `cacheTypeEquality(polyglot.types.Type t1, polyglot.types.Type t2)`
`Param` | `get(ParamInstance pi)`
`void` | `put(ParamInstance pi, Param param)`
`protected Label` | `subLabel(Label label, ParamInstance pi)` Return the substitution of uid, or label if not found.
`protected Principal` | `subPrincipal(Principal principal, ParamInstance pi)` Return the substitution of uid, or principal if not found.
`polyglot.types.ClassType` | `substClassType(polyglot.types.ClassType t)`
`Assertion` | `substConstraint(Assertion constraint)`
`java.util.List` | `substConstraintList(java.util.List constraints)`
`polyglot.types.ConstructorInstance` | `substConstructor(polyglot.types.ConstructorInstance ci)`
`polyglot.types.FieldInstance` | `substField(polyglot.types.FieldInstance fi)` Perform substititions on a field.
`Label` | `substLabel(Label label)`
`java.util.List` | `substLabelList(java.util.List labels)`
`polyglot.types.MethodInstance` | `substMethod(polyglot.types.MethodInstance mi)`
`Principal` | `substPrincipal(Principal principal)`
`java.util.List` | `substPrincipalList(java.util.List principals)`
`protected java.lang.Object` | `substSubstValue(java.lang.Object value)`
`polyglot.types.Type` | `uncachedSubstType(polyglot.types.Type t)`

Methods inherited from class polyglot.ext.param.types.Subst_c
`cacheGet, cachePut, entries, equals, hashCode, substConstructorList, substFieldList, substitutions, substMethodList, substPClass, substType, substTypeList, toString, typeSystem`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface polyglot.ext.param.types.Subst
`entries, substConstructorList, substFieldList, substitutions, substMethodList, substPClass, substType, substTypeList, typeSystem`

Field Detail

### substLabelSubst

    protected JifSubst_c.SubstLabelSubst substLabelSubst

  An instance of the nested class `SubstLabelSubst`, to be used by `substLabel(Label)` and `substPrincipal(Principal)`.

Constructor Detail

### JifSubst_c

    public JifSubst_c(JifTypeSystem ts,
                      java.util.Map subst,
                      java.util.Map cache)

Method Detail

### get

    public Param get(ParamInstance pi)

  Specified by:
    `get` in interface `JifSubst`

### put

    public void put(ParamInstance pi,
                    Param param)

  Specified by:
    `put` in interface `JifSubst`

### cacheTypeEquality

    protected boolean cacheTypeEquality(polyglot.types.Type t1,
                                        polyglot.types.Type t2)

  Overrides:
    `cacheTypeEquality` in class `polyglot.ext.param.types.Subst_c`

### uncachedSubstType

    public polyglot.types.Type uncachedSubstType(polyglot.types.Type t)

  Overrides:
    `uncachedSubstType` in class `polyglot.ext.param.types.Subst_c`

### substClassType

    public polyglot.types.ClassType substClassType(polyglot.types.ClassType t)

  Overrides:
    `substClassType` in class `polyglot.ext.param.types.Subst_c`

### substMethod

    public polyglot.types.MethodInstance substMethod(polyglot.types.MethodInstance mi)

  Specified by:
    `substMethod` in interface `polyglot.ext.param.types.Subst`
  Overrides:
    `substMethod` in class `polyglot.ext.param.types.Subst_c`

### substConstructor

    public polyglot.types.ConstructorInstance substConstructor(polyglot.types.ConstructorInstance ci)

  Specified by:
    `substConstructor` in interface `polyglot.ext.param.types.Subst`
  Overrides:
    `substConstructor` in class `polyglot.ext.param.types.Subst_c`

### substField

    public polyglot.types.FieldInstance substField(polyglot.types.FieldInstance fi)

  Perform substititions on a field.

  Specified by:
    `substField` in interface `polyglot.ext.param.types.Subst`
  Overrides:
    `substField` in class `polyglot.ext.param.types.Subst_c`

### substConstraintList

    public java.util.List substConstraintList(java.util.List constraints)

  Specified by:
    `substConstraintList` in interface `JifSubst`

### substLabelList

    public java.util.List substLabelList(java.util.List labels)

  Specified by:
    `substLabelList` in interface `JifSubst`

### substPrincipalList

    public java.util.List substPrincipalList(java.util.List principals)

  Specified by:
    `substPrincipalList` in interface `JifSubst`

### substConstraint

    public Assertion substConstraint(Assertion constraint)

  Specified by:
    `substConstraint` in interface `JifSubst`

### substLabel

    public Label substLabel(Label label)

  Specified by:
    `substLabel` in interface `JifSubst`

### substPrincipal

    public Principal substPrincipal(Principal principal)

  Specified by:
    `substPrincipal` in interface `JifSubst`

### subLabel

    protected Label subLabel(Label label,
                             ParamInstance pi)

  Return the substitution of uid, or label if not found.

### subPrincipal

    protected Principal subPrincipal(Principal principal,
                                     ParamInstance pi)

  Return the substitution of uid, or principal if not found.

### substSubstValue

    protected java.lang.Object substSubstValue(java.lang.Object value)

  Overrides:
    `substSubstValue` in class `polyglot.ext.param.types.Subst_c`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD