Enum ExpressionPlan.Trait

java.lang.Object
java.lang.Enum<ExpressionPlan.Trait>
org.apache.druid.segment.virtual.ExpressionPlan.Trait
All Implemented Interfaces:
Serializable, Comparable<ExpressionPlan.Trait>
Enclosing class:
ExpressionPlan

public static enum ExpressionPlan.Trait extends Enum<ExpressionPlan.Trait>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    expression has no inputs and can be optimized into a constant selector
    expression is a simple identifier expression, do not transform
    expression has inputs whose type was incomplete, such as unknown multi-valuedness, which are not explicitly used as possibly multi-valued/array inputs
    expression must be implicitly mapped across the multiple values per row of known multi-value inputs, the final output will be multi-valued
    expression explicitly using multi-valued inputs as array inputs or has array inputs
    expression produces explict multi-valued output
    expression has a single input, which may produce single or multi-valued output, but if so, it must be implicitly mappable (i.e.
    expression has a single, single valued input, and is dictionary encoded if the value is a string, and does not produce non-scalar output
    expression has inputs whose type was unresolveable
    expression is vectorizable
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the enum constant of this type with the specified name.
    Returns an array containing the constants of this enum type, in the order they are declared.

    Methods inherited from class java.lang.Enum

    clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • CONSTANT

      public static final ExpressionPlan.Trait CONSTANT
      expression has no inputs and can be optimized into a constant selector
    • IDENTIFIER

      public static final ExpressionPlan.Trait IDENTIFIER
      expression is a simple identifier expression, do not transform
    • SINGLE_INPUT_SCALAR

      public static final ExpressionPlan.Trait SINGLE_INPUT_SCALAR
      expression has a single, single valued input, and is dictionary encoded if the value is a string, and does not produce non-scalar output
    • SINGLE_INPUT_MAPPABLE

      public static final ExpressionPlan.Trait SINGLE_INPUT_MAPPABLE
      expression has a single input, which may produce single or multi-valued output, but if so, it must be implicitly mappable (i.e. the expression is not treating its input as an array and does not produce non-scalar output)
    • NEEDS_APPLIED

      public static final ExpressionPlan.Trait NEEDS_APPLIED
      expression must be implicitly mapped across the multiple values per row of known multi-value inputs, the final output will be multi-valued
    • UNKNOWN_INPUTS

      public static final ExpressionPlan.Trait UNKNOWN_INPUTS
      expression has inputs whose type was unresolveable
    • INCOMPLETE_INPUTS

      public static final ExpressionPlan.Trait INCOMPLETE_INPUTS
      expression has inputs whose type was incomplete, such as unknown multi-valuedness, which are not explicitly used as possibly multi-valued/array inputs
    • NON_SCALAR_INPUTS

      public static final ExpressionPlan.Trait NON_SCALAR_INPUTS
      expression explicitly using multi-valued inputs as array inputs or has array inputs
    • NON_SCALAR_OUTPUT

      public static final ExpressionPlan.Trait NON_SCALAR_OUTPUT
      expression produces explict multi-valued output
    • VECTORIZABLE

      public static final ExpressionPlan.Trait VECTORIZABLE
      expression is vectorizable
  • Method Details

    • values

      public static ExpressionPlan.Trait[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static ExpressionPlan.Trait valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null