Class ListColumnPredicate

    • Constructor Detail

      • ListColumnPredicate

        public ListColumnPredicate​(RolapStar.Column column,
                                   java.util.List<StarColumnPredicate> list)
        Creates a ListColumnPredicate
        Parameters:
        column - Column being constrained
        list - List of child predicates
    • Method Detail

      • getPredicates

        public java.util.List<StarColumnPredicate> getPredicates()
        Returns the list of child predicates.
        Returns:
        list of child predicates
      • hashCode

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

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals 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.
        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.
        Parameters:
        value - Value
        Returns:
        Whether predicate is true
      • 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
      • 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)
        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').
        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.
        Parameters:
        other - Other constraint
        Returns:
        Whether constraints intersect
      • minus

        public StarColumnPredicate minus​(StarPredicate predicate)
        Description copied from interface: StarPredicate
        Returns the logical inverse of this Predicate. The result is a Predicate which holds whenever this predicate holds but the other does not.
        Parameters:
        predicate - Predicate
        Returns:
        Combined predicate