Copyright | (c) Andrey Mulik 2020 |
---|---|
License | BSD-style |
Maintainer | work.a.mulik@gmail.com |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell2010 |
SDP.HashSet
Contents
Synopsis
- module SDP.Hashable
- module SDP.Linear
- module SDP.Set
- data HashSet a
Exports
module SDP.Hashable
module SDP.Linear
module SDP.Set
Hash set
A set of values. A set cannot contain duplicate values.
Instances
Foldable HashSet | |
Defined in Data.HashSet.Internal Methods fold :: Monoid m => HashSet m -> m # foldMap :: Monoid m => (a -> m) -> HashSet a -> m # foldMap' :: Monoid m => (a -> m) -> HashSet a -> m # foldr :: (a -> b -> b) -> b -> HashSet a -> b # foldr' :: (a -> b -> b) -> b -> HashSet a -> b # foldl :: (b -> a -> b) -> b -> HashSet a -> b # foldl' :: (b -> a -> b) -> b -> HashSet a -> b # foldr1 :: (a -> a -> a) -> HashSet a -> a # foldl1 :: (a -> a -> a) -> HashSet a -> a # elem :: Eq a => a -> HashSet a -> Bool # maximum :: Ord a => HashSet a -> a # minimum :: Ord a => HashSet a -> a # | |
Eq1 HashSet | |
Ord1 HashSet | |
Defined in Data.HashSet.Internal | |
Show1 HashSet | |
Hashable1 HashSet | |
Defined in Data.HashSet.Internal | |
(Eq a, Hashable a) => IsList (HashSet a) | |
Eq a => Eq (HashSet a) | Note that, in the presence of hash collisions, equal
In general, the lack of substitutivity can be observed with any function that depends on the key ordering, such as folds and traversals. |
(Data a, Eq a, Hashable a) => Data (HashSet a) | |
Defined in Data.HashSet.Internal Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HashSet a -> c (HashSet a) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (HashSet a) # toConstr :: HashSet a -> Constr # dataTypeOf :: HashSet a -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (HashSet a)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (HashSet a)) # gmapT :: (forall b. Data b => b -> b) -> HashSet a -> HashSet a # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HashSet a -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HashSet a -> r # gmapQ :: (forall d. Data d => d -> u) -> HashSet a -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> HashSet a -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> HashSet a -> m (HashSet a) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HashSet a -> m (HashSet a) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HashSet a -> m (HashSet a) # | |
Ord a => Ord (HashSet a) | |
(Eq a, Hashable a, Read a) => Read (HashSet a) | |
Show a => Show (HashSet a) | |
(Hashable a, Eq a) => Semigroup (HashSet a) | O(n+m) To obtain good performance, the smaller set must be presented as the first argument. Examples
|
(Hashable a, Eq a) => Monoid (HashSet a) | O(n+m) To obtain good performance, the smaller set must be presented as the first argument. Examples
|
NFData a => NFData (HashSet a) | |
Defined in Data.HashSet.Internal | |
Hashable a => Hashable (HashSet a) | |
Defined in Data.HashSet.Internal | |
Nullable (HashSet e) Source # | |
Estimate (HashSet e) Source # | |
Defined in SDP.HashSet Methods (<.=>) :: HashSet e -> Int -> Ordering # (<==>) :: Compare (HashSet e) # (.==) :: HashSet e -> Int -> Bool # (./=) :: HashSet e -> Int -> Bool # (.<=) :: HashSet e -> Int -> Bool # (.>=) :: HashSet e -> Int -> Bool # (.<) :: HashSet e -> Int -> Bool # (.>) :: HashSet e -> Int -> Bool # (.<.) :: HashSet e -> HashSet e -> Bool # (.>.) :: HashSet e -> HashSet e -> Bool # (.<=.) :: HashSet e -> HashSet e -> Bool # (.>=.) :: HashSet e -> HashSet e -> Bool # | |
(Eq e, Hashable e) => Set (HashSet e) e Source # | |
Defined in SDP.HashSet Methods set :: HashSet e -> HashSet e # insert :: e -> HashSet e -> HashSet e # delete :: e -> HashSet e -> HashSet e # (/\) :: HashSet e -> HashSet e -> HashSet e # (\/) :: HashSet e -> HashSet e -> HashSet e # (\\) :: HashSet e -> HashSet e -> HashSet e # (\^/) :: HashSet e -> HashSet e -> HashSet e # (/?\) :: HashSet e -> HashSet e -> Bool # (\?/) :: HashSet e -> HashSet e -> Bool # (\+/) :: HashSet e -> HashSet e -> Bool # intersections :: Foldable f => f (HashSet e) -> HashSet e # unions :: Foldable f => f (HashSet e) -> HashSet e # differences :: Foldable f => f (HashSet e) -> HashSet e # symdiffs :: Foldable f => f (HashSet e) -> HashSet e # member :: e -> HashSet e -> Bool # lookupLT :: e -> HashSet e -> Maybe e # lookupGT :: e -> HashSet e -> Maybe e # | |
Bordered (HashSet e) Int Source # | |
Defined in SDP.HashSet | |
type Item (HashSet a) | |
Defined in Data.HashSet.Internal |