singletons-2.5.1: 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.Prelude.Applicative

Contents

- Defunctionalization symbols
- Orphan instances

Description

Defines the promoted and singled versions of the `Applicative` type class.

Synopsis

- class PFunctor f => PApplicative (f :: Type -> Type) where
  - type Pure (arg :: a) :: f a
  - type (arg :: f ((~>) a b)) <*> (arg :: f a) :: f b
  - type LiftA2 (arg :: (~>) a ((~>) b c)) (arg :: f a) (arg :: f b) :: f c
  - type (arg :: f a) *> (arg :: f b) :: f b
  - type (arg :: f a) <* (arg :: f b) :: f a
- class SFunctor f => SApplicative (f :: Type -> Type) where
  - sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t :: f a)
  - (%<*>) :: forall a b (t :: f ((~>) a b)) (t :: f a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t :: f b)
  - sLiftA2 :: forall a b c (t :: (~>) a ((~>) b c)) (t :: f a) (t :: f b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t :: f c)
  - (%*>) :: forall a b (t :: f a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t :: f b)
  - (%<*) :: forall a b (t :: f a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t :: f a)
- class PApplicative f => PAlternative (f :: Type -> Type) where
  - type Empty :: f a
  - type (arg :: f a) <|> (arg :: f a) :: f a
