jif.extension

## Class JifTypeNodeDel

- java.lang.Object
- - polyglot.ast.JLDel_c
  - - jif.extension.JifDel_c
    - - jif.extension.JifTypeNodeDel

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, JifDel, polyglot.ast.JLDel, polyglot.ast.NodeOps, polyglot.util.Copy<polyglot.ast.JLDel>

      public class JifTypeNodeDel
      extends JifDel_c

  The Jif extension of the `TypeNode` node.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `JifTypeNodeDel.StaticLabelChecker` Checker to ensure that labels in a static context do not use the This label

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

      `polyglot.util.Copy.Util`

  - ### Field Summary

    - ### Fields inherited from class jif.extension.JifDel_c

      `fatalExceptions`

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

      `instance`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JifTypeNodeDel()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `polyglot.ast.Node` | `typeCheck(polyglot.visit.TypeChecker tc)` Prevent an uninstantiated polymorphic class from being used anywhere, and check that the "this" label is not used in a static context.

    - ### Methods inherited from class jif.extension.JifDel_c

      `buildTypes, fatalExceptions, setFatalExceptions, throwTypes, translate`

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

      `addDecls, buildTypesEnter, checkConstants, childExpectedType, copy, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, extRewrite, extRewriteEnter, extRewriteOverride, init, jl, lang, node, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitList`

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

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

- - ### Constructor Detail

    - #### JifTypeNodeDel

          public JifTypeNodeDel()

  - ### Method Detail

    - #### typeCheck

          public polyglot.ast.Node typeCheck(polyglot.visit.TypeChecker tc)
                                      throws polyglot.types.SemanticException

      Prevent an uninstantiated polymorphic class from being used anywhere, and check that the "this" label is not used in a static context.
      Specified by:
        `typeCheck` in interface `polyglot.ast.NodeOps`
      Overrides:
        `typeCheck` in class `polyglot.ast.JLDel_c`
      Throws:
        `polyglot.types.SemanticException`