Copyright | (C) 2014 Jan Stolarek |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | Jan Stolarek (jan.stolarek@p.lodz.pl) |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Data.Singletons.Prelude.Base
Description
Implements singletonized versions of functions from GHC.Base
module.
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.Tuple
. Also, please excuse
the apparent repeated variable names. This is due to an interaction
between Template Haskell and Haddock.
- type family Foldr (a :: TyFun a (TyFun b b -> Type) -> Type) (a :: b) (a :: [a]) :: b where ...
- sFoldr :: forall t t t. Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t :: b)
- type family Map (a :: TyFun a b -> Type) (a :: [a]) :: [b] where ...
- sMap :: forall t t. Sing t -> Sing t -> Sing (Apply (Apply MapSym0 t) t :: [b])
- type family (a :: [a]) :++ (a :: [a]) :: [a] where ...
- (%:++) :: forall t t. Sing t -> Sing t -> Sing (Apply (Apply (:++$) t) t :: [a])
- type family Otherwise :: Bool where ...
- sOtherwise :: Sing (OtherwiseSym0 :: Bool)
- type family Id (a :: a) :: a where ...
- sId :: forall t. Sing t -> Sing (Apply IdSym0 t :: a)
- type family Const (a :: a) (a :: b) :: a where ...
- sConst :: forall t t. Sing t -> Sing t -> Sing (Apply (Apply ConstSym0 t) t :: a)
- type family ((a :: TyFun b c -> Type) :. (a :: TyFun a b -> Type)) (a :: a) :: c where ...
- (%:.) :: forall t t t. Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (:.$) t) t) t :: c)
- type family (f :: TyFun a b -> *) $ (x :: a) :: b
- type family (f :: TyFun a b -> *) $! (x :: a) :: b
- (%$) :: forall f x. Sing f -> Sing x -> Sing ((($$) @@ f) @@ x)
- (%$!) :: forall f x. Sing f -> Sing x -> Sing ((($!$) @@ f) @@ x)
- type family Flip (a :: TyFun a (TyFun b c -> Type) -> Type) (a :: b) (a :: a) :: c where ...
- sFlip :: forall t t t. Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FlipSym0 t) t) t :: c)
- type family AsTypeOf (a :: a) (a :: a) :: a where ...
- sAsTypeOf :: forall t t. Sing t -> Sing t -> Sing (Apply (Apply AsTypeOfSym0 t) t :: a)
- type family Seq (a :: a) (a :: b) :: b where ...
- sSeq :: forall t t. Sing t -> Sing t -> Sing (Apply (Apply SeqSym0 t) t :: b)
- data FoldrSym0 l
- data FoldrSym1 l l
- data FoldrSym2 l l l
- type FoldrSym3 t t t = Foldr t t t
- data MapSym0 l
- data MapSym1 l l
- type MapSym2 t t = Map t t
- data (:++$) l
- data l :++$$ l
- type (:++$$$) t t = (:++) t t
- type OtherwiseSym0 = Otherwise
- data IdSym0 l
- type IdSym1 t = Id t
- data ConstSym0 l
- data ConstSym1 l l
- type ConstSym2 t t = Const t t
- data (:.$) l
- data l :.$$ l
- data (l :.$$$ l) l
- type (:.$$$$) t t t = (:.) t t t
- data ($$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> *
- data ($$$) :: (TyFun a b -> *) -> TyFun a b -> *
- type ($$$$) a b = ($) a b
- data ($!$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> *
- data ($!$$) :: (TyFun a b -> *) -> TyFun a b -> *
- type ($!$$$) a b = ($!) a b
- data FlipSym0 l
- data FlipSym1 l l
- data FlipSym2 l l l
- type FlipSym3 t t t = Flip t t t
- data AsTypeOfSym0 l
- data AsTypeOfSym1 l l
- type AsTypeOfSym2 t t = AsTypeOf t t
- data SeqSym0 l
- data SeqSym1 l l
- type SeqSym2 t t = Seq t t
Basic functions
sFoldr :: forall t t t. Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t :: b) #
sOtherwise :: Sing (OtherwiseSym0 :: Bool) #
type family ((a :: TyFun b c -> Type) :. (a :: TyFun a b -> Type)) (a :: a) :: c where ... infixr 9 #
(%:.) :: forall t t t. Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (:.$) t) t) t :: c) infixr 9 #
sFlip :: forall t t t. Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FlipSym0 t) t) t :: c) #
type family Seq (a :: a) (a :: b) :: b where ... infixr 0 #
Equations
Seq _z_6989586621679550146 x = x |
Defunctionalization symbols
Instances
SuppressUnusedWarnings (TyFun (TyFun a6989586621679550105 (TyFun b6989586621679550106 b6989586621679550106 -> Type) -> Type) (TyFun b6989586621679550106 (TyFun [a6989586621679550105] b6989586621679550106 -> Type) -> Type) -> *) (FoldrSym0 a6989586621679550105 b6989586621679550106) # | |
type Apply (TyFun a6989586621679550105 (TyFun b6989586621679550106 b6989586621679550106 -> Type) -> Type) (TyFun b6989586621679550106 (TyFun [a6989586621679550105] b6989586621679550106 -> Type) -> Type) (FoldrSym0 a6989586621679550105 b6989586621679550106) l0 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679550105 (TyFun b6989586621679550106 b6989586621679550106 -> Type) -> Type) -> TyFun b6989586621679550106 (TyFun [a6989586621679550105] b6989586621679550106 -> Type) -> *) (FoldrSym1 a6989586621679550105 b6989586621679550106) # | |
type Apply b6989586621679550106 (TyFun [a6989586621679550105] b6989586621679550106 -> Type) (FoldrSym1 a6989586621679550105 b6989586621679550106 l0) l1 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679550105 (TyFun b6989586621679550106 b6989586621679550106 -> Type) -> Type) -> b6989586621679550106 -> TyFun [a6989586621679550105] b6989586621679550106 -> *) (FoldrSym2 a6989586621679550105 b6989586621679550106) # | |
type Apply [a6989586621679550105] b6989586621679550106 (FoldrSym2 a6989586621679550105 b6989586621679550106 l1 l0) l2 # | |
Instances
SuppressUnusedWarnings (TyFun (TyFun a6989586621679550103 b6989586621679550104 -> Type) (TyFun [a6989586621679550103] [b6989586621679550104] -> Type) -> *) (MapSym0 a6989586621679550103 b6989586621679550104) # | |
type Apply (TyFun a6989586621679550103 b6989586621679550104 -> Type) (TyFun [a6989586621679550103] [b6989586621679550104] -> Type) (MapSym0 a6989586621679550103 b6989586621679550104) l0 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679550103 b6989586621679550104 -> Type) -> TyFun [a6989586621679550103] [b6989586621679550104] -> *) (MapSym1 a6989586621679550103 b6989586621679550104) # | |
type Apply [a6989586621679550103] [b6989586621679550104] (MapSym1 a6989586621679550103 b6989586621679550104 l0) l1 # | |
type OtherwiseSym0 = Otherwise #
Instances
SuppressUnusedWarnings (TyFun a6989586621679550099 (TyFun b6989586621679550100 a6989586621679550099 -> Type) -> *) (ConstSym0 b6989586621679550100 a6989586621679550099) # | |
type Apply a6989586621679550099 (TyFun b6989586621679550100 a6989586621679550099 -> Type) (ConstSym0 b6989586621679550100 a6989586621679550099) l0 # | |
Instances
SuppressUnusedWarnings (TyFun (TyFun b6989586621679550096 c6989586621679550097 -> Type) (TyFun (TyFun a6989586621679550098 b6989586621679550096 -> Type) (TyFun a6989586621679550098 c6989586621679550097 -> Type) -> Type) -> *) ((:.$) b6989586621679550096 a6989586621679550098 c6989586621679550097) # | |
type Apply (TyFun b6989586621679550096 c6989586621679550097 -> Type) (TyFun (TyFun a6989586621679550098 b6989586621679550096 -> Type) (TyFun a6989586621679550098 c6989586621679550097 -> Type) -> Type) ((:.$) b6989586621679550096 a6989586621679550098 c6989586621679550097) l0 # | |
Instances
SuppressUnusedWarnings ((TyFun b6989586621679550096 c6989586621679550097 -> Type) -> TyFun (TyFun a6989586621679550098 b6989586621679550096 -> Type) (TyFun a6989586621679550098 c6989586621679550097 -> Type) -> *) ((:.$$) a6989586621679550098 b6989586621679550096 c6989586621679550097) # | |
type Apply (TyFun a6989586621679550098 b6989586621679550096 -> Type) (TyFun a6989586621679550098 c6989586621679550097 -> Type) ((:.$$) a6989586621679550098 b6989586621679550096 c6989586621679550097 l0) l1 # | |
Instances
SuppressUnusedWarnings ((TyFun b6989586621679550096 c6989586621679550097 -> Type) -> (TyFun a6989586621679550098 b6989586621679550096 -> Type) -> TyFun a6989586621679550098 c6989586621679550097 -> *) ((:.$$$) a6989586621679550098 b6989586621679550096 c6989586621679550097) # | |
type Apply a6989586621679550098 c6989586621679550097 ((:.$$$) a6989586621679550098 b6989586621679550096 c6989586621679550097 l1 l0) l2 # | |
Instances
SuppressUnusedWarnings (TyFun (TyFun a6989586621679550093 (TyFun b6989586621679550094 c6989586621679550095 -> Type) -> Type) (TyFun b6989586621679550094 (TyFun a6989586621679550093 c6989586621679550095 -> Type) -> Type) -> *) (FlipSym0 b6989586621679550094 a6989586621679550093 c6989586621679550095) # | |
type Apply (TyFun a6989586621679550093 (TyFun b6989586621679550094 c6989586621679550095 -> Type) -> Type) (TyFun b6989586621679550094 (TyFun a6989586621679550093 c6989586621679550095 -> Type) -> Type) (FlipSym0 b6989586621679550094 a6989586621679550093 c6989586621679550095) l0 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679550093 (TyFun b6989586621679550094 c6989586621679550095 -> Type) -> Type) -> TyFun b6989586621679550094 (TyFun a6989586621679550093 c6989586621679550095 -> Type) -> *) (FlipSym1 a6989586621679550093 b6989586621679550094 c6989586621679550095) # | |
type Apply b6989586621679550094 (TyFun a6989586621679550093 c6989586621679550095 -> Type) (FlipSym1 a6989586621679550093 b6989586621679550094 c6989586621679550095 l0) l1 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679550093 (TyFun b6989586621679550094 c6989586621679550095 -> Type) -> Type) -> b6989586621679550094 -> TyFun a6989586621679550093 c6989586621679550095 -> *) (FlipSym2 a6989586621679550093 b6989586621679550094 c6989586621679550095) # | |
type Apply a6989586621679550093 c6989586621679550095 (FlipSym2 a6989586621679550093 b6989586621679550094 c6989586621679550095 l1 l0) l2 # | |
data AsTypeOfSym0 l #
Instances
SuppressUnusedWarnings (TyFun a6989586621679550092 (TyFun a6989586621679550092 a6989586621679550092 -> Type) -> *) (AsTypeOfSym0 a6989586621679550092) # | |
type Apply a6989586621679550092 (TyFun a6989586621679550092 a6989586621679550092 -> Type) (AsTypeOfSym0 a6989586621679550092) l0 # | |
data AsTypeOfSym1 l l #
Instances
SuppressUnusedWarnings (a6989586621679550092 -> TyFun a6989586621679550092 a6989586621679550092 -> *) (AsTypeOfSym1 a6989586621679550092) # | |
type Apply a6989586621679550092 a6989586621679550092 (AsTypeOfSym1 a6989586621679550092 l0) l1 # | |
type AsTypeOfSym2 t t = AsTypeOf t t #
Instances
SuppressUnusedWarnings (TyFun a6989586621679550090 (TyFun b6989586621679550091 b6989586621679550091 -> Type) -> *) (SeqSym0 a6989586621679550090 b6989586621679550091) # | |
type Apply a6989586621679550090 (TyFun b6989586621679550091 b6989586621679550091 -> Type) (SeqSym0 a6989586621679550090 b6989586621679550091) l0 # | |