jif.ast

## Interface AmbNewArray

- All Superinterfaces:
    polyglot.ast.Ambiguous, java.lang.Cloneable, polyglot.util.Copy<polyglot.ast.Node>, polyglot.ast.Expr, polyglot.ast.Node, polyglot.ast.NodeOps, polyglot.ast.Prefix, polyglot.ast.Receiver, java.io.Serializable, polyglot.ast.Term, polyglot.ast.Typed
  All Known Implementing Classes:
    AmbNewArray_c

      public interface AmbNewArray
      extends polyglot.ast.Expr, polyglot.ast.Ambiguous

  An ambiguous new array expression. The ambiguity arises because in `new T.a[e][m]`, `e` may be either a dimension expression or a label/principal parameter.

- - ### Nested Class Summary

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

      `polyglot.util.Copy.Util`

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

      `polyglot.ast.Term.Instance`

  - ### Field Summary

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

      `ENTRY, EXIT`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `additionalDims()` Gets the number of unspecified dimensions [] from an AmbNewArray representing T.a[e][m][][]...[]
    `AmbNewArray` | `additionalDims(int addDims)` Returns a copy of this node with the number of unspecified dimensions updated.
    `polyglot.ast.TypeNode` | `baseType()` Gets the base type T.a from an AmbNewArray representing T.a[e][m].
    `AmbNewArray` | `baseType(polyglot.ast.TypeNode baseType)` Returns a copy of this node with the base type updated.
    `java.util.List<? extends polyglot.ast.Expr>` | `dims()` Gets the additional expression dimensions m from an AmbNewArray representing T.a[e][m].
    `AmbNewArray` | `dims(java.util.List<? extends polyglot.ast.Expr> dims)` Returns a copy of this node with the additional expression dimensions updated.
    `java.lang.Object` | `expr()` Gets the expr e from an AmbNewArray representing T.a[e][m].

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

      `constantValue, constantValueSet, isConstant, precedence, printSubExpr, printSubExpr, type`

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

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

    - ### 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`

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

      `type`

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

      `exceptions, exceptions, reachable, reachable`

- - ### Method Detail

    - #### baseType

          polyglot.ast.TypeNode baseType()

      Gets the base type T.a from an AmbNewArray representing T.a[e][m].

    - #### baseType

          AmbNewArray baseType(polyglot.ast.TypeNode baseType)

      Returns a copy of this node with the base type updated.

    - #### expr

          java.lang.Object expr()

      Gets the expr e from an AmbNewArray representing T.a[e][m].
      Returns:
        either an Expr or a String

    - #### dims

          java.util.List<? extends polyglot.ast.Expr> dims()

      Gets the additional expression dimensions m from an AmbNewArray representing T.a[e][m].

    - #### dims

          AmbNewArray dims(java.util.List<? extends polyglot.ast.Expr> dims)

      Returns a copy of this node with the additional expression dimensions updated.

    - #### additionalDims

          int additionalDims()

      Gets the number of unspecified dimensions [] from an AmbNewArray representing T.a[e][m][][]...[]

    - #### additionalDims

          AmbNewArray additionalDims(int addDims)

      Returns a copy of this node with the number of unspecified dimensions updated.