Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data Bimap l r = Bimap !l !r
- class DomCod z where
- type DomCodCnt l r = (DomCod l, DomCod r, Dom l ~ Cod r, Dom r ~ Cod l)
- contL :: Bimap l r -> l
- contR :: Bimap l r -> r
- memberL :: DomCod l => Bimap l r -> Dom l -> Bool
- memberR :: DomCod r => Bimap l r -> Dom r -> Bool
- lookupL :: DomCod l => Bimap l r -> Dom l -> Maybe (Cod l)
- lookupR :: DomCod r => Bimap l r -> Dom r -> Maybe (Cod r)
- empty :: DomCodCnt l r => Bimap l r
- null :: DomCod l => Bimap l r -> Bool
- size :: DomCod l => Bimap l r -> Int
- fromList :: DomCodCnt l r => [(Dom l, Dom r)] -> Bimap l r
- toList :: DomCodCnt l r => Bimap l r -> [(Dom l, Dom r)]
- insert :: DomCodCnt l r => Bimap l r -> (Dom l, Cod l) -> Bimap l r
- deleteByL :: DomCodCnt l r => Bimap l r -> Dom l -> Bimap l r
- deleteByR :: DomCodCnt l r => Bimap l r -> Dom r -> Bimap l r
- findWithDefaultL :: DomCodCnt l r => Cod l -> Bimap l r -> Dom l -> Cod l
- findWithDefaultR :: DomCodCnt l r => Cod r -> Bimap l r -> Dom r -> Cod r
Documentation
Bijection between finite sets.
Both data types are strict here.
Bimap !l !r |
(Eq r, Eq l) => Eq (Bimap l r) Source # | |
(Read r, Read l) => Read (Bimap l r) Source # | |
(Show r, Show l) => Show (Bimap l r) Source # | |
Generic (Bimap l r) Source # | |
(DomCodCnt l r, ToJSON (Dom l), ToJSON (Dom r)) => ToJSON (Bimap l r) Source # | |
(DomCodCnt l r, FromJSON (Dom l), FromJSON (Dom r)) => FromJSON (Bimap l r) Source # | |
(Binary l, Binary r) => Binary (Bimap l r) Source # | |
(Serialize l, Serialize r) => Serialize (Bimap l r) Source # | |
(NFData l, NFData r) => NFData (Bimap l r) Source # | |
type Rep (Bimap l r) Source # | |