jif.extension

## Interface JifStmtExt

- All Superinterfaces:
    java.lang.Cloneable, polyglot.util.Copy<polyglot.ast.Ext>, polyglot.ast.Ext, JifExt, polyglot.ast.NodeOps, java.io.Serializable
  All Known Implementing Classes:
    JifBlockExt, JifBranchExt, JifCaseExt, JifCheckedEndorseStmtExt, JifConstructorCallExt, JifDeclassifyStmtExt, JifDoExt, JifDowngradeStmtExt, JifEmptyExt, JifEndorseStmtExt, JifEvalExt, JifForExt, JifIfExt, JifLabeledExt, JifLocalDeclExt, JifReturnExt, JifStmtExt_c, JifSwitchExt, JifSynchronizedExt, JifThrowExt, JifTryExt, JifWhileExt

      public interface JifStmtExt
      extends JifExt

  The root of all kinds of Jif extensions for statements. It provides a generic labelCheck method, which will invoke the labelCheckStmt methods provided by the subclasses of this class.

- - ### Nested Class Summary

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

      `polyglot.util.Copy.Util`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `polyglot.ast.Node` | `labelCheckStmt(LabelChecker lc)`
    `JifStmtExt` | `stmtDel()`
    `JifStmtExt` | `stmtDel(JifStmtExt stmtDel)`

    - ### Methods inherited from interface jif.ast.JifExt

      `integerBoundsCalculated, labelCheck, toJava, toJava, X, X`

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

      `dump, ext, ext, init, initPred, node, pred`

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

      `addDecls, buildTypes, buildTypesEnter, checkConstants, childExpectedType, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, extRewrite, extRewriteEnter, extRewriteOverride, lang, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitList`

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

      `copy`

- - ### Method Detail

    - #### stmtDel

          JifStmtExt stmtDel()

    - #### stmtDel

          JifStmtExt stmtDel(JifStmtExt stmtDel)

    - #### labelCheckStmt

          polyglot.ast.Node labelCheckStmt(LabelChecker lc)
                                    throws polyglot.types.SemanticException

      Throws:
        `polyglot.types.SemanticException`