# Hierarchy For Package jif.types.label

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - jif.types.label.AccessPath (implements polyglot.util.Copy<T>, java.io.Serializable)
    - jif.types.label.AccessPathField
    - jif.types.label.AccessPathRoot
      - jif.types.label.AccessPathClass
      - jif.types.label.AccessPathConstant
      - jif.types.label.AccessPathLocal
      - jif.types.label.AccessPathThis
      - jif.types.label.AccessPathUninterpreted
  - jif.types.LabelSubstitution
    - jif.types.label.VariableGatherer
  - polyglot.types.TypeObject_c (implements polyglot.types.TypeObject)
    - jif.types.Param_c (implements jif.types.Param)
      - jif.types.label.Label_c (implements jif.types.label.Label)
        - jif.types.label.ArgLabel_c (implements jif.types.label.ArgLabel)
        - jif.types.label.CovariantParamLabel_c (implements jif.types.label.CovariantParamLabel)
        - jif.types.label.DynamicLabel_c (implements jif.types.label.DynamicLabel)
        - jif.types.label.JoinLabel_c (implements jif.types.label.JoinLabel)
        - jif.types.label.MeetLabel_c (implements jif.types.label.MeetLabel)
        - jif.types.label.NotTaken_c (implements jif.types.label.NotTaken)
        - jif.types.label.PairLabel_c (implements jif.types.label.PairLabel)
        - jif.types.label.ParamLabel_c (implements jif.types.label.ParamLabel)
        - jif.types.label.ProviderLabel_c (implements jif.types.label.ProviderLabel)
        - jif.types.label.ThisLabel_c (implements jif.types.label.ThisLabel)
        - jif.types.label.UnknownLabel_c (implements jif.types.label.UnknownLabel)
        - jif.types.label.VarLabel_c (implements jif.types.label.VarLabel)
        - jif.types.label.WritersToReadersLabel_c (implements jif.types.label.WritersToReadersLabel)
    - jif.types.label.Policy_c (implements jif.types.label.Policy)
      - jif.types.label.ConfProjectionPolicy_c (implements jif.types.label.ConfProjectionPolicy)
      - jif.types.label.IntegProjectionPolicy_c (implements jif.types.label.IntegPolicy)
      - jif.types.label.JoinPolicy_c<P> (implements jif.types.label.JoinPolicy<P>)
        - jif.types.label.JoinConfPolicy_c (implements jif.types.label.JoinConfPolicy)
        - jif.types.label.JoinIntegPolicy_c (implements jif.types.label.IntegPolicy)
      - jif.types.label.MeetPolicy_c<P> (implements jif.types.label.MeetPolicy<P>)
        - jif.types.label.MeetConfPolicy_c (implements jif.types.label.MeetConfPolicy)
        - jif.types.label.MeetIntegPolicy_c (implements jif.types.label.IntegPolicy)
      - jif.types.label.ReaderPolicy_c (implements jif.types.label.ReaderPolicy)
      - jif.types.label.WriterPolicy_c (implements jif.types.label.WriterPolicy)

## Interface Hierarchy

- java.lang.Cloneable
  - polyglot.util.Copy<T>
    - polyglot.types.TypeObject (also extends java.io.Serializable)
      - jif.types.Param
        - jif.types.ActsForParam
          - jif.types.label.Label
            - jif.types.label.ArgLabel
            - jif.types.label.CovariantParamLabel
            - jif.types.label.DynamicLabel
            - jif.types.label.JoinLabel
            - jif.types.label.MeetLabel
            - jif.types.label.NotTaken
            - jif.types.label.PairLabel
            - jif.types.label.ParamLabel
            - jif.types.label.ProviderLabel
            - jif.types.label.ThisLabel
            - jif.types.label.UnknownLabel
            - jif.types.label.VarLabel (also extends jif.types.label.Variable)
            - jif.types.label.WritersToReadersLabel
      - jif.types.label.Policy
        - jif.types.label.ConfPolicy
          - jif.types.label.ConfProjectionPolicy
          - jif.types.label.JoinConfPolicy (also extends jif.types.label.JoinPolicy<P>)
          - jif.types.label.MeetConfPolicy (also extends jif.types.label.MeetPolicy<P>)
          - jif.types.label.ReaderPolicy
        - jif.types.label.IntegPolicy
          - jif.types.label.WriterPolicy
        - jif.types.label.JoinPolicy<P>
          - jif.types.label.JoinConfPolicy (also extends jif.types.label.ConfPolicy)
- jif.types.label.MeetPolicy<P>
  - jif.types.label.MeetConfPolicy (also extends jif.types.label.ConfPolicy)
- java.io.Serializable
  - polyglot.types.TypeObject (also extends polyglot.util.Copy<T>)
    - jif.types.Param
      - jif.types.ActsForParam
        - jif.types.label.Label
          - jif.types.label.ArgLabel
          - jif.types.label.CovariantParamLabel
          - jif.types.label.DynamicLabel
          - jif.types.label.JoinLabel
          - jif.types.label.MeetLabel
          - jif.types.label.NotTaken
          - jif.types.label.PairLabel
          - jif.types.label.ParamLabel
          - jif.types.label.ProviderLabel
          - jif.types.label.ThisLabel
          - jif.types.label.UnknownLabel
          - jif.types.label.VarLabel (also extends jif.types.label.Variable)
          - jif.types.label.WritersToReadersLabel
    - jif.types.label.Policy
      - jif.types.label.ConfPolicy
        - jif.types.label.ConfProjectionPolicy
        - jif.types.label.JoinConfPolicy (also extends jif.types.label.JoinPolicy<P>)
        - jif.types.label.MeetConfPolicy (also extends jif.types.label.MeetPolicy<P>)
        - jif.types.label.ReaderPolicy
      - jif.types.label.IntegPolicy
        - jif.types.label.WriterPolicy
      - jif.types.label.JoinPolicy<P>
        - jif.types.label.JoinConfPolicy (also extends jif.types.label.ConfPolicy)
- jif.types.label.Variable
  - jif.types.label.VarLabel (also extends jif.types.label.Label)