singletons-2.6: A framework for generating singleton types

Copyright | (C) 2018 Ryan Scott
License | BSD-style (see LICENSE)
Maintainer | Ryan Scott
Stability | experimental
Portability | non-portable
Safe Haskell | None
Language | Haskell2010

Data.Singletons.TypeError

Contents

- Defunctionalization symbols

Description

Defines a drop-in replacement for `TypeError` (from GHC.TypeLits) that can be used at the value level as well. Since this is a drop-in replacement, it is not recommended to import all of GHC.TypeLits and Data.Singletons.TypeError at the same time, as many of the definitons in the latter deliberately clash with the former.

Synopsis

- type family TypeError (a :: PErrorMessage) :: b where ...
- sTypeError :: HasCallStack => Sing err -> Sing (TypeError err)
- typeError :: HasCallStack => ErrorMessage -> a
- data ErrorMessage' s
  - = Text s
  - | forall t. ShowType t
  - | (ErrorMessage' s) :<>: (ErrorMessage' s)
  - | (ErrorMessage' s) :$$: (ErrorMessage' s)
- type ErrorMessage = ErrorMessage' Text
- type PErrorMessage = ErrorMessage' Symbol
- type family Sing :: k -> Type
- data SErrorMessage :: PErrorMessage -> Type where
  - SText :: Sing t -> SErrorMessage ('Text t)
  - SShowType :: Sing ty -> SErrorMessage ('ShowType ty)
  - (:%<>:) :: Sing e1 -> Sing e2 -> SErrorMessage (e1 :<>: e2)
  - (:%$$:) :: Sing e1 -> Sing e2 -> SErrorMessage (e1 :$$: e2)
- type family ConvertPErrorMessage (a :: PErrorMessage) :: ErrorMessage where ...
- showErrorMessage :: ErrorMessage -> String
- data TextSym0 :: forall (s6989586621681327379 :: Type). (~>) s6989586621681327379 (ErrorMessage' (s6989586621681327379 :: Type))
- type TextSym1 (t6989586621681328123 :: s6989586621681327379) = 'Text t6989586621681328123
- data ShowTypeSym0 :: forall t6989586621681327380 (s6989586621681327379 :: Type). (~>) t6989586621681327380 (ErrorMessage' (s6989586621681327379 :: Type))
- type ShowTypeSym1 (t6989586621681328125 :: t6989586621681327380) = 'ShowType t6989586621681328125
- data (:<>:@#@$) :: forall (s6989586621681327379 :: Type). (~>) (ErrorMessage' s6989586621681327379) ((~>) (ErrorMessage' s6989586621681327379) (ErrorMessage' (s6989586621681327379 :: Type)))
- data (:<>:@#@$$) (t6989586621681328127 :: ErrorMessage' (s6989586621681327379 :: Type)) :: (~>) (ErrorMessage' s6989586621681327379) (ErrorMessage' (s6989586621681327379 :: Type))
- type (:<>:@#@$$$) (t6989586621681328127 :: ErrorMessage' s6989586621681327379) (t6989586621681328128 :: ErrorMessage' s6989586621681327379) = '(:<>:) t6989586621681328127 t6989586621681328128
- data (:$$:@#@$) :: forall (s6989586621681327379 :: Type). (~>) (ErrorMessage' s6989586621681327379) ((~>) (ErrorMessage' s6989586621681327379) (ErrorMessage' (s6989586621681327379 :: Type)))
- data (:$$:@#@$$) (t6989586621681328131 :: ErrorMessage' (s6989586621681327379 :: Type)) :: (~>) (ErrorMessage' s6989586621681327379) (ErrorMessage' (s6989586621681327379 :: Type))
- type (:$$:@#@$$$) (t6989586621681328131 :: ErrorMessage' s6989586621681327379) (t6989586621681328132 :: ErrorMessage' s6989586621681327379) = '(:$$:) t6989586621681328131 t6989586621681328132
- data TypeErrorSym0 :: forall b6989586621681327363. (~>) PErrorMessage b6989586621681327363
- type TypeErrorSym1 (a6989586621681327364 :: PErrorMessage) = TypeError a6989586621681327364

# Documentation

type family TypeError (a :: PErrorMessage) :: b where ... Source #

A drop-in replacement for `TypeError`. This also exists at the value-level as `typeError`.

Equations

TypeError a = TypeError (ConvertPErrorMessage a) |

sTypeError :: HasCallStack => Sing err -> Sing (TypeError err) Source #

The singleton for `typeError`.

Note that this is not quite as expressive as `TypeError`, as it is unable to handle `ShowType` constructors at all.

typeError :: HasCallStack => ErrorMessage -> a Source #

The value-level counterpart to `TypeError`.

Note that this is not quite as expressive as `TypeError`, as it is unable to print the contents of `ShowType` constructors (it will simply print `"<type>"` in their place).

data ErrorMessage' s Source #

A description of a custom type error.

This is a variation on `ErrorMessage` that is parameterized over what text type is used in the `Text` constructor. Instantiating it with `Text` gives you `ErrorMessage`, and instantiating it with `Symbol` gives you `PErrorMessage`.

Constructors

Text s | Show the text as is.
forall t. ShowType t | Pretty print the type. `ShowType :: k -> ErrorMessage`
(ErrorMessage' s) :<>: (ErrorMessage' s) infixl 6 | Put two pieces of error message next to each other.
(ErrorMessage' s) :$$: (ErrorMessage' s) infixl 5 | Stack two pieces of error message on top of each other.

#### Instances

Instances details

SingKind PErrorMessage Source # |
Instance details Defined in Data.Singletons.TypeError Associated Types type Demote PErrorMessage = (r :: Type) Source # Methods fromSing :: forall (a :: PErrorMessage). Sing a -> Demote PErrorMessage Source # toSing :: Demote PErrorMessage -> SomeSing PErrorMessage Source #
SingI t => SingI ('Text t :: ErrorMessage' Symbol) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing ('Text t) Source #
SingI ty => SingI ('ShowType ty :: ErrorMessage' Symbol) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing ('ShowType ty) Source #
(SingI e1, SingI e2) => SingI (e1 :<>: e2 :: ErrorMessage' Symbol) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing (e1 :<>: e2) Source #
(SingI e1, SingI e2) => SingI (e1 :$$: e2 :: ErrorMessage' Symbol) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing (e1 :$$: e2) Source #
SingI (TypeErrorSym0 :: TyFun PErrorMessage b6989586621681327363 -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing TypeErrorSym0 Source #
SingI (TextSym0 :: TyFun Symbol (ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing TextSym0 Source #
SingI ((:$$:@#@$) :: TyFun (ErrorMessage' Symbol) (ErrorMessage' Symbol ~> ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing (:$$:@#@$) Source #
SingI ((:<>:@#@$) :: TyFun (ErrorMessage' Symbol) (ErrorMessage' Symbol ~> ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing (:<>:@#@$) Source #
SuppressUnusedWarnings (TextSym0 :: TyFun s6989586621681327379 (ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
SuppressUnusedWarnings (TypeErrorSym0 :: TyFun PErrorMessage b6989586621681327363 -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
SuppressUnusedWarnings ((:<>:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
SuppressUnusedWarnings ((:$$:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
SingI (ShowTypeSym0 :: TyFun t (ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing ShowTypeSym0 Source #
SingI x => SingI ((:$$:@#@$$) x :: TyFun (ErrorMessage' Symbol) (ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing ((:$$:@#@$$) x) Source #
SingI x => SingI ((:<>:@#@$$) x :: TyFun (ErrorMessage' Symbol) (ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing ((:<>:@#@$$) x) Source #
SuppressUnusedWarnings (ShowTypeSym0 :: TyFun t6989586621681327380 (ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
SuppressUnusedWarnings ((:<>:@#@$$) t6989586621681328127 :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
SuppressUnusedWarnings ((:$$:@#@$$) t6989586621681328131 :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
type Demote PErrorMessage Source # |
Instance details Defined in Data.Singletons.TypeError type Demote PErrorMessage = ErrorMessage
type Sing Source # |
Instance details Defined in Data.Singletons.TypeError type Sing = SErrorMessage
type Apply (TypeErrorSym0 :: TyFun PErrorMessage k2 -> Type) (a6989586621681327364 :: PErrorMessage) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply (TypeErrorSym0 :: TyFun PErrorMessage k2 -> Type) (a6989586621681327364 :: PErrorMessage) = TypeError a6989586621681327364 :: k2
type Apply (TextSym0 :: TyFun s (ErrorMessage' s) -> Type) (t6989586621681328123 :: s) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply (TextSym0 :: TyFun s (ErrorMessage' s) -> Type) (t6989586621681328123 :: s) = 'Text t6989586621681328123
type Apply (ShowTypeSym0 :: TyFun t (ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328125 :: t) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply (ShowTypeSym0 :: TyFun t (ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328125 :: t) = 'ShowType t6989586621681328125 :: ErrorMessage' s6989586621681327379
type Apply ((:<>:@#@$$) t6989586621681328127 :: TyFun (ErrorMessage' s) (ErrorMessage' s) -> Type) (t6989586621681328128 :: ErrorMessage' s) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply ((:<>:@#@$$) t6989586621681328127 :: TyFun (ErrorMessage' s) (ErrorMessage' s) -> Type) (t6989586621681328128 :: ErrorMessage' s) = t6989586621681328127 :<>: t6989586621681328128
type Apply ((:$$:@#@$$) t6989586621681328131 :: TyFun (ErrorMessage' s) (ErrorMessage' s) -> Type) (t6989586621681328132 :: ErrorMessage' s) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply ((:$$:@#@$$) t6989586621681328131 :: TyFun (ErrorMessage' s) (ErrorMessage' s) -> Type) (t6989586621681328132 :: ErrorMessage' s) = t6989586621681328131 :$$: t6989586621681328132
type Apply ((:<>:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328127 :: ErrorMessage' s6989586621681327379) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply ((:<>:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328127 :: ErrorMessage' s6989586621681327379) = (:<>:@#@$$) t6989586621681328127
type Apply ((:$$:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328131 :: ErrorMessage' s6989586621681327379) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply ((:$$:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328131 :: ErrorMessage' s6989586621681327379) = (:$$:@#@$$) t6989586621681328131

type ErrorMessage = ErrorMessage' Text Source #

A value-level `ErrorMessage`` which uses `Text` as its text type.

type PErrorMessage = ErrorMessage' Symbol Source #

A type-level `ErrorMessage`` which uses `Symbol` as its text kind.

type family Sing :: k -> Type Source #

The singleton kind-indexed type family.

#### Instances

Instances details

type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = SBool
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = SOrdering
type Sing Source # |
Instance details Defined in Data.Singletons.TypeLits.Internal type Sing = SNat
type Sing Source # |
Instance details Defined in Data.Singletons.TypeLits.Internal type Sing = SSymbol
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = STuple0
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = SVoid
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SAll
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SAny
type Sing Source # |
Instance details Defined in Data.Singletons.TypeError type Sing = SErrorMessage
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = SList :: [a] -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = SMaybe :: Maybe a -> Type

type Sing Source #

A choice of singleton for the kind ``TYPE` rep` (for some `RuntimeRep` `rep`), an instantiation of which is the famous kind `Type`.

Conceivably, one could generalize this instance to `Sing @k` for any kind `k`, and remove all other `Sing` instances. We don't adopt this design, however, since it is far more convenient in practice to work with explicit singleton values than `TypeRep`s (for instance, `TypeRep`s are more difficult to pattern match on, and require extra runtime checks).

We cannot produce explicit singleton values for everything in ``TYPE` rep`, however, since it is an open kind, so we reach for `TypeRep` in this one particular case.

Instance details Defined in Data.Singletons.TypeRepTYPE type Sing = TypeRep :: TYPE rep -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = SNonEmpty :: NonEmpty a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Ord type Sing = SDown :: Down a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = SIdentity :: Identity a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SFirst :: First a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SLast :: Last a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SMax :: Max a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SMin :: Min a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SOption :: Option a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SWrappedMonoid :: WrappedMonoid m -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SDual :: Dual a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SProduct :: Product a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type Sing = SSum :: Sum a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Monoid type Sing = SFirst :: First a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Monoid type Sing = SLast :: Last a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = SEither :: Either a b -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = STuple2 :: (a, b) -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Internal type Sing = SLambda :: (k1 ~> k2) -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Internal type Sing = SWrappedSing :: WrappedSing a -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup type Sing = SArg :: Arg a b -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Sigma type Sing = SSigma :: Sigma s t -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = STuple3 :: (a, b, c) -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Sing = SConst :: Const a b -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = STuple4 :: (a, b, c, d) -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = STuple5 :: (a, b, c, d, e) -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = STuple6 :: (a, b, c, d, e, f) -> Type
type Sing Source # |
Instance details Defined in Data.Singletons.Prelude.Instances type Sing = STuple7 :: (a, b, c, d, e, f, g) -> Type

data SErrorMessage :: PErrorMessage -> Type where Source #

Constructors

SText :: Sing t -> SErrorMessage ('Text t) |
SShowType :: Sing ty -> SErrorMessage ('ShowType ty) |
(:%<>:) :: Sing e1 -> Sing e2 -> SErrorMessage (e1 :<>: e2) infixl 6 |
(:%$$:) :: Sing e1 -> Sing e2 -> SErrorMessage (e1 :$$: e2) infixl 5 |

type family ConvertPErrorMessage (a :: PErrorMessage) :: ErrorMessage where ... Source #

Convert a `PErrorMessage` to a `ErrorMessage` from GHC.TypeLits.

Equations

ConvertPErrorMessage ('Text t) = 'Text t |
ConvertPErrorMessage ('ShowType ty) = 'ShowType ty |
ConvertPErrorMessage (e1 :<>: e2) = ConvertPErrorMessage e1 :<>: ConvertPErrorMessage e2 |
ConvertPErrorMessage (e1 :$$: e2) = ConvertPErrorMessage e1 :$$: ConvertPErrorMessage e2 |

showErrorMessage :: ErrorMessage -> String Source #

Convert an `ErrorMessage` into a human-readable `String`.

# Defunctionalization symbols

data TextSym0 :: forall (s6989586621681327379 :: Type). (~>) s6989586621681327379 (ErrorMessage' (s6989586621681327379 :: Type)) Source #

#### Instances

Instances details

SingI (TextSym0 :: TyFun Symbol (ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing TextSym0 Source #
SuppressUnusedWarnings (TextSym0 :: TyFun s6989586621681327379 (ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
type Apply (TextSym0 :: TyFun s (ErrorMessage' s) -> Type) (t6989586621681328123 :: s) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply (TextSym0 :: TyFun s (ErrorMessage' s) -> Type) (t6989586621681328123 :: s) = 'Text t6989586621681328123

type TextSym1 (t6989586621681328123 :: s6989586621681327379) = 'Text t6989586621681328123 Source #

data ShowTypeSym0 :: forall t6989586621681327380 (s6989586621681327379 :: Type). (~>) t6989586621681327380 (ErrorMessage' (s6989586621681327379 :: Type)) Source #

#### Instances

Instances details

SingI (ShowTypeSym0 :: TyFun t (ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing ShowTypeSym0 Source #
SuppressUnusedWarnings (ShowTypeSym0 :: TyFun t6989586621681327380 (ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
type Apply (ShowTypeSym0 :: TyFun t (ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328125 :: t) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply (ShowTypeSym0 :: TyFun t (ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328125 :: t) = 'ShowType t6989586621681328125 :: ErrorMessage' s6989586621681327379

type ShowTypeSym1 (t6989586621681328125 :: t6989586621681327380) = 'ShowType t6989586621681328125 Source #

data (:<>:@#@$) :: forall (s6989586621681327379 :: Type). (~>) (ErrorMessage' s6989586621681327379) ((~>) (ErrorMessage' s6989586621681327379) (ErrorMessage' (s6989586621681327379 :: Type))) infixl 6 Source #

#### Instances

Instances details

SingI ((:<>:@#@$) :: TyFun (ErrorMessage' Symbol) (ErrorMessage' Symbol ~> ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing (:<>:@#@$) Source #
SuppressUnusedWarnings ((:<>:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
type Apply ((:<>:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328127 :: ErrorMessage' s6989586621681327379) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply ((:<>:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328127 :: ErrorMessage' s6989586621681327379) = (:<>:@#@$$) t6989586621681328127

data (:<>:@#@$$) (t6989586621681328127 :: ErrorMessage' (s6989586621681327379 :: Type)) :: (~>) (ErrorMessage' s6989586621681327379) (ErrorMessage' (s6989586621681327379 :: Type)) infixl 6 Source #

#### Instances

Instances details

SingI x => SingI ((:<>:@#@$$) x :: TyFun (ErrorMessage' Symbol) (ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing ((:<>:@#@$$) x) Source #
SuppressUnusedWarnings ((:<>:@#@$$) t6989586621681328127 :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
type Apply ((:<>:@#@$$) t6989586621681328127 :: TyFun (ErrorMessage' s) (ErrorMessage' s) -> Type) (t6989586621681328128 :: ErrorMessage' s) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply ((:<>:@#@$$) t6989586621681328127 :: TyFun (ErrorMessage' s) (ErrorMessage' s) -> Type) (t6989586621681328128 :: ErrorMessage' s) = t6989586621681328127 :<>: t6989586621681328128

type (:<>:@#@$$$) (t6989586621681328127 :: ErrorMessage' s6989586621681327379) (t6989586621681328128 :: ErrorMessage' s6989586621681327379) = '(:<>:) t6989586621681328127 t6989586621681328128 Source #

data (:$$:@#@$) :: forall (s6989586621681327379 :: Type). (~>) (ErrorMessage' s6989586621681327379) ((~>) (ErrorMessage' s6989586621681327379) (ErrorMessage' (s6989586621681327379 :: Type))) infixl 5 Source #

#### Instances

Instances details

SingI ((:$$:@#@$) :: TyFun (ErrorMessage' Symbol) (ErrorMessage' Symbol ~> ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing (:$$:@#@$) Source #
SuppressUnusedWarnings ((:$$:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
type Apply ((:$$:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328131 :: ErrorMessage' s6989586621681327379) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply ((:$$:@#@$) :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379 ~> ErrorMessage' s6989586621681327379) -> Type) (t6989586621681328131 :: ErrorMessage' s6989586621681327379) = (:$$:@#@$$) t6989586621681328131

data (:$$:@#@$$) (t6989586621681328131 :: ErrorMessage' (s6989586621681327379 :: Type)) :: (~>) (ErrorMessage' s6989586621681327379) (ErrorMessage' (s6989586621681327379 :: Type)) infixl 5 Source #

#### Instances

Instances details

SingI x => SingI ((:$$:@#@$$) x :: TyFun (ErrorMessage' Symbol) (ErrorMessage' Symbol) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing ((:$$:@#@$$) x) Source #
SuppressUnusedWarnings ((:$$:@#@$$) t6989586621681328131 :: TyFun (ErrorMessage' s6989586621681327379) (ErrorMessage' s6989586621681327379) -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
type Apply ((:$$:@#@$$) t6989586621681328131 :: TyFun (ErrorMessage' s) (ErrorMessage' s) -> Type) (t6989586621681328132 :: ErrorMessage' s) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply ((:$$:@#@$$) t6989586621681328131 :: TyFun (ErrorMessage' s) (ErrorMessage' s) -> Type) (t6989586621681328132 :: ErrorMessage' s) = t6989586621681328131 :$$: t6989586621681328132

type (:$$:@#@$$$) (t6989586621681328131 :: ErrorMessage' s6989586621681327379) (t6989586621681328132 :: ErrorMessage' s6989586621681327379) = '(:$$:) t6989586621681328131 t6989586621681328132 Source #

data TypeErrorSym0 :: forall b6989586621681327363. (~>) PErrorMessage b6989586621681327363 Source #

#### Instances

Instances details

SingI (TypeErrorSym0 :: TyFun PErrorMessage b6989586621681327363 -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods sing :: Sing TypeErrorSym0 Source #
SuppressUnusedWarnings (TypeErrorSym0 :: TyFun PErrorMessage b6989586621681327363 -> Type) Source # |
Instance details Defined in Data.Singletons.TypeError Methods suppressUnusedWarnings :: () Source #
type Apply (TypeErrorSym0 :: TyFun PErrorMessage k2 -> Type) (a6989586621681327364 :: PErrorMessage) Source # |
Instance details Defined in Data.Singletons.TypeError type Apply (TypeErrorSym0 :: TyFun PErrorMessage k2 -> Type) (a6989586621681327364 :: PErrorMessage) = TypeError a6989586621681327364 :: k2

type TypeErrorSym1 (a6989586621681327364 :: PErrorMessage) = TypeError a6989586621681327364 Source #