Lines Matching refs:RSet

3    RSet,
44 newtype DiscreteOrdered v => RSet v = RSet {rSetRanges :: [Range v]}
48 instance DiscreteOrdered a => Semigroup (RSet a) where
51 instance DiscreteOrdered a => Monoid (RSet a) where
55 instance DiscreteOrdered a => Monoid (RSet a) where
96 makeRangedSet :: DiscreteOrdered v => [Range v] -> RSet v
97 makeRangedSet = RSet . normaliseRangeList
102 unsafeRangedSet :: DiscreteOrdered v => [Range v] -> RSet v
103 unsafeRangedSet = RSet
106 rSingleton :: DiscreteOrdered v => v -> RSet v
110 rSetIsEmpty :: DiscreteOrdered v => RSet v -> Bool
115 rSetIsFull :: DiscreteOrdered v => RSet v -> Bool
120 rSetHas, (-?-) :: DiscreteOrdered v => RSet v -> v -> Bool
121 rSetHas (RSet ls) value = rSetHas1 ls
134 rSetIsSubset, (-<=-) :: DiscreteOrdered v => RSet v -> RSet v -> Bool
142 rSetIsSubsetStrict, (-<-) :: DiscreteOrdered v => RSet v -> RSet v -> Bool
150 rSetUnion, (-\/-) :: DiscreteOrdered v => RSet v -> RSet v -> RSet v
153 rSetUnion (RSet ls1) (RSet ls2) = RSet $ normalise $ merge ls1 ls2
165 rSetIntersection, (-/\-) :: DiscreteOrdered v => RSet v -> RSet v -> RSet v
166 rSetIntersection (RSet ls1) (RSet ls2) =
167 RSet $ filter (not . rangeIsEmpty) $ merge ls1 ls2
180 rSetDifference, (-!-) :: DiscreteOrdered v => RSet v -> RSet v -> RSet v
186 rSetNegation :: DiscreteOrdered a => RSet a -> RSet a
187 rSetNegation set = RSet $ ranges1 $ setBounds1
201 rSetEmpty :: DiscreteOrdered a => RSet a
202 rSetEmpty = RSet []
205 rSetFull :: DiscreteOrdered a => RSet a
206 rSetFull = RSet [Range BoundaryBelowAll BoundaryAboveAll]
219 -> RSet a
220 rSetUnfold bound upperFunc succFunc = RSet $ normalise $ ranges1 bound