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.label
Class UnknownLabel_c

    java.lang.Object
      polyglot.ext.jl.types.TypeObject_c
          jif.types.label.Label_c
              jif.types.label.UnknownLabel_c

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, Label, UnknownLabel, Param, polyglot.types.TypeObject, polyglot.util.Copy

    public class UnknownLabel_c

extends Label_c
implements UnknownLabel

An implementation of the `UnknownLabel` interface.

See Also:
  Serialized Form

Field Summary

Fields inherited from class jif.types.label.Label_c
`description, toJava`

Fields inherited from class polyglot.ext.jl.types.TypeObject_c
`position, ts`

Constructor Summary
`UnknownLabel_c(JifTypeSystem ts, polyglot.util.Position pos)`

Method Summary
`java.util.Collection` | `components()` By default, the components of a label is simply the label itself.
`java.lang.String` | `componentString(java.util.Set printedLabels)`
`boolean` | `equalsImpl(polyglot.types.TypeObject o)`
`int` | `hashCode()`
`boolean` | `isCanonical()`
`boolean` | `isComparable()` Is this label comparable to other labels?
`boolean` | `isCovariant()` Is this label covariant?
`boolean` | `isDisambiguatedImpl()` Check if the label is disambiguated, without recursing into child labels.
`boolean` | `isEnumerable()` Are the components of this label enumerable?
`boolean` | `isRuntimeRepresentable()`
`boolean` | `leq_(Label L, LabelEnv env, LabelEnv.SearchState state)` Implementation of leq, should only be called by JifTypeSystem
`java.lang.String` | `toString()`

Methods inherited from class jif.types.label.Label_c
`componentString, description, hasVariables, isBottom, isDisambiguated, isInvariant, isSingleton, isTop, join, labelCheck, setDescription, simplify, singletonComponent, subst, throwTypes, toJava, toString, variables`

Methods inherited from class polyglot.ext.jl.types.TypeObject_c
`copy, 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.Label
`componentString, description, hasVariables, isBottom, isDisambiguated, isInvariant, isSingleton, isTop, join, labelCheck, setDescription, simplify, singletonComponent, subst, throwTypes, toJava, toString, variables`

Methods inherited from interface polyglot.types.TypeObject
`position, typeSystem`

Methods inherited from interface polyglot.util.Copy
`copy`

Constructor Detail

### UnknownLabel_c

    public UnknownLabel_c(JifTypeSystem ts,
                          polyglot.util.Position pos)

Method Detail

### components

    public java.util.Collection components()

  Description copied from class: `Label_c`
  By default, the components of a label is simply the label itself.

  Specified by:
    `components` in interface `Label`
  Overrides:
    `components` in class `Label_c`

### isComparable

    public boolean isComparable()

  Description copied from interface: `Label`
  Is this label comparable to other labels?

  For example, an UnknownLabel is not comparable to others, neither is a VarLabel. Most other labels are.

  Specified by:
    `isComparable` in interface `Label`

### isEnumerable

    public boolean isEnumerable()

  Description copied from interface: `Label`
  Are the components of this label enumerable?

  For example, Singletons are enumerable, JoinLabels are enumerable, RuntimeLabel (the label of all runtime representable components) is not enumerable. NOTE: The components of a label are not neccessarily stuck together with a join operation. For example, the MeetLabel uses the meet operation between its components.

  Specified by:
    `isEnumerable` in interface `Label`

### isCanonical

    public boolean isCanonical()

  Specified by:
    `isCanonical` in interface `Param`
  Specified by:
    `isCanonical` in interface `polyglot.types.TypeObject`

### isDisambiguatedImpl

    public boolean isDisambiguatedImpl()

  Description copied from class: `Label_c`
  Check if the label is disambiguated, without recursing into child labels.

  Specified by:
    `isDisambiguatedImpl` in class `Label_c`

### isCovariant

    public boolean isCovariant()

  Description copied from interface: `Label`
  Is this label covariant?

  Specified by:
    `isCovariant` in interface `Label`

### isRuntimeRepresentable

    public boolean isRuntimeRepresentable()

  Specified by:
    `isRuntimeRepresentable` in interface `Label`
  Specified by:
    `isRuntimeRepresentable` in interface `Param`

### componentString

    public java.lang.String componentString(java.util.Set printedLabels)

  Specified by:
    `componentString` in interface `Label`
  Specified by:
    `componentString` in class `Label_c`

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `Label_c`

### equalsImpl

    public boolean equalsImpl(polyglot.types.TypeObject o)

  Specified by:
    `equalsImpl` in interface `polyglot.types.TypeObject`
  Specified by:
    `equalsImpl` in class `Label_c`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `polyglot.ext.jl.types.TypeObject_c`

### leq_

    public boolean leq_(Label L,
                        LabelEnv env,
                        LabelEnv.SearchState state)

  Description copied from interface: `Label`
  Implementation of leq, should only be called by JifTypeSystem

  Specified by:
    `leq_` in interface `Label`
  Parameters:
    `L` - the label to determine if this label is leq to. This label always satisfies !this.equals(L)
    `env` - the label environment (including principal hierarchy). Will always be non-null.

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