- class SApplicative f => SAlternative (f :: Type -> Type) where
  - sEmpty :: forall a. Sing (EmptySym0 :: f a)
  - (%<|>) :: forall a (t :: f a) (t :: f a). Sing t -> Sing t -> Sing (Apply (Apply (<|>@#@$) t) t :: f a)
- data family Sing :: k -> Type
- type SConst = (Sing :: Const a b -> Type)
- data Const a (b :: k) :: forall k. Type -> k -> Type
- type family GetConst (x :: Const a b) :: a where ...
- type family (a :: (~>) a b) <$> (a :: f a) :: f b where ...
- (%<$>) :: forall f a b (t :: (~>) a b) (t :: f a). SFunctor f => Sing t -> Sing t -> Sing (Apply (Apply (<$>@#@$) t) t :: f b)
- type family (arg :: a) <$ (arg :: f b) :: f a
- (%<$) :: forall a b (t :: a) (t :: f b). SFunctor f => Sing t -> Sing t -> Sing (Apply (Apply (<$@#@$) t) t :: f a)
- type family (a :: f a) <**> (a :: f ((~>) a b)) :: f b where ...
- (%<**>) :: forall f a b (t :: f a) (t :: f ((~>) a b)). SApplicative f => Sing t -> Sing t -> Sing (Apply (Apply (<**>@#@$) t) t :: f b)
- type family LiftA (a :: (~>) a b) (a :: f a) :: f b where ...
- sLiftA :: forall f a b (t :: (~>) a b) (t :: f a). SApplicative f => Sing t -> Sing t -> Sing (Apply (Apply LiftASym0 t) t :: f b)
- type family LiftA3 (a :: (~>) a ((~>) b ((~>) c d))) (a :: f a) (a :: f b) (a :: f c) :: f d where ...
- sLiftA3 :: forall f a b c d (t :: (~>) a ((~>) b ((~>) c d))) (t :: f a) (t :: f b) (t :: f c). SApplicative f => Sing t -> Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (Apply LiftA3Sym0 t) t) t) t :: f d)
- type family Optional (a :: f a) :: f (Maybe a) where ...
- sOptional :: forall f a (t :: f a). SAlternative f => Sing t -> Sing (Apply OptionalSym0 t :: f (Maybe a))
- data PureSym0 :: forall a6989586621679545967 f6989586621679545966. (~>) a6989586621679545967 (f6989586621679545966 a6989586621679545967)
- type PureSym1 (arg6989586621679546379 :: a6989586621679545967) = Pure arg6989586621679546379
- data (<*>@#@$) :: forall a6989586621679545968 b6989586621679545969 f6989586621679545966. (~>) (f6989586621679545966 ((~>) a6989586621679545968 b6989586621679545969)) ((~>) (f6989586621679545966 a6989586621679545968) (f6989586621679545966 b6989586621679545969))
- data (<*>@#@$$) (arg6989586621679546381 :: f6989586621679545966 ((~>) a6989586621679545968 b6989586621679545969)) :: (~>) (f6989586621679545966 a6989586621679545968) (f6989586621679545966 b6989586621679545969)
- type (<*>@#@$$$) (arg6989586621679546381 :: f6989586621679545966 ((~>) a6989586621679545968 b6989586621679545969)) (arg6989586621679546382 :: f6989586621679545966 a6989586621679545968) = (<*>) arg6989586621679546381 arg6989586621679546382
- data (*>@#@$) :: forall a6989586621679545973 b6989586621679545974 f6989586621679545966. (~>) (f6989586621679545966 a6989586621679545973) ((~>) (f6989586621679545966 b6989586621679545974) (f6989586621679545966 b6989586621679545974))
- data (*>@#@$$) (arg6989586621679546391 :: f6989586621679545966 a6989586621679545973) :: forall b6989586621679545974. (~>) (f6989586621679545966 b6989586621679545974) (f6989586621679545966 b6989586621679545974)
- type (*>@#@$$$) (arg6989586621679546391 :: f6989586621679545966 a6989586621679545973) (arg6989586621679546392 :: f6989586621679545966 b6989586621679545974) = (*>) arg6989586621679546391 arg6989586621679546392
- data (<*@#@$) :: forall a6989586621679545975 b6989586621679545976 f6989586621679545966. (~>) (f6989586621679545966 a6989586621679545975) ((~>) (f6989586621679545966 b6989586621679545976) (f6989586621679545966 a6989586621679545975))
- data (<*@#@$$) (arg6989586621679546395 :: f6989586621679545966 a6989586621679545975) :: forall b6989586621679545976. (~>) (f6989586621679545966 b6989586621679545976) (f6989586621679545966 a6989586621679545975)
- type (<*@#@$$$) (arg6989586621679546395 :: f6989586621679545966 a6989586621679545975) (arg6989586621679546396 :: f6989586621679545966 b6989586621679545976) = (<*) arg6989586621679546395 arg6989586621679546396
- type EmptySym0 = Empty
- data (<|>@#@$) :: forall a6989586621679546045 f6989586621679546043. (~>) (f6989586621679546043 a6989586621679546045) ((~>) (f6989586621679546043 a6989586621679546045) (f6989586621679546043 a6989586621679546045))
- data (<|>@#@$$) (arg6989586621679546512 :: f6989586621679546043 a6989586621679546045) :: (~>) (f6989586621679546043 a6989586621679546045) (f6989586621679546043 a6989586621679546045)
- type (<|>@#@$$$) (arg6989586621679546512 :: f6989586621679546043 a6989586621679546045) (arg6989586621679546513 :: f6989586621679546043 a6989586621679546045) = (<|>) arg6989586621679546512 arg6989586621679546513
- data ConstSym0 :: forall (a6989586621679091214 :: Type) k6989586621679091213 (b6989586621679091215 :: k6989586621679091213). (~>) a6989586621679091214 (Const (a6989586621679091214 :: Type) (b6989586621679091215 :: k6989586621679091213))
- type ConstSym1 (t6989586621680705928 :: a6989586621679091214) = Const t6989586621680705928
- data GetConstSym0 :: forall a6989586621680706243 b6989586621680706244. (~>) (Const a6989586621680706243 b6989586621680706244) a6989586621680706243
- type GetConstSym1 (x6989586621680706245 :: Const a6989586621680706243 b6989586621680706244) = GetConst x6989586621680706245
- data (<$>@#@$) :: forall a6989586621679715297 b6989586621679715298 f6989586621679715296. (~>) ((~>) a6989586621679715297 b6989586621679715298) ((~>) (f6989586621679715296 a6989586621679715297) (f6989586621679715296 b6989586621679715298))
- data (<$>@#@$$) (a6989586621679715377 :: (~>) a6989586621679715297 b6989586621679715298) :: forall f6989586621679715296. (~>) (f6989586621679715296 a6989586621679715297) (f6989586621679715296 b6989586621679715298)
- type (<$>@#@$$$) (a6989586621679715377 :: (~>) a6989586621679715297 b6989586621679715298) (a6989586621679715378 :: f6989586621679715296 a6989586621679715297) = (<$>) a6989586621679715377 a6989586621679715378
- data (<$@#@$) :: forall a6989586621679545964 b6989586621679545965 f6989586621679545961. (~>) a6989586621679545964 ((~>) (f6989586621679545961 b6989586621679545965) (f6989586621679545961 a6989586621679545964))
- data (<$@#@$$) (arg6989586621679546359 :: a6989586621679545964) :: forall b6989586621679545965 f6989586621679545961. (~>) (f6989586621679545961 b6989586621679545965) (f6989586621679545961 a6989586621679545964)
- type (<$@#@$$$) (arg6989586621679546359 :: a6989586621679545964) (arg6989586621679546360 :: f6989586621679545961 b6989586621679545965) = (<$) arg6989586621679546359 arg6989586621679546360
- data (<**>@#@$) :: forall a6989586621679545926 b6989586621679545927 f6989586621679545925. (~>) (f6989586621679545925 a6989586621679545926) ((~>) (f6989586621679545925 ((~>) a6989586621679545926 b6989586621679545927)) (f6989586621679545925 b6989586621679545927))
- data (<**>@#@$$) (a6989586621679546339 :: f6989586621679545925 a6989586621679545926) :: forall b6989586621679545927. (~>) (f6989586621679545925 ((~>) a6989586621679545926 b6989586621679545927)) (f6989586621679545925 b6989586621679545927)
- type (<**>@#@$$$) (a6989586621679546339 :: f6989586621679545925 a6989586621679545926) (a6989586621679546340 :: f6989586621679545925 ((~>) a6989586621679545926 b6989586621679545927)) = (<**>) a6989586621679546339 a6989586621679546340
- data LiftASym0 :: forall a6989586621679545923 b6989586621679545924 f6989586621679545922. (~>) ((~>) a6989586621679545923 b6989586621679545924) ((~>) (f6989586621679545922 a6989586621679545923) (f6989586621679545922 b6989586621679545924))
- data LiftASym1 (a6989586621679546329 :: (~>) a6989586621679545923 b6989586621679545924) :: forall f6989586621679545922. (~>) (f6989586621679545922 a6989586621679545923) (f6989586621679545922 b6989586621679545924)
- type LiftASym2 (a6989586621679546329 :: (~>) a6989586621679545923 b6989586621679545924) (a6989586621679546330 :: f6989586621679545922 a6989586621679545923) = LiftA a6989586621679546329 a6989586621679546330
- data LiftA2Sym0 :: forall a6989586621679545970 b6989586621679545971 c6989586621679545972 f6989586621679545966. (~>) ((~>) a6989586621679545970 ((~>) b6989586621679545971 c6989586621679545972)) ((~>) (f6989586621679545966 a6989586621679545970) ((~>) (f6989586621679545966 b6989586621679545971) (f6989586621679545966 c6989586621679545972)))
- data LiftA2Sym1 (arg6989586621679546385 :: (~>) a6989586621679545970 ((~>) b6989586621679545971 c6989586621679545972)) :: forall f6989586621679545966. (~>) (f6989586621679545966 a6989586621679545970) ((~>) (f6989586621679545966 b6989586621679545971) (f6989586621679545966 c6989586621679545972))
- data LiftA2Sym2 (arg6989586621679546385 :: (~>) a6989586621679545970 ((~>) b6989586621679545971 c6989586621679545972)) (arg6989586621679546386 :: f6989586621679545966 a6989586621679545970) :: (~>) (f6989586621679545966 b6989586621679545971) (f6989586621679545966 c6989586621679545972)
- type LiftA2Sym3 (arg6989586621679546385 :: (~>) a6989586621679545970 ((~>) b6989586621679545971 c6989586621679545972)) (arg6989586621679546386 :: f6989586621679545966 a6989586621679545970) (arg6989586621679546387 :: f6989586621679545966 b6989586621679545971) = LiftA2 arg6989586621679546385 arg6989586621679546386 arg6989586621679546387
- data LiftA3Sym0 :: forall a6989586621679545918 b6989586621679545919 c6989586621679545920 d6989586621679545921 f6989586621679545917. (~>) ((~>) a6989586621679545918 ((~>) b6989586621679545919 ((~>) c6989586621679545920 d6989586621679545921))) ((~>) (f6989586621679545917 a6989586621679545918) ((~>) (f6989586621679545917 b6989586621679545919) ((~>) (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921))))
- data LiftA3Sym1 (a6989586621679546317 :: (~>) a6989586621679545918 ((~>) b6989586621679545919 ((~>) c6989586621679545920 d6989586621679545921))) :: forall f6989586621679545917. (~>) (f6989586621679545917 a6989586621679545918) ((~>) (f6989586621679545917 b6989586621679545919) ((~>) (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921)))
- data LiftA3Sym2 (a6989586621679546317 :: (~>) a6989586621679545918 ((~>) b6989586621679545919 ((~>) c6989586621679545920 d6989586621679545921))) (a6989586621679546318 :: f6989586621679545917 a6989586621679545918) :: (~>) (f6989586621679545917 b6989586621679545919) ((~>) (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921))
- data LiftA3Sym3 (a6989586621679546317 :: (~>) a6989586621679545918 ((~>) b6989586621679545919 ((~>) c6989586621679545920 d6989586621679545921))) (a6989586621679546318 :: f6989586621679545917 a6989586621679545918) (a6989586621679546319 :: f6989586621679545917 b6989586621679545919) :: (~>) (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921)
- data OptionalSym0 :: forall a6989586621681194396 f6989586621681194395. (~>) (f6989586621681194395 a6989586621681194396) (f6989586621681194395 (Maybe a6989586621681194396))
- type OptionalSym1 (a6989586621681194435 :: f6989586621681194395 a6989586621681194396) = Optional a6989586621681194435

# Documentation

class PFunctor f => PApplicative (f :: Type -> Type) Source #

Associated Types

type Pure (arg :: a) :: f a Source #

type (arg :: f ((~>) a b)) <*> (arg :: f a) :: f b infixl 4 Source #

type LiftA2 (arg :: (~>) a ((~>) b c)) (arg :: f a) (arg :: f b) :: f c Source #

type (arg :: f a) *> (arg :: f b) :: f b infixl 4 Source #

type (arg :: f a) <* (arg :: f b) :: f a infixl 4 Source #

Instances

PApplicative [] Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Maybe Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Min Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Max Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative First Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Last Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Option Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Identity Source # |
Instance details Defined in Data.Singletons.Prelude.Identity Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative First Source # |
Instance details Defined in Data.Singletons.Prelude.Monoid Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Last Source # |
Instance details Defined in Data.Singletons.Prelude.Monoid Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Dual Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Sum Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Product Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative Down Source # |
Instance details Defined in Data.Singletons.Prelude.Applicative Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative NonEmpty Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative (Either e) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative ((,) a) Source # |
Instance details Defined in Data.Singletons.Prelude.Applicative Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PApplicative (Const m :: Type -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #

class SFunctor f => SApplicative (f :: Type -> Type) where Source #

Minimal complete definition

sPure

Methods

sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t :: f a) Source #

(%<*>) :: forall a b (t :: f ((~>) a b)) (t :: f a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t :: f b) infixl 4 Source #

sLiftA2 :: forall a b c (t :: (~>) a ((~>) b c)) (t :: f a) (t :: f b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t :: f c) Source #

(%*>) :: forall a b (t :: f a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t :: f b) infixl 4 Source #

(%<*) :: forall a b (t :: f a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t :: f a) infixl 4 Source #

(%<*>) :: forall a b (t :: f ((~>) a b)) (t :: f a). (Apply (Apply (<*>@#@$) t) t :: f b) ~ Apply (Apply TFHelper_6989586621679546411Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t :: f b) infixl 4 Source #

sLiftA2 :: forall a b c (t :: (~>) a ((~>) b c)) (t :: f a) (t :: f b). (Apply (Apply (Apply LiftA2Sym0 t) t) t :: f c) ~ Apply (Apply (Apply LiftA2_6989586621679546429Sym0 t) t) t => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t :: f c) Source #

(%*>) :: forall a b (t :: f a) (t :: f b). (Apply (Apply (*>@#@$) t) t :: f b) ~ Apply (Apply TFHelper_6989586621679546442Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t :: f b) infixl 4 Source #

(%<*) :: forall a b (t :: f a) (t :: f b). (Apply (Apply (<*@#@$) t) t :: f a) ~ Apply (Apply TFHelper_6989586621679546458Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t :: f a) infixl 4 Source #

Instances

SApplicative [] Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Maybe Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Min Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Max Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative First Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Last Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Option Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Identity Source # |

Instance details

Defined in Data.Singletons.Prelude.Identity

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative First Source # |

Instance details

Defined in Data.Singletons.Prelude.Monoid

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Last Source # |

Instance details

Defined in Data.Singletons.Prelude.Monoid

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Dual Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Sum Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Product Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative Down Source # |

Instance details

Defined in Data.Singletons.Prelude.Applicative

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative NonEmpty Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SApplicative (Either e) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SMonoid a => SApplicative ((,) a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Applicative

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SMonoid m => SApplicative (Const m :: Type -> Type) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

class PApplicative f => PAlternative (f :: Type -> Type) Source #

Associated Types

type Empty :: f a Source #

type (arg :: f a) <|> (arg :: f a) :: f a infixl 3 Source #

Instances

PAlternative [] Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Associated Types type Empty :: f a Source # type arg <|> arg :: f a Source #
PAlternative Maybe Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Associated Types type Empty :: f a Source # type arg <|> arg :: f a Source #
PAlternative Option Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Associated Types type Empty :: f a Source # type arg <|> arg :: f a Source #

class SApplicative f => SAlternative (f :: Type -> Type) where Source #

Methods

sEmpty :: forall a. Sing (EmptySym0 :: f a) Source #

(%<|>) :: forall a (t :: f a) (t :: f a). Sing t -> Sing t -> Sing (Apply (Apply (<|>@#@$) t) t :: f a) infixl 3 Source #

Instances

SAlternative [] Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sEmpty :: Sing EmptySym0 Source # (%<|>) :: Sing t -> Sing t -> Sing (Apply (Apply (<|>@#@$) t) t) Source #
SAlternative Maybe Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sEmpty :: Sing EmptySym0 Source # (%<|>) :: Sing t -> Sing t -> Sing (Apply (Apply (<|>@#@$) t) t) Source #
SAlternative Option Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods sEmpty :: Sing EmptySym0 Source # (%<|>) :: Sing t -> Sing t -> Sing (Apply (Apply (<|>@#@$) t) t) Source #

data family Sing :: k -> Type Source #

The singleton kind-indexed data family.

Instances

SDecide k => TestCoercion (Sing :: k -> Type) Source # |
Instance details Defined in Data.Singletons.Decide Methods testCoercion :: Sing a -> Sing b -> Maybe (Coercion a b) Source #
SDecide k => TestEquality (Sing :: k -> Type) Source # |
Instance details Defined in Data.Singletons.Decide Methods testEquality :: Sing a -> Sing b -> Maybe (a :~: b) Source #
Show (SSymbol s) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> SSymbol s -> ShowS Source # show :: SSymbol s -> String Source # showList :: [SSymbol s] -> ShowS Source #
Show (SNat n) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> SNat n -> ShowS Source # show :: SNat n -> String Source # showList :: [SNat n] -> ShowS Source #
Eq (Sing a) Source # |
Instance details Defined in Data.Singletons.TypeRepTYPE Methods (==) :: Sing a -> Sing a -> Bool Source # (/=) :: Sing a -> Sing a -> Bool Source #
Ord (Sing a) Source # |
Instance details Defined in Data.Singletons.TypeRepTYPE Methods compare :: Sing a -> Sing a -> Ordering Source # (<) :: Sing a -> Sing a -> Bool Source # (<=) :: Sing a -> Sing a -> Bool Source # (>) :: Sing a -> Sing a -> Bool Source # (>=) :: Sing a -> Sing a -> Bool Source # max :: Sing a -> Sing a -> Sing a Source # min :: Sing a -> Sing a -> Sing a Source #
Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing [a]) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing b) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
Show (Sing a) Source # |
Instance details Defined in Data.Singletons.TypeRepTYPE Methods showsPrec :: Int -> Sing a -> ShowS Source # show :: Sing a -> String Source # showList :: [Sing a] -> ShowS Source #
Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing b) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing b, ShowSing c) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing b, ShowSing c, ShowSing d) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f, ShowSing g) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing b) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing m => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing (Maybe a) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing (Maybe a) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Monoid Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing (Maybe a) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Monoid Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing Bool => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing Bool => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
ShowSing a => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
(ShowSing a, ShowSing [a]) => Show (Sing z) Source # |
Instance details Defined in Data.Singletons.ShowSing Methods showsPrec :: Int -> Sing z -> ShowS Source # show :: Sing z -> String Source # showList :: [Sing z] -> ShowS Source #
data Sing (a :: Bool) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (a :: Bool) where

- SFalse :: forall (a :: Bool). Sing False
- STrue :: forall (a :: Bool). Sing True

data Sing (a :: Ordering) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (a :: Ordering) where

- SLT :: forall (a :: Ordering). Sing LT
- SEQ :: forall (a :: Ordering). Sing EQ
- SGT :: forall (a :: Ordering). Sing GT

data Sing (n :: Nat) Source # |

Instance details

Defined in Data.Singletons.TypeLits.Internal

data Sing (n :: Nat) where

- SNat :: forall (n :: Nat). KnownNat n => Sing n

data Sing (n :: Symbol) Source # |

Instance details

Defined in Data.Singletons.TypeLits.Internal

data Sing (n :: Symbol) where

- SSym :: forall (n :: Symbol). KnownSymbol n => Sing n

data Sing (a :: ()) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (a :: ()) where

- STuple0 :: forall (a :: ()). Sing ()

data Sing (a :: Void) Source # |
Instance details Defined in Data.Singletons.Prelude.Instances data Sing (a :: Void)
data Sing (a :: All) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (a :: All) where

- SAll :: forall (a :: All) (n :: Bool). {..} -> Sing (All n)

data Sing (a :: Any) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (a :: Any) where

- SAny :: forall (a :: Any) (n :: Bool). {..} -> Sing (Any n)

data Sing (a :: PErrorMessage) Source # |

Instance details

Defined in Data.Singletons.TypeError

data Sing (a :: PErrorMessage) where

- SText :: forall (a :: PErrorMessage) (t :: Symbol). Sing t -> Sing (Text t)
- SShowType :: forall (a :: PErrorMessage) t (ty :: t). Sing ty -> Sing (ShowType ty :: ErrorMessage' Symbol)
- (:%<>:) :: forall (a :: PErrorMessage) (e1 :: ErrorMessage' Symbol) (e2 :: ErrorMessage' Symbol). Sing e1 -> Sing e2 -> Sing (e1 :<>: e2)
- (:%$$:) :: forall (a :: PErrorMessage) (e1 :: ErrorMessage' Symbol) (e2 :: ErrorMessage' Symbol). Sing e1 -> Sing e2 -> Sing (e1 :$$: e2)

data Sing (b :: [a]) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (b :: [a]) where

- SNil :: forall k (b :: [k]). Sing ([] :: [k])
- SCons :: forall a (b :: [a]) (n :: a) (n :: [a]). Sing n -> Sing n -> Sing (n ': n)

data Sing (b :: Maybe a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (b :: Maybe a) where

- SNothing :: forall a (b :: Maybe a). Sing (Nothing :: Maybe a)
- SJust :: forall a (b :: Maybe a) (n :: a). Sing n -> Sing (Just n)

newtype Sing (a :: TYPE rep) 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 -> Type` 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 newtype Sing (a :: TYPE rep) = STypeRep (TypeRep a)
data Sing (b :: Min a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Min a) where

- SMin :: forall a (b :: Min a) (n :: a). {..} -> Sing (Min n)

data Sing (b :: Max a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Max a) where

- SMax :: forall a (b :: Max a) (n :: a). {..} -> Sing (Max n)

data Sing (b :: First a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: First a) where

- SFirst :: forall a (b :: First a) (n :: a). {..} -> Sing (First n)

data Sing (b :: Last a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Last a) where

- SLast :: forall a (b :: Last a) (n :: a). {..} -> Sing (Last n)

data Sing (a :: WrappedMonoid m) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (a :: WrappedMonoid m) where

- SWrapMonoid :: forall m (a :: WrappedMonoid m) (n :: m). {..} -> Sing (WrapMonoid n)

data Sing (b :: Option a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Option a) where

- SOption :: forall a (b :: Option a) (n :: Maybe a). {..} -> Sing (Option n)

data Sing (b :: Identity a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (b :: Identity a) where

- SIdentity :: forall a (b :: Identity a) (n :: a). {..} -> Sing (Identity n)

data Sing (b :: First a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monoid

data Sing (b :: First a) where

- SFirst :: forall a (b :: First a) (n :: Maybe a). {..} -> Sing (First n)

data Sing (b :: Last a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monoid

data Sing (b :: Last a) where

- SLast :: forall a (b :: Last a) (n :: Maybe a). {..} -> Sing (Last n)

data Sing (b :: Dual a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Dual a) where

- SDual :: forall a (b :: Dual a) (n :: a). {..} -> Sing (Dual n)

data Sing (b :: Sum a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Sum a) where

- SSum :: forall a (b :: Sum a) (n :: a). {..} -> Sing (Sum n)

data Sing (b :: Product a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Product a) where

- SProduct :: forall a (b :: Product a) (n :: a). {..} -> Sing (Product n)

data Sing (b :: Down a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Ord

data Sing (b :: Down a) where

- SDown :: forall a (b :: Down a) (n :: a). Sing n -> Sing (Down n)

data Sing (b :: NonEmpty a) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (b :: NonEmpty a) where

- (:%|) :: forall a (b :: NonEmpty a) (n :: a) (n :: [a]). Sing n -> Sing n -> Sing (n :| n)

data Sing (c :: Either a b) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (c :: Either a b) where

- SLeft :: forall a b (c :: Either a b) (n :: a). Sing n -> Sing (Left n :: Either a b)
- SRight :: forall a b (c :: Either a b) (n :: b). Sing n -> Sing (Right n :: Either a b)

data Sing (c :: (a, b)) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (c :: (a, b)) where

- STuple2 :: forall a b (c :: (a, b)) (n :: a) (n :: b). Sing n -> Sing n -> Sing ((,) n n)

data Sing (c :: Arg a b) Source # |

Instance details

Defined in Data.Singletons.Prelude.Semigroup

data Sing (c :: Arg a b) where

- SArg :: forall a b (c :: Arg a b) (n :: a) (n :: b). Sing n -> Sing n -> Sing (Arg n n)

newtype Sing (f :: k1 ~> k2) Source # |

Instance details

Defined in Data.Singletons.Internal

newtype Sing (f :: k1 ~> k2) = SLambda {

- applySing :: forall (t :: k1). Sing t -> Sing (f @@ t)

}

data Sing (d :: (a, b, c)) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (d :: (a, b, c)) where

- STuple3 :: forall a b c (d :: (a, b, c)) (n :: a) (n :: b) (n :: c). Sing n -> Sing n -> Sing n -> Sing ((,,) n n n)

data Sing (c :: Const a b) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

data Sing (c :: Const a b) where

- SConst :: forall k a (b :: k) (c :: Const a b) (a :: a). {..} -> Sing (Const a :: Const a b)

data Sing (e :: (a, b, c, d)) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (e :: (a, b, c, d)) where

- STuple4 :: forall a b c d (e :: (a, b, c, d)) (n :: a) (n :: b) (n :: c) (n :: d). Sing n -> Sing n -> Sing n -> Sing n -> Sing ((,,,) n n n n)

data Sing (f :: (a, b, c, d, e)) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (f :: (a, b, c, d, e)) where

- STuple5 :: forall a b c d e (f :: (a, b, c, d, e)) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e). Sing n -> Sing n -> Sing n -> Sing n -> Sing n -> Sing ((,,,,) n n n n n)

data Sing (g :: (a, b, c, d, e, f)) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (g :: (a, b, c, d, e, f)) where

- STuple6 :: forall a b c d e f (g :: (a, b, c, d, e, f)) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f). Sing n -> Sing n -> Sing n -> Sing n -> Sing n -> Sing n -> Sing ((,,,,,) n n n n n n)

data Sing (h :: (a, b, c, d, e, f, g)) Source # |

Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (h :: (a, b, c, d, e, f, g)) where

- STuple7 :: forall a b c d e f g (h :: (a, b, c, d, e, f, g)) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f) (n :: g). Sing n -> Sing n -> Sing n -> Sing n -> Sing n -> Sing n -> Sing n -> Sing ((,,,,,,) n n n n n n n)

type SConst = (Sing :: Const a b -> Type) Source #

data Const a (b :: k) :: forall k. Type -> k -> Type Source #

The `Const` functor.

Instances

Generic1 (Const a :: k -> Type) |
Instance details Defined in Data.Functor.Const Associated Types type Rep1 (Const a) :: k -> Type Source # Methods from1 :: Const a a0 -> Rep1 (Const a) a0 Source # to1 :: Rep1 (Const a) a0 -> Const a a0 Source #
Bifunctor (Const :: Type -> Type -> Type) | Since: base-4.8.0.0
Instance details Defined in Data.Bifunctor Methods bimap :: (a -> b) -> (c -> d) -> Const a c -> Const b d Source # first :: (a -> b) -> Const a c -> Const b c Source # second :: (b -> c) -> Const a b -> Const a c Source #
Eq2 (Const :: Type -> Type -> Type) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> Const a c -> Const b d -> Bool Source #
Ord2 (Const :: Type -> Type -> Type) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> Const a c -> Const b d -> Ordering Source #
Read2 (Const :: Type -> Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftReadsPrec2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> Int -> ReadS (Const a b) Source #

liftReadList2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> ReadS [Const a b] Source #

liftReadPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec (Const a b) Source #

liftReadListPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec [Const a b] Source #

Show2 (Const :: Type -> Type -> Type) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> Const a b -> ShowS Source # liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [Const a b] -> ShowS Source #
Functor (Const m :: Type -> Type) | Since: base-2.1
Instance details Defined in Data.Functor.Const Methods fmap :: (a -> b) -> Const m a -> Const m b Source # (<$) :: a -> Const m b -> Const m a Source #
Monoid m => Applicative (Const m :: Type -> Type) | Since: base-2.0.1
Instance details Defined in Data.Functor.Const Methods pure :: a -> Const m a Source # (<*>) :: Const m (a -> b) -> Const m a -> Const m b Source # liftA2 :: (a -> b -> c) -> Const m a -> Const m b -> Const m c Source # (*>) :: Const m a -> Const m b -> Const m b Source # (<*) :: Const m a -> Const m b -> Const m a Source #
Foldable (Const m :: Type -> Type) | Since: base-4.7.0.0

Instance details

Defined in Data.Functor.Const

Methods

fold :: Monoid m0 => Const m m0 -> m0 Source #

foldMap :: Monoid m0 => (a -> m0) -> Const m a -> m0 Source #

foldr :: (a -> b -> b) -> b -> Const m a -> b Source #

foldr' :: (a -> b -> b) -> b -> Const m a -> b Source #

foldl :: (b -> a -> b) -> b -> Const m a -> b Source #

foldl' :: (b -> a -> b) -> b -> Const m a -> b Source #

foldr1 :: (a -> a -> a) -> Const m a -> a Source #

foldl1 :: (a -> a -> a) -> Const m a -> a Source #

toList :: Const m a -> [a] Source #

null :: Const m a -> Bool Source #

length :: Const m a -> Int Source #

elem :: Eq a => a -> Const m a -> Bool Source #

maximum :: Ord a => Const m a -> a Source #

minimum :: Ord a => Const m a -> a Source #

sum :: Num a => Const m a -> a Source #

product :: Num a => Const m a -> a Source #

Traversable (Const m :: Type -> Type) | Since: base-4.7.0.0
Instance details Defined in Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Const m a -> f (Const m b) Source # sequenceA :: Applicative f => Const m (f a) -> f (Const m a) Source # mapM :: Monad m0 => (a -> m0 b) -> Const m a -> m0 (Const m b) Source # sequence :: Monad m0 => Const m (m0 a) -> m0 (Const m a) Source #
Eq a => Eq1 (Const a :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftEq :: (a0 -> b -> Bool) -> Const a a0 -> Const a b -> Bool Source #
Ord a => Ord1 (Const a :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftCompare :: (a0 -> b -> Ordering) -> Const a a0 -> Const a b -> Ordering Source #
Read a => Read1 (Const a :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftReadsPrec :: (Int -> ReadS a0) -> ReadS [a0] -> Int -> ReadS (Const a a0) Source # liftReadList :: (Int -> ReadS a0) -> ReadS [a0] -> ReadS [Const a a0] Source # liftReadPrec :: ReadPrec a0 -> ReadPrec [a0] -> ReadPrec (Const a a0) Source # liftReadListPrec :: ReadPrec a0 -> ReadPrec [a0] -> ReadPrec [Const a a0] Source #
Show a => Show1 (Const a :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftShowsPrec :: (Int -> a0 -> ShowS) -> ([a0] -> ShowS) -> Int -> Const a a0 -> ShowS Source # liftShowList :: (Int -> a0 -> ShowS) -> ([a0] -> ShowS) -> [Const a a0] -> ShowS Source #
SMonoid m => SApplicative (Const m :: Type -> Type) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

Methods

sPure :: Sing t -> Sing (Apply PureSym0 t) Source #

(%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source #

sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source #

(%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source #

(%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #

SFunctor (Const m :: Type -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods sFmap :: Sing t -> Sing t -> Sing (Apply (Apply FmapSym0 t) t) Source # (%<$) :: Sing t -> Sing t -> Sing (Apply (Apply (<$@#@$) t) t) Source #
PApplicative (Const m :: Type -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
PFunctor (Const m :: Type -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type Fmap arg arg :: f b Source # type arg <$ arg :: f a Source #
SFoldable (Const m :: Type -> Type) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

Methods

sFold :: SMonoid m0 => Sing t -> Sing (Apply FoldSym0 t) Source #

sFoldMap :: SMonoid m0 => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source #

sFoldr :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source #

sFoldr' :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source #

sFoldl :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source #

sFoldl' :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source #

sFoldr1 :: Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source #

sFoldl1 :: Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source #

sToList :: Sing t -> Sing (Apply ToListSym0 t) Source #

sNull :: Sing t -> Sing (Apply NullSym0 t) Source #

sLength :: Sing t -> Sing (Apply LengthSym0 t) Source #

sElem :: SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source #

sMaximum :: SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source #

sMinimum :: SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source #

sSum :: SNum a => Sing t -> Sing (Apply SumSym0 t) Source #

sProduct :: SNum a => Sing t -> Sing (Apply ProductSym0 t) Source #

PFoldable (Const m :: Type -> Type) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

Associated Types

type Fold arg :: m Source #

type FoldMap arg arg :: m Source #

type Foldr arg arg arg :: b Source #

type Foldr' arg arg arg :: b Source #

type Foldl arg arg arg :: b Source #

type Foldl' arg arg arg :: b Source #

type Foldr1 arg arg :: a Source #

type Foldl1 arg arg :: a Source #

type ToList arg :: [a] Source #

type Null arg :: Bool Source #

type Length arg :: Nat Source #

type Elem arg arg :: Bool Source #

type Maximum arg :: a Source #

type Minimum arg :: a Source #

type Sum arg :: a Source #

type Product arg :: a Source #

STraversable (Const m :: Type -> Type) Source # |

Instance details

Defined in Data.Singletons.Prelude.Traversable

Methods

sTraverse :: SApplicative f => Sing t -> Sing t -> Sing (Apply (Apply TraverseSym0 t) t) Source #

sSequenceA :: SApplicative f => Sing t -> Sing (Apply SequenceASym0 t) Source #

sMapM :: SMonad m0 => Sing t -> Sing t -> Sing (Apply (Apply MapMSym0 t) t) Source #

sSequence :: SMonad m0 => Sing t -> Sing (Apply SequenceSym0 t) Source #

PTraversable (Const m :: Type -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Traversable Associated Types type Traverse arg arg :: f (t b) Source # type SequenceA arg :: f (t a) Source # type MapM arg arg :: m (t b) Source # type Sequence arg :: m (t a) Source #
SingI (TyCon1 (Const :: k1 -> Const k1 b) :: k1 ~> Const k1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods sing :: Sing (TyCon1 Const0) Source #
SingI (ConstSym0 :: TyFun a6989586621679091214 (Const a6989586621679091214 b6989586621679091215) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods sing :: Sing ConstSym0 Source #
SuppressUnusedWarnings (ConstSym0 :: TyFun a6989586621679091214 (Const a6989586621679091214 b6989586621679091215) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods suppressUnusedWarnings :: () Source #
SuppressUnusedWarnings (GetConstSym0 :: TyFun (Const a6989586621680706243 b6989586621680706244) a6989586621680706243 -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods suppressUnusedWarnings :: () Source #
Bounded a => Bounded (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods minBound :: Const a b Source # maxBound :: Const a b Source #
Enum a => Enum (Const a b) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

succ :: Const a b -> Const a b Source #

pred :: Const a b -> Const a b Source #

toEnum :: Int -> Const a b Source #

fromEnum :: Const a b -> Int Source #

enumFrom :: Const a b -> [Const a b] Source #

enumFromThen :: Const a b -> Const a b -> [Const a b] Source #

enumFromTo :: Const a b -> Const a b -> [Const a b] Source #

enumFromThenTo :: Const a b -> Const a b -> Const a b -> [Const a b] Source #

Eq a => Eq (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods (==) :: Const a b -> Const a b -> Bool Source # (/=) :: Const a b -> Const a b -> Bool Source #
Floating a => Floating (Const a b) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

pi :: Const a b Source #

exp :: Const a b -> Const a b Source #

log :: Const a b -> Const a b Source #

sqrt :: Const a b -> Const a b Source #

(**) :: Const a b -> Const a b -> Const a b Source #

logBase :: Const a b -> Const a b -> Const a b Source #

sin :: Const a b -> Const a b Source #

cos :: Const a b -> Const a b Source #

tan :: Const a b -> Const a b Source #

asin :: Const a b -> Const a b Source #

acos :: Const a b -> Const a b Source #

atan :: Const a b -> Const a b Source #

sinh :: Const a b -> Const a b Source #

cosh :: Const a b -> Const a b Source #

tanh :: Const a b -> Const a b Source #

asinh :: Const a b -> Const a b Source #

acosh :: Const a b -> Const a b Source #

atanh :: Const a b -> Const a b Source #

log1p :: Const a b -> Const a b Source #

expm1 :: Const a b -> Const a b Source #

log1pexp :: Const a b -> Const a b Source #

log1mexp :: Const a b -> Const a b Source #

Fractional a => Fractional (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods (/) :: Const a b -> Const a b -> Const a b Source # recip :: Const a b -> Const a b Source # fromRational :: Rational -> Const a b Source #
Integral a => Integral (Const a b) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

quot :: Const a b -> Const a b -> Const a b Source #

rem :: Const a b -> Const a b -> Const a b Source #

div :: Const a b -> Const a b -> Const a b Source #

mod :: Const a b -> Const a b -> Const a b Source #

quotRem :: Const a b -> Const a b -> (Const a b, Const a b) Source #

divMod :: Const a b -> Const a b -> (Const a b, Const a b) Source #

toInteger :: Const a b -> Integer Source #

(Typeable k, Data a, Typeable b) => Data (Const a b) | Since: base-4.10.0.0

Instance details

Defined in Data.Data

Methods

gfoldl :: (forall d b0. Data d => c (d -> b0) -> d -> c b0) -> (forall g. g -> c g) -> Const a b -> c (Const a b) Source #

gunfold :: (forall b0 r. Data b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Const a b) Source #

toConstr :: Const a b -> Constr Source #

dataTypeOf :: Const a b -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Const a b)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Const a b)) Source #

gmapT :: (forall b0. Data b0 => b0 -> b0) -> Const a b -> Const a b Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Const a b -> r Source #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Const a b -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Const a b -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Const a b -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Const a b -> m (Const a b) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Const a b -> m (Const a b) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Const a b -> m (Const a b) Source #

Num a => Num (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods (+) :: Const a b -> Const a b -> Const a b Source # (-) :: Const a b -> Const a b -> Const a b Source # (*) :: Const a b -> Const a b -> Const a b Source # negate :: Const a b -> Const a b Source # abs :: Const a b -> Const a b Source # signum :: Const a b -> Const a b Source # fromInteger :: Integer -> Const a b Source #
Ord a => Ord (Const a b) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

compare :: Const a b -> Const a b -> Ordering Source #

(<) :: Const a b -> Const a b -> Bool Source #

(<=) :: Const a b -> Const a b -> Bool Source #

(>) :: Const a b -> Const a b -> Bool Source #

(>=) :: Const a b -> Const a b -> Bool Source #

max :: Const a b -> Const a b -> Const a b Source #

min :: Const a b -> Const a b -> Const a b Source #

Read a => Read (Const a b) | This instance would be equivalent to the derived instances of the `Const` newtype if the `runConst` field were removed Since: base-4.8.0.0
Instance details Defined in Data.Functor.Const Methods readsPrec :: Int -> ReadS (Const a b) Source # readList :: ReadS [Const a b] Source # readPrec :: ReadPrec (Const a b) Source # readListPrec :: ReadPrec [Const a b] Source #
Real a => Real (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods toRational :: Const a b -> Rational Source #
RealFloat a => RealFloat (Const a b) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

floatRadix :: Const a b -> Integer Source #

floatDigits :: Const a b -> Int Source #

floatRange :: Const a b -> (Int, Int) Source #

decodeFloat :: Const a b -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Const a b Source #

exponent :: Const a b -> Int Source #

significand :: Const a b -> Const a b Source #

scaleFloat :: Int -> Const a b -> Const a b Source #

isNaN :: Const a b -> Bool Source #

isInfinite :: Const a b -> Bool Source #

isDenormalized :: Const a b -> Bool Source #

isNegativeZero :: Const a b -> Bool Source #

isIEEE :: Const a b -> Bool Source #

atan2 :: Const a b -> Const a b -> Const a b Source #

RealFrac a => RealFrac (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods properFraction :: Integral b0 => Const a b -> (b0, Const a b) Source # truncate :: Integral b0 => Const a b -> b0 Source # round :: Integral b0 => Const a b -> b0 Source # ceiling :: Integral b0 => Const a b -> b0 Source # floor :: Integral b0 => Const a b -> b0 Source #
Show a => Show (Const a b) | This instance would be equivalent to the derived instances of the `Const` newtype if the `runConst` field were removed Since: base-4.8.0.0
Instance details Defined in Data.Functor.Const Methods showsPrec :: Int -> Const a b -> ShowS Source # show :: Const a b -> String Source # showList :: [Const a b] -> ShowS Source #
Ix a => Ix (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods range :: (Const a b, Const a b) -> [Const a b] Source # index :: (Const a b, Const a b) -> Const a b -> Int Source # unsafeIndex :: (Const a b, Const a b) -> Const a b -> Int inRange :: (Const a b, Const a b) -> Const a b -> Bool Source # rangeSize :: (Const a b, Const a b) -> Int Source # unsafeRangeSize :: (Const a b, Const a b) -> Int
IsString a => IsString (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.String Methods fromString :: String -> Const a b Source #
Generic (Const a b) |
Instance details Defined in Data.Functor.Const Associated Types type Rep (Const a b) :: Type -> Type Source # Methods from :: Const a b -> Rep (Const a b) x Source # to :: Rep (Const a b) x -> Const a b Source #
Semigroup a => Semigroup (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods (<>) :: Const a b -> Const a b -> Const a b Source # sconcat :: NonEmpty (Const a b) -> Const a b Source # stimes :: Integral b0 => b0 -> Const a b -> Const a b Source #
Monoid a => Monoid (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods mempty :: Const a b Source # mappend :: Const a b -> Const a b -> Const a b Source # mconcat :: [Const a b] -> Const a b Source #
Storable a => Storable (Const a b) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

sizeOf :: Const a b -> Int Source #

alignment :: Const a b -> Int Source #

peekElemOff :: Ptr (Const a b) -> Int -> IO (Const a b) Source #

pokeElemOff :: Ptr (Const a b) -> Int -> Const a b -> IO () Source #

peekByteOff :: Ptr b0 -> Int -> IO (Const a b) Source #

pokeByteOff :: Ptr b0 -> Int -> Const a b -> IO () Source #

peek :: Ptr (Const a b) -> IO (Const a b) Source #

poke :: Ptr (Const a b) -> Const a b -> IO () Source #

Bits a => Bits (Const a b) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

(.&.) :: Const a b -> Const a b -> Const a b Source #

(.|.) :: Const a b -> Const a b -> Const a b Source #

xor :: Const a b -> Const a b -> Const a b Source #

complement :: Const a b -> Const a b Source #

shift :: Const a b -> Int -> Const a b Source #

rotate :: Const a b -> Int -> Const a b Source #

zeroBits :: Const a b Source #

bit :: Int -> Const a b Source #

setBit :: Const a b -> Int -> Const a b Source #

clearBit :: Const a b -> Int -> Const a b Source #

complementBit :: Const a b -> Int -> Const a b Source #

testBit :: Const a b -> Int -> Bool Source #

bitSizeMaybe :: Const a b -> Maybe Int Source #

bitSize :: Const a b -> Int Source #

isSigned :: Const a b -> Bool Source #

shiftL :: Const a b -> Int -> Const a b Source #

unsafeShiftL :: Const a b -> Int -> Const a b Source #

shiftR :: Const a b -> Int -> Const a b Source #

unsafeShiftR :: Const a b -> Int -> Const a b Source #

rotateL :: Const a b -> Int -> Const a b Source #

rotateR :: Const a b -> Int -> Const a b Source #

popCount :: Const a b -> Int Source #

FiniteBits a => FiniteBits (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const Methods finiteBitSize :: Const a b -> Int Source # countLeadingZeros :: Const a b -> Int Source # countTrailingZeros :: Const a b -> Int Source #
SingKind a => SingKind (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type Demote (Const a b) = (r :: Type) Source # Methods fromSing :: Sing a0 -> Demote (Const a b) Source # toSing :: Demote (Const a b) -> SomeSing (Const a b) Source #
SDecide a => SDecide (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods (%~) :: Sing a0 -> Sing b0 -> Decision (a0 :~: b0) Source #
PEq (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type x == y :: Bool Source # type x /= y :: Bool Source #
SEq a => SEq (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods (%==) :: Sing a0 -> Sing b0 -> Sing (a0 == b0) Source # (%/=) :: Sing a0 -> Sing b0 -> Sing (a0 /= b0) Source #
SOrd a => SOrd (Const a b) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

POrd (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type Compare arg arg :: Ordering Source # type arg < arg :: Bool Source # type arg <= arg :: Bool Source # type arg > arg :: Bool Source # type arg >= arg :: Bool Source # type Max arg arg :: a Source # type Min arg arg :: a Source #
SNum a => SNum (Const a b) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

Methods

(%+) :: Sing t -> Sing t -> Sing (Apply (Apply (+@#@$) t) t) Source #

(%-) :: Sing t -> Sing t -> Sing (Apply (Apply (-@#@$) t) t) Source #

(%*) :: Sing t -> Sing t -> Sing (Apply (Apply (*@#@$) t) t) Source #

sNegate :: Sing t -> Sing (Apply NegateSym0 t) Source #

sAbs :: Sing t -> Sing (Apply AbsSym0 t) Source #

sSignum :: Sing t -> Sing (Apply SignumSym0 t) Source #

sFromInteger :: Sing t -> Sing (Apply FromIntegerSym0 t) Source #

PNum (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type arg + arg :: a Source # type arg - arg :: a Source # type arg * arg :: a Source # type Negate arg :: a Source # type Abs arg :: a Source # type Signum arg :: a Source # type FromInteger arg :: a Source #
SBounded a => SBounded (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods sMinBound :: Sing MinBoundSym0 Source # sMaxBound :: Sing MaxBoundSym0 Source #
PBounded (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type MinBound :: a Source # type MaxBound :: a Source #
SEnum a => SEnum (Const a b) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

Methods

sSucc :: Sing t -> Sing (Apply SuccSym0 t) Source #

sPred :: Sing t -> Sing (Apply PredSym0 t) Source #

sToEnum :: Sing t -> Sing (Apply ToEnumSym0 t) Source #

sFromEnum :: Sing t -> Sing (Apply FromEnumSym0 t) Source #

sEnumFromTo :: Sing t -> Sing t -> Sing (Apply (Apply EnumFromToSym0 t) t) Source #

sEnumFromThenTo :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t) t) t) Source #

PEnum (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type Succ arg :: a Source # type Pred arg :: a Source # type ToEnum arg :: a Source # type FromEnum arg :: Nat Source # type EnumFromTo arg arg :: [a] Source # type EnumFromThenTo arg arg arg :: [a] Source #
SSemigroup a => SSemigroup (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods (%<>) :: Sing t -> Sing t -> Sing (Apply (Apply (<>@#@$) t) t) Source # sSconcat :: Sing t -> Sing (Apply SconcatSym0 t) Source #
PSemigroup (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type arg <> arg :: a Source # type Sconcat arg :: a Source #
SShow a => SShow (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods sShowsPrec :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ShowsPrecSym0 t) t) t) Source # sShow_ :: Sing t -> Sing (Apply Show_Sym0 t) Source # sShowList :: Sing t -> Sing t -> Sing (Apply (Apply ShowListSym0 t) t) Source #
PShow (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type ShowsPrec arg arg arg :: Symbol Source # type Show_ arg :: Symbol Source # type ShowList arg arg :: Symbol Source #
SMonoid a => SMonoid (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods sMempty :: Sing MemptySym0 Source # sMappend :: Sing t -> Sing t -> Sing (Apply (Apply MappendSym0 t) t) Source # sMconcat :: Sing t -> Sing (Apply MconcatSym0 t) Source #
PMonoid (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Associated Types type Mempty :: a Source # type Mappend arg arg :: a Source # type Mconcat arg :: a Source #
SIsString a => SIsString (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.IsString Methods sFromString :: Sing t -> Sing (Apply FromStringSym0 t) Source #
PIsString (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.IsString Associated Types type FromString arg :: a Source #
SingI a2 => SingI (Const a2 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods sing :: Sing (Const0 a2) Source #
type Rep1 (Const a :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const type Rep1 (Const a :: k -> Type) = D1 (MetaData "Const" "Data.Functor.Const" "base" True) (C1 (MetaCons "Const" PrefixI True) (S1 (MetaSel (Just "getConst") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)))
type Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) (x6989586621680706245 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) (x6989586621680706245 :: Const a b) = GetConst x6989586621680706245
type Pure (a :: k1) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Pure (a :: k1)
type Fold (arg :: Const m1 m2) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Fold (arg :: Const m1 m2)
type ToList (arg :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type ToList (arg :: Const m a)
type Null (arg :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Null (arg :: Const m a)
type Length (arg :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Length (arg :: Const m a)
type Maximum (arg :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Maximum (arg :: Const m a)
type Minimum (arg :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Minimum (arg :: Const m a)
type Sum (arg :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Sum (arg :: Const m a)
type Product (arg :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Product (arg :: Const m a)
type Foldr1 (arg1 :: a ~> (a ~> a)) (arg2 :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Foldr1 (arg1 :: a ~> (a ~> a)) (arg2 :: Const m a)
type Foldl1 (arg1 :: a ~> (a ~> a)) (arg2 :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Foldl1 (arg1 :: a ~> (a ~> a)) (arg2 :: Const m a)
type Elem (arg1 :: a) (arg2 :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Elem (arg1 :: a) (arg2 :: Const m a)
type SequenceA (arg :: Const m (f a)) Source # |
Instance details Defined in Data.Singletons.Prelude.Traversable type SequenceA (arg :: Const m (f a))
type Sequence (arg :: Const m1 (m2 a)) Source # |
Instance details Defined in Data.Singletons.Prelude.Traversable type Sequence (arg :: Const m1 (m2 a))
type (a1 :: Const m (a6989586621679545968 ~> b6989586621679545969)) <*> (a2 :: Const m a6989586621679545968) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (a1 :: Const m (a6989586621679545968 ~> b6989586621679545969)) <*> (a2 :: Const m a6989586621679545968)
type (arg1 :: Const m a) *> (arg2 :: Const m b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (arg1 :: Const m a) *> (arg2 :: Const m b)
type (arg1 :: Const m a) <* (arg2 :: Const m b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (arg1 :: Const m a) <* (arg2 :: Const m b)
type Fmap (a1 :: a6989586621679545962 ~> b6989586621679545963) (a2 :: Const m a6989586621679545962) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Fmap (a1 :: a6989586621679545962 ~> b6989586621679545963) (a2 :: Const m a6989586621679545962)
type (a1 :: k1) <$ (a2 :: Const m b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (a1 :: k1) <$ (a2 :: Const m b6989586621679545965)
type FoldMap (a1 :: a6989586621680448447 ~> k2) (a2 :: Const m a6989586621680448447) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type FoldMap (a1 :: a6989586621680448447 ~> k2) (a2 :: Const m a6989586621680448447)
type Foldr (a1 :: a6989586621680448448 ~> (k2 ~> k2)) (a2 :: k2) (a3 :: Const m a6989586621680448448) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Foldr (a1 :: a6989586621680448448 ~> (k2 ~> k2)) (a2 :: k2) (a3 :: Const m a6989586621680448448)
type Foldr' (arg1 :: a ~> (b ~> b)) (arg2 :: b) (arg3 :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Foldr' (arg1 :: a ~> (b ~> b)) (arg2 :: b) (arg3 :: Const m a)
type Foldl (arg1 :: b ~> (a ~> b)) (arg2 :: b) (arg3 :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Foldl (arg1 :: b ~> (a ~> b)) (arg2 :: b) (arg3 :: Const m a)
type Foldl' (arg1 :: b ~> (a ~> b)) (arg2 :: b) (arg3 :: Const m a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Foldl' (arg1 :: b ~> (a ~> b)) (arg2 :: b) (arg3 :: Const m a)
type Traverse (a1 :: a6989586621680744887 ~> f6989586621680744886 b6989586621680744888) (a2 :: Const m a6989586621680744887) Source # |
Instance details Defined in Data.Singletons.Prelude.Traversable type Traverse (a1 :: a6989586621680744887 ~> f6989586621680744886 b6989586621680744888) (a2 :: Const m a6989586621680744887)
type MapM (arg1 :: a ~> m1 b) (arg2 :: Const m2 a) Source # |
Instance details Defined in Data.Singletons.Prelude.Traversable type MapM (arg1 :: a ~> m1 b) (arg2 :: Const m2 a)
type LiftA2 (a1 :: a6989586621679545970 ~> (b6989586621679545971 ~> c6989586621679545972)) (a2 :: Const m a6989586621679545970) (a3 :: Const m b6989586621679545971) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type LiftA2 (a1 :: a6989586621679545970 ~> (b6989586621679545971 ~> c6989586621679545972)) (a2 :: Const m a6989586621679545970) (a3 :: Const m b6989586621679545971)
type Rep (Const a b) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Const type Rep (Const a b) = D1 (MetaData "Const" "Data.Functor.Const" "base" True) (C1 (MetaCons "Const" PrefixI True) (S1 (MetaSel (Just "getConst") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)))
type Demote (Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Demote (Const a b) = Const (Demote a) b
data Sing (c :: Const a b) Source # |

Instance details

Defined in Data.Singletons.Prelude.Const

data Sing (c :: Const a b) where

- SConst :: forall k a (b :: k) (c :: Const a b) (a :: a). {..} -> Sing (Const a :: Const a b)

type MinBound Source # |
Instance details Defined in Data.Singletons.Prelude.Const type MinBound
type MaxBound Source # |
Instance details Defined in Data.Singletons.Prelude.Const type MaxBound
type Mempty Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Mempty
type Negate (a2 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Negate (a2 :: Const a1 b)
type Abs (a2 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Abs (a2 :: Const a1 b)
type Signum (a2 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Signum (a2 :: Const a1 b)
type FromInteger a2 Source # |
Instance details Defined in Data.Singletons.Prelude.Const type FromInteger a2
type Succ (a2 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Succ (a2 :: Const a1 b)
type Pred (a2 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Pred (a2 :: Const a1 b)
type ToEnum a2 Source # |
Instance details Defined in Data.Singletons.Prelude.Const type ToEnum a2
type FromEnum (a2 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type FromEnum (a2 :: Const a1 b)
type Sconcat (arg :: NonEmpty (Const a b)) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Sconcat (arg :: NonEmpty (Const a b))
type Show_ (arg :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Show_ (arg :: Const a b)
type Mconcat (arg :: [Const a b]) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Mconcat (arg :: [Const a b])
type FromString a2 Source # |
Instance details Defined in Data.Singletons.Prelude.IsString type FromString a2
type (a2 :: Const a1 b1) == (b2 :: Const a1 b1) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (a2 :: Const a1 b1) == (b2 :: Const a1 b1)
type (x :: Const a b) /= (y :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (x :: Const a b) /= (y :: Const a b) = Not (x == y)
type Compare (a2 :: Const a1 b) (a3 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Compare (a2 :: Const a1 b) (a3 :: Const a1 b)
type (arg1 :: Const a b) < (arg2 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (arg1 :: Const a b) < (arg2 :: Const a b)
type (arg1 :: Const a b) <= (arg2 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (arg1 :: Const a b) <= (arg2 :: Const a b)
type (arg1 :: Const a b) > (arg2 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (arg1 :: Const a b) > (arg2 :: Const a b)
type (arg1 :: Const a b) >= (arg2 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (arg1 :: Const a b) >= (arg2 :: Const a b)
type Max (arg1 :: Const a b) (arg2 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Max (arg1 :: Const a b) (arg2 :: Const a b)
type Min (arg1 :: Const a b) (arg2 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Min (arg1 :: Const a b) (arg2 :: Const a b)
type (a2 :: Const a1 b) + (a3 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (a2 :: Const a1 b) + (a3 :: Const a1 b)
type (a2 :: Const a1 b) - (a3 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (a2 :: Const a1 b) - (a3 :: Const a1 b)
type (a2 :: Const a1 b) * (a3 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (a2 :: Const a1 b) * (a3 :: Const a1 b)
type EnumFromTo (a2 :: Const a1 b) (a3 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type EnumFromTo (a2 :: Const a1 b) (a3 :: Const a1 b)
type (a2 :: Const a1 b) <> (a3 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (a2 :: Const a1 b) <> (a3 :: Const a1 b)
type ShowList (arg1 :: [Const a b]) arg2 Source # |
Instance details Defined in Data.Singletons.Prelude.Const type ShowList (arg1 :: [Const a b]) arg2
type Mappend (arg1 :: Const a b) (arg2 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Mappend (arg1 :: Const a b) (arg2 :: Const a b)
type EnumFromThenTo (a2 :: Const a1 b) (a3 :: Const a1 b) (a4 :: Const a1 b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type EnumFromThenTo (a2 :: Const a1 b) (a3 :: Const a1 b) (a4 :: Const a1 b)
type ShowsPrec a2 (a3 :: Const a1 b) a4 Source # |
Instance details Defined in Data.Singletons.Prelude.Const type ShowsPrec a2 (a3 :: Const a1 b) a4
type Apply (ConstSym0 :: TyFun a (Const a b6989586621679091215) -> Type) (t6989586621680705928 :: a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Apply (ConstSym0 :: TyFun a (Const a b6989586621679091215) -> Type) (t6989586621680705928 :: a) = (Const t6989586621680705928 :: Const a b6989586621679091215)

type family GetConst (x :: Const a b) :: a where ... Source #

Equations

GetConst (Const x) = x |

type family (a :: (~>) a b) <$> (a :: f a) :: f b where ... infixl 4 Source #

Equations

a_6989586621679715373 <$> a_6989586621679715375 = Apply (Apply FmapSym0 a_6989586621679715373) a_6989586621679715375 |

(%<$>) :: forall f a b (t :: (~>) a b) (t :: f a). SFunctor f => Sing t -> Sing t -> Sing (Apply (Apply (<$>@#@$) t) t :: f b) infixl 4 Source #

type family (arg :: a) <$ (arg :: f b) :: f a infixl 4 Source #

Instances

type (a1 :: k1) <$ (a2 :: [b6989586621679545965]) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type (a1 :: k1) <$ (a2 :: [b6989586621679545965])
type (a1 :: k1) <$ (a2 :: Maybe b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type (a1 :: k1) <$ (a2 :: Maybe b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Min b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup type (a1 :: k1) <$ (a2 :: Min b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Max b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup type (a1 :: k1) <$ (a2 :: Max b6989586621679545965)
type (a1 :: k1) <$ (a2 :: First b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup type (a1 :: k1) <$ (a2 :: First b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Last b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup type (a1 :: k1) <$ (a2 :: Last b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Option b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup type (a1 :: k1) <$ (a2 :: Option b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Identity b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Identity type (a1 :: k1) <$ (a2 :: Identity b6989586621679545965)
type (a1 :: k1) <$ (a2 :: First b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Monoid type (a1 :: k1) <$ (a2 :: First b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Last b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Monoid type (a1 :: k1) <$ (a2 :: Last b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Dual b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type (a1 :: k1) <$ (a2 :: Dual b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Sum b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type (a1 :: k1) <$ (a2 :: Sum b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Product b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup.Internal type (a1 :: k1) <$ (a2 :: Product b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Down b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Functor type (a1 :: k1) <$ (a2 :: Down b6989586621679545965)
type (a1 :: k1) <$ (a2 :: NonEmpty b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type (a1 :: k1) <$ (a2 :: NonEmpty b6989586621679545965)
type (a2 :: k1) <$ (a3 :: Either a1 b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type (a2 :: k1) <$ (a3 :: Either a1 b6989586621679545965)
type (a2 :: k1) <$ (a3 :: (a1, b6989586621679545965)) Source # |
Instance details Defined in Data.Singletons.Prelude.Functor type (a2 :: k1) <$ (a3 :: (a1, b6989586621679545965))
type (a2 :: k1) <$ (a3 :: Arg a1 b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Semigroup type (a2 :: k1) <$ (a3 :: Arg a1 b6989586621679545965)
type (a1 :: k1) <$ (a2 :: Const m b6989586621679545965) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type (a1 :: k1) <$ (a2 :: Const m b6989586621679545965)

(%<$) :: forall a b (t :: a) (t :: f b). SFunctor f => Sing t -> Sing t -> Sing (Apply (Apply (<$@#@$) t) t :: f a) infixl 4 Source #

type family (a :: f a) <**> (a :: f ((~>) a b)) :: f b where ... infixl 4 Source #

Equations

a_6989586621679546335 <**> a_6989586621679546337 = Apply (Apply (Apply LiftA2Sym0 (Apply (Apply Lambda_6989586621679546345Sym0 a_6989586621679546335) a_6989586621679546337)) a_6989586621679546335) a_6989586621679546337 |

(%<**>) :: forall f a b (t :: f a) (t :: f ((~>) a b)). SApplicative f => Sing t -> Sing t -> Sing (Apply (Apply (<**>@#@$) t) t :: f b) infixl 4 Source #

type family LiftA (a :: (~>) a b) (a :: f a) :: f b where ... Source #

Equations

LiftA f a = Apply (Apply (<*>@#@$) (Apply PureSym0 f)) a |

sLiftA :: forall f a b (t :: (~>) a b) (t :: f a). SApplicative f => Sing t -> Sing t -> Sing (Apply (Apply LiftASym0 t) t :: f b) Source #

type family LiftA3 (a :: (~>) a ((~>) b ((~>) c d))) (a :: f a) (a :: f b) (a :: f c) :: f d where ... Source #

Equations

LiftA3 f a b c = Apply (Apply (<*>@#@$) (Apply (Apply (Apply LiftA2Sym0 f) a) b)) c |

sLiftA3 :: forall f a b c d (t :: (~>) a ((~>) b ((~>) c d))) (t :: f a) (t :: f b) (t :: f c). SApplicative f => Sing t -> Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (Apply LiftA3Sym0 t) t) t) t :: f d) Source #

type family Optional (a :: f a) :: f (Maybe a) where ... Source #

Equations

Optional v = Apply (Apply (<|>@#@$) (Apply (Apply (<$>@#@$) JustSym0) v)) (Apply PureSym0 NothingSym0) |

sOptional :: forall f a (t :: f a). SAlternative f => Sing t -> Sing (Apply OptionalSym0 t :: f (Maybe a)) Source #

# Defunctionalization symbols

data PureSym0 :: forall a6989586621679545967 f6989586621679545966. (~>) a6989586621679545967 (f6989586621679545966 a6989586621679545967) Source #

Instances

SApplicative f => SingI (PureSym0 :: TyFun a (f a) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing PureSym0 Source #
SuppressUnusedWarnings (PureSym0 :: TyFun a6989586621679545967 (f6989586621679545966 a6989586621679545967) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (PureSym0 :: TyFun a (f6989586621679545966 a) -> Type) (arg6989586621679546379 :: a) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply (PureSym0 :: TyFun a (f6989586621679545966 a) -> Type) (arg6989586621679546379 :: a) = (Pure arg6989586621679546379 :: f6989586621679545966 a)

type PureSym1 (arg6989586621679546379 :: a6989586621679545967) = Pure arg6989586621679546379 Source #

data (<*>@#@$) :: forall a6989586621679545968 b6989586621679545969 f6989586621679545966. (~>) (f6989586621679545966 ((~>) a6989586621679545968 b6989586621679545969)) ((~>) (f6989586621679545966 a6989586621679545968) (f6989586621679545966 b6989586621679545969)) infixl 4 Source #

Instances

SApplicative f => SingI ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (<*>@#@$) Source #
SuppressUnusedWarnings ((<*>@#@$) :: TyFun (f6989586621679545966 (a6989586621679545968 ~> b6989586621679545969)) (f6989586621679545966 a6989586621679545968 ~> f6989586621679545966 b6989586621679545969) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((<*>@#@$) :: TyFun (f6989586621679545966 (a6989586621679545968 ~> b6989586621679545969)) (f6989586621679545966 a6989586621679545968 ~> f6989586621679545966 b6989586621679545969) -> Type) (arg6989586621679546381 :: f6989586621679545966 (a6989586621679545968 ~> b6989586621679545969)) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply ((<*>@#@$) :: TyFun (f6989586621679545966 (a6989586621679545968 ~> b6989586621679545969)) (f6989586621679545966 a6989586621679545968 ~> f6989586621679545966 b6989586621679545969) -> Type) (arg6989586621679546381 :: f6989586621679545966 (a6989586621679545968 ~> b6989586621679545969)) = (<*>@#@$$) arg6989586621679546381

data (<*>@#@$$) (arg6989586621679546381 :: f6989586621679545966 ((~>) a6989586621679545968 b6989586621679545969)) :: (~>) (f6989586621679545966 a6989586621679545968) (f6989586621679545966 b6989586621679545969) infixl 4 Source #

Instances

(SApplicative f, SingI d) => SingI ((<*>@#@$$) d :: TyFun (f a) (f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing ((<*>@#@$$) d) Source #
SuppressUnusedWarnings ((<*>@#@$$) arg6989586621679546381 :: TyFun (f6989586621679545966 a6989586621679545968) (f6989586621679545966 b6989586621679545969) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((<*>@#@$$) arg6989586621679546381 :: TyFun (f a) (f b) -> Type) (arg6989586621679546382 :: f a) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply ((<*>@#@$$) arg6989586621679546381 :: TyFun (f a) (f b) -> Type) (arg6989586621679546382 :: f a) = arg6989586621679546381 <*> arg6989586621679546382

type (<*>@#@$$$) (arg6989586621679546381 :: f6989586621679545966 ((~>) a6989586621679545968 b6989586621679545969)) (arg6989586621679546382 :: f6989586621679545966 a6989586621679545968) = (<*>) arg6989586621679546381 arg6989586621679546382 Source #

data (*>@#@$) :: forall a6989586621679545973 b6989586621679545974 f6989586621679545966. (~>) (f6989586621679545966 a6989586621679545973) ((~>) (f6989586621679545966 b6989586621679545974) (f6989586621679545966 b6989586621679545974)) infixl 4 Source #

Instances

SApplicative f => SingI ((*>@#@$) :: TyFun (f a) (f b ~> f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (*>@#@$) Source #
SuppressUnusedWarnings ((*>@#@$) :: TyFun (f6989586621679545966 a6989586621679545973) (f6989586621679545966 b6989586621679545974 ~> f6989586621679545966 b6989586621679545974) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((*>@#@$) :: TyFun (f6989586621679545966 a6989586621679545973) (f6989586621679545966 b6989586621679545974 ~> f6989586621679545966 b6989586621679545974) -> Type) (arg6989586621679546391 :: f6989586621679545966 a6989586621679545973) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply ((*>@#@$) :: TyFun (f6989586621679545966 a6989586621679545973) (f6989586621679545966 b6989586621679545974 ~> f6989586621679545966 b6989586621679545974) -> Type) (arg6989586621679546391 :: f6989586621679545966 a6989586621679545973) = (arg6989586621679546391 *>@#@$$ b6989586621679545974 :: TyFun (f6989586621679545966 b6989586621679545974) (f6989586621679545966 b6989586621679545974) -> Type)

data (*>@#@$$) (arg6989586621679546391 :: f6989586621679545966 a6989586621679545973) :: forall b6989586621679545974. (~>) (f6989586621679545966 b6989586621679545974) (f6989586621679545966 b6989586621679545974) infixl 4 Source #

Instances

(SApplicative f, SingI d) => SingI (d *>@#@$$ b :: TyFun (f b) (f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (d *>@#@$$ b) Source #
SuppressUnusedWarnings (arg6989586621679546391 *>@#@$$ b6989586621679545974 :: TyFun (f6989586621679545966 b6989586621679545974) (f6989586621679545966 b6989586621679545974) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (arg6989586621679546391 *>@#@$$ b :: TyFun (f b) (f b) -> Type) (arg6989586621679546392 :: f b) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply (arg6989586621679546391 *>@#@$$ b :: TyFun (f b) (f b) -> Type) (arg6989586621679546392 :: f b) = arg6989586621679546391 *> arg6989586621679546392

type (*>@#@$$$) (arg6989586621679546391 :: f6989586621679545966 a6989586621679545973) (arg6989586621679546392 :: f6989586621679545966 b6989586621679545974) = (*>) arg6989586621679546391 arg6989586621679546392 Source #

data (<*@#@$) :: forall a6989586621679545975 b6989586621679545976 f6989586621679545966. (~>) (f6989586621679545966 a6989586621679545975) ((~>) (f6989586621679545966 b6989586621679545976) (f6989586621679545966 a6989586621679545975)) infixl 4 Source #

Instances

SApplicative f => SingI ((<*@#@$) :: TyFun (f a) (f b ~> f a) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (<*@#@$) Source #
SuppressUnusedWarnings ((<*@#@$) :: TyFun (f6989586621679545966 a6989586621679545975) (f6989586621679545966 b6989586621679545976 ~> f6989586621679545966 a6989586621679545975) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((<*@#@$) :: TyFun (f6989586621679545966 a6989586621679545975) (f6989586621679545966 b6989586621679545976 ~> f6989586621679545966 a6989586621679545975) -> Type) (arg6989586621679546395 :: f6989586621679545966 a6989586621679545975) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply ((<*@#@$) :: TyFun (f6989586621679545966 a6989586621679545975) (f6989586621679545966 b6989586621679545976 ~> f6989586621679545966 a6989586621679545975) -> Type) (arg6989586621679546395 :: f6989586621679545966 a6989586621679545975) = (arg6989586621679546395 <*@#@$$ b6989586621679545976 :: TyFun (f6989586621679545966 b6989586621679545976) (f6989586621679545966 a6989586621679545975) -> Type)

data (<*@#@$$) (arg6989586621679546395 :: f6989586621679545966 a6989586621679545975) :: forall b6989586621679545976. (~>) (f6989586621679545966 b6989586621679545976) (f6989586621679545966 a6989586621679545975) infixl 4 Source #

Instances

(SApplicative f, SingI d) => SingI (d <*@#@$$ b :: TyFun (f b) (f a) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (d <*@#@$$ b) Source #
SuppressUnusedWarnings (arg6989586621679546395 <*@#@$$ b6989586621679545976 :: TyFun (f6989586621679545966 b6989586621679545976) (f6989586621679545966 a6989586621679545975) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (arg6989586621679546395 <*@#@$$ b :: TyFun (f b) (f a) -> Type) (arg6989586621679546396 :: f b) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply (arg6989586621679546395 <*@#@$$ b :: TyFun (f b) (f a) -> Type) (arg6989586621679546396 :: f b) = arg6989586621679546395 <* arg6989586621679546396

type (<*@#@$$$) (arg6989586621679546395 :: f6989586621679545966 a6989586621679545975) (arg6989586621679546396 :: f6989586621679545966 b6989586621679545976) = (<*) arg6989586621679546395 arg6989586621679546396 Source #

type EmptySym0 = Empty Source #

data (<|>@#@$) :: forall a6989586621679546045 f6989586621679546043. (~>) (f6989586621679546043 a6989586621679546045) ((~>) (f6989586621679546043 a6989586621679546045) (f6989586621679546043 a6989586621679546045)) infixl 3 Source #

Instances

SAlternative f => SingI ((<|>@#@$) :: TyFun (f a) (f a ~> f a) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (<|>@#@$) Source #
SuppressUnusedWarnings ((<|>@#@$) :: TyFun (f6989586621679546043 a6989586621679546045) (f6989586621679546043 a6989586621679546045 ~> f6989586621679546043 a6989586621679546045) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((<|>@#@$) :: TyFun (f6989586621679546043 a6989586621679546045) (f6989586621679546043 a6989586621679546045 ~> f6989586621679546043 a6989586621679546045) -> Type) (arg6989586621679546512 :: f6989586621679546043 a6989586621679546045) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply ((<|>@#@$) :: TyFun (f6989586621679546043 a6989586621679546045) (f6989586621679546043 a6989586621679546045 ~> f6989586621679546043 a6989586621679546045) -> Type) (arg6989586621679546512 :: f6989586621679546043 a6989586621679546045) = (<|>@#@$$) arg6989586621679546512

data (<|>@#@$$) (arg6989586621679546512 :: f6989586621679546043 a6989586621679546045) :: (~>) (f6989586621679546043 a6989586621679546045) (f6989586621679546043 a6989586621679546045) infixl 3 Source #

Instances

(SAlternative f, SingI d) => SingI ((<|>@#@$$) d :: TyFun (f a) (f a) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing ((<|>@#@$$) d) Source #
SuppressUnusedWarnings ((<|>@#@$$) arg6989586621679546512 :: TyFun (f6989586621679546043 a6989586621679546045) (f6989586621679546043 a6989586621679546045) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((<|>@#@$$) arg6989586621679546512 :: TyFun (f a) (f a) -> Type) (arg6989586621679546513 :: f a) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply ((<|>@#@$$) arg6989586621679546512 :: TyFun (f a) (f a) -> Type) (arg6989586621679546513 :: f a) = arg6989586621679546512 <|> arg6989586621679546513

type (<|>@#@$$$) (arg6989586621679546512 :: f6989586621679546043 a6989586621679546045) (arg6989586621679546513 :: f6989586621679546043 a6989586621679546045) = (<|>) arg6989586621679546512 arg6989586621679546513 Source #

data ConstSym0 :: forall (a6989586621679091214 :: Type) k6989586621679091213 (b6989586621679091215 :: k6989586621679091213). (~>) a6989586621679091214 (Const (a6989586621679091214 :: Type) (b6989586621679091215 :: k6989586621679091213)) Source #

Instances

SingI (ConstSym0 :: TyFun a6989586621679091214 (Const a6989586621679091214 b6989586621679091215) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods sing :: Sing ConstSym0 Source #
SuppressUnusedWarnings (ConstSym0 :: TyFun a6989586621679091214 (Const a6989586621679091214 b6989586621679091215) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods suppressUnusedWarnings :: () Source #
type Apply (ConstSym0 :: TyFun a (Const a b6989586621679091215) -> Type) (t6989586621680705928 :: a) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Apply (ConstSym0 :: TyFun a (Const a b6989586621679091215) -> Type) (t6989586621680705928 :: a) = (Const t6989586621680705928 :: Const a b6989586621679091215)

type ConstSym1 (t6989586621680705928 :: a6989586621679091214) = Const t6989586621680705928 Source #

data GetConstSym0 :: forall a6989586621680706243 b6989586621680706244. (~>) (Const a6989586621680706243 b6989586621680706244) a6989586621680706243 Source #

Instances

SuppressUnusedWarnings (GetConstSym0 :: TyFun (Const a6989586621680706243 b6989586621680706244) a6989586621680706243 -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Const Methods suppressUnusedWarnings :: () Source #
type Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) (x6989586621680706245 :: Const a b) Source # |
Instance details Defined in Data.Singletons.Prelude.Const type Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) (x6989586621680706245 :: Const a b) = GetConst x6989586621680706245

type GetConstSym1 (x6989586621680706245 :: Const a6989586621680706243 b6989586621680706244) = GetConst x6989586621680706245 Source #

data (<$>@#@$) :: forall a6989586621679715297 b6989586621679715298 f6989586621679715296. (~>) ((~>) a6989586621679715297 b6989586621679715298) ((~>) (f6989586621679715296 a6989586621679715297) (f6989586621679715296 b6989586621679715298)) infixl 4 Source #

Instances

SFunctor f => SingI ((<$>@#@$) :: TyFun (a ~> b) (f a ~> f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Functor Methods sing :: Sing (<$>@#@$) Source #
SuppressUnusedWarnings ((<$>@#@$) :: TyFun (a6989586621679715297 ~> b6989586621679715298) (f6989586621679715296 a6989586621679715297 ~> f6989586621679715296 b6989586621679715298) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Functor Methods suppressUnusedWarnings :: () Source #
type Apply ((<$>@#@$) :: TyFun (a6989586621679715297 ~> b6989586621679715298) (f6989586621679715296 a6989586621679715297 ~> f6989586621679715296 b6989586621679715298) -> Type) (a6989586621679715377 :: a6989586621679715297 ~> b6989586621679715298) Source # |

Instance details

Defined in Data.Singletons.Prelude.Functor

type Apply ((<$>@#@$) :: TyFun (a6989586621679715297 ~> b6989586621679715298) (f6989586621679715296 a6989586621679715297 ~> f6989586621679715296 b6989586621679715298) -> Type) (a6989586621679715377 :: a6989586621679715297 ~> b6989586621679715298) = (a6989586621679715377 <$>@#@$$ f6989586621679715296 :: TyFun (f6989586621679715296 a6989586621679715297) (f6989586621679715296 b6989586621679715298) -> Type)

data (<$>@#@$$) (a6989586621679715377 :: (~>) a6989586621679715297 b6989586621679715298) :: forall f6989586621679715296. (~>) (f6989586621679715296 a6989586621679715297) (f6989586621679715296 b6989586621679715298) infixl 4 Source #

Instances

(SFunctor f, SingI d) => SingI (d <$>@#@$$ f :: TyFun (f a) (f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Functor Methods sing :: Sing (d <$>@#@$$ f) Source #
SuppressUnusedWarnings (a6989586621679715377 <$>@#@$$ f6989586621679715296 :: TyFun (f6989586621679715296 a6989586621679715297) (f6989586621679715296 b6989586621679715298) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Functor Methods suppressUnusedWarnings :: () Source #
type Apply (a6989586621679715377 <$>@#@$$ f :: TyFun (f a) (f b) -> Type) (a6989586621679715378 :: f a) Source # |
Instance details Defined in Data.Singletons.Prelude.Functor type Apply (a6989586621679715377 <$>@#@$$ f :: TyFun (f a) (f b) -> Type) (a6989586621679715378 :: f a) = a6989586621679715377 <$> a6989586621679715378

type (<$>@#@$$$) (a6989586621679715377 :: (~>) a6989586621679715297 b6989586621679715298) (a6989586621679715378 :: f6989586621679715296 a6989586621679715297) = (<$>) a6989586621679715377 a6989586621679715378 Source #

data (<$@#@$) :: forall a6989586621679545964 b6989586621679545965 f6989586621679545961. (~>) a6989586621679545964 ((~>) (f6989586621679545961 b6989586621679545965) (f6989586621679545961 a6989586621679545964)) infixl 4 Source #

Instances

SFunctor f => SingI ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (<$@#@$) Source #
SuppressUnusedWarnings ((<$@#@$) :: TyFun a6989586621679545964 (f6989586621679545961 b6989586621679545965 ~> f6989586621679545961 a6989586621679545964) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((<$@#@$) :: TyFun a6989586621679545964 (f6989586621679545961 b6989586621679545965 ~> f6989586621679545961 a6989586621679545964) -> Type) (arg6989586621679546359 :: a6989586621679545964) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply ((<$@#@$) :: TyFun a6989586621679545964 (f6989586621679545961 b6989586621679545965 ~> f6989586621679545961 a6989586621679545964) -> Type) (arg6989586621679546359 :: a6989586621679545964) = ((arg6989586621679546359 <$@#@$$ b6989586621679545965) f6989586621679545961 :: TyFun (f6989586621679545961 b6989586621679545965) (f6989586621679545961 a6989586621679545964) -> Type)

data (<$@#@$$) (arg6989586621679546359 :: a6989586621679545964) :: forall b6989586621679545965 f6989586621679545961. (~>) (f6989586621679545961 b6989586621679545965) (f6989586621679545961 a6989586621679545964) infixl 4 Source #

Instances

(SFunctor f, SingI d) => SingI ((d <$@#@$$ b) f :: TyFun (f b) (f a) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing ((d <$@#@$$ b) f) Source #
SuppressUnusedWarnings ((arg6989586621679546359 <$@#@$$ b6989586621679545965) f6989586621679545961 :: TyFun (f6989586621679545961 b6989586621679545965) (f6989586621679545961 a6989586621679545964) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((arg6989586621679546359 <$@#@$$ b) f :: TyFun (f b) (f a) -> Type) (arg6989586621679546360 :: f b) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply ((arg6989586621679546359 <$@#@$$ b) f :: TyFun (f b) (f a) -> Type) (arg6989586621679546360 :: f b) = arg6989586621679546359 <$ arg6989586621679546360

type (<$@#@$$$) (arg6989586621679546359 :: a6989586621679545964) (arg6989586621679546360 :: f6989586621679545961 b6989586621679545965) = (<$) arg6989586621679546359 arg6989586621679546360 Source #

data (<**>@#@$) :: forall a6989586621679545926 b6989586621679545927 f6989586621679545925. (~>) (f6989586621679545925 a6989586621679545926) ((~>) (f6989586621679545925 ((~>) a6989586621679545926 b6989586621679545927)) (f6989586621679545925 b6989586621679545927)) infixl 4 Source #

Instances

SApplicative f => SingI ((<**>@#@$) :: TyFun (f a) (f (a ~> b) ~> f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (<**>@#@$) Source #
SuppressUnusedWarnings ((<**>@#@$) :: TyFun (f6989586621679545925 a6989586621679545926) (f6989586621679545925 (a6989586621679545926 ~> b6989586621679545927) ~> f6989586621679545925 b6989586621679545927) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply ((<**>@#@$) :: TyFun (f6989586621679545925 a6989586621679545926) (f6989586621679545925 (a6989586621679545926 ~> b6989586621679545927) ~> f6989586621679545925 b6989586621679545927) -> Type) (a6989586621679546339 :: f6989586621679545925 a6989586621679545926) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply ((<**>@#@$) :: TyFun (f6989586621679545925 a6989586621679545926) (f6989586621679545925 (a6989586621679545926 ~> b6989586621679545927) ~> f6989586621679545925 b6989586621679545927) -> Type) (a6989586621679546339 :: f6989586621679545925 a6989586621679545926) = (a6989586621679546339 <**>@#@$$ b6989586621679545927 :: TyFun (f6989586621679545925 (a6989586621679545926 ~> b6989586621679545927)) (f6989586621679545925 b6989586621679545927) -> Type)

data (<**>@#@$$) (a6989586621679546339 :: f6989586621679545925 a6989586621679545926) :: forall b6989586621679545927. (~>) (f6989586621679545925 ((~>) a6989586621679545926 b6989586621679545927)) (f6989586621679545925 b6989586621679545927) infixl 4 Source #

Instances

(SApplicative f, SingI d) => SingI (d <**>@#@$$ b :: TyFun (f (a ~> b)) (f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (d <**>@#@$$ b) Source #
SuppressUnusedWarnings (a6989586621679546339 <**>@#@$$ b6989586621679545927 :: TyFun (f6989586621679545925 (a6989586621679545926 ~> b6989586621679545927)) (f6989586621679545925 b6989586621679545927) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (a6989586621679546339 <**>@#@$$ b :: TyFun (f (a ~> b)) (f b) -> Type) (a6989586621679546340 :: f (a ~> b)) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply (a6989586621679546339 <**>@#@$$ b :: TyFun (f (a ~> b)) (f b) -> Type) (a6989586621679546340 :: f (a ~> b)) = a6989586621679546339 <**> a6989586621679546340

type (<**>@#@$$$) (a6989586621679546339 :: f6989586621679545925 a6989586621679545926) (a6989586621679546340 :: f6989586621679545925 ((~>) a6989586621679545926 b6989586621679545927)) = (<**>) a6989586621679546339 a6989586621679546340 Source #

data LiftASym0 :: forall a6989586621679545923 b6989586621679545924 f6989586621679545922. (~>) ((~>) a6989586621679545923 b6989586621679545924) ((~>) (f6989586621679545922 a6989586621679545923) (f6989586621679545922 b6989586621679545924)) Source #

Instances

SApplicative f => SingI (LiftASym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing LiftASym0 Source #
SuppressUnusedWarnings (LiftASym0 :: TyFun (a6989586621679545923 ~> b6989586621679545924) (f6989586621679545922 a6989586621679545923 ~> f6989586621679545922 b6989586621679545924) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (LiftASym0 :: TyFun (a6989586621679545923 ~> b6989586621679545924) (f6989586621679545922 a6989586621679545923 ~> f6989586621679545922 b6989586621679545924) -> Type) (a6989586621679546329 :: a6989586621679545923 ~> b6989586621679545924) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply (LiftASym0 :: TyFun (a6989586621679545923 ~> b6989586621679545924) (f6989586621679545922 a6989586621679545923 ~> f6989586621679545922 b6989586621679545924) -> Type) (a6989586621679546329 :: a6989586621679545923 ~> b6989586621679545924) = (LiftASym1 a6989586621679546329 f6989586621679545922 :: TyFun (f6989586621679545922 a6989586621679545923) (f6989586621679545922 b6989586621679545924) -> Type)

data LiftASym1 (a6989586621679546329 :: (~>) a6989586621679545923 b6989586621679545924) :: forall f6989586621679545922. (~>) (f6989586621679545922 a6989586621679545923) (f6989586621679545922 b6989586621679545924) Source #

Instances

(SApplicative f, SingI d) => SingI (LiftASym1 d f :: TyFun (f a) (f b) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (LiftASym1 d f) Source #
SuppressUnusedWarnings (LiftASym1 a6989586621679546329 f6989586621679545922 :: TyFun (f6989586621679545922 a6989586621679545923) (f6989586621679545922 b6989586621679545924) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (LiftASym1 a6989586621679546329 f :: TyFun (f a) (f b) -> Type) (a6989586621679546330 :: f a) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply (LiftASym1 a6989586621679546329 f :: TyFun (f a) (f b) -> Type) (a6989586621679546330 :: f a) = LiftA a6989586621679546329 a6989586621679546330

type LiftASym2 (a6989586621679546329 :: (~>) a6989586621679545923 b6989586621679545924) (a6989586621679546330 :: f6989586621679545922 a6989586621679545923) = LiftA a6989586621679546329 a6989586621679546330 Source #

data LiftA2Sym0 :: forall a6989586621679545970 b6989586621679545971 c6989586621679545972 f6989586621679545966. (~>) ((~>) a6989586621679545970 ((~>) b6989586621679545971 c6989586621679545972)) ((~>) (f6989586621679545966 a6989586621679545970) ((~>) (f6989586621679545966 b6989586621679545971) (f6989586621679545966 c6989586621679545972))) Source #

Instances

SApplicative f => SingI (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing LiftA2Sym0 Source #
SuppressUnusedWarnings (LiftA2Sym0 :: TyFun (a6989586621679545970 ~> (b6989586621679545971 ~> c6989586621679545972)) (f6989586621679545966 a6989586621679545970 ~> (f6989586621679545966 b6989586621679545971 ~> f6989586621679545966 c6989586621679545972)) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (LiftA2Sym0 :: TyFun (a6989586621679545970 ~> (b6989586621679545971 ~> c6989586621679545972)) (f6989586621679545966 a6989586621679545970 ~> (f6989586621679545966 b6989586621679545971 ~> f6989586621679545966 c6989586621679545972)) -> Type) (arg6989586621679546385 :: a6989586621679545970 ~> (b6989586621679545971 ~> c6989586621679545972)) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply (LiftA2Sym0 :: TyFun (a6989586621679545970 ~> (b6989586621679545971 ~> c6989586621679545972)) (f6989586621679545966 a6989586621679545970 ~> (f6989586621679545966 b6989586621679545971 ~> f6989586621679545966 c6989586621679545972)) -> Type) (arg6989586621679546385 :: a6989586621679545970 ~> (b6989586621679545971 ~> c6989586621679545972)) = (LiftA2Sym1 arg6989586621679546385 f6989586621679545966 :: TyFun (f6989586621679545966 a6989586621679545970) (f6989586621679545966 b6989586621679545971 ~> f6989586621679545966 c6989586621679545972) -> Type)

data LiftA2Sym1 (arg6989586621679546385 :: (~>) a6989586621679545970 ((~>) b6989586621679545971 c6989586621679545972)) :: forall f6989586621679545966. (~>) (f6989586621679545966 a6989586621679545970) ((~>) (f6989586621679545966 b6989586621679545971) (f6989586621679545966 c6989586621679545972)) Source #

Instances

(SApplicative f, SingI d) => SingI (LiftA2Sym1 d f :: TyFun (f a) (f b ~> f c) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (LiftA2Sym1 d f) Source #
SuppressUnusedWarnings (LiftA2Sym1 arg6989586621679546385 f6989586621679545966 :: TyFun (f6989586621679545966 a6989586621679545970) (f6989586621679545966 b6989586621679545971 ~> f6989586621679545966 c6989586621679545972) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (LiftA2Sym1 arg6989586621679546385 f6989586621679545966 :: TyFun (f6989586621679545966 a6989586621679545970) (f6989586621679545966 b6989586621679545971 ~> f6989586621679545966 c6989586621679545972) -> Type) (arg6989586621679546386 :: f6989586621679545966 a6989586621679545970) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply (LiftA2Sym1 arg6989586621679546385 f6989586621679545966 :: TyFun (f6989586621679545966 a6989586621679545970) (f6989586621679545966 b6989586621679545971 ~> f6989586621679545966 c6989586621679545972) -> Type) (arg6989586621679546386 :: f6989586621679545966 a6989586621679545970) = LiftA2Sym2 arg6989586621679546385 arg6989586621679546386

data LiftA2Sym2 (arg6989586621679546385 :: (~>) a6989586621679545970 ((~>) b6989586621679545971 c6989586621679545972)) (arg6989586621679546386 :: f6989586621679545966 a6989586621679545970) :: (~>) (f6989586621679545966 b6989586621679545971) (f6989586621679545966 c6989586621679545972) Source #

Instances

(SApplicative f, SingI d1, SingI d2) => SingI (LiftA2Sym2 d1 d2 :: TyFun (f b) (f c) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (LiftA2Sym2 d1 d2) Source #
SuppressUnusedWarnings (LiftA2Sym2 arg6989586621679546386 arg6989586621679546385 :: TyFun (f6989586621679545966 b6989586621679545971) (f6989586621679545966 c6989586621679545972) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (LiftA2Sym2 arg6989586621679546386 arg6989586621679546385 :: TyFun (f b) (f c) -> Type) (arg6989586621679546387 :: f b) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply (LiftA2Sym2 arg6989586621679546386 arg6989586621679546385 :: TyFun (f b) (f c) -> Type) (arg6989586621679546387 :: f b) = LiftA2 arg6989586621679546386 arg6989586621679546385 arg6989586621679546387

type LiftA2Sym3 (arg6989586621679546385 :: (~>) a6989586621679545970 ((~>) b6989586621679545971 c6989586621679545972)) (arg6989586621679546386 :: f6989586621679545966 a6989586621679545970) (arg6989586621679546387 :: f6989586621679545966 b6989586621679545971) = LiftA2 arg6989586621679546385 arg6989586621679546386 arg6989586621679546387 Source #

data LiftA3Sym0 :: forall a6989586621679545918 b6989586621679545919 c6989586621679545920 d6989586621679545921 f6989586621679545917. (~>) ((~>) a6989586621679545918 ((~>) b6989586621679545919 ((~>) c6989586621679545920 d6989586621679545921))) ((~>) (f6989586621679545917 a6989586621679545918) ((~>) (f6989586621679545917 b6989586621679545919) ((~>) (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921)))) Source #

Instances

SApplicative f => SingI (LiftA3Sym0 :: TyFun (a ~> (b ~> (c ~> d))) (f a ~> (f b ~> (f c ~> f d))) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing LiftA3Sym0 Source #
SuppressUnusedWarnings (LiftA3Sym0 :: TyFun (a6989586621679545918 ~> (b6989586621679545919 ~> (c6989586621679545920 ~> d6989586621679545921))) (f6989586621679545917 a6989586621679545918 ~> (f6989586621679545917 b6989586621679545919 ~> (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921))) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #

type Apply (LiftA3Sym0 :: TyFun (a6989586621679545918 ~> (b6989586621679545919 ~> (c6989586621679545920 ~> d6989586621679545921))) (f6989586621679545917 a6989586621679545918 ~> (f6989586621679545917 b6989586621679545919 ~> (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921))) -> Type) (a6989586621679546317 :: a6989586621679545918 ~> (b6989586621679545919 ~> (c6989586621679545920 ~> d6989586621679545921))) Source #

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply (LiftA3Sym0 :: TyFun (a6989586621679545918 ~> (b6989586621679545919 ~> (c6989586621679545920 ~> d6989586621679545921))) (f6989586621679545917 a6989586621679545918 ~> (f6989586621679545917 b6989586621679545919 ~> (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921))) -> Type) (a6989586621679546317 :: a6989586621679545918 ~> (b6989586621679545919 ~> (c6989586621679545920 ~> d6989586621679545921))) = (LiftA3Sym1 a6989586621679546317 f6989586621679545917 :: TyFun (f6989586621679545917 a6989586621679545918) (f6989586621679545917 b6989586621679545919 ~> (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921)) -> Type)

data LiftA3Sym1 (a6989586621679546317 :: (~>) a6989586621679545918 ((~>) b6989586621679545919 ((~>) c6989586621679545920 d6989586621679545921))) :: forall f6989586621679545917. (~>) (f6989586621679545917 a6989586621679545918) ((~>) (f6989586621679545917 b6989586621679545919) ((~>) (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921))) Source #

Instances

(SApplicative f, SingI d2) => SingI (LiftA3Sym1 d2 f :: TyFun (f a) (f b ~> (f c ~> f d1)) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (LiftA3Sym1 d2 f) Source #
SuppressUnusedWarnings (LiftA3Sym1 a6989586621679546317 f6989586621679545917 :: TyFun (f6989586621679545917 a6989586621679545918) (f6989586621679545917 b6989586621679545919 ~> (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921)) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (LiftA3Sym1 a6989586621679546317 f6989586621679545917 :: TyFun (f6989586621679545917 a6989586621679545918) (f6989586621679545917 b6989586621679545919 ~> (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921)) -> Type) (a6989586621679546318 :: f6989586621679545917 a6989586621679545918) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply (LiftA3Sym1 a6989586621679546317 f6989586621679545917 :: TyFun (f6989586621679545917 a6989586621679545918) (f6989586621679545917 b6989586621679545919 ~> (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921)) -> Type) (a6989586621679546318 :: f6989586621679545917 a6989586621679545918) = LiftA3Sym2 a6989586621679546317 a6989586621679546318

data LiftA3Sym2 (a6989586621679546317 :: (~>) a6989586621679545918 ((~>) b6989586621679545919 ((~>) c6989586621679545920 d6989586621679545921))) (a6989586621679546318 :: f6989586621679545917 a6989586621679545918) :: (~>) (f6989586621679545917 b6989586621679545919) ((~>) (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921)) Source #

Instances

(SApplicative f, SingI d2, SingI d3) => SingI (LiftA3Sym2 d2 d3 :: TyFun (f b) (f c ~> f d1) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (LiftA3Sym2 d2 d3) Source #
SuppressUnusedWarnings (LiftA3Sym2 a6989586621679546318 a6989586621679546317 :: TyFun (f6989586621679545917 b6989586621679545919) (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (LiftA3Sym2 a6989586621679546318 a6989586621679546317 :: TyFun (f6989586621679545917 b6989586621679545919) (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921) -> Type) (a6989586621679546319 :: f6989586621679545917 b6989586621679545919) Source # |

Instance details

Defined in Data.Singletons.Prelude.Monad.Internal

type Apply (LiftA3Sym2 a6989586621679546318 a6989586621679546317 :: TyFun (f6989586621679545917 b6989586621679545919) (f6989586621679545917 c6989586621679545920 ~> f6989586621679545917 d6989586621679545921) -> Type) (a6989586621679546319 :: f6989586621679545917 b6989586621679545919) = LiftA3Sym3 a6989586621679546318 a6989586621679546317 a6989586621679546319

data LiftA3Sym3 (a6989586621679546317 :: (~>) a6989586621679545918 ((~>) b6989586621679545919 ((~>) c6989586621679545920 d6989586621679545921))) (a6989586621679546318 :: f6989586621679545917 a6989586621679545918) (a6989586621679546319 :: f6989586621679545917 b6989586621679545919) :: (~>) (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921) Source #

Instances

(SApplicative f, SingI d2, SingI d3, SingI d4) => SingI (LiftA3Sym3 d2 d3 d4 :: TyFun (f c) (f d1) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods sing :: Sing (LiftA3Sym3 d2 d3 d4) Source #
SuppressUnusedWarnings (LiftA3Sym3 a6989586621679546319 a6989586621679546318 a6989586621679546317 :: TyFun (f6989586621679545917 c6989586621679545920) (f6989586621679545917 d6989586621679545921) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal Methods suppressUnusedWarnings :: () Source #
type Apply (LiftA3Sym3 a6989586621679546319 a6989586621679546318 a6989586621679546317 :: TyFun (f c) (f d) -> Type) (a6989586621679546320 :: f c) Source # |
Instance details Defined in Data.Singletons.Prelude.Monad.Internal type Apply (LiftA3Sym3 a6989586621679546319 a6989586621679546318 a6989586621679546317 :: TyFun (f c) (f d) -> Type) (a6989586621679546320 :: f c) = LiftA3 a6989586621679546319 a6989586621679546318 a6989586621679546317 a6989586621679546320

data OptionalSym0 :: forall a6989586621681194396 f6989586621681194395. (~>) (f6989586621681194395 a6989586621681194396) (f6989586621681194395 (Maybe a6989586621681194396)) Source #

Instances

SAlternative f => SingI (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Applicative Methods sing :: Sing OptionalSym0 Source #
SuppressUnusedWarnings (OptionalSym0 :: TyFun (f6989586621681194395 a6989586621681194396) (f6989586621681194395 (Maybe a6989586621681194396)) -> Type) Source # |
Instance details Defined in Data.Singletons.Prelude.Applicative Methods suppressUnusedWarnings :: () Source #
type Apply (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) (a6989586621681194435 :: f a) Source # |
Instance details Defined in Data.Singletons.Prelude.Applicative type Apply (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) (a6989586621681194435 :: f a) = Optional a6989586621681194435

type OptionalSym1 (a6989586621681194435 :: f6989586621681194395 a6989586621681194396) = Optional a6989586621681194435 Source #

# Orphan instances

SApplicative Down Source # |
Instance details Methods sPure :: Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #
PApplicative Down Source # |
Instance details Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #
SMonoid a => SApplicative ((,) a) Source # |
Instance details Methods sPure :: Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source #
PApplicative ((,) a) Source # |
Instance details Associated Types type Pure arg :: f a Source # type arg <*> arg :: f b Source # type LiftA2 arg arg arg :: f c Source # type arg *> arg :: f b Source # type arg <* arg :: f a Source #