Uses of Interface
org.apache.druid.math.expr.Expr
Packages that use Expr
Package
Description
-
Uses of Expr in org.apache.druid.math.expr
Subinterfaces of Expr in org.apache.druid.math.exprModifier and TypeInterfaceDescriptionstatic interfacestub interface to allowParser.flatten(Expr)a way to recognize macro functions that exend thisClasses in org.apache.druid.math.expr that implement ExprModifier and TypeClassDescriptionstatic classBase class forExprfromExprMacroTable.ExprMacro.static classBase class forExprfromExprMacroTable.ExprMacrothat accepts all-scalar arguments.classFields in org.apache.druid.math.expr with type parameters of type ExprMethods in org.apache.druid.math.expr that return ExprModifier and TypeMethodDescriptionstatic ExprParser.applyUnappliedBindings(Expr expr, Expr.BindingAnalysis bindingAnalysis, List<String> bindingsToApply) Applies a transformation to anExprgiven a list of known (or uknown) multi-value input columns that are used in a scalar manner, walking theExprtree and lifting array variables into theLambdaExprofApplyFunctionExprand transforming the arguments ofFunctionExpras necessary.default ExprExpr.asSingleThreaded(Expr.InputBindingInspector inspector) static ExprCreate aStringExprfor a string constantstatic Exprstatic ExprParser.foldUnappliedBindings(Expr expr, Expr.BindingAnalysis bindingAnalysis, List<String> bindingsToApply, String accumulatorId) Applies a transformation to anExprgiven a list of known (or uknown) multi-value input columns that are used in a scalar manner, walking theExprtree and lifting array variables into theLambdaExprofApplyFunctionExprand transforming the arguments ofFunctionExpras necessary.Returns an expr corresponding to a function call if this table has an entry forfunctionName.LambdaExpr.getExpr()static ExprParser.identifier(String identifier) Create anIdentifierExprfor some identifierstatic ExprParser.parse(String in, ExprMacroTable macroTable) Parse a string into a flattenedExpr.static ExprParser.parse(String in, ExprMacroTable macroTable, boolean withFlatten) default ExprExpr.rewriteBindings(Map<String, String> rewriteMap) ReplacesIdentifierExprwhoseIdentifierExpr.bindingare present as a key in the supplied map with the map value.static ExprExpr.singleThreaded(Expr expr, Expr.InputBindingInspector inspector) Returns the single-threaded version of the given expression tree.abstract ExprExprEval.toExpr()Provide theExpr.Shuttlewith anExprto inspect and potentially rewrite.Expr.visit(Expr.Shuttle shuttle) Programatically rewrite theExprtree with aExpr.Shuttle.ExprMacroTable.BaseMacroFunctionExpr.visit(Expr.Shuttle shuttle) LambdaExpr.visit(Expr.Shuttle shuttle) Methods in org.apache.druid.math.expr that return types with arguments of type ExprModifier and TypeMethodDescriptionExprs.decomposeAnd(Expr expr) Decomposes any expr into a list of exprs that, if ANDed together, are equivalent to the input expr.ExprMacroTable.BaseMacroFunctionExpr.getArgs()ExprMacroTable.ExprMacroFunctionExpr.getArgs()ApplyFunction.CartesianFoldFunction.getArrayInputs(List<Expr> args) ApplyFunction.CartesianMapFunction.getArrayInputs(List<Expr> args) ApplyFunction.FilterFunction.getArrayInputs(List<Expr> args) ApplyFunction.FoldFunction.getArrayInputs(List<Expr> args) ApplyFunction.getArrayInputs(List<Expr> args) Get list of input arguments which must evaluate to an arrayExprTypeApplyFunction.MapFunction.getArrayInputs(List<Expr> args) ApplyFunction.MatchFunction.getArrayInputs(List<Expr> args) Function.ArrayContainsFunction.getArrayInputs(List<Expr> args) Function.ArrayLengthFunction.getArrayInputs(List<Expr> args) Function.ArrayOverlapFunction.getArrayInputs(List<Expr> args) Function.ArrayScalarFunction.getArrayInputs(List<Expr> args) Function.ArraysFunction.getArrayInputs(List<Expr> args) Function.ArraySliceFunction.getArrayInputs(List<Expr> args) Function.ArrayToMultiValueStringFunction.getArrayInputs(List<Expr> args) Function.CastFunc.getArrayInputs(List<Expr> args) Function.getArrayInputs(List<Expr> args) Given a list of arguments to thisFunction, get the set of arguments that must evaluate to an array valueFunction.MultiValueStringHarmonizeNullsFunction.getArrayInputs(List<Expr> args) Function.MultiValueStringToArrayFunction.getArrayInputs(List<Expr> args) Function.MvContainsFunction.getArrayInputs(List<Expr> args) Function.MvOverlapFunction.getArrayInputs(List<Expr> args) Function.ArrayContainsFunction.getScalarInputs(List<Expr> args) Function.ArrayLengthFunction.getScalarInputs(List<Expr> args) Function.ArrayOverlapFunction.getScalarInputs(List<Expr> args) Function.ArrayScalarFunction.getScalarInputs(List<Expr> args) Function.ArraysFunction.getScalarInputs(List<Expr> args) Function.ArraySliceFunction.getScalarInputs(List<Expr> args) Function.ArrayToMultiValueStringFunction.getScalarInputs(List<Expr> args) Function.CastFunc.getScalarInputs(List<Expr> args) Function.getScalarInputs(List<Expr> args) Given a list of arguments to thisFunction, get the set of arguments that must evaluate to a scalar valueFunction.MultiValueStringHarmonizeNullsFunction.getScalarInputs(List<Expr> args) Function.MultiValueStringToArrayFunction.getScalarInputs(List<Expr> args) Function.MvContainsFunction.getScalarInputs(List<Expr> args) Function.MvOverlapFunction.getScalarInputs(List<Expr> args) static com.google.common.base.Supplier<Expr>Parser.lazyParse(String in, ExprMacroTable macroTable) Create a memoized lazy supplier to parse a string into a flattenedExpr.Methods in org.apache.druid.math.expr with parameters of type ExprModifier and TypeMethodDescriptionstatic ExprParser.applyUnappliedBindings(Expr expr, Expr.BindingAnalysis bindingAnalysis, List<String> bindingsToApply) Applies a transformation to anExprgiven a list of known (or uknown) multi-value input columns that are used in a scalar manner, walking theExprtree and lifting array variables into theLambdaExprofApplyFunctionExprand transforming the arguments ofFunctionExpras necessary.default booleanExpr.InputBindingInspector.areNumeric(Expr... args) Check if all providedExprcan infer the output type asTypeSignature.isNumeric()with a value of true (or null, which is not a type) There must be at least one expression with a computable numeric output type for this method to return true.default booleanExpr.InputBindingInspector.areSameTypes(Expr... args) Check if all arguments are the same type (or null, which is not a type) This method should only be used ifExpr.InputBindingInspector.getType(java.lang.String)produces accurate information for all bindings (no null value for type unless the input binding does not exist and so the input is always null)default booleanCheck if all providedExprcan infer the output type asTypeSignature.isPrimitive()(non-array) with a value of true (or null, which is not a type) There must be at least one expression with a computable scalar output type for this method to return true.Exprs.cannotVectorize(Expr expr) default booleanExpr.InputBindingInspector.canVectorize(Expr... args) Check if every providedExprcomputescanVectorize(InputBindingInspector)to a value of trueExprs.decomposeAnd(Expr expr) Decomposes any expr into a list of exprs that, if ANDed together, are equivalent to the input expr.Exprs.decomposeEquals(Expr expr, String rightPrefix) Decomposes an equality expr into anEquality.static Exprstatic ExprParser.foldUnappliedBindings(Expr expr, Expr.BindingAnalysis bindingAnalysis, List<String> bindingsToApply, String accumulatorId) Applies a transformation to anExprgiven a list of known (or uknown) multi-value input columns that are used in a scalar manner, walking theExprtree and lifting array variables into theLambdaExprofApplyFunctionExprand transforming the arguments ofFunctionExpras necessary.static booleanEvals.isAllConstants(Expr... exprs) static ExprExpr.singleThreaded(Expr expr, Expr.InputBindingInspector inspector) Returns the single-threaded version of the given expression tree.static Expr.ObjectBindingInputBindings.validateConstant(Expr expr) Empty binding that throw aUOEif anything attempts to lookup an identifier type or valuestatic voidParser.validateExpr(Expr expression, Expr.BindingAnalysis bindingAnalysis) Validate that an expression uses input bindings in a type consistent manner.default voidNamedFunction.validationHelperCheckArgIsLiteral(Expr arg, String argName) Helper method for implementors performing validation to check that an argument is a literalProvide theExpr.Shuttlewith anExprto inspect and potentially rewrite.Method parameters in org.apache.druid.math.expr with type arguments of type ExprModifier and TypeMethodDescriptionstatic Expr.BindingAnalysisExprs.analyzeBindings(List<Expr> args) Return aExpr.BindingAnalysisthat represents an analysis of all provided args.ApplyFunction.apply(LambdaExpr lambdaExpr, List<Expr> argsExpr, Expr.ObjectBinding bindings) ApplyFunction.CartesianFoldFunction.apply(LambdaExpr lambdaExpr, List<Expr> argsExpr, Expr.ObjectBinding bindings) ApplyFunction.CartesianMapFunction.apply(LambdaExpr lambdaExpr, List<Expr> argsExpr, Expr.ObjectBinding bindings) ApplyFunction.FilterFunction.apply(LambdaExpr lambdaExpr, List<Expr> argsExpr, Expr.ObjectBinding bindings) ApplyFunction.FoldFunction.apply(LambdaExpr lambdaExpr, List<Expr> argsExpr, Expr.ObjectBinding bindings) ApplyFunction.MapFunction.apply(LambdaExpr lambdaExpr, List<Expr> argsExpr, Expr.ObjectBinding bindings) ApplyFunction.MatchFunction.apply(LambdaExpr lambdaExpr, List<Expr> argsExpr, Expr.ObjectBinding bindings) Function.apply(List<Expr> args, Expr.ObjectBinding bindings) Evaluate the function, given a list of arguments and a set of bindings to provide values forIdentifierExpr.Function.ArrayConstructorFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ArrayContainsFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ArrayLengthFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ArrayOverlapFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ArrayScalarFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ArraysFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ArraySliceFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ArrayToMultiValueStringFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.BivariateFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.CaseSearchedFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.CaseSimpleFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.CoalesceFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ConcatFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ConditionFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.IsDistinctFromFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.IsFalseFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.IsNotDistinctFromFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.IsNotFalseFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.IsNotNullFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.IsNotTrueFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.IsNullFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.IsTrueFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.LowerFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.LpadFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.MultiValueStringHarmonizeNullsFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.MultiValueStringToArrayFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.MvContainsFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.MvOverlapFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ParseLong.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.Pi.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ReduceFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.ReplaceFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.Round.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.RpadFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.SizeFormatFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.StringFormatFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.StringToArrayFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.StrlenFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.StrposFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.SubMonthFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.SubstringFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.TimestampFromEpochFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.UnivariateFunction.apply(List<Expr> args, Expr.ObjectBinding bindings) Function.UpperFunc.apply(List<Expr> args, Expr.ObjectBinding bindings) default booleanExpr.InputBindingInspector.areNumeric(List<Expr> args) Check if all providedExprcan infer the output type asTypeSignature.isNumeric()with a value of true (or null, which is not a type) There must be at least one expression with a computable numeric output type for this method to return true.default booleanExpr.InputBindingInspector.areSameTypes(List<Expr> args) Check if all arguments are the same type (or null, which is not a type) This method should only be used ifExpr.InputBindingInspector.getType(java.lang.String)produces accurate information for all bindings (no null value for type unless the input binding does not exist and so the input is always null)default booleanCheck if all providedExprcan infer the output type asTypeSignature.isPrimitive()(non-array) with a value of true (or null, which is not a type) There must be at least one expression with a computable scalar output type for this method to return true.default BitmapColumnIndexFunction.asBitmapColumnIndex(ColumnIndexSelector selector, List<Expr> args) Allows aFunctionto be computed into aBitmapColumnIndex.default ColumnIndexSupplierFunction.asColumnIndexSupplier(ColumnIndexSelector selector, ColumnType outputType, List<Expr> args) Allows aFunctionto provide anColumnIndexSuppliergiven access to the underlyingColumnIndexSupplierandColumnHolderof the base table.Function.ArrayContainsFunction.asSingleThreaded(List<Expr> args, Expr.InputBindingInspector inspector) Function.ArrayOverlapFunction.asSingleThreaded(List<Expr> args, Expr.InputBindingInspector inspector) default FunctionFunction.asSingleThreaded(List<Expr> args, Expr.InputBindingInspector inspector) Function.MvContainsFunction.asSingleThreaded(List<Expr> args, Expr.InputBindingInspector inspector) Function.MvOverlapFunction.asSingleThreaded(List<Expr> args, Expr.InputBindingInspector inspector) Function.ScalarInArrayFunction.asSingleThreaded(List<Expr> args, Expr.InputBindingInspector inspector) default <T> ExprVectorProcessor<T>ApplyFunction.asVectorProcessor(Expr.VectorInputBindingInspector inspector, LambdaExpr lambda, List<Expr> args) Builds a 'vectorized' function expression processor, that can build vectorized processors for its input values usingasVectorProcessor(org.apache.druid.math.expr.Expr.VectorInputBindingInspector), for use in vectorized query engines.<T> ExprVectorProcessor<T>Function.Abs.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Acos.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Asin.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) default <T> ExprVectorProcessor<T>Function.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) Builds a 'vectorized' function expression processor, that can build vectorized processors for its input values usingasVectorProcessor(org.apache.druid.math.expr.Expr.VectorInputBindingInspector), for use in vectorized query engines.<T> ExprVectorProcessor<T>Function.Atan.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Atan2.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.BitwiseAnd.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.BitwiseComplement.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.BitwiseConvertDoubleToLongBits.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.BitwiseConvertLongBitsToDouble.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.BitwiseOr.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.BitwiseShiftLeft.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.BitwiseShiftRight.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.BitwiseXor.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.CaseSearchedFunc.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.CaseSimpleFunc.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.CastFunc.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Cbrt.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Ceil.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.CoalesceFunc.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.ConcatFunc.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.ConditionFunc.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.CopySign.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Cos.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Cosh.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Cot.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Div.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Exp.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Expm1.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Floor.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.GetExponent.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Hypot.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.IsNotNullFunc.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.IsNullFunc.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Log.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Log10.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Log1p.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Max.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Min.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.NextAfter.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.NextUp.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.ParseLong.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Pi.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Pow.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Remainder.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Rint.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Scalb.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Signum.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Sin.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Sinh.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Sqrt.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Tan.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Tanh.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.ToDegrees.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.ToRadians.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) <T> ExprVectorProcessor<T>Function.Ulp.asVectorProcessor(Expr.VectorInputBindingInspector inspector, List<Expr> args) default booleanApplyFunction.canVectorize(Expr.InputBindingInspector inspector, LambdaExpr lambda, List<Expr> args) Check if an apply function can be 'vectorized', for a givenLambdaExprand set ofExprinputs.default booleanExpr.InputBindingInspector.canVectorize(List<Expr> args) Check if every providedExprcomputescanVectorize(InputBindingInspector)to a value of truebooleanFunction.BivariateBitwiseMathFunction.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.BivariateMathFunction.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) default booleanFunction.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) Check if a function can be 'vectorized', for a given set ofExprinputs.booleanFunction.CaseSearchedFunc.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.CaseSimpleFunc.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.CastFunc.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.CoalesceFunc.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.ConcatFunc.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.ConditionFunc.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.IsNotNullFunc.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.IsNullFunc.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.ParseLong.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.Pi.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.Scalb.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) booleanFunction.UnivariateMathFunction.canVectorize(Expr.InputBindingInspector inspector, List<Expr> args) static Expr.BindingAnalysisExpr.BindingAnalysis.collectExprs(Collection<Expr> exprs) Create an instance by combining a collection of analyses fromanalyzeInputs().static ExpressionTypeExpressionTypeConversion.conditional(Expr.InputBindingInspector inspector, List<Expr> args) Infer the output type of a list of possible 'conditional' expression outputs (where any of these could be the output expression if the corresponding case matching expression evaluates to true)Returns an expr corresponding to a function call if this table has an entry forfunctionName.ApplyFunction.CartesianFoldFunction.getArrayInputs(List<Expr> args) ApplyFunction.CartesianMapFunction.getArrayInputs(List<Expr> args) ApplyFunction.FilterFunction.getArrayInputs(List<Expr> args) ApplyFunction.FoldFunction.getArrayInputs(List<Expr> args) ApplyFunction.getArrayInputs(List<Expr> args) Get list of input arguments which must evaluate to an arrayExprTypeApplyFunction.MapFunction.getArrayInputs(List<Expr> args) ApplyFunction.MatchFunction.getArrayInputs(List<Expr> args) Function.ArrayContainsFunction.getArrayInputs(List<Expr> args) Function.ArrayLengthFunction.getArrayInputs(List<Expr> args) Function.ArrayOverlapFunction.getArrayInputs(List<Expr> args) Function.ArrayScalarFunction.getArrayInputs(List<Expr> args) Function.ArraysFunction.getArrayInputs(List<Expr> args) Function.ArraySliceFunction.getArrayInputs(List<Expr> args) Function.ArrayToMultiValueStringFunction.getArrayInputs(List<Expr> args) Function.CastFunc.getArrayInputs(List<Expr> args) Function.getArrayInputs(List<Expr> args) Given a list of arguments to thisFunction, get the set of arguments that must evaluate to an array valueFunction.MultiValueStringHarmonizeNullsFunction.getArrayInputs(List<Expr> args) Function.MultiValueStringToArrayFunction.getArrayInputs(List<Expr> args) Function.MvContainsFunction.getArrayInputs(List<Expr> args) Function.MvOverlapFunction.getArrayInputs(List<Expr> args) ApplyFunction.BaseFoldFunction.getOutputType(Expr.InputBindingInspector inspector, LambdaExpr expr, List<Expr> args) ApplyFunction.BaseMapFunction.getOutputType(Expr.InputBindingInspector inspector, LambdaExpr expr, List<Expr> args) ApplyFunction.FilterFunction.getOutputType(Expr.InputBindingInspector inspector, LambdaExpr expr, List<Expr> args) ApplyFunction.getOutputType(Expr.InputBindingInspector inspector, LambdaExpr expr, List<Expr> args) Compute the output type of this function for a given lambda and the argument expressions which will be applied as its inputs.ApplyFunction.MatchFunction.getOutputType(Expr.InputBindingInspector inspector, LambdaExpr expr, List<Expr> args) Function.ArrayAddElementFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayConstructorFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayContainsFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayLengthFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayOffsetFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayOffsetOfFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayOrdinalFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayOrdinalOfFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayOverlapFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArraySliceFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArraysMergeFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayToMultiValueStringFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayToStringFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.BitwiseComplement.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.BitwiseConvertDoubleToLongBits.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.BitwiseConvertLongBitsToDouble.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.BivariateBitwiseMathFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.BivariateMathFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.CaseSearchedFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.CaseSimpleFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.CastFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.CoalesceFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ConcatFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ConditionFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.Div.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.DoubleBivariateMathFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.DoubleUnivariateMathFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.GetExponent.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Compute the output type of this function for a given set of argument expression inputs.Function.IsFalseFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.IsNotDistinctFromFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.IsNotFalseFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.IsNotNullFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.IsNotTrueFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.IsNullFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.IsTrueFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.LeftFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.LowerFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.LpadFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.MultiValueStringHarmonizeNullsFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.MultiValueStringToArrayFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.MvContainsFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.MvOverlapFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ParseLong.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.Pi.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ReduceFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.RepeatFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ReplaceFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ReverseFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.RightFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.Round.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.RpadFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ScalarInArrayFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.Scalb.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.SizeFormatFunc.getOutputType(Expr.InputBindingInspector inputTypes, List<Expr> args) Function.StringFormatFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.StringToArrayFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.StrlenFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.StrposFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.SubMonthFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.SubstringFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.TimestampFromEpochFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.UnivariateMathFunction.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.UpperFunc.getOutputType(Expr.InputBindingInspector inspector, List<Expr> args) Function.ArrayContainsFunction.getScalarInputs(List<Expr> args) Function.ArrayLengthFunction.getScalarInputs(List<Expr> args) Function.ArrayOverlapFunction.getScalarInputs(List<Expr> args) Function.ArrayScalarFunction.getScalarInputs(List<Expr> args) Function.ArraysFunction.getScalarInputs(List<Expr> args) Function.ArraySliceFunction.getScalarInputs(List<Expr> args) Function.ArrayToMultiValueStringFunction.getScalarInputs(List<Expr> args) Function.CastFunc.getScalarInputs(List<Expr> args) Function.getScalarInputs(List<Expr> args) Given a list of arguments to thisFunction, get the set of arguments that must evaluate to a scalar valueFunction.MultiValueStringHarmonizeNullsFunction.getScalarInputs(List<Expr> args) Function.MultiValueStringToArrayFunction.getScalarInputs(List<Expr> args) Function.MvContainsFunction.getScalarInputs(List<Expr> args) Function.MvOverlapFunction.getScalarInputs(List<Expr> args) static booleanEvals.isAllConstants(List<Expr> exprs) voidApplyFunction.CartesianFoldFunction.validateArguments(LambdaExpr lambdaExpr, List<Expr> args) voidApplyFunction.CartesianMapFunction.validateArguments(LambdaExpr lambdaExpr, List<Expr> args) voidApplyFunction.FilterFunction.validateArguments(LambdaExpr lambdaExpr, List<Expr> args) voidApplyFunction.FoldFunction.validateArguments(LambdaExpr lambdaExpr, List<Expr> args) voidApplyFunction.MapFunction.validateArguments(LambdaExpr lambdaExpr, List<Expr> args) voidApplyFunction.MatchFunction.validateArguments(LambdaExpr lambdaExpr, List<Expr> args) voidApplyFunction.validateArguments(LambdaExpr lambdaExpr, List<Expr> args) Validate function arguments.voidFunction.ArrayConstructorFunction.validateArguments(List<Expr> args) voidFunction.ArrayContainsFunction.validateArguments(List<Expr> args) voidFunction.ArrayLengthFunction.validateArguments(List<Expr> args) voidFunction.ArrayOverlapFunction.validateArguments(List<Expr> args) voidFunction.ArrayScalarFunction.validateArguments(List<Expr> args) voidFunction.ArraysFunction.validateArguments(List<Expr> args) voidFunction.ArraySliceFunction.validateArguments(List<Expr> args) voidFunction.ArrayToMultiValueStringFunction.validateArguments(List<Expr> args) voidFunction.BivariateFunction.validateArguments(List<Expr> args) voidFunction.CaseSearchedFunc.validateArguments(List<Expr> args) voidFunction.CaseSimpleFunc.validateArguments(List<Expr> args) voidFunction.CoalesceFunc.validateArguments(List<Expr> args) voidFunction.ConcatFunc.validateArguments(List<Expr> args) voidFunction.ConditionFunc.validateArguments(List<Expr> args) voidFunction.IsFalseFunc.validateArguments(List<Expr> args) voidFunction.IsNotDistinctFromFunc.validateArguments(List<Expr> args) voidFunction.IsNotFalseFunc.validateArguments(List<Expr> args) voidFunction.IsNotNullFunc.validateArguments(List<Expr> args) voidFunction.IsNotTrueFunc.validateArguments(List<Expr> args) voidFunction.IsNullFunc.validateArguments(List<Expr> args) voidFunction.IsTrueFunc.validateArguments(List<Expr> args) voidFunction.LowerFunc.validateArguments(List<Expr> args) voidFunction.LpadFunc.validateArguments(List<Expr> args) voidFunction.MultiValueStringHarmonizeNullsFunction.validateArguments(List<Expr> args) voidFunction.MultiValueStringToArrayFunction.validateArguments(List<Expr> args) voidFunction.MvContainsFunction.validateArguments(List<Expr> args) voidFunction.MvOverlapFunction.validateArguments(List<Expr> args) voidFunction.NvlFunc.validateArguments(List<Expr> args) voidFunction.ParseLong.validateArguments(List<Expr> args) voidFunction.Pi.validateArguments(List<Expr> args) voidFunction.ReduceFunction.validateArguments(List<Expr> args) voidFunction.ReplaceFunc.validateArguments(List<Expr> args) voidFunction.Round.validateArguments(List<Expr> args) voidFunction.RpadFunc.validateArguments(List<Expr> args) voidFunction.SizeFormatFunc.validateArguments(List<Expr> args) voidFunction.StringFormatFunc.validateArguments(List<Expr> args) voidFunction.StringToArrayFunction.validateArguments(List<Expr> args) voidFunction.StrlenFunc.validateArguments(List<Expr> args) voidFunction.StrposFunc.validateArguments(List<Expr> args) voidFunction.SubMonthFunc.validateArguments(List<Expr> args) voidFunction.SubstringFunc.validateArguments(List<Expr> args) voidFunction.TimestampFromEpochFunc.validateArguments(List<Expr> args) voidFunction.UnivariateFunction.validateArguments(List<Expr> args) voidFunction.UpperFunc.validateArguments(List<Expr> args) voidFunction.validateArguments(List<Expr> args) Validate function arguments.default voidNamedFunction.validationHelperCheckAnyOfArgumentCount(List<Expr> args, int... counts) Helper method for implementors performing validation to check if argument count is any of specified countsdefault voidNamedFunction.validationHelperCheckArgumentCount(List<Expr> args, int count) Helper method for implementors performing validation to check if the argument count is expecteddefault voidNamedFunction.validationHelperCheckArgumentCount(LambdaExpr lambdaExpr, List<Expr> args, int count) Helper method for implementors performing validation to check that the argument list is some expected size.default voidNamedFunction.validationHelperCheckArgumentRange(List<Expr> args, int start, int end) default voidNamedFunction.validationHelperCheckLambaArgumentCount(LambdaExpr lambdaExpr, List<Expr> args) Helper method for implementors performing validation to check that theLambdaExpr.identifierCount()matches the number of arguments being passed to itdefault voidNamedFunction.validationHelperCheckMinArgumentCount(List<Expr> args, int count) Helper method for implementors performing validation to check if there are at least as many arguments as specifieddefault voidNamedFunction.validationHelperCheckMinArgumentCount(LambdaExpr lambdaExpr, List<Expr> args, int count) Helper method for implementors performing validation to check that the argument list is at least some expected size.Expr.BindingAnalysis.withArrayArguments(Set<Expr> arrayArguments) Add set of arguments asExpr.BindingAnalysis.arrayVariablesthat are *directly*IdentifierExpr, else they are ignored.Expr.BindingAnalysis.withScalarArguments(Set<Expr> scalarArguments) Add set of arguments asExpr.BindingAnalysis.scalarVariablesthat are *directly*IdentifierExpr, else they are ignored.Constructors in org.apache.druid.math.expr with parameters of type ExprModifierConstructorDescriptionExpressionDruidPredicateFactory(Expr expr, ColumnCapabilities inputCapabilites) ExpressionPredicateIndexSupplier(Expr expr, String inputColumn, ExpressionType inputType, ColumnType outputType, DictionaryEncodedValueIndex<?> inputColumnValueIndexes) Constructor parameters in org.apache.druid.math.expr with type arguments of type ExprModifierConstructorDescriptionprotectedBaseMacroFunctionExpr(ExprMacroTable.ExprMacro macro, List<Expr> macroArgs) Constructor for subclasses.BaseScalarMacroFunctionExpr(ExprMacroTable.ExprMacro macro, List<Expr> macroArgs) LambdaInputBindingInspector(Expr.InputBindingInspector inspector, LambdaExpr expr, List<Expr> args) -
Uses of Expr in org.apache.druid.math.expr.vector
Methods in org.apache.druid.math.expr.vector with parameters of type ExprModifier and TypeMethodDescriptionstatic <T> ExprVectorProcessor<T>VectorProcessors.and(Expr.VectorInputBindingInspector inputTypes, Expr left, Expr right) Creates anExprVectorProcessorfor the logical 'and' operator, which produces a long typed vector output with values set by the following rules: true/true -> true (1) true/null, null/true, null/null -> null false/null, null/false -> false (0)<T> ExprVectorProcessor<T>BivariateFunctionVectorProcessorFactory.asProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) <T> ExprVectorProcessor<T>SimpleVectorComparisonProcessorFactory.asProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) <T> ExprVectorProcessor<T>VectorMathBivariateDoubleProcessorFactory.asProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) <T> ExprVectorProcessor<T>VectorMathBivariateLongProcessorFactory.asProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) <T> ExprVectorProcessor<T>VectorMathBivariateProcessorFactory.asProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) <T> ExprVectorProcessor<T>VectorMathUnivariateDoubleProcessorFactory.asProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) <T> ExprVectorProcessor<T>VectorMathUnivariateLongProcessorFactory.asProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) <T> ExprVectorProcessor<T>VectorMathUnivariateProcessorFactory.asProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) static <T> ExprVectorProcessor<T>VectorStringProcessors.concat(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<double[]>SimpleVectorMathBivariateDoubleProcessorFactory.doubleLongProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<long[]>SimpleVectorMathBivariateLongProcessorFactory.doubleLongProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<double[]>SimpleVectorMathBivariateProcessorFactory.doubleLongProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<double[]>VectorMathBivariateDoubleProcessorFactory.doubleLongProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<long[]>VectorMathBivariateLongProcessorFactory.doubleLongProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<double[]>VectorMathBivariateProcessorFactory.doubleLongProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<double[]>SimpleVectorMathUnivariateDoubleProcessorFactory.doubleProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) final ExprVectorProcessor<long[]>SimpleVectorMathUnivariateLongProcessorFactory.doubleProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) final ExprVectorProcessor<double[]>SimpleVectorMathUnivariateProcessorFactory.doubleProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) abstract ExprVectorProcessor<double[]>VectorMathUnivariateDoubleProcessorFactory.doubleProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) abstract ExprVectorProcessor<long[]>VectorMathUnivariateLongProcessorFactory.doubleProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) abstract ExprVectorProcessor<double[]>VectorMathUnivariateProcessorFactory.doubleProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) final ExprVectorProcessor<double[]>SimpleVectorMathBivariateDoubleProcessorFactory.doublesProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<long[]>SimpleVectorMathBivariateLongProcessorFactory.doublesProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<double[]>SimpleVectorMathBivariateProcessorFactory.doublesProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<double[]>VectorMathBivariateDoubleProcessorFactory.doublesProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<long[]>VectorMathBivariateLongProcessorFactory.doublesProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<double[]>VectorMathBivariateProcessorFactory.doublesProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) static <T> ExprVectorProcessor<T>VectorConditionalProcessors.ifFunction(Expr.VectorInputBindingInspector inspector, Expr conditionExpr, Expr thenExpr, Expr elseExpr) static <T> ExprVectorProcessor<T>VectorProcessors.isNotNull(Expr.VectorInputBindingInspector inspector, Expr expr) Creates anExprVectorProcessorfor the 'isnotnull' function, that produces a "boolean" typed output vector (long[]) with values set to 1 if the input value was not null or 0 if it was null.static <T> ExprVectorProcessor<T>VectorProcessors.isNull(Expr.VectorInputBindingInspector inspector, Expr expr) Creates anExprVectorProcessorfor the 'isnull' function, that produces a "boolean" typed output vector (long[]) with values set to 1 if the input value was null or 0 if it was not null.final ExprVectorProcessor<double[]>SimpleVectorMathBivariateDoubleProcessorFactory.longDoubleProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<long[]>SimpleVectorMathBivariateLongProcessorFactory.longDoubleProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<double[]>SimpleVectorMathBivariateProcessorFactory.longDoubleProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<double[]>VectorMathBivariateDoubleProcessorFactory.longDoubleProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<long[]>VectorMathBivariateLongProcessorFactory.longDoubleProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<double[]>VectorMathBivariateProcessorFactory.longDoubleProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<double[]>SimpleVectorMathUnivariateDoubleProcessorFactory.longProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) final ExprVectorProcessor<long[]>SimpleVectorMathUnivariateLongProcessorFactory.longProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) final ExprVectorProcessor<long[]>SimpleVectorMathUnivariateProcessorFactory.longProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) abstract ExprVectorProcessor<double[]>VectorMathUnivariateDoubleProcessorFactory.longProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) abstract ExprVectorProcessor<long[]>VectorMathUnivariateLongProcessorFactory.longProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) abstract ExprVectorProcessor<long[]>VectorMathUnivariateProcessorFactory.longProcessor(Expr.VectorInputBindingInspector inspector, Expr arg) final ExprVectorProcessor<double[]>SimpleVectorMathBivariateDoubleProcessorFactory.longsProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<long[]>SimpleVectorMathBivariateLongProcessorFactory.longsProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) final ExprVectorProcessor<long[]>SimpleVectorMathBivariateProcessorFactory.longsProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<double[]>VectorMathBivariateDoubleProcessorFactory.longsProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<long[]>VectorMathBivariateLongProcessorFactory.longsProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) abstract ExprVectorProcessor<long[]>VectorMathBivariateProcessorFactory.longsProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) static <T> ExprVectorProcessor<T>VectorProcessors.makeSymmetricalProcessor(Expr.VectorInputBindingInspector inspector, Expr left, Expr right, Supplier<ExprVectorProcessor<?>> longProcessor, Supplier<ExprVectorProcessor<?>> doubleProcessor, Supplier<ExprVectorProcessor<?>> objectProcessor) Make a 2 argument, symmetrical processor where both argments must be the same input type and produce the same output type long, long -> long double, double -> double string, string -> stringstatic <T> ExprVectorProcessor<T>VectorProcessors.not(Expr.VectorInputBindingInspector inspector, Expr expr) Creates anExprVectorProcessorfor the logical 'not' operator, which produces a long typed vector output with values set by the following rules: false -> true (1) null -> null true -> false (0)static <T> ExprVectorProcessor<T>VectorProcessors.or(Expr.VectorInputBindingInspector inspector, Expr left, Expr right) Creates anExprVectorProcessorfor the logical 'or' operator, which produces a long typed vector output with values set by the following rules: true/null, null/true -> true (1) false/null, null/false, null/null -> null false/false -> false (0)static <T> ExprVectorProcessor<T>VectorProcessors.parseLong(Expr.VectorInputBindingInspector inspector, Expr arg, int radix) Creates anExprVectorProcessorthat will parse a string into a long value given a radix.Method parameters in org.apache.druid.math.expr.vector with type arguments of type ExprModifier and TypeMethodDescription<T> ExprVectorProcessor<T>MultivariateVectorProcessorFactory.asProcessor(List<Expr> args, Expr.VectorInputBindingInspector inspector) static booleanFallbackVectorProcessor.canFallbackVectorize(List<Expr> args, ExpressionType outputType, Expr.InputBindingInspector inspector) Returns whetherFallbackVectorProcessor.create(Function, List, Expr.VectorInputBindingInspector)can be used to make a fallback vectorized processor for a function with the given output type and arguments.static booleanFallbackVectorProcessor.canFallbackVectorize(LambdaExpr lambdaExpr, List<Expr> args, ExpressionType outputType, Expr.InputBindingInspector inspector) Returns whetherFallbackVectorProcessor.create(ApplyFunction, LambdaExpr, List, Expr.VectorInputBindingInspector)can be used to make a fallback vectorized processor for a function with the given output type and arguments.static <T> ExprVectorProcessor<T>VectorConditionalProcessors.caseSearchedFunction(Expr.VectorInputBindingInspector inspector, List<Expr> args) static <T> ExprVectorProcessor<T>VectorConditionalProcessors.caseSimpleFunction(Expr.VectorInputBindingInspector inspector, List<Expr> args) static <T> ExprVectorProcessor<T>VectorConditionalProcessors.coalesce(Expr.VectorInputBindingInspector inspector, List<Expr> args) static <T> ExprVectorProcessor<T>VectorStringProcessors.concat(Expr.VectorInputBindingInspector inspector, List<Expr> inputs) static <T> ExprVectorProcessor<T>FallbackVectorProcessor.create(ApplyFunction function, LambdaExpr lambdaExpr, List<Expr> args, Expr.VectorInputBindingInspector inspector) Create a processor for a non-vectorizableApplyFunction.static <T> ExprVectorProcessor<T>FallbackVectorProcessor.create(ExprMacroTable.ExprMacro macro, List<Expr> args, Expr.VectorInputBindingInspector inspector) Create a processor for a non-vectorizableExprMacroTable.ExprMacro.static <T> ExprVectorProcessor<T>FallbackVectorProcessor.create(Function function, List<Expr> args, Expr.VectorInputBindingInspector inspector) Create a processor for a non-vectorizableFunction. -
Uses of Expr in org.apache.druid.query.aggregation
Fields in org.apache.druid.query.aggregation with type parameters of type ExprModifier and TypeFieldDescriptionprotected final com.google.common.base.Supplier<Expr>SimpleDoubleAggregatorFactory.fieldExpressionprotected final com.google.common.base.Supplier<Expr>SimpleFloatAggregatorFactory.fieldExpressionprotected final com.google.common.base.Supplier<Expr>SimpleLongAggregatorFactory.fieldExpressionMethods in org.apache.druid.query.aggregation that return ExprModifier and TypeMethodDescriptionExpressionLambdaAggregatorFactory.FactorizePlan.getExpression()Method parameters in org.apache.druid.query.aggregation with type arguments of type ExprModifier and TypeMethodDescriptionstatic booleanAggregatorUtil.canVectorize(ColumnInspector columnInspector, String fieldName, String expression, com.google.common.base.Supplier<Expr> fieldExpression) static com.google.common.base.Supplier<byte[]>AggregatorUtil.getSimpleAggregatorCacheKeySupplier(byte aggregatorType, String fieldName, com.google.common.base.Supplier<Expr> fieldExpression) static VectorValueSelectorAggregatorUtil.makeVectorValueSelector(VectorColumnSelectorFactory columnSelectorFactory, String fieldName, String expression, com.google.common.base.Supplier<Expr> fieldExpression) Make aVectorValueSelectorfor primitive numeric or expression virtual column inputs. -
Uses of Expr in org.apache.druid.query.aggregation.post
Constructors in org.apache.druid.query.aggregation.post with parameters of type ExprModifierConstructorDescriptionExpressionPostAggregator(String name, String expression, String ordering, ColumnType outputType, Expr parsed) Constructor for a pre-parsed expression. -
Uses of Expr in org.apache.druid.query.expression
Classes in org.apache.druid.query.expression that implement ExprModifier and TypeClassDescriptionclassclassstatic classstatic classMethods in org.apache.druid.query.expression that return ExprModifier and TypeMethodDescriptionTimestampFloorExprMacro.TimestampFloorExpr.getArg()Exposed for Druid SQL: this is used by Expressions.toQueryGranularity.Method parameters in org.apache.druid.query.expression with type arguments of type ExprModifier and TypeMethodDescription -
Uses of Expr in org.apache.druid.query.filter
Constructors in org.apache.druid.query.filter with parameters of type ExprModifierConstructorDescriptionExpressionDimFilter(String expression, Expr parsed, FilterTuning filterTuning) Constructor for already-parsed-and-analyzed expressions. -
Uses of Expr in org.apache.druid.segment
Methods in org.apache.druid.segment with parameters of type ExprModifier and TypeMethodDescriptionstatic <T> TColumnProcessors.makeProcessor(Expr expr, ColumnType exprTypeHint, ColumnProcessorFactory<T> processorFactory, ColumnSelectorFactory selectorFactory) Make a processor for a particular expression. -
Uses of Expr in org.apache.druid.segment.filter
Constructor parameters in org.apache.druid.segment.filter with type arguments of type ExprModifierConstructorDescriptionExpressionFilter(com.google.common.base.Supplier<Expr> expr, FilterTuning filterTuning) -
Uses of Expr in org.apache.druid.segment.join
Methods in org.apache.druid.segment.join that return ExprMethods in org.apache.druid.segment.join that return types with arguments of type ExprModifier and TypeMethodDescriptionJoinConditionAnalysis.getNonEquiConditions()Return a list of non-equi-conditions (see class-level javadoc).Methods in org.apache.druid.segment.join with parameters of type ExprModifier and TypeMethodDescriptionstatic JoinConditionAnalysisJoinConditionAnalysis.forExpression(String condition, Expr conditionExpr, String rightPrefix) Analyze a join condition from a pre-parsed expression.Constructors in org.apache.druid.segment.join with parameters of type Expr -
Uses of Expr in org.apache.druid.segment.join.filter
Methods in org.apache.druid.segment.join.filter that return types with arguments of type ExprModifier and TypeMethodDescriptionJoinFilterColumnCorrelationAnalysis.getBaseExpressions()Equiconditions.getLhsExprs(String rhsColumn) Constructor parameters in org.apache.druid.segment.join.filter with type arguments of type Expr -
Uses of Expr in org.apache.druid.segment.virtual
Methods in org.apache.druid.segment.virtual that return ExprModifier and TypeMethodDescriptionExpressionPlan.getAppliedExpression()If an expression uses a multi-valued input in a scalar manner, the expression can be automatically transformed to map these values across the expression, applying the original expression to every value.ExpressionPlan.getAppliedFoldExpression(String accumulatorId) If an expression uses a multi-valued input in a scalar manner, and the expression contains an accumulator such as for use as part of an aggregator, the expression can be automatically transformed to fold the accumulator across the values of the original expression.ExpressionPlan.getExpression()Gets the original expression that was plannedMethods in org.apache.druid.segment.virtual that return types with arguments of type ExprModifier and TypeMethodDescriptioncom.google.common.base.Supplier<Expr>ExpressionVirtualColumn.getParsedExpression()Methods in org.apache.druid.segment.virtual with parameters of type ExprModifier and TypeMethodDescriptionstatic ColumnValueSelectorExpressionSelectors.makeColumnValueSelector(ColumnSelectorFactory columnSelectorFactory, Expr expression) Makes a ColumnValueSelector whose getObject method returns an Object that is the value computed by anExprEval.static DimensionSelectorExpressionSelectors.makeDimensionSelector(ColumnSelectorFactory columnSelectorFactory, Expr expression, ExtractionFn extractionFn) Makes a single or multi-valueDimensionSelectorwrapper around aColumnValueSelectorcreated byExpressionSelectors.makeExprEvalSelector(ColumnSelectorFactory, Expr)as appropriatestatic ColumnValueSelector<ExprEval>ExpressionSelectors.makeExprEvalSelector(ColumnSelectorFactory columnSelectorFactory, Expr expression) Makes a ColumnValueSelector whose getObject method returns anExprEval.static GroupByVectorColumnSelectorExpressionVectorSelectors.makeGroupByVectorColumnSelector(VectorColumnSelectorFactory factory, Expr expression, DeferExpressionDimensions deferExpressionDimensions) Creates aExpressionDeferredGroupByVectorColumnSelectorfor the provided expression, if the providedDeferExpressionDimensionssays we should.ExpressionVectorSelectors.makeSingleValueDimensionVectorSelector(VectorColumnSelectorFactory factory, Expr expression) static ColumnValueSelectorExpressionSelectors.makeStringColumnValueSelector(ColumnSelectorFactory columnSelectorFactory, Expr expression) static VectorObjectSelectorExpressionVectorSelectors.makeVectorObjectSelector(VectorColumnSelectorFactory factory, Expr expression, ColumnType outputTypeHint) static VectorValueSelectorExpressionVectorSelectors.makeVectorValueSelector(VectorColumnSelectorFactory factory, Expr expression) static ExpressionPlanExpressionPlanner.plan(ColumnInspector inspector, Expr expression) Druid tries to be chill to expressions to make up for not having a well defined table schema across segments.Constructors in org.apache.druid.segment.virtual with parameters of type ExprModifierConstructorDescriptionExpressionColumnValueSelector(Expr expression, Expr.ObjectBinding bindings, RowIdSupplier rowIdSupplier) ExpressionVirtualColumn(String name, String expression, Expr parsedExpression, ColumnType outputType) Constructor for creating an ExpressionVirtualColumn from a pre-parsed-and-analyzed expression, where the original expression string is known.ExpressionVirtualColumn(String name, Expr parsedExpression, ColumnType outputType) Constructor for creating an ExpressionVirtualColumn from a pre-parsed expression, where the original expression string is not known.LruEvalCache(Expr expression, Expr.ObjectBinding bindings) SingleLongInputCachingExpressionColumnValueSelector(ColumnValueSelector selector, Expr expression, boolean useLruCache, RowIdSupplier rowIdSupplier) SingleStringInputCachingExpressionColumnValueSelector(DimensionSelector selector, Expr expression, RowIdSupplier rowIdSupplier) SingleStringInputDeferredEvaluationExpressionDimensionSelector(DimensionSelector selector, Expr expression) SingleStringInputDeferredEvaluationExpressionDimensionVectorSelector(SingleValueDimensionVectorSelector selector, Expr expression)