Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## jif.ast
Class AmbNewArray_c

    java.lang.Object
      polyglot.ast.Node_c
          polyglot.ast.Term_c
              polyglot.ast.Expr_c
                  jif.ast.AmbNewArray_c

All Implemented Interfaces:
  java.lang.Cloneable, AmbNewArray, polyglot.ast.Ambiguous, polyglot.ast.Expr, polyglot.ast.JL, polyglot.ast.Node, polyglot.ast.NodeOps, polyglot.ast.Prefix, polyglot.ast.Receiver, polyglot.ast.Term, polyglot.ast.Typed, polyglot.util.Copy

    public class AmbNewArray_c

extends polyglot.ast.Expr_c
implements AmbNewArray

An implementation of the `AmbNewArray` interface.

Field Summary
`protected int` | `addDims`
`protected polyglot.ast.TypeNode` | `baseType`
`protected java.util.List` | `dims`
`protected java.lang.Object` | `expr` The ambiguous expr.

Fields inherited from class polyglot.ast.Expr_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
`AmbNewArray_c(polyglot.util.Position pos, polyglot.ast.TypeNode baseType, java.lang.Object expr, java.util.List dims, int addDims)`

Method Summary
`java.util.List` | `acceptCFG(polyglot.visit.CFGBuilder v, java.util.List succs)` Visit this term in evaluation order.
`polyglot.ast.TypeNode` | `baseType()` Gets the base type.
`AmbNewArray` | `baseType(polyglot.ast.TypeNode baseType)` Returns a copy of this node with `baseType` updated.
`java.util.List` | `dims()` Gets the additional dimensions.
`AmbNewArray` | `dims(java.util.List dims)` Returns a copy of this node with `dims` updated.
`polyglot.ast.Node` | `disambiguate(polyglot.visit.AmbiguityRemover ar)` Disambiguates
`java.lang.Object` | `expr()` Gets the expr.
`polyglot.ast.Term` | `firstChild()`
`boolean` | `isDisambiguated()`
`void` | `prettyPrint(polyglot.util.CodeWriter w, polyglot.visit.PrettyPrinter tr)`
`protected AmbNewArray_c` | `reconstruct(polyglot.ast.TypeNode baseType, java.lang.Object expr, java.util.List dims)` Reconstructs the node.
`java.lang.String` | `toString()`
`polyglot.ast.Node` | `visitChildren(polyglot.visit.NodeVisitor v)` Visits the children of this node.

Methods inherited from class polyglot.ast.Expr_c
`booleanValue, buildTypes, byteValue, charValue, constantValue, constantValueSet, doubleValue, dump, floatValue, intValue, isConstant, isTypeChecked, longValue, precedence, printSubExpr, printSubExpr, shortValue, stringValue, type, type`

Methods inherited from class polyglot.ast.Term_c
`exceptionCheck, exceptions, exceptions, listChild, reachable, reachable`

Methods inherited from class polyglot.ast.Node_c
`addDecls, buildTypesEnter, checkConstants, childExpectedType, copy, copy, copy, del, del, disambiguateEnter, disambiguateOverride, dump, dump, enterChildScope, enterScope, error, error, exceptionCheckEnter, ext, ext, ext, ext, init, node, position, position, prettyPrint, prettyPrint, print, printBlock, printSubStmt, throwTypes, translate, typeCheck, 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.Expr
`constantValue, constantValueSet, isConstant, precedence, printSubExpr, printSubExpr, type`

Methods inherited from interface polyglot.ast.Node
`childExpectedType, del, del, dump, error, error, ext, ext, ext, ext, isTypeChecked, position, position, visit, visitChild, visitEdge, visitList`

Methods inherited from interface polyglot.ast.JL
`init, node`

Methods inherited from interface polyglot.ast.NodeOps
`addDecls, buildTypes, buildTypesEnter, checkConstants, copy, copy, disambiguateEnter, disambiguateOverride, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, prettyPrint, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride`

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`

Field Detail

### baseType

    protected polyglot.ast.TypeNode baseType

### expr

    protected java.lang.Object expr

  The ambiguous expr. May be a parameter or an array dimension.

### dims

    protected java.util.List dims

### addDims

    protected int addDims

Constructor Detail

### AmbNewArray_c

    public AmbNewArray_c(polyglot.util.Position pos,
                         polyglot.ast.TypeNode baseType,
                         java.lang.Object expr,
                         java.util.List dims,
                         int addDims)

Method Detail

### isDisambiguated

    public boolean isDisambiguated()

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

### baseType

    public polyglot.ast.TypeNode baseType()

  Gets the base type.

  Specified by:
    `baseType` in interface `AmbNewArray`

### baseType

    public AmbNewArray baseType(polyglot.ast.TypeNode baseType)

  Returns a copy of this node with `baseType` updated.

  Specified by:
    `baseType` in interface `AmbNewArray`

### expr

    public java.lang.Object expr()

  Gets the expr.

  Specified by:
    `expr` in interface `AmbNewArray`

### dims

    public java.util.List dims()

  Gets the additional dimensions.

  Specified by:
    `dims` in interface `AmbNewArray`

### dims

    public AmbNewArray dims(java.util.List dims)

  Returns a copy of this node with `dims` updated.

  Specified by:
    `dims` in interface `AmbNewArray`

### reconstruct

    protected AmbNewArray_c reconstruct(polyglot.ast.TypeNode baseType,
                                        java.lang.Object expr,
                                        java.util.List dims)

  Reconstructs the node.

### acceptCFG

    public java.util.List acceptCFG(polyglot.visit.CFGBuilder v,
                                    java.util.List succs)

  Visit this term in evaluation order.

  Specified by:
    `acceptCFG` in interface `polyglot.ast.Term`
  Specified by:
    `acceptCFG` in class `polyglot.ast.Term_c`

### firstChild

    public polyglot.ast.Term firstChild()

  Specified by:
    `firstChild` in interface `polyglot.ast.Term`

### visitChildren

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

  Visits the children of this node.

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

### toString

    public java.lang.String toString()

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

### disambiguate

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

  Disambiguates

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

### prettyPrint

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

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

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD