Interface Expression

All Known Subinterfaces:
Distribution, FunctionArg, FunctionExpression, Literal<T>, Literal<T>, NamedReference, Partitioning, SortOrder, Transform, UnparsedExpression
All Known Implementing Classes:
BucketPartitioningDTO, DayPartitioningDTO, DistributionDTO, Distributions.DistributionImpl, FieldReferenceDTO, FuncExpressionDTO, FunctionExpression.FuncExpressionImpl, FunctionPartitioningDTO, HourPartitioningDTO, IdentityPartitioningDTO, ListPartitioningDTO, Literal.LiteralImpl, LiteralDTO, Literals.LiteralImpl, MonthPartitioningDTO, NamedReference.FieldReference, NamedReference.MetadataField, Partitioning.SingleFieldPartitioning, RangePartitioningDTO, SortOrderDTO, SortOrders.SortImpl, Transform.SingleFieldTransform, Transforms.ApplyTransform, Transforms.BucketTransform, Transforms.DayTransform, Transforms.HourTransform, Transforms.IdentityTransform, Transforms.ListTransform, Transforms.MonthTransform, Transforms.RangeTransform, Transforms.TruncateTransform, Transforms.YearTransform, TruncatePartitioningDTO, UnparsedExpression.UnparsedExpressionImpl, UnparsedExpressionDTO, YearPartitioningDTO

@Evolving public interface Expression
Base class of the public logical expression API.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final Expression[]
    `EMPTY_EXPRESSION` is only used as an input when the default `children` method builds the result.
    static final NamedReference[]
    `EMPTY_NAMED_REFERENCE` is only used as an input when the default `references` method builds the result array to avoid repeatedly allocating an empty array.
  • Method Summary

    Modifier and Type
    Method
    Description
     
    default NamedReference[]
     
  • Field Details

    • EMPTY_EXPRESSION

      static final Expression[] EMPTY_EXPRESSION
      `EMPTY_EXPRESSION` is only used as an input when the default `children` method builds the result.
    • EMPTY_NAMED_REFERENCE

      static final NamedReference[] EMPTY_NAMED_REFERENCE
      `EMPTY_NAMED_REFERENCE` is only used as an input when the default `references` method builds the result array to avoid repeatedly allocating an empty array.
  • Method Details

    • children

      Expression[] children()
      Returns:
      An array of the children of this node. Children should not change.
    • references

      default NamedReference[] references()
      Returns:
      A list of fields or columns that are referenced by this expression.