Class DateTimeArithmeticOperation
- All Implemented Interfaces:
NamedWriteable,Writeable,ConfigurationAware,Resolvable,EvaluatorMapper,ConfigurationFunction
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.xpack.esql.expression.predicate.operator.arithmetic.DenseVectorArithmeticOperation
DenseVectorArithmeticOperation.DenseVectorBinaryEvaluatorNested classes/interfaces inherited from class org.elasticsearch.xpack.esql.expression.predicate.operator.arithmetic.EsqlArithmeticOperation
EsqlArithmeticOperation.BinaryEvaluatorNested classes/interfaces inherited from class org.elasticsearch.xpack.esql.core.expression.Expression
Expression.TypeResolutionNested classes/interfaces inherited from class org.elasticsearch.xpack.esql.core.tree.Node
Node.NodeStringFormatNested classes/interfaces inherited from interface org.elasticsearch.xpack.esql.evaluator.mapper.EvaluatorMapper
EvaluatorMapper.ToEvaluatorNested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V> -
Field Summary
Fields inherited from class org.elasticsearch.xpack.esql.core.expression.function.scalar.ScalarFunction
MAX_BYTES_REF_RESULT_SIZEFields inherited from class org.elasticsearch.xpack.esql.core.tree.Node
TO_STRING_MAX_LINES, TO_STRING_MAX_WIDTHFields inherited from interface org.elasticsearch.xpack.esql.capabilities.ConfigurationAware
CONFIGURATION_MARKER -
Method Summary
Modifier and TypeMethodDescriptionprotected Expression.TypeResolutionCheck if the two input types are compatible for this operationbooleanfinal Objectfold(FoldContext ctx) Evaluate this expression statically to a constant.inthashCode()protected Expression.TypeResolutionresolveInputType(Expression e, TypeResolutions.ParamOrdinal paramOrdinal) toEvaluator(EvaluatorMapper.ToEvaluator toEvaluator) Convert this into anExpressionEvaluator.Methods inherited from class org.elasticsearch.xpack.esql.expression.predicate.operator.arithmetic.EsqlArithmeticOperation
dataType, formatIncompatibleTypesMessage, resolveTypeMethods inherited from class org.elasticsearch.xpack.esql.expression.predicate.operator.arithmetic.ArithmeticOperation
swapLeftAndRightMethods inherited from class org.elasticsearch.xpack.esql.core.expression.predicate.BinaryOperator
canonicalize, collectCommutative, isCommutativeMethods inherited from class org.elasticsearch.xpack.esql.core.expression.predicate.BinaryPredicate
function, nodeString, symbolMethods inherited from class org.elasticsearch.xpack.esql.core.expression.function.scalar.BinaryScalarFunction
foldable, left, replaceChildren, replaceChildren, right, writeToMethods inherited from class org.elasticsearch.xpack.esql.core.expression.function.Function
arguments, functionName, nullableMethods inherited from class org.elasticsearch.xpack.esql.core.expression.Expression
canonical, childrenResolved, propertiesToString, references, resolved, semanticEquals, semanticHash, toString, toString, typeResolvedMethods inherited from class org.elasticsearch.xpack.esql.core.tree.Node
allMatch, anyMatch, children, collect, collect, collect, collectFirstChildren, collectLeaves, doCollectFirst, forEachDown, forEachDown, forEachDownMayReturnEarly, forEachProperty, forEachPropertyDown, forEachPropertyOnly, forEachPropertyUp, forEachUp, forEachUp, info, nodeName, nodeProperties, nodeString, replaceChildrenSameSize, source, sourceLocation, sourceText, transformChildren, transformChildren, transformDown, transformDown, transformDown, transformDown, transformDownSkipBranch, transformNodeProps, transformPropertiesDown, transformPropertiesOnly, transformPropertiesUp, transformUp, transformUp, transformUpMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.elasticsearch.xpack.esql.capabilities.ConfigurationAware
configuration, withConfigurationMethods inherited from interface org.elasticsearch.xpack.esql.evaluator.mapper.EvaluatorMapper
foldMethods inherited from interface org.elasticsearch.common.io.stream.NamedWriteable
getWriteableName
-
Method Details
-
resolveInputType
protected Expression.TypeResolution resolveInputType(Expression e, TypeResolutions.ParamOrdinal paramOrdinal) - Overrides:
resolveInputTypein classDenseVectorArithmeticOperation
-
checkCompatibility
Description copied from class:EsqlArithmeticOperationCheck if the two input types are compatible for this operation- Overrides:
checkCompatibilityin classDenseVectorArithmeticOperation- Returns:
- TypeResolution.TYPE_RESOLVED iff the types are compatible. Otherwise, an appropriate type resolution error.
-
fold
Description copied from class:ExpressionEvaluate this expression statically to a constant. It is an error to call this ifExpression.foldable()returns false.- Overrides:
foldin classEsqlArithmeticOperation
-
toEvaluator
Description copied from interface:EvaluatorMapperConvert this into anExpressionEvaluator.Note for implementors: If you are implementing this function, you should call the passed-in lambda on your children, after doing any other manipulation (casting, etc.) necessary.
Note for Callers: If you are attempting to call this method, and you have an
Expressionand aLayout, you likely want to callEvalMapper.toEvaluator(org.elasticsearch.xpack.esql.core.expression.FoldContext, org.elasticsearch.xpack.esql.core.expression.Expression, org.elasticsearch.xpack.esql.planner.Layout)instead. On the other hand, if you already have something that looks like the parameter for this method, you should call this method with that function.Build an
ExpressionEvaluator.Factoryfor the tree of expressions rooted at this node. This is only guaranteed to return a sensible evaluator if this node has a valid type. If this node is a subclass ofExpressionthen "valid type" means thatExpression.typeResolved()returns a non-error resolution. If Expression.typeResolved() returns an error then this method may throw. Or return an evaluator that produces garbage. Or return an evaluator that throws when run.- Specified by:
toEvaluatorin interfaceEvaluatorMapper- Overrides:
toEvaluatorin classDenseVectorArithmeticOperation
-
hashCode
public int hashCode()- Overrides:
hashCodein classBinaryPredicate<Object,Object, Object, BinaryArithmeticOperation>
-
equals
- Overrides:
equalsin classBinaryPredicate<Object,Object, Object, BinaryArithmeticOperation>
-