jif.ast

## Class JifMethodDecl_c

- java.lang.Object
- - polyglot.ast.Node_c
  - - polyglot.ast.Term_c
    - - polyglot.ast.ProcedureDecl_c
      - - polyglot.ast.MethodDecl_c
        - - jif.ast.JifMethodDecl_c

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, JifMethodDecl, JifProcedureDecl, polyglot.ast.ClassMember, polyglot.ast.CodeBlock, polyglot.ast.CodeDecl, polyglot.ast.CodeNode, polyglot.ast.Documentable, polyglot.ast.MethodDecl, polyglot.ast.Node, polyglot.ast.NodeOps, polyglot.ast.ProcedureDecl, polyglot.ast.ProcedureDeclOps, polyglot.ast.Term, polyglot.ast.TermOps, polyglot.util.Copy<polyglot.ast.Node>

  Deprecated.

      @Deprecated
      public class JifMethodDecl_c
      extends polyglot.ast.MethodDecl_c
      implements JifMethodDecl

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

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.util.List<ConstraintNode<Assertion>>` | `constraints` Deprecated.
    `protected LabelNode` | `returnLabel` Deprecated.
    `protected LabelNode` | `startLabel` Deprecated.

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

      `mi, returnType`

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

      `body, flags, formals, javadoc, name, throwTypes`

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

      `exceptions, reachable`

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

      `del, error, ext, position`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JifMethodDecl_c(polyglot.util.Position pos, polyglot.types.Flags flags, polyglot.ast.TypeNode returnType, polyglot.ast.Id name, LabelNode startLabel, java.util.List<polyglot.ast.Formal> formals, LabelNode returnLabel, java.util.List<polyglot.ast.TypeNode> throwTypes, java.util.List<ConstraintNode<Assertion>> constraints, polyglot.ast.Block body, polyglot.ast.Javadoc javadoc)` Deprecated.
    `JifMethodDecl_c(polyglot.util.Position pos, polyglot.types.Flags flags, polyglot.ast.TypeNode returnType, polyglot.ast.Id name, LabelNode startLabel, java.util.List<polyglot.ast.Formal> formals, LabelNode returnLabel, java.util.List<polyglot.ast.TypeNode> throwTypes, java.util.List<ConstraintNode<Assertion>> constraints, polyglot.ast.Block body, polyglot.ast.Javadoc javadoc, polyglot.ast.Ext ext)` Deprecated.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.util.List<ConstraintNode<Assertion>>` | `constraints()` Deprecated.
    `JifMethodDecl` | `constraints(java.util.List<ConstraintNode<Assertion>> constraints)` Deprecated.
    `protected <N extends JifMethodDecl_c> N` | `constraints(N n, java.util.List<ConstraintNode<Assertion>> constraints)` Deprecated.
    `polyglot.ast.Node` | `disambiguate(polyglot.visit.AmbiguityRemover ar)` Deprecated.
    `protected <N extends JifMethodDecl_c> N` | `reconstruct(N n, polyglot.ast.Id name, polyglot.ast.TypeNode returnType, LabelNode startLabel, java.util.List<polyglot.ast.Formal> formals, LabelNode returnLabel, java.util.List<polyglot.ast.TypeNode> throwTypes, java.util.List<ConstraintNode<Assertion>> constraints, polyglot.ast.Block body)` Deprecated.
    `LabelNode` | `returnLabel()` Deprecated.
    `JifMethodDecl` | `returnLabel(LabelNode returnLabel)` Deprecated.
    `protected <N extends JifMethodDecl_c> N` | `returnLabel(N n, LabelNode returnLabel)` Deprecated.
    `LabelNode` | `startLabel()` Deprecated.
    `JifMethodDecl` | `startLabel(LabelNode startLabel)` Deprecated.
    `protected <N extends JifMethodDecl_c> N` | `startLabel(N n, LabelNode startLabel)` Deprecated.
    `static JifMethodInstance` | `unrenameArgs(JifMethodInstance jmi)` Deprecated. Rename the arg labels and arg roots.
    `polyglot.ast.Node` | `visitChildren(polyglot.visit.NodeVisitor v)` Deprecated.

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

      `acceptCFG, buildTypes, copy, dump, enterScope, extRewrite, firstChild, isDisambiguated, memberInstance, methodInstance, methodInstance, methodInstance, overrideMethodCheck, prettyPrintHeader, procedureInstance, reconstruct, returnType, returnType, returnType, throwsCheck, toString, typeCheck`

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

      `body, body, body, buildTypesEnter, codeBody, codeInstance, exceptionCheckEnter, flags, flags, flags, formals, formals, formals, id, id, id, javadoc, javadoc, javadoc, name, name, prettyPrint, reconstruct, throwTypes, throwTypes, throwTypes`

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

      `exceptionCheck, exceptions, exceptions, exceptions, listChild, reachable, reachable, reachable`

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

      `addDecls, checkConstants, childExpectedType, copy, copy, copyIfNeeded, del, del, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, error, error, error, ext, ext, ext, ext, extRewriteEnter, extRewriteOverride, isTypeChecked, lang, position, position, position, prettyPrint, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, throwTypes, translate, 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.MethodDecl

      `methodInstance, methodInstance, returnType, returnType`

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

      `flags, flags, formals, formals, id, name, name, procedureInstance, throwTypes, throwTypes`

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

      `body, body`

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

      `codeBody, codeInstance`

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

      `memberInstance`

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

      `id, javadoc, javadoc`

