Safe Haskell | Safe-Inferred |
---|
- newtype Refcount a = Refcount {
- unRefcount :: HashMap a Int
- refcount :: (Hashable a, Eq a) => a -> Refcount a -> Int
- refcounted :: Refcount a -> [a]
- insertRef :: (Hashable a, Eq a) => a -> Refcount a -> Refcount a
- deleteRef :: (Hashable a, Eq a) => a -> Refcount a -> Maybe (Refcount a)
- removeRef :: (Hashable a, Eq a) => a -> Refcount a -> Maybe (Bool, Refcount a)
- fromList :: (Hashable a, Eq a) => [a] -> Refcount a
Documentation
Maintain a collection of objects with duplication counts.
Refcount | |
|
refcounted :: Refcount a -> [a]Source
Retrieve the refcounted objects.
insertRef :: (Hashable a, Eq a) => a -> Refcount a -> Refcount aSource
Insert an object and increment its count.
deleteRef :: (Hashable a, Eq a) => a -> Refcount a -> Maybe (Refcount a)Source
Remove a reference to an element and decrease its count, possibly removing it from the set.
Returns Nothing
if the element wasn't found, or Just set
.