Interface Comparisons.Comparison

    • Method Detail

      • eval

        @Nullable
        Boolean eval​(@Nonnull
                     FDBRecordStoreBase<?> store,
                     @Nonnull
                     EvaluationContext context,
                     @Nullable
                     Object value)
        Evaluate this comparison for the value taken from the target record.
        Parameters:
        store - the record store for the query
        context - the evaluation context for getting the other comparison value
        value - the value taken from the record
        Returns:
        the tri-valued logic result of the comparison
      • validate

        void validate​(@Nonnull
                      Descriptors.FieldDescriptor descriptor,
                      boolean fannedOut)
        Validate that this comparison is compatible with a given record field.
        Parameters:
        descriptor - the Protobuf descriptor for the proposed comparison field
        fannedOut - whether a repeated field fans out into multiple comparisons or is treated as a single list value
      • getComparand

        @Nullable
        default Object getComparand()
        Get the comparison value without any bindings.
        Returns:
        the value to be compared
      • hasMultiColumnComparand

        default boolean hasMultiColumnComparand()
        Get whether the comparison is with the result of a multi-column key. If so, getComparand() will return a Tuple.
        Returns:
        true if the comparand is for multiple key columns
      • typelessString

        @Nonnull
        String typelessString()
        Get the printed representation of the comparison less the comparison operator itself.
        Returns:
        the typeless string