Class LiteralStarPredicate

    • Constructor Detail

      • LiteralStarPredicate

        public LiteralStarPredicate​(RolapStar.Column column,
                                    boolean value)
        Creates a LiteralStarPredicate.
        Parameters:
        column - Constrained column
        value - Truth value
    • Method Detail

      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • evaluate

        public boolean evaluate​(List<Object> valueList)
        Description copied from interface: StarPredicate
        Evaluates a constraint against a list of values.

        If one of the values is StarPredicate.WILDCARD, returns true if constraint is true for all possible values of that column.

        Specified by:
        evaluate in interface StarPredicate
        Overrides:
        evaluate in class AbstractColumnPredicate
        Parameters:
        valueList - List of values, one for each constrained column
        Returns:
        Whether constraint holds for given set of values
      • values

        public void values​(Collection<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​(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
      • describe

        public void describe​(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
      • getValue

        public boolean getValue()