| Copyright | (C) 2018 Ryan Scott |
|---|---|
| License | BSD-style (see LICENSE) |
| Maintainer | Richard Eisenberg (rae@cs.brynmawr.edu) |
| Stability | experimental |
| Portability | non-portable |
| Safe Haskell | None |
| Language | Haskell2010 |
Data.Singletons.Prelude.Const
Description
Exports the promoted and singled versions of the Const data type.
Synopsis
- data family Sing :: k -> Type
- type SConst = (Sing :: Const a b -> Type)
- type family GetConst (x :: Const a b) :: a where ...
- data ConstSym0 :: forall (a6989586621679093209 :: Type) k6989586621679093208 (b6989586621679093210 :: k6989586621679093208). (~>) a6989586621679093209 (Const (a6989586621679093209 :: Type) (b6989586621679093210 :: k6989586621679093208))
- type ConstSym1 (t6989586621680750415 :: a6989586621679093209) = Const t6989586621680750415
- data GetConstSym0 :: forall a6989586621680750730 b6989586621680750731. (~>) (Const a6989586621680750730 b6989586621680750731) a6989586621680750730
- type GetConstSym1 (x6989586621680750732 :: Const a6989586621680750730 b6989586621680750731) = GetConst x6989586621680750732
The Const singleton
data family Sing :: k -> Type #
The singleton kind-indexed data family.
Instances
| SDecide k => TestCoercion (Sing :: k -> Type) # | |
Defined in Data.Singletons.Decide | |
| SDecide k => TestEquality (Sing :: k -> Type) # | |
Defined in Data.Singletons.Decide | |
| Show (SSymbol s) # | |
| Show (SNat n) # | |
| Eq (Sing a) # | |
| Ord (Sing a) # | |
| Show (Sing z) # | |
| (ShowSing a, ShowSing [a]) => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| Show (Sing z) # | |
| (ShowSing a, ShowSing b) => Show (Sing z) # | |
| Show (Sing a) # | |
| Show (Sing z) # | |
| (ShowSing a, ShowSing b) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c, ShowSing d) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f, ShowSing g) => Show (Sing z) # | |
| Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| (ShowSing a, ShowSing b) => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing m => Show (Sing z) # | |
| ShowSing (Maybe a) => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing (Maybe a) => Show (Sing z) # | |
| ShowSing (Maybe a) => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing Bool => Show (Sing z) # | |
| ShowSing Bool => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| (ShowSing a, ShowSing [a]) => Show (Sing z) # | |
| data Sing (a :: Bool) # | |
| data Sing (a :: Ordering) # | |
| data Sing (n :: Nat) # | |
| data Sing (n :: Symbol) # | |
Defined in Data.Singletons.TypeLits.Internal | |
| data Sing (a :: ()) # | |
Defined in Data.Singletons.Prelude.Instances | |
| data Sing (a :: Void) # | |
Defined in Data.Singletons.Prelude.Instances | |
| data Sing (a :: All) # | |
| data Sing (a :: Any) # | |
| data Sing (a :: PErrorMessage) # | |
Defined in Data.Singletons.TypeError data Sing (a :: PErrorMessage) where
| |
| data Sing (b :: [a]) # | |
| data Sing (b :: Maybe a) # | |
| newtype Sing (a :: TYPE rep) # | A choice of singleton for the kind Conceivably, one could generalize this instance to `Sing :: k -> Type` for
any kind We cannot produce explicit singleton values for everything in |
Defined in Data.Singletons.TypeRepTYPE | |
| data Sing (b :: Min a) # | |
| data Sing (b :: Max a) # | |
| data Sing (b :: First a) # | |
| data Sing (b :: Last a) # | |
| data Sing (a :: WrappedMonoid m) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal data Sing (a :: WrappedMonoid m) where
| |
| data Sing (b :: Option a) # | |
| data Sing (b :: Identity a) # | |
| data Sing (b :: First a) # | |
| data Sing (b :: Last a) # | |
| data Sing (b :: Dual a) # | |
| data Sing (b :: Sum a) # | |
| data Sing (b :: Product a) # | |
| data Sing (b :: Down a) # | |
| data Sing (b :: NonEmpty a) # | |
| data Sing (c :: Either a b) # | |
| data Sing (c :: (a, b)) # | |
| data Sing (c :: Arg a b) # | |
| newtype Sing (f :: k1 ~> k2) # | |
| data Sing (d :: (a, b, c)) # | |
| data Sing (c :: Const a b) # | |
| data Sing (e :: (a, b, c, d)) # | |
| data Sing (f :: (a, b, c, d, e)) # | |
| data Sing (g :: (a, b, c, d, e, f)) # | |
| data Sing (h :: (a, b, c, d, e, f, g)) # | |
Defined in Data.Singletons.Prelude.Instances | |
Defunctionalization symbols
data ConstSym0 :: forall (a6989586621679093209 :: Type) k6989586621679093208 (b6989586621679093210 :: k6989586621679093208). (~>) a6989586621679093209 (Const (a6989586621679093209 :: Type) (b6989586621679093210 :: k6989586621679093208)) #
Instances
| SingI (ConstSym0 :: TyFun a6989586621679093209 (Const a6989586621679093209 b6989586621679093210) -> Type) # | |
Defined in Data.Singletons.Prelude.Const | |
| SuppressUnusedWarnings (ConstSym0 :: TyFun a6989586621679093209 (Const a6989586621679093209 b6989586621679093210) -> Type) # | |
Defined in Data.Singletons.Prelude.Const Methods suppressUnusedWarnings :: () # | |
| type Apply (ConstSym0 :: TyFun a (Const a b6989586621679093210) -> Type) (t6989586621680750415 :: a) # | |
data GetConstSym0 :: forall a6989586621680750730 b6989586621680750731. (~>) (Const a6989586621680750730 b6989586621680750731) a6989586621680750730 #
Instances
| SuppressUnusedWarnings (GetConstSym0 :: TyFun (Const a6989586621680750730 b6989586621680750731) a6989586621680750730 -> Type) # | |
Defined in Data.Singletons.Prelude.Const Methods suppressUnusedWarnings :: () # | |
| type Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) (x6989586621680750732 :: Const a b) # | |
Defined in Data.Singletons.Prelude.Const | |
type GetConstSym1 (x6989586621680750732 :: Const a6989586621680750730 b6989586621680750731) = GetConst x6989586621680750732 #