Package org.apache.calcite.linq4j.tree
Class Expression
- java.lang.Object
-
- org.apache.calcite.linq4j.tree.AbstractNode
-
- org.apache.calcite.linq4j.tree.Expression
-
- All Implemented Interfaces:
Node
- Direct Known Subclasses:
BinaryExpression,ConstantExpression,DefaultExpression,DynamicExpression,IndexExpression,InvocationExpression,LambdaExpression,ListInitExpression,MemberExpression,MemberInitExpression,MethodCallExpression,NewArrayExpression,NewExpression,ParameterExpression,TernaryExpression,TypeBinaryExpression,UnaryExpression
public abstract class Expression extends AbstractNode
Analogous to LINQ's System.Linq.Expression.
-
-
Field Summary
-
Fields inherited from class org.apache.calcite.linq4j.tree.AbstractNode
nodeType, type
-
-
Constructor Summary
Constructors Constructor Description Expression(ExpressionType nodeType, Type type)Creates an Expression.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract Expressionaccept(Shuttle shuttle)booleancanReduce()Indicates that the node can be reduced to a simpler node.-
Methods inherited from class org.apache.calcite.linq4j.tree.AbstractNode
accept, accept, accept0, equals, evaluate, getNodeType, getType, hashCode, toString
-
-
-
-
Constructor Detail
-
Expression
public Expression(ExpressionType nodeType, Type type)
Creates an Expression.The type of the expression may, at the caller's discretion, be a regular class (because
ClassimplementsType) or it may be a different implementation that retains information about type parameters.- Parameters:
nodeType- Node typetype- Type of the expression
-
-
Method Detail
-
accept
public abstract Expression accept(Shuttle shuttle)
- Specified by:
acceptin interfaceNode- Overrides:
acceptin classAbstractNode
-
canReduce
public boolean canReduce()
Indicates that the node can be reduced to a simpler node. If this returns true, Reduce() can be called to produce the reduced form.
-
-