Class ConcatExpression

java.lang.Object
com.strobel.expressions.Expression
com.strobel.expressions.ConcatExpression

public final class ConcatExpression extends Expression
  • Field Details

  • Constructor Details

  • Method Details

    • getOperands

      public ExpressionList<? extends Expression> getOperands()
    • getNodeType

      public ExpressionType getNodeType()
      Description copied from class: Expression
      Returns the node type of this Expression.
      Overrides:
      getNodeType in class Expression
      Returns:
      the ExpressionType that represents this expression.
    • getType

      public Type<?> getType()
      Description copied from class: Expression
      Gets the static type of the expression that this Expression represents.
      Overrides:
      getType in class Expression
      Returns:
      the Type that represents the static type of the expression.
    • accept

      protected Expression accept(ExpressionVisitor visitor)
      Description copied from class: Expression
      Dispatches to the specific visit method for this node type. For example, BinaryExpression will call into ExpressionVisitor.visitBinary().
      Overrides:
      accept in class Expression
      Parameters:
      visitor - the visitor to visit this node.
      Returns:
      the result of visiting this node.
    • update

      public final ConcatExpression update(ExpressionList<? extends Expression> operands)
    • rewrite

      final Expression rewrite(ExpressionList<? extends Expression> operands)
    • visitChildren

      protected Expression visitChildren(ExpressionVisitor visitor)
      Description copied from class: Expression
      Reduces the node and then calls the visitor on the reduced expression. Throws an exception if the node isn't reducible.
      Overrides:
      visitChildren in class Expression
      Parameters:
      visitor - an expression visitor
      Returns:
      the expression being visited, or an expression which should replace it in the tree.
    • canReduce

      public boolean canReduce()
      Description copied from class: Expression
      Indicates that the node can be reduced to a simpler node. If this returns true, reduce() can be called to produce the reduced form.
      Overrides:
      canReduce in class Expression
      Returns:
      true if the node can be reduced; otherwise, false.
    • flattenOperands

      protected void flattenOperands(ListBuffer<Expression> operands)
    • reduce

      public Expression reduce()
      Description copied from class: Expression
      Reduces this node to a simpler expression. If canReduce() returns true, this should return a valid expression. This method is allowed to return another node which itself must be reduced.
      Overrides:
      reduce in class Expression
      Returns:
      the reduced expression.