Class Function.ArrayScalarFunction

java.lang.Object
org.apache.druid.math.expr.Function.ArrayScalarFunction
All Implemented Interfaces:
Function, NamedFunction
Direct Known Subclasses:
Function.ArrayAddElementFunction, Function.ArrayOffsetFunction, Function.ArrayOffsetOfFunction, Function.ArrayOrdinalFunction, Function.ArrayOrdinalOfFunction, Function.ArrayToStringFunction, Function.ScalarInArrayFunction
Enclosing interface:
Function

public abstract static class Function.ArrayScalarFunction extends Object implements Function
Function that takes 1 array operand and 1 scalar operand
  • Constructor Details

    • ArrayScalarFunction

      public ArrayScalarFunction()
  • Method Details

    • validateArguments

      public void validateArguments(List<Expr> args)
      Description copied from interface: Function
      Validate function arguments. This method is called whenever a FunctionExpr is created, and should validate everything that is feasible up front. Note that input type information is typically unavailable at the time Expr are parsed, and so this method is incapable of performing complete validation.
      Specified by:
      validateArguments in interface Function
    • getScalarInputs

      public Set<Expr> getScalarInputs(List<Expr> args)
      Description copied from interface: Function
      Given a list of arguments to this Function, get the set of arguments that must evaluate to a scalar value
      Specified by:
      getScalarInputs in interface Function
    • getArrayInputs

      public Set<Expr> getArrayInputs(List<Expr> args)
      Description copied from interface: Function
      Given a list of arguments to this Function, get the set of arguments that must evaluate to an array value
      Specified by:
      getArrayInputs in interface Function
    • hasArrayInputs

      public boolean hasArrayInputs()
      Description copied from interface: Function
      Returns true if a function expects any array arguments
      Specified by:
      hasArrayInputs in interface Function
    • apply

      public ExprEval apply(List<Expr> args, Expr.ObjectBinding bindings)
      Description copied from interface: Function
      Evaluate the function, given a list of arguments and a set of bindings to provide values for IdentifierExpr.
      Specified by:
      apply in interface Function