Class ExpressionFactory.ExpressionBase

All Implemented Interfaces:
AttributedObject, ExpressionInternal, Node, Statement, Expression, CopyInterceptor
Direct Known Subclasses:
ExpressionFactory.ArrayIndexExpression, ExpressionFactory.ArrayLengthExpression, ExpressionFactory.BinaryOperatorExpression, ExpressionFactory.CallExpression, ExpressionFactory.CastExpression, ExpressionFactory.ConstantExpression, ExpressionFactory.FieldAccessExpressionBase, ExpressionFactory.IfExpression, ExpressionFactory.InstofExpression, ExpressionFactory.NewArrExpression, ExpressionFactory.NewObjExpression, ExpressionFactory.SuperCallExpression, ExpressionFactory.SuperObjExpression, ExpressionFactory.ThisExpression, ExpressionFactory.ThisObjExpression, ExpressionFactory.UnaryOperatorExpression, ExpressionFactory.VariableImpl, ExpressionFactory.VoidExpression
Enclosing class:
ExpressionFactory

public abstract static class ExpressionFactory.ExpressionBase extends NodeBase implements ExpressionInternal
  • Field Details

  • Constructor Details

  • Method Details

    • isAssignable

      public boolean isAssignable()
      Specified by:
      isAssignable in interface ExpressionInternal
    • copy

      public <T extends Node> T copy(Class<T> cls)
      Description copied from interface: Node
      Make a deep copy of this node. If nn = n.copy(), then n.parent() == nn.parent(), which also means that the parent is NOT copied.
      Specified by:
      copy in interface Node
      Overrides:
      copy in class NodeBase
    • copy

      public <T extends Node> T copy(Node newParent, Class<T> cls)
      Description copied from interface: Node
      Copy setting a new parent in the result.
      Specified by:
      copy in interface Node
      Overrides:
      copy in class NodeBase
    • accept

      public abstract void accept(Visitor v)
      Description copied from interface: Node
      Accept the visitor and allow it to perform actions on this Node.
      Specified by:
      accept in interface Node
      Overrides:
      accept in class NodeBase