Class ValueColumnPredicate

    • Constructor Detail

      • ValueColumnPredicate

        public ValueColumnPredicate​(RolapStar.Column constrainedColumn,
                                    java.lang.Object value)
        Creates a column constraint.
        Parameters:
        value - Value to constraint the column to. (We require that it is Comparable because we will sort the values in order to generate deterministic SQL.)
    • Method Detail

      • getValue

        public java.lang.Object getValue()
        Returns the value which the column is compared to.
      • equalConstraint

        public boolean equalConstraint​(StarPredicate that)
        Description copied from interface: StarPredicate
        Returns whether this Predicate has the same constraining effect as the other constraint. This is weaker than Object.equals(Object): it is possible for two different members to constrain the same column in the same way.
        Specified by:
        equalConstraint in interface StarPredicate
        Overrides:
        equalConstraint in class AbstractColumnPredicate
        Parameters:
        that - Other predicate
        Returns:
        whether the other predicate is equivalent
      • compareTo

        public int compareTo​(java.lang.Object o)
        Specified by:
        compareTo in interface java.lang.Comparable
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • values

        public void values​(java.util.Collection<java.lang.Object> collection)
        Description copied from interface: StarColumnPredicate
        Adds the values in this constraint to a collection.
        Specified by:
        values in interface StarColumnPredicate
        Parameters:
        collection - Collection to add values to
      • evaluate

        public boolean evaluate​(java.lang.Object value)
        Description copied from interface: StarColumnPredicate
        Returns whether this constraint would return true for a given value.
        Specified by:
        evaluate in interface StarColumnPredicate
        Parameters:
        value - Value
        Returns:
        Whether predicate is true
      • describe

        public void describe​(java.lang.StringBuilder buf)
        Description copied from interface: StarPredicate
        Appends a description of this predicate to a StringBuilder. For example:
        • =any
        • =5
        • in (2, 4, 6)
        Specified by:
        describe in interface StarPredicate
        Parameters:
        buf - Builder to append to
      • intersect

        public StarColumnPredicate.Overlap intersect​(StarColumnPredicate predicate)
        Description copied from interface: StarColumnPredicate
        Applies this predicate to a predicate from the axis of a segment, and tests for overlap. The result might be that there is no overlap, full overlap (so the constraint can be removed), or partial overlap (so the constraint will need to be replaced with a stronger constraint, say 'x > 10' is replaced with 'x > 20').
        Specified by:
        intersect in interface StarColumnPredicate
        Parameters:
        predicate - Predicate
        Returns:
        description of overlap between predicates, if any
      • mightIntersect

        public boolean mightIntersect​(StarPredicate other)
        Description copied from interface: StarColumnPredicate
        Returns whether this predicate might intersect another predicate. That is, whether there might be a value which holds true for both constraints.
        Specified by:
        mightIntersect in interface StarColumnPredicate
        Parameters:
        other - Other constraint
        Returns:
        Whether constraints intersect
      • checkInList

        public BitKey checkInList​(BitKey inListLHSBitKey)
      • toInListSql

        public void toInListSql​(SqlQuery sqlQuery,
                                java.lang.StringBuilder buf)