jif.ast

## Class LabeledTypeNode_c

- java.lang.Object
- - polyglot.ast.Node_c
  - - polyglot.ast.Term_c
    - - polyglot.ast.TypeNode_c
      - - jif.ast.LabeledTypeNode_c

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, LabeledTypeNode, polyglot.ast.Ambiguous, polyglot.ast.Node, polyglot.ast.NodeOps, polyglot.ast.Prefix, polyglot.ast.QualifierNode, polyglot.ast.Receiver, polyglot.ast.Term, polyglot.ast.TermOps, polyglot.ast.Typed, polyglot.ast.TypeNode, polyglot.util.Copy<polyglot.ast.Node>

      public class LabeledTypeNode_c
      extends polyglot.ast.TypeNode_c
      implements LabeledTypeNode, polyglot.ast.Ambiguous

  An implementation of the `LabeledTypeNode` interface.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface polyglot.ast.TypeNode

      `polyglot.ast.TypeNode.Instance`

    - ### Nested classes/interfaces inherited from interface polyglot.util.Copy

      `polyglot.util.Copy.Util`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected LabelNode` | `labelPart`
    `protected polyglot.ast.TypeNode` | `typePart`

    - ### Fields inherited from class polyglot.ast.TypeNode_c

      `type`

    - ### Fields inherited from class polyglot.ast.Term_c

      `exceptions, reachable`

    - ### Fields inherited from class polyglot.ast.Node_c

      `del, error, ext, position`

    - ### Fields inherited from interface polyglot.ast.Term

      `ENTRY, EXIT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `LabeledTypeNode_c(polyglot.util.Position pos, polyglot.ast.TypeNode typePart, LabelNode labelPart)`
    `LabeledTypeNode_c(polyglot.util.Position pos, polyglot.ast.TypeNode typePart, LabelNode labelPart, polyglot.ast.Ext ext)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `polyglot.ast.Node` | `buildTypes(polyglot.visit.TypeBuilder tb)`
    `polyglot.ast.Node` | `disambiguate(polyglot.visit.AmbiguityRemover ar)`
    `polyglot.ast.Node` | `exceptionCheck(polyglot.visit.ExceptionChecker ec)`
    `boolean` | `isDisambiguated()`
    `LabelNode` | `labelPart()`
    `LabeledTypeNode` | `labelPart(LabelNode labelPart)`
    `void` | `prettyPrint(polyglot.util.CodeWriter w, polyglot.visit.PrettyPrinter tr)`
    `protected LabeledTypeNode_c` | `reconstruct(polyglot.ast.TypeNode typePart, LabelNode labelPart)`
    `java.lang.String` | `toString()`
    `void` | `translate(polyglot.util.CodeWriter w, polyglot.visit.Translator tr)`
    `polyglot.ast.Node` | `typeCheck(polyglot.visit.TypeChecker tc)`
    `polyglot.ast.TypeNode` | `typePart()`
    `LabeledTypeNode` | `typePart(polyglot.ast.TypeNode typePart)`
    `polyglot.ast.Node` | `visitChildren(polyglot.visit.NodeVisitor v)`

    - ### Methods inherited from class polyglot.ast.TypeNode_c

      `acceptCFG, firstChild, name, qualifier, type, type, type`

    - ### Methods inherited from class polyglot.ast.Term_c

      `exceptions, exceptions, exceptions, extRewrite, listChild, reachable, reachable, reachable`

    - ### Methods inherited from class polyglot.ast.Node_c

      `addDecls, buildTypesEnter, checkConstants, childExpectedType, copy, copy, copy, copyIfNeeded, del, del, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, dump, enterChildScope, enterScope, error, error, error, exceptionCheckEnter, ext, ext, ext, ext, extRewriteEnter, extRewriteOverride, isTypeChecked, lang, position, position, position, prettyPrint, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, throwTypes, typeCheckEnter, typeCheckOverride, visit, visitChild, visitEdge, visitList`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface polyglot.ast.TypeNode

      `name, type`

    - ### Methods inherited from interface polyglot.ast.Typed

      `type`

    - ### Methods inherited from interface polyglot.ast.QualifierNode

      `qualifier`

    - ### Methods inherited from interface polyglot.ast.Node

      `del, del, dump, error, error, ext, ext, ext, ext, isTypeChecked, position, position, visit, visitEdge`

    - ### Methods inherited from interface polyglot.ast.NodeOps

      `addDecls, buildTypesEnter, checkConstants, childExpectedType, copy, copy, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheckEnter, extRewrite, extRewriteEnter, extRewriteOverride, lang, prettyPrint, prettyPrint, prettyPrint, prettyPrint, throwTypes, typeCheckEnter, typeCheckOverride, visitChild, visitList`

    - ### Methods inherited from interface polyglot.util.Copy

      `copy`

    - ### Methods inherited from interface polyglot.ast.Term

      `exceptions, exceptions, reachable, reachable`

- - ### Field Detail

    - #### typePart

          protected polyglot.ast.TypeNode typePart

    - #### labelPart

          protected LabelNode labelPart

  - ### Constructor Detail

    - #### LabeledTypeNode_c

          public LabeledTypeNode_c(polyglot.util.Position pos,
                                   polyglot.ast.TypeNode typePart,
                                   LabelNode labelPart)

    - #### LabeledTypeNode_c

          public LabeledTypeNode_c(polyglot.util.Position pos,
                                   polyglot.ast.TypeNode typePart,
                                   LabelNode labelPart,
                                   polyglot.ast.Ext ext)

  - ### Method Detail

    - #### typePart

          public polyglot.ast.TypeNode typePart()

      Specified by:
        `typePart` in interface `LabeledTypeNode`

    - #### typePart

          public LabeledTypeNode typePart(polyglot.ast.TypeNode typePart)

      Specified by:
        `typePart` in interface `LabeledTypeNode`

    - #### labelPart

          public LabelNode labelPart()

      Specified by:
        `labelPart` in interface `LabeledTypeNode`

    - #### labelPart

          public LabeledTypeNode labelPart(LabelNode labelPart)

      Specified by:
        `labelPart` in interface `LabeledTypeNode`

    - #### reconstruct

          protected LabeledTypeNode_c reconstruct(polyglot.ast.TypeNode typePart,
                                                  LabelNode labelPart)

    - #### visitChildren

          public polyglot.ast.Node visitChildren(polyglot.visit.NodeVisitor v)

      Specified by:
        `visitChildren` in interface `polyglot.ast.NodeOps`
      Overrides:
        `visitChildren` in class `polyglot.ast.Node_c`

    - #### buildTypes

          public polyglot.ast.Node buildTypes(polyglot.visit.TypeBuilder tb)

      Specified by:
        `buildTypes` in interface `polyglot.ast.NodeOps`
      Overrides:
        `buildTypes` in class `polyglot.ast.TypeNode_c`

    - #### isDisambiguated

          public boolean isDisambiguated()

      Specified by:
        `isDisambiguated` in interface `polyglot.ast.Node`
      Overrides:
        `isDisambiguated` in class `polyglot.ast.TypeNode_c`

    - #### disambiguate

          public polyglot.ast.Node disambiguate(polyglot.visit.AmbiguityRemover ar)
                                         throws polyglot.types.SemanticException

      Specified by:
        `disambiguate` in interface `polyglot.ast.NodeOps`
      Overrides:
        `disambiguate` in class `polyglot.ast.Node_c`
      Throws:
        `polyglot.types.SemanticException`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `polyglot.ast.TypeNode_c`

    - #### typeCheck

          public polyglot.ast.Node typeCheck(polyglot.visit.TypeChecker tc)

      Specified by:
        `typeCheck` in interface `polyglot.ast.NodeOps`
      Overrides:
        `typeCheck` in class `polyglot.ast.Node_c`

    - #### exceptionCheck

          public polyglot.ast.Node exceptionCheck(polyglot.visit.ExceptionChecker ec)

      Specified by:
        `exceptionCheck` in interface `polyglot.ast.NodeOps`
      Overrides:
        `exceptionCheck` in class `polyglot.ast.Term_c`

    - #### prettyPrint

          public void prettyPrint(polyglot.util.CodeWriter w,
                                  polyglot.visit.PrettyPrinter tr)

      Specified by:
        `prettyPrint` in interface `polyglot.ast.NodeOps`
      Specified by:
        `prettyPrint` in class `polyglot.ast.TypeNode_c`

    - #### translate

          public void translate(polyglot.util.CodeWriter w,
                                polyglot.visit.Translator tr)

      Specified by:
        `translate` in interface `polyglot.ast.NodeOps`
      Overrides:
        `translate` in class `polyglot.ast.Node_c`