Copyright | (C) 2016 Richard Eisenberg |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | Ryan Scott |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | GHC2021 |
Defines singleton versions of the definitions in Data.Function
.
Because many of these definitions are produced by Template Haskell,
it is not possible to create proper Haddock documentation. Please look
up the corresponding operation in Data.Function
. Also, please excuse
the apparent repeated variable names. This is due to an interaction
between Template Haskell and Haddock.
Synopsis
- type family Id (a1 :: a) :: a where ...
- sId :: forall a (t :: a). Sing t -> Sing (Apply (IdSym0 :: TyFun a a -> Type) t)
- type family Const (a1 :: a) (a2 :: b) :: a where ...
- sConst :: forall a b (t1 :: a) (t2 :: b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ConstSym0 :: TyFun a (b ~> a) -> Type) t1) t2)
- type family ((a1 :: b ~> c) . (a2 :: a ~> b)) (a3 :: a) :: c where ...
- (%.) :: forall b c a (t1 :: b ~> c) (t2 :: a ~> b) (t3 :: a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) t1) t2) t3)
- type family Flip (a1 :: a ~> (b ~> c)) (a2 :: b) (a3 :: a) :: c where ...
- sFlip :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: b) (t3 :: a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FlipSym0 :: TyFun (a ~> (b ~> c)) (b ~> (a ~> c)) -> Type) t1) t2) t3)
- type family (a1 :: a ~> b) $ (a2 :: a) :: b where ...
- (%$) :: forall a b (t1 :: a ~> b) (t2 :: a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (($@#@$) :: TyFun (a ~> b) (a ~> b) -> Type) t1) t2)
- type family (a1 :: a) & (a2 :: a ~> b) :: b where ...
- (%&) :: forall a b (t1 :: a) (t2 :: a ~> b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((&@#@$) :: TyFun a ((a ~> b) ~> b) -> Type) t1) t2)
- type family On (a1 :: b ~> (b ~> c)) (a2 :: a ~> b) (a3 :: a) (a4 :: a) :: c where ...
- sOn :: forall b c a (t1 :: b ~> (b ~> c)) (t2 :: a ~> b) (t3 :: a) (t4 :: a). Sing t1 -> Sing t2 -> Sing t3 -> Sing t4 -> Sing (Apply (Apply (Apply (Apply (OnSym0 :: TyFun (b ~> (b ~> c)) ((a ~> b) ~> (a ~> (a ~> c))) -> Type) t1) t2) t3) t4)
- data IdSym0 (a1 :: TyFun a a)
- type family IdSym1 (a6989586621679180225 :: a) :: a where ...
- data ConstSym0 (a1 :: TyFun a (b ~> a))
- data ConstSym1 (a6989586621679180220 :: a) (b1 :: TyFun b a)
- type family ConstSym2 (a6989586621679180220 :: a) (a6989586621679180221 :: b) :: a where ...
- data (.@#@$) (a1 :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)))
- data (a6989586621679180207 :: b ~> c) .@#@$$ (b1 :: TyFun (a ~> b) (a ~> c))
- data ((a6989586621679180207 :: b ~> c) .@#@$$$ (a6989586621679180208 :: a ~> b)) (c1 :: TyFun a c)
- type family ((a6989586621679180207 :: b ~> c) .@#@$$$$ (a6989586621679180208 :: a ~> b)) (a6989586621679180209 :: a) :: c where ...
- data FlipSym0 (a1 :: TyFun (a ~> (b ~> c)) (b ~> (a ~> c)))
- data FlipSym1 (a6989586621679180195 :: a ~> (b ~> c)) (b1 :: TyFun b (a ~> c))
- data FlipSym2 (a6989586621679180195 :: a ~> (b ~> c)) (a6989586621679180196 :: b) (c1 :: TyFun a c)
- type family FlipSym3 (a6989586621679180195 :: a ~> (b ~> c)) (a6989586621679180196 :: b) (a6989586621679180197 :: a) :: c where ...
- data ($@#@$) (a1 :: TyFun (a ~> b) (a ~> b))
- data (a6989586621679180176 :: a ~> b) $@#@$$ (b1 :: TyFun a b)
- type family (a6989586621679180176 :: a ~> b) $@#@$$$ (a6989586621679180177 :: a) :: b where ...
- data (&@#@$) (a1 :: TyFun a ((a ~> b) ~> b))
- data (a6989586621679327005 :: a) &@#@$$ (b1 :: TyFun (a ~> b) b)
- type family (a6989586621679327005 :: a) &@#@$$$ (a6989586621679327006 :: a ~> b) :: b where ...
- data OnSym0 (a1 :: TyFun (b ~> (b ~> c)) ((a ~> b) ~> (a ~> (a ~> c))))
- data OnSym1 (a6989586621679327018 :: b ~> (b ~> c)) (b1 :: TyFun (a ~> b) (a ~> (a ~> c)))
- data OnSym2 (a6989586621679327018 :: b ~> (b ~> c)) (a6989586621679327019 :: a ~> b) (c1 :: TyFun a (a ~> c))
- data OnSym3 (a6989586621679327018 :: b ~> (b ~> c)) (a6989586621679327019 :: a ~> b) (a6989586621679327020 :: a) (d :: TyFun a c)
- type family OnSym4 (a6989586621679327018 :: b ~> (b ~> c)) (a6989586621679327019 :: a ~> b) (a6989586621679327020 :: a) (a6989586621679327021 :: a) :: c where ...
Prelude re-exports
sConst :: forall a b (t1 :: a) (t2 :: b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ConstSym0 :: TyFun a (b ~> a) -> Type) t1) t2) Source #
(%.) :: forall b c a (t1 :: b ~> c) (t2 :: a ~> b) (t3 :: a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) t1) t2) t3) infixr 9 Source #
sFlip :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: b) (t3 :: a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FlipSym0 :: TyFun (a ~> (b ~> c)) (b ~> (a ~> c)) -> Type) t1) t2) t3) Source #
(%$) :: forall a b (t1 :: a ~> b) (t2 :: a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (($@#@$) :: TyFun (a ~> b) (a ~> b) -> Type) t1) t2) infixr 0 Source #
Other combinators
(%&) :: forall a b (t1 :: a) (t2 :: a ~> b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((&@#@$) :: TyFun a ((a ~> b) ~> b) -> Type) t1) t2) infixl 1 Source #
type family On (a1 :: b ~> (b ~> c)) (a2 :: a ~> b) (a3 :: a) (a4 :: a) :: c where ... infixl 0 Source #
On (ty :: k2 ~> (k2 ~> k3)) (f :: k4 ~> k2) (a_6989586621679327009 :: k4) (a_6989586621679327011 :: k4) = Apply (Apply (Apply (Apply (Apply (Apply (Lambda_6989586621679327026Sym0 :: TyFun (k2 ~> (k2 ~> k3)) (TyFun (k4 ~> k2) (TyFun k4 (TyFun k4 (TyFun k4 (TyFun k4 k3 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) ty) f) a_6989586621679327009) a_6989586621679327011) a_6989586621679327009) a_6989586621679327011 |
sOn :: forall b c a (t1 :: b ~> (b ~> c)) (t2 :: a ~> b) (t3 :: a) (t4 :: a). Sing t1 -> Sing t2 -> Sing t3 -> Sing t4 -> Sing (Apply (Apply (Apply (Apply (OnSym0 :: TyFun (b ~> (b ~> c)) ((a ~> b) ~> (a ~> (a ~> c))) -> Type) t1) t2) t3) t4) infixl 0 Source #
Defunctionalization symbols
data ConstSym1 (a6989586621679180220 :: a) (b1 :: TyFun b a) Source #
Instances
SingI1 (ConstSym1 :: a -> TyFun b a -> Type) Source # | |
SingI d => SingI (ConstSym1 d :: TyFun b a -> Type) Source # | |
SuppressUnusedWarnings (ConstSym1 a6989586621679180220 :: TyFun b a -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply (ConstSym1 a6989586621679180220 :: TyFun b a -> Type) (a6989586621679180221 :: b) Source # | |
type family ConstSym2 (a6989586621679180220 :: a) (a6989586621679180221 :: b) :: a where ... Source #
data (.@#@$) (a1 :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c))) infixr 9 Source #
Instances
SingI ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) Source # | |
SuppressUnusedWarnings ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) (a6989586621679180207 :: b ~> c) Source # | |
data (a6989586621679180207 :: b ~> c) .@#@$$ (b1 :: TyFun (a ~> b) (a ~> c)) infixr 9 Source #
Instances
SingI1 ((.@#@$$) :: (b ~> c) -> TyFun (a ~> b) (a ~> c) -> Type) Source # | |
SingI d => SingI ((.@#@$$) d :: TyFun (a ~> b) (a ~> c) -> Type) Source # | |
SuppressUnusedWarnings ((.@#@$$) a6989586621679180207 :: TyFun (a ~> b) (a ~> c) -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply ((.@#@$$) a6989586621679180207 :: TyFun (a ~> b) (a ~> c) -> Type) (a6989586621679180208 :: a ~> b) Source # | |
data ((a6989586621679180207 :: b ~> c) .@#@$$$ (a6989586621679180208 :: a ~> b)) (c1 :: TyFun a c) infixr 9 Source #
Instances
SingI2 ((.@#@$$$) :: (b ~> c) -> (a ~> b) -> TyFun a c -> Type) Source # | |
SingI d => SingI1 ((.@#@$$$) d :: (a ~> b) -> TyFun a c -> Type) Source # | |
(SingI d1, SingI d2) => SingI (d1 .@#@$$$ d2 :: TyFun a c -> Type) Source # | |
Defined in GHC.Base.Singletons | |
SuppressUnusedWarnings (a6989586621679180207 .@#@$$$ a6989586621679180208 :: TyFun a c -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply (a6989586621679180207 .@#@$$$ a6989586621679180208 :: TyFun a c -> Type) (a6989586621679180209 :: a) Source # | |
type family ((a6989586621679180207 :: b ~> c) .@#@$$$$ (a6989586621679180208 :: a ~> b)) (a6989586621679180209 :: a) :: c where ... infixr 9 Source #
data FlipSym0 (a1 :: TyFun (a ~> (b ~> c)) (b ~> (a ~> c))) Source #
Instances
SingI (FlipSym0 :: TyFun (a ~> (b ~> c)) (b ~> (a ~> c)) -> Type) Source # | |
SuppressUnusedWarnings (FlipSym0 :: TyFun (a ~> (b ~> c)) (b ~> (a ~> c)) -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply (FlipSym0 :: TyFun (a ~> (b ~> c)) (b ~> (a ~> c)) -> Type) (a6989586621679180195 :: a ~> (b ~> c)) Source # | |
data FlipSym1 (a6989586621679180195 :: a ~> (b ~> c)) (b1 :: TyFun b (a ~> c)) Source #
Instances
SingI1 (FlipSym1 :: (a ~> (b ~> c)) -> TyFun b (a ~> c) -> Type) Source # | |
SingI d => SingI (FlipSym1 d :: TyFun b (a ~> c) -> Type) Source # | |
Defined in GHC.Base.Singletons | |
SuppressUnusedWarnings (FlipSym1 a6989586621679180195 :: TyFun b (a ~> c) -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply (FlipSym1 a6989586621679180195 :: TyFun b (a ~> c) -> Type) (a6989586621679180196 :: b) Source # | |
data FlipSym2 (a6989586621679180195 :: a ~> (b ~> c)) (a6989586621679180196 :: b) (c1 :: TyFun a c) Source #
Instances
SingI d => SingI1 (FlipSym2 d :: b -> TyFun a c -> Type) Source # | |
SingI2 (FlipSym2 :: (a ~> (b ~> c)) -> b -> TyFun a c -> Type) Source # | |
(SingI d1, SingI d2) => SingI (FlipSym2 d1 d2 :: TyFun a c -> Type) Source # | |
Defined in GHC.Base.Singletons | |
SuppressUnusedWarnings (FlipSym2 a6989586621679180195 a6989586621679180196 :: TyFun a c -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply (FlipSym2 a6989586621679180195 a6989586621679180196 :: TyFun a c -> Type) (a6989586621679180197 :: a) Source # | |
type family FlipSym3 (a6989586621679180195 :: a ~> (b ~> c)) (a6989586621679180196 :: b) (a6989586621679180197 :: a) :: c where ... Source #
data ($@#@$) (a1 :: TyFun (a ~> b) (a ~> b)) infixr 0 Source #
Instances
data (a6989586621679180176 :: a ~> b) $@#@$$ (b1 :: TyFun a b) infixr 0 Source #
Instances
SingI1 (($@#@$$) :: (a ~> b) -> TyFun a b -> Type) Source # | |
SingI d => SingI (($@#@$$) d :: TyFun a b -> Type) Source # | |
Defined in GHC.Base.Singletons | |
SuppressUnusedWarnings (($@#@$$) a6989586621679180176 :: TyFun a b -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply (($@#@$$) a6989586621679180176 :: TyFun a b -> Type) (a6989586621679180177 :: a) Source # | |
type family (a6989586621679180176 :: a ~> b) $@#@$$$ (a6989586621679180177 :: a) :: b where ... infixr 0 Source #
data (&@#@$) (a1 :: TyFun a ((a ~> b) ~> b)) infixl 1 Source #
Instances
data (a6989586621679327005 :: a) &@#@$$ (b1 :: TyFun (a ~> b) b) infixl 1 Source #
Instances
SingI1 ((&@#@$$) :: a -> TyFun (a ~> b) b -> Type) Source # | |
SingI d => SingI ((&@#@$$) d :: TyFun (a ~> b) b -> Type) Source # | |
SuppressUnusedWarnings ((&@#@$$) a6989586621679327005 :: TyFun (a ~> b) b -> Type) Source # | |
Defined in Data.Function.Singletons suppressUnusedWarnings :: () # | |
type Apply ((&@#@$$) a6989586621679327005 :: TyFun (a ~> b) b -> Type) (a6989586621679327006 :: a ~> b) Source # | |
type family (a6989586621679327005 :: a) &@#@$$$ (a6989586621679327006 :: a ~> b) :: b where ... infixl 1 Source #
data OnSym0 (a1 :: TyFun (b ~> (b ~> c)) ((a ~> b) ~> (a ~> (a ~> c)))) infixl 0 Source #
Instances
SingI (OnSym0 :: TyFun (b ~> (b ~> c)) ((a ~> b) ~> (a ~> (a ~> c))) -> Type) Source # | |
SuppressUnusedWarnings (OnSym0 :: TyFun (b ~> (b ~> c)) ((a ~> b) ~> (a ~> (a ~> c))) -> Type) Source # | |
Defined in Data.Function.Singletons suppressUnusedWarnings :: () # | |
type Apply (OnSym0 :: TyFun (b ~> (b ~> c)) ((a ~> b) ~> (a ~> (a ~> c))) -> Type) (a6989586621679327018 :: b ~> (b ~> c)) Source # | |
data OnSym1 (a6989586621679327018 :: b ~> (b ~> c)) (b1 :: TyFun (a ~> b) (a ~> (a ~> c))) infixl 0 Source #
Instances
SingI1 (OnSym1 :: (b ~> (b ~> c)) -> TyFun (a ~> b) (a ~> (a ~> c)) -> Type) Source # | |
SingI d => SingI (OnSym1 d :: TyFun (a ~> b) (a ~> (a ~> c)) -> Type) Source # | |
SuppressUnusedWarnings (OnSym1 a6989586621679327018 :: TyFun (a ~> b) (a ~> (a ~> c)) -> Type) Source # | |
Defined in Data.Function.Singletons suppressUnusedWarnings :: () # | |
type Apply (OnSym1 a6989586621679327018 :: TyFun (a ~> b) (a ~> (a ~> c)) -> Type) (a6989586621679327019 :: a ~> b) Source # | |
data OnSym2 (a6989586621679327018 :: b ~> (b ~> c)) (a6989586621679327019 :: a ~> b) (c1 :: TyFun a (a ~> c)) infixl 0 Source #
Instances
SingI2 (OnSym2 :: (b ~> (b ~> c)) -> (a ~> b) -> TyFun a (a ~> c) -> Type) Source # | |
SingI d => SingI1 (OnSym2 d :: (a ~> b) -> TyFun a (a ~> c) -> Type) Source # | |
(SingI d1, SingI d2) => SingI (OnSym2 d1 d2 :: TyFun a (a ~> c) -> Type) Source # | |
Defined in Data.Function.Singletons | |
SuppressUnusedWarnings (OnSym2 a6989586621679327018 a6989586621679327019 :: TyFun a (a ~> c) -> Type) Source # | |
Defined in Data.Function.Singletons suppressUnusedWarnings :: () # | |
type Apply (OnSym2 a6989586621679327018 a6989586621679327019 :: TyFun a (a ~> c) -> Type) (a6989586621679327020 :: a) Source # | |
data OnSym3 (a6989586621679327018 :: b ~> (b ~> c)) (a6989586621679327019 :: a ~> b) (a6989586621679327020 :: a) (d :: TyFun a c) infixl 0 Source #
Instances
(SingI d1, SingI d2) => SingI1 (OnSym3 d1 d2 :: a -> TyFun a c -> Type) Source # | |
SingI d => SingI2 (OnSym3 d :: (a ~> b) -> a -> TyFun a c -> Type) Source # | |
(SingI d1, SingI d2, SingI d3) => SingI (OnSym3 d1 d2 d3 :: TyFun a c -> Type) Source # | |
Defined in Data.Function.Singletons | |
SuppressUnusedWarnings (OnSym3 a6989586621679327018 a6989586621679327019 a6989586621679327020 :: TyFun a c -> Type) Source # | |
Defined in Data.Function.Singletons suppressUnusedWarnings :: () # | |
type Apply (OnSym3 a6989586621679327018 a6989586621679327019 a6989586621679327020 :: TyFun a c -> Type) (a6989586621679327021 :: a) Source # | |