Safe Haskell | None |
---|
- class Monoid m => DataMap m k a | m -> k a where
- class Indexed f i | f -> i where
- class OrderedMap m k a m' k' a' | m -> k a, m' -> k' a' where
- member :: DataMap m k Void => k -> Lens' m Bool
- delete :: DataMap m k a => k -> m -> m
- touch :: (Monoid a, DataMap m k a) => k -> m -> m
- insert :: DataMap m k a => k -> a -> m -> m
- singleton :: DataMap m k a => k -> a -> m
- fromList :: DataMap m k a => [(k, a)] -> m
- _set :: Set a -> Set a
- _map :: Map a b -> Map a b
- cached :: forall a b. Ord a => (a -> b) -> a -> b
- data Set a
- data Map k a
- newtype Bimap a b = Bimap (Map a b, Map b a)
- toMap :: Bimap a b -> Map a b
- keysSet :: (Eq a, Eq b) => Iso (Set a) (Set b) (Map a Void) (Map b Void)
- newtype Relation a b = Relation (Map a (Set b), Map b (Set a))
- domains :: (Ord c, Ord d) => Iso (Map b (Set a)) (Map d (Set c)) (Relation a b) (Relation c d)
- ranges :: (Ord c, Ord d) => Iso (Map a (Set b)) (Map c (Set d)) (Relation a b) (Relation c d)
- related :: (Ord a, Ord b) => a -> Lens' (Relation a b) (Set b)
- link :: (Ord a, Ord b) => a -> b -> Lens' (Relation a b) Bool
The basic data class
class OrderedMap m k a m' k' a' | m -> k a, m' -> k' a' whereSource
Map instances
Sets and maps
data Set a
A set of values a
.
Typeable1 Set | |
Foldable Set | |
Functor Set | |
Foldable Set | |
Eq a => Eq (Set a) | |
(Data a, Ord a) => Data (Set a) | |
Ord a => Ord (Set a) | |
(Read a, Ord a) => Read (Set a) | |
Show a => Show (Set a) | |
Ord a => Monoid (Set a) | |
NFData a => NFData (Set a) | |
Ord a => Semiring (Set a) | |
Ord a => Disjonctive (Set a) | |
Ord a => Monoid (Set a) | |
Ord a => Semigroup (Set a) | |
Ord a => DataMap (Set a) a Void | |
Eq b => OrderedMap (Set a) a Void (Set b) b Void | |
(Ord k, Ord a) => DataMap (Relation k a) k (Set a) |
data Map k a
A Map from keys k
to values a
.
Typeable2 Map | |
Functor (Map k) | |
Foldable (Map k) | |
Traversable (Map k) | |
Functor (Map k) | |
Foldable (Map k) | |
Eq k => Traversable (Map k) | |
Indexed (Map k) k | |
(Eq k, Eq a) => Eq (Map k a) | |
(Data k, Data a, Ord k) => Data (Map k a) | |
(Ord k, Ord v) => Ord (Map k v) | |
(Ord k, Read k, Read e) => Read (Map k e) | |
(Show k, Show a) => Show (Map k a) | |
Ord k => Monoid (Map k v) | |
(NFData k, NFData a) => NFData (Map k a) | |
(Ord k, Semigroup a) => Semiring (Map k a) | |
Ord k => Disjonctive (Map k a) | |
Ord k => Monoid (Map k a) | |
Ord k => Semigroup (Map k a) | |
Ord k => DataMap (Map k a) k a | |
Eq k' => OrderedMap (Map k a) k a (Map k' a') k' a' |
Bimaps
An invertible map
Commutative Bimap | |
(Show a, Show b) => Show (Bimap a b) | |
(Ord a, Ord b, Semigroup a, Semigroup b) => Semiring (Bimap a b) | |
(Ord a, Ord b) => Disjonctive (Bimap a b) | |
(Ord a, Ord b) => Monoid (Bimap a b) | |
(Ord a, Ord b) => Semigroup (Bimap a b) | |
(Ord a, Ord b) => DataMap (Bimap a b) a b | |
(Ord a, Ord b, Ord c, Ord d) => OrderedMap (Bimap a b) a b (Bimap c d) c d | |
(Ord b, Ord a) => DataMap (Flip Bimap b a) b a |
Relations
domains :: (Ord c, Ord d) => Iso (Map b (Set a)) (Map d (Set c)) (Relation a b) (Relation c d)Source
Define a Relation from its domain (uses the Commutative instance)