DeepDarkFantasy-0.2017.8.10: A DSL for creating neural network.

Safe HaskellSafe
LanguageHaskell2010

DDF.Bimap

Documentation

class (Int r, Map r) => Bimap r where Source #

Minimal complete definition

size, lookupL, lookupR, empty, singleton, toMapL, toMapR, insert, updateL, updateR

Methods

size :: r h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => r h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => r h (Bimap a b -> b -> Maybe a) Source #

empty :: r h (Bimap a b) Source #

singleton :: r h ((a, b) -> Bimap a b) Source #

toMapL :: r h (Bimap a b -> Map a b) Source #

toMapR :: r h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => r h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => r h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => r h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

Instances

Bimap Eval Source # 

Methods

size :: Eval h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => Eval h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => Eval h (Bimap a b -> b -> Maybe a) Source #

empty :: Eval h (Bimap a b) Source #

singleton :: Eval h ((a, b) -> Bimap a b) Source #

toMapL :: Eval h (Bimap a b -> Map a b) Source #

toMapR :: Eval h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => Eval h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => Eval h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => Eval h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

Bimap Show Source # 

Methods

size :: Show h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => Show h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => Show h (Bimap a b -> b -> Maybe a) Source #

empty :: Show h (Bimap a b) Source #

singleton :: Show h ((a, b) -> Bimap a b) Source #

toMapL :: Show h (Bimap a b -> Map a b) Source #

toMapR :: Show h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => Show h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => Show h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => Show h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

Bimap Size Source # 

Methods

size :: Size h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => Size h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => Size h (Bimap a b -> b -> Maybe a) Source #

empty :: Size h (Bimap a b) Source #

singleton :: Size h ((a, b) -> Bimap a b) Source #

toMapL :: Size h (Bimap a b -> Map a b) Source #

toMapR :: Size h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => Size h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => Size h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => Size h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

SubL c Bimap => Bimap (Term c) Source # 

Methods

size :: Term c h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => Term c h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => Term c h (Bimap a b -> b -> Maybe a) Source #

empty :: Term c h (Bimap a b) Source #

singleton :: Term c h ((a, b) -> Bimap a b) Source #

toMapL :: Term c h (Bimap a b -> Map a b) Source #

toMapR :: Term c h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => Term c h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => Term c h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => Term c h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

Bimap r => Bimap (UnHOAS r) Source # 

Methods

size :: UnHOAS r h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => UnHOAS r h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => UnHOAS r h (Bimap a b -> b -> Maybe a) Source #

empty :: UnHOAS r h (Bimap a b) Source #

singleton :: UnHOAS r h ((a, b) -> Bimap a b) Source #

toMapL :: UnHOAS r h (Bimap a b -> Map a b) Source #

toMapR :: UnHOAS r h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => UnHOAS r h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => UnHOAS r h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => UnHOAS r h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

Bimap r => Bimap (UnLiftEnv r) Source # 

Methods

size :: UnLiftEnv r h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => UnLiftEnv r h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => UnLiftEnv r h (Bimap a b -> b -> Maybe a) Source #

empty :: UnLiftEnv r h (Bimap a b) Source #

singleton :: UnLiftEnv r h ((a, b) -> Bimap a b) Source #

toMapL :: UnLiftEnv r h (Bimap a b -> Map a b) Source #

toMapR :: UnLiftEnv r h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => UnLiftEnv r h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => UnLiftEnv r h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => UnLiftEnv r h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

Bimap r => Bimap (ImpW r) Source # 

Methods

size :: ImpW r h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => ImpW r h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => ImpW r h (Bimap a b -> b -> Maybe a) Source #

empty :: ImpW r h (Bimap a b) Source #

singleton :: ImpW r h ((a, b) -> Bimap a b) Source #

toMapL :: ImpW r h (Bimap a b -> Map a b) Source #

toMapR :: ImpW r h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => ImpW r h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => ImpW r h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => ImpW r h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

type SubLC c Bimap Source # 
type SubLC c Bimap = (SubL c Int, SubL c Map)

lookupL2 :: (Ord b, Ord a, Bimap r) => r h (Bimap a b) -> r h a -> r h (Maybe b) Source #

size1 :: Bimap r => r h (Bimap a b) -> r h Int Source #

insert2 :: (Ord b, Ord a, Bimap r) => r h (a, b) -> r h (Bimap a b) -> r h (Bimap a b) Source #

module DDF.Prod

module DDF.Option