public abstract class Expression extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
protected Boolean |
isConstantOperandCache |
| 构造器和说明 |
|---|
Expression() |
| 限定符和类型 | 方法和说明 |
|---|---|
abstract void |
collectPaths(Set<PartialPath> pathSet) |
abstract void |
concat(List<PartialPath> prefixPaths,
List<Expression> resultExpressions) |
abstract IntermediateLayer |
constructIntermediateLayer(long queryId,
UDTFPlan udtfPlan,
RawQueryInputLayer rawTimeSeriesInputLayer,
Map<Expression,IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression,TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner) |
abstract void |
constructUdfExecutors(Map<String,UDTFExecutor> expressionName2Executor,
ZoneId zoneId) |
boolean |
equals(Object o)
Sub-classes must not override this method.
|
abstract List<Expression> |
getExpressions()
returns the DIRECT children expressions if it has any, otherwise an EMPTY list will be returned
|
String |
getExpressionString()
Get the representation of the expression in string.
|
protected abstract String |
getExpressionStringInternal()
Sub-classes should override this method to provide valid string representation of this object.
|
int |
hashCode()
Sub-classes must not override this method.
|
boolean |
isConstantOperand()
If this expression and all of its sub-expressions are
ConstantOperand. |
protected abstract boolean |
isConstantOperandInternal()
Sub-classes should override this method indicating if the expression is a constant operand
|
boolean |
isPlainAggregationFunctionExpression() |
boolean |
isTimeSeriesGeneratingFunctionExpression() |
boolean |
isUserDefinedAggregationFunctionExpression() |
Iterator<Expression> |
iterator()
returns an iterator to traverse all the successor expressions in a level-order
|
abstract void |
removeWildcards(WildcardsRemover wildcardsRemover,
List<Expression> resultExpressions) |
String |
toString()
Sub-classes must not override this method.
|
abstract void |
updateStatisticsForMemoryAssigner(LayerMemoryAssigner memoryAssigner) |
protected Boolean isConstantOperandCache
public boolean isPlainAggregationFunctionExpression()
public boolean isUserDefinedAggregationFunctionExpression()
public boolean isTimeSeriesGeneratingFunctionExpression()
public abstract void concat(List<PartialPath> prefixPaths, List<Expression> resultExpressions)
public abstract void removeWildcards(WildcardsRemover wildcardsRemover, List<Expression> resultExpressions) throws LogicalOptimizeException
public abstract void collectPaths(Set<PartialPath> pathSet)
public abstract void constructUdfExecutors(Map<String,UDTFExecutor> expressionName2Executor, ZoneId zoneId)
public abstract void updateStatisticsForMemoryAssigner(LayerMemoryAssigner memoryAssigner)
public abstract IntermediateLayer constructIntermediateLayer(long queryId, UDTFPlan udtfPlan, RawQueryInputLayer rawTimeSeriesInputLayer, Map<Expression,IntermediateLayer> expressionIntermediateLayerMap, Map<Expression,TSDataType> expressionDataTypeMap, LayerMemoryAssigner memoryAssigner) throws QueryProcessException, IOException
protected abstract boolean isConstantOperandInternal()
public abstract List<Expression> getExpressions()
public final boolean isConstantOperand()
ConstantOperand.protected abstract String getExpressionStringInternal()
getExpressionString()public final String getExpressionString()
hashCode() and equals(Object). In other
words, same expressions should have exactly the same string representation, and different
expressions must have different string representations.public final int hashCode()
public final boolean equals(Object o)
public final String toString()
public final Iterator<Expression> iterator()
Copyright © 2022 The Apache Software Foundation. All rights reserved.