Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Documentation
Combine (l h x) (r h x) |
(DBI l, DBI r) => DBI (Combine l r) Source # | |
z :: Combine l r (a, h) a Source # s :: Combine l r h b -> Combine l r (a, h) b Source # abs :: Combine l r (a, h) b -> Combine l r h (a -> b) Source # app :: Combine l r h (a -> b) -> Combine l r h a -> Combine l r h b Source # hoas :: (Combine l r (a, h) a -> Combine l r (a, h) b) -> Combine l r h (a -> b) Source # com :: Combine l r h ((b -> c) -> (a -> b) -> a -> c) Source # flip :: Combine l r h ((a -> b -> c) -> b -> a -> c) Source # id :: Combine l r h (a -> a) Source # const :: Combine l r h (a -> b -> a) Source # scomb :: Combine l r h ((a -> b -> c) -> (a -> b) -> a -> c) Source # | |
(Double l, Double r) => Double (Combine l r) Source # | |
double :: Double -> Combine l r h Double Source # doubleZero :: Combine l r h Double Source # doubleOne :: Combine l r h Double Source # doublePlus :: Combine l r h (Double -> Double -> Double) Source # doubleMinus :: Combine l r h (Double -> Double -> Double) Source # doubleMult :: Combine l r h (Double -> Double -> Double) Source # doubleDivide :: Combine l r h (Double -> Double -> Double) Source # | |
(Float l, Float r) => Float (Combine l r) Source # | |
float :: Float -> Combine l r h Float Source # floatZero :: Combine l r h Float Source # floatOne :: Combine l r h Float Source # floatPlus :: Combine l r h (Float -> Float -> Float) Source # floatMinus :: Combine l r h (Float -> Float -> Float) Source # floatMult :: Combine l r h (Float -> Float -> Float) Source # floatDivide :: Combine l r h (Float -> Float -> Float) Source # | |
(Option l, Option r) => Option (Combine l r) Source # | |
(Prod l, Prod r) => Prod (Combine l r) Source # | |
mkProd :: Combine l r h (a -> b -> (a, b)) Source # zro :: Combine l r h ((a, b) -> a) Source # fst :: Combine l r h ((a, b) -> b) Source # swap :: Combine l r h ((x, y) -> (y, x)) Source # curry :: Combine l r h (((a, b) -> c) -> a -> b -> c) Source # uncurry :: Combine l r h ((a -> b -> c) -> (a, b) -> c) Source # | |
(Dual l, Dual r) => Dual (Combine l r) Source # | |
(Map l, Map r) => Map (Combine l r) Source # | |
empty :: Combine l r h (Map k a) Source # singleton :: Combine l r h (k -> a -> Map k a) Source # lookup :: Ord k => Combine l r h (k -> Map k a -> Maybe a) Source # alter :: Ord k => Combine l r h ((Maybe a -> Maybe a) -> k -> Map k a -> Map k a) Source # mapMap :: Combine l r h ((a -> b) -> Map k a -> Map k b) Source # | |
(Char l, Char r) => Char (Combine l r) Source # | |
(Bool l, Bool r) => Bool (Combine l r) Source # | |
(Lang l, Lang r) => Lang (Combine l r) Source # | |
fix :: Combine l r h ((a -> a) -> a) Source # left :: Combine l r h (a -> Either a b) Source # right :: Combine l r h (b -> Either a b) Source # sumMatch :: Combine l r h ((a -> c) -> (b -> c) -> Either a b -> c) Source # unit :: Combine l r h () Source # exfalso :: Combine l r h (Void -> a) Source # ioRet :: Combine l r h (a -> IO a) Source # ioBind :: Combine l r h (IO a -> (a -> IO b) -> IO b) Source # ioMap :: Combine l r h ((a -> b) -> IO a -> IO b) Source # nil :: Combine l r h [a] Source # cons :: Combine l r h (a -> [a] -> [a]) Source # listMatch :: Combine l r h (b -> (a -> [a] -> b) -> [a] -> b) Source # listAppend :: Combine l r h ([a] -> [a] -> [a]) Source # writer :: Combine l r h ((a, w) -> Writer w a) Source # runWriter :: Combine l r h (Writer w a -> (a, w)) Source # float2Double :: Combine l r h (Float -> Double) Source # double2Float :: Combine l r h (Double -> Float) Source # undefined :: Combine l r h a Source # state :: Combine l r h ((x -> (y, x)) -> State x y) Source # runState :: Combine l r h (State x y -> x -> (y, x)) Source # |