Class TimestampExtractExprMacro.TimestampExtractDynamicExpr
- java.lang.Object
-
- org.apache.druid.math.expr.ExprMacroTable.BaseMacroFunctionExpr
-
- org.apache.druid.math.expr.ExprMacroTable.BaseScalarMacroFunctionExpr
-
- org.apache.druid.query.expression.TimestampExtractExprMacro.TimestampExtractDynamicExpr
-
- All Implemented Interfaces:
Cacheable,Expr,ExprMacroTable.ExprMacroFunctionExpr
- Enclosing class:
- TimestampExtractExprMacro
public class TimestampExtractExprMacro.TimestampExtractDynamicExpr extends ExprMacroTable.BaseScalarMacroFunctionExpr
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.druid.math.expr.Expr
Expr.BindingAnalysis, Expr.InputBindingInspector, Expr.ObjectBinding, Expr.Shuttle, Expr.VectorInputBinding, Expr.VectorInputBindingInspector
-
-
Field Summary
-
Fields inherited from class org.apache.druid.math.expr.ExprMacroTable.BaseMacroFunctionExpr
args, macro
-
Fields inherited from interface org.apache.druid.math.expr.Expr
ARG_JOINER, NULL_LITERAL
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExprEvaleval(Expr.ObjectBinding bindings)ExpressionTypegetOutputType(Expr.InputBindingInspector inspector)Given anExpr.InputBindingInspector, compute what the outputExpressionTypewill be for this expression.-
Methods inherited from class org.apache.druid.math.expr.ExprMacroTable.BaseScalarMacroFunctionExpr
supplyAnalyzeInputs
-
Methods inherited from class org.apache.druid.math.expr.ExprMacroTable.BaseMacroFunctionExpr
analyzeInputs, asVectorProcessor, canVectorize, equals, getArgs, hashCode, stringify, toString, visit
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.druid.math.expr.Expr
asColumnIndexSupplier, asSingleThreaded, canFallbackVectorize, decorateCacheKeyBuilder, getBindingIfIdentifier, getCacheKey, getIdentifierExprIfIdentifierExpr, getIdentifierIfIdentifier, getLiteralValue, isIdentifier, isLiteral, isNullLiteral
-
-
-
-
Method Detail
-
eval
@Nonnull public ExprEval eval(Expr.ObjectBinding bindings)
Description copied from interface:Expr
-
getOutputType
@Nullable public ExpressionType getOutputType(Expr.InputBindingInspector inspector)
Description copied from interface:ExprGiven anExpr.InputBindingInspector, compute what the outputExpressionTypewill be for this expression. In the vectorized expression engine, ifExpr.canVectorize(InputBindingInspector)returns true, a return value of null MUST ONLY indicate that the expression has all null inputs (non-existent columns) or null constants for the entire expression. Otherwise, all vectorizable expressions must produce an output type to correctly operate with the vectorized engine. Outside the context of vectorized expressions, a return value of null can also indicate that the given type information was not enough to resolve the output type, so the expression must be evaluated using defaultExpr.eval(org.apache.druid.math.expr.Expr.ObjectBinding)handling where types are only known after evaluation, throughExprEval.type(), such as transform expressions at ingestion time
-
-