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_6989586621679703442 x = x |
Defunctionalization symbols
Instances
SuppressUnusedWarnings (TyFun (TyFun a6989586621679703401 (TyFun b6989586621679703402 b6989586621679703402 -> Type) -> Type) (TyFun b6989586621679703402 (TyFun [a6989586621679703401] b6989586621679703402 -> Type) -> Type) -> *) (FoldrSym0 a6989586621679703401 b6989586621679703402) # | |
type Apply (TyFun a6989586621679703401 (TyFun b6989586621679703402 b6989586621679703402 -> Type) -> Type) (TyFun b6989586621679703402 (TyFun [a6989586621679703401] b6989586621679703402 -> Type) -> Type) (FoldrSym0 a6989586621679703401 b6989586621679703402) l0 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679703401 (TyFun b6989586621679703402 b6989586621679703402 -> Type) -> Type) -> TyFun b6989586621679703402 (TyFun [a6989586621679703401] b6989586621679703402 -> Type) -> *) (FoldrSym1 a6989586621679703401 b6989586621679703402) # | |
type Apply b6989586621679703402 (TyFun [a6989586621679703401] b6989586621679703402 -> Type) (FoldrSym1 a6989586621679703401 b6989586621679703402 l0) l1 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679703401 (TyFun b6989586621679703402 b6989586621679703402 -> Type) -> Type) -> b6989586621679703402 -> TyFun [a6989586621679703401] b6989586621679703402 -> *) (FoldrSym2 a6989586621679703401 b6989586621679703402) # | |
type Apply [a6989586621679703401] b6989586621679703402 (FoldrSym2 a6989586621679703401 b6989586621679703402 l1 l0) l2 # | |
Instances
SuppressUnusedWarnings (TyFun (TyFun a6989586621679703399 b6989586621679703400 -> Type) (TyFun [a6989586621679703399] [b6989586621679703400] -> Type) -> *) (MapSym0 a6989586621679703399 b6989586621679703400) # | |
type Apply (TyFun a6989586621679703399 b6989586621679703400 -> Type) (TyFun [a6989586621679703399] [b6989586621679703400] -> Type) (MapSym0 a6989586621679703399 b6989586621679703400) l0 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679703399 b6989586621679703400 -> Type) -> TyFun [a6989586621679703399] [b6989586621679703400] -> *) (MapSym1 a6989586621679703399 b6989586621679703400) # | |
type Apply [a6989586621679703399] [b6989586621679703400] (MapSym1 a6989586621679703399 b6989586621679703400 l0) l1 # | |
type OtherwiseSym0 = Otherwise #
Instances
SuppressUnusedWarnings (TyFun a6989586621679703395 (TyFun b6989586621679703396 a6989586621679703395 -> Type) -> *) (ConstSym0 b6989586621679703396 a6989586621679703395) # | |
type Apply a6989586621679703395 (TyFun b6989586621679703396 a6989586621679703395 -> Type) (ConstSym0 b6989586621679703396 a6989586621679703395) l0 # | |
Instances
SuppressUnusedWarnings (TyFun (TyFun b6989586621679703392 c6989586621679703393 -> Type) (TyFun (TyFun a6989586621679703394 b6989586621679703392 -> Type) (TyFun a6989586621679703394 c6989586621679703393 -> Type) -> Type) -> *) ((:.$) b6989586621679703392 a6989586621679703394 c6989586621679703393) # | |
type Apply (TyFun b6989586621679703392 c6989586621679703393 -> Type) (TyFun (TyFun a6989586621679703394 b6989586621679703392 -> Type) (TyFun a6989586621679703394 c6989586621679703393 -> Type) -> Type) ((:.$) b6989586621679703392 a6989586621679703394 c6989586621679703393) l0 # | |
Instances
SuppressUnusedWarnings ((TyFun b6989586621679703392 c6989586621679703393 -> Type) -> TyFun (TyFun a6989586621679703394 b6989586621679703392 -> Type) (TyFun a6989586621679703394 c6989586621679703393 -> Type) -> *) ((:.$$) a6989586621679703394 b6989586621679703392 c6989586621679703393) # | |
type Apply (TyFun a6989586621679703394 b6989586621679703392 -> Type) (TyFun a6989586621679703394 c6989586621679703393 -> Type) ((:.$$) a6989586621679703394 b6989586621679703392 c6989586621679703393 l0) l1 # | |
Instances
SuppressUnusedWarnings ((TyFun b6989586621679703392 c6989586621679703393 -> Type) -> (TyFun a6989586621679703394 b6989586621679703392 -> Type) -> TyFun a6989586621679703394 c6989586621679703393 -> *) ((:.$$$) a6989586621679703394 b6989586621679703392 c6989586621679703393) # | |
type Apply a6989586621679703394 c6989586621679703393 ((:.$$$) a6989586621679703394 b6989586621679703392 c6989586621679703393 l1 l0) l2 # | |
Instances
SuppressUnusedWarnings (TyFun (TyFun a6989586621679703389 (TyFun b6989586621679703390 c6989586621679703391 -> Type) -> Type) (TyFun b6989586621679703390 (TyFun a6989586621679703389 c6989586621679703391 -> Type) -> Type) -> *) (FlipSym0 b6989586621679703390 a6989586621679703389 c6989586621679703391) # | |
type Apply (TyFun a6989586621679703389 (TyFun b6989586621679703390 c6989586621679703391 -> Type) -> Type) (TyFun b6989586621679703390 (TyFun a6989586621679703389 c6989586621679703391 -> Type) -> Type) (FlipSym0 b6989586621679703390 a6989586621679703389 c6989586621679703391) l0 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679703389 (TyFun b6989586621679703390 c6989586621679703391 -> Type) -> Type) -> TyFun b6989586621679703390 (TyFun a6989586621679703389 c6989586621679703391 -> Type) -> *) (FlipSym1 a6989586621679703389 b6989586621679703390 c6989586621679703391) # | |
type Apply b6989586621679703390 (TyFun a6989586621679703389 c6989586621679703391 -> Type) (FlipSym1 a6989586621679703389 b6989586621679703390 c6989586621679703391 l0) l1 # | |
Instances
SuppressUnusedWarnings ((TyFun a6989586621679703389 (TyFun b6989586621679703390 c6989586621679703391 -> Type) -> Type) -> b6989586621679703390 -> TyFun a6989586621679703389 c6989586621679703391 -> *) (FlipSym2 a6989586621679703389 b6989586621679703390 c6989586621679703391) # | |
type Apply a6989586621679703389 c6989586621679703391 (FlipSym2 a6989586621679703389 b6989586621679703390 c6989586621679703391 l1 l0) l2 # | |
data AsTypeOfSym0 l #
Instances
SuppressUnusedWarnings (TyFun a6989586621679703388 (TyFun a6989586621679703388 a6989586621679703388 -> Type) -> *) (AsTypeOfSym0 a6989586621679703388) # | |
type Apply a6989586621679703388 (TyFun a6989586621679703388 a6989586621679703388 -> Type) (AsTypeOfSym0 a6989586621679703388) l0 # | |
data AsTypeOfSym1 l l #
Instances
SuppressUnusedWarnings (a6989586621679703388 -> TyFun a6989586621679703388 a6989586621679703388 -> *) (AsTypeOfSym1 a6989586621679703388) # | |
type Apply a6989586621679703388 a6989586621679703388 (AsTypeOfSym1 a6989586621679703388 l0) l1 # | |
type AsTypeOfSym2 t t = AsTypeOf t t #
Instances
SuppressUnusedWarnings (TyFun a6989586621679703386 (TyFun b6989586621679703387 b6989586621679703387 -> Type) -> *) (SeqSym0 a6989586621679703386 b6989586621679703387) # | |
type Apply a6989586621679703386 (TyFun b6989586621679703387 b6989586621679703387 -> Type) (SeqSym0 a6989586621679703386 b6989586621679703387) l0 # | |