- - ### Field Detail

    - #### startLabel

          protected LabelNode startLabel

      Deprecated.

    - #### returnLabel

          protected LabelNode returnLabel

      Deprecated.

    - #### constraints

          protected java.util.List<ConstraintNode<Assertion>> constraints

      Deprecated.

  - ### Constructor Detail

    - #### JifMethodDecl_c

          public JifMethodDecl_c(polyglot.util.Position pos,
                                 polyglot.types.Flags flags,
                                 polyglot.ast.TypeNode returnType,
                                 polyglot.ast.Id name,
                                 LabelNode startLabel,
                                 java.util.List<polyglot.ast.Formal> formals,
                                 LabelNode returnLabel,
                                 java.util.List<polyglot.ast.TypeNode> throwTypes,
                                 java.util.List<ConstraintNode<Assertion>> constraints,
                                 polyglot.ast.Block body,
                                 polyglot.ast.Javadoc javadoc)

      Deprecated.

    - #### JifMethodDecl_c

          public JifMethodDecl_c(polyglot.util.Position pos,
                                 polyglot.types.Flags flags,
                                 polyglot.ast.TypeNode returnType,
                                 polyglot.ast.Id name,
                                 LabelNode startLabel,
                                 java.util.List<polyglot.ast.Formal> formals,
                                 LabelNode returnLabel,
                                 java.util.List<polyglot.ast.TypeNode> throwTypes,
                                 java.util.List<ConstraintNode<Assertion>> constraints,
                                 polyglot.ast.Block body,
                                 polyglot.ast.Javadoc javadoc,
                                 polyglot.ast.Ext ext)

      Deprecated.

  - ### Method Detail

    - #### startLabel

          public LabelNode startLabel()

      Deprecated.
      Specified by:
        `startLabel` in interface `JifProcedureDecl`

    - #### startLabel

          public JifMethodDecl startLabel(LabelNode startLabel)

      Deprecated.
      Specified by:
        `startLabel` in interface `JifMethodDecl`

    - #### startLabel

          protected <N extends JifMethodDecl_c> N startLabel(N n,
                                                             LabelNode startLabel)

      Deprecated.

    - #### returnLabel

          public LabelNode returnLabel()

      Deprecated.
      Specified by:
        `returnLabel` in interface `JifProcedureDecl`

    - #### returnLabel

          public JifMethodDecl returnLabel(LabelNode returnLabel)

      Deprecated.
      Specified by:
        `returnLabel` in interface `JifMethodDecl`

    - #### returnLabel

          protected <N extends JifMethodDecl_c> N returnLabel(N n,
                                                              LabelNode returnLabel)

      Deprecated.

    - #### constraints

          public java.util.List<ConstraintNode<Assertion>> constraints()

      Deprecated.
      Specified by:
        `constraints` in interface `JifProcedureDecl`

    - #### constraints

          public JifMethodDecl constraints(java.util.List<ConstraintNode<Assertion>> constraints)

      Deprecated.
      Specified by:
        `constraints` in interface `JifMethodDecl`

    - #### constraints

          protected <N extends JifMethodDecl_c> N constraints(N n,
                                                              java.util.List<ConstraintNode<Assertion>> constraints)

      Deprecated.

    - #### visitChildren

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

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

    - #### reconstruct

          protected <N extends JifMethodDecl_c> N reconstruct(N n,
                                                              polyglot.ast.Id name,
                                                              polyglot.ast.TypeNode returnType,
                                                              LabelNode startLabel,
                                                              java.util.List<polyglot.ast.Formal> formals,
                                                              LabelNode returnLabel,
                                                              java.util.List<polyglot.ast.TypeNode> throwTypes,
                                                              java.util.List<ConstraintNode<Assertion>> constraints,
                                                              polyglot.ast.Block body)

      Deprecated.

    - #### disambiguate

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

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

    - #### unrenameArgs

          public static JifMethodInstance unrenameArgs(JifMethodInstance jmi)

      Deprecated.
      Rename the arg labels and arg roots. This is needed to make sure that during substitution of args in a recursive method call, we don't confuse the FIXME: This javadoc trails off...