Copyright | (C) 2018 Ryan Scott |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | Ryan Scott |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | GHC2021 |
Defines the promoted and singled versions of the Applicative
type class.
Synopsis
- class PApplicative (f :: Type -> Type) where
- class SFunctor f => SApplicative (f :: Type -> Type) where
- sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (f a) -> Type) t)
- (%<*>) :: forall a b (t1 :: f (a ~> b)) (t2 :: f a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) t1) t2)
- sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: f a) (t3 :: f b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) t1) t2) t3)
- (%*>) :: forall a b (t1 :: f a) (t2 :: f b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (f a) (f b ~> f b) -> Type) t1) t2)
- (%<*) :: forall a b (t1 :: f a) (t2 :: f b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (f a) (f b ~> f a) -> Type) t1) t2)
- class PAlternative (f :: k -> Type) where
- class SApplicative f => SAlternative (f :: Type -> Type) where
- type family Sing :: k -> Type
- data SConst (a1 :: Const a b) where
- data Const a (b :: k)
- type family GetConst (a1 :: Const a b) :: a where ...
- sGetConst :: forall {k} a (b :: k) (t :: Const a b). Sing t -> Sing (Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) t)
- type family (a1 :: a ~> b) <$> (a2 :: f a) :: f b where ...
- (%<$>) :: forall a b (f :: Type -> Type) (t1 :: a ~> b) (t2 :: f a). SFunctor f => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$>@#@$) :: TyFun (a ~> b) (f a ~> f b) -> Type) t1) t2)
- type family (arg :: a) <$ (arg1 :: f b) :: f a
- (%<$) :: forall a b (t1 :: a) (t2 :: f b). SFunctor f => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) t1) t2)
- type family (a1 :: f a) <**> (a2 :: f (a ~> b)) :: f b where ...
- (%<**>) :: forall (f :: Type -> Type) a b (t1 :: f a) (t2 :: f (a ~> b)). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<**>@#@$) :: TyFun (f a) (f (a ~> b) ~> f b) -> Type) t1) t2)
- type family LiftA (a1 :: a ~> b) (a2 :: f a) :: f b where ...
- sLiftA :: forall a b (f :: Type -> Type) (t1 :: a ~> b) (t2 :: f a). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply (LiftASym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) t1) t2)
- type family LiftA3 (a1 :: a ~> (b ~> (c ~> d))) (a2 :: f a) (a3 :: f b) (a4 :: f c) :: f d where ...
- sLiftA3 :: forall a b c d (f :: Type -> Type) (t1 :: a ~> (b ~> (c ~> d))) (t2 :: f a) (t3 :: f b) (t4 :: f c). SApplicative f => Sing t1 -> Sing t2 -> Sing t3 -> Sing t4 -> Sing (Apply (Apply (Apply (Apply (LiftA3Sym0 :: TyFun (a ~> (b ~> (c ~> d))) (f a ~> (f b ~> (f c ~> f d))) -> Type) t1) t2) t3) t4)
- type family Optional (a1 :: f a) :: f (Maybe a) where ...
- sOptional :: forall (f :: Type -> Type) a (t :: f a). SAlternative f => Sing t -> Sing (Apply (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) t)
- data PureSym0 (a1 :: TyFun a (f a))
- type family PureSym1 (a6989586621679348508 :: a) :: f a where ...
- data (<*>@#@$) (a1 :: TyFun (f (a ~> b)) (f a ~> f b))
- data (a6989586621679348512 :: f (a ~> b)) <*>@#@$$ (b1 :: TyFun (f a) (f b))
- type family (a6989586621679348512 :: f (a ~> b)) <*>@#@$$$ (a6989586621679348513 :: f a) :: f b where ...
- data (*>@#@$) (a1 :: TyFun (f a) (f b ~> f b))
- data (a6989586621679348524 :: f a) *>@#@$$ (b1 :: TyFun (f b) (f b))
- type family (a6989586621679348524 :: f a) *>@#@$$$ (a6989586621679348525 :: f b) :: f b where ...
- data (<*@#@$) (a1 :: TyFun (f a) (f b ~> f a))
- data (a6989586621679348529 :: f a) <*@#@$$ (b1 :: TyFun (f b) (f a))
- type family (a6989586621679348529 :: f a) <*@#@$$$ (a6989586621679348530 :: f b) :: f a where ...
- type family EmptySym0 :: f a where ...
- data (<|>@#@$) (a1 :: TyFun (f a) (f a ~> f a))
- data (a6989586621679348633 :: f a) <|>@#@$$ (b :: TyFun (f a) (f a))
- type family (a6989586621679348633 :: f a) <|>@#@$$$ (a6989586621679348634 :: f a) :: f a where ...
- data ConstSym0 (z :: TyFun a (Const a b))
- type family ConstSym1 (x :: a) :: Const a b where ...
- data GetConstSym0 (a1 :: TyFun (Const a b) a)
- type family GetConstSym1 (a6989586621680681956 :: Const a b) :: a where ...
- data (<$>@#@$) (a1 :: TyFun (a ~> b) (f a ~> f b))
- data (a6989586621679532919 :: a ~> b) <$>@#@$$ (b1 :: TyFun (f a) (f b))
- type family (a6989586621679532919 :: a ~> b) <$>@#@$$$ (a6989586621679532920 :: f a) :: f b where ...
- data (<$@#@$) (a1 :: TyFun a (f b ~> f a))
- data (a6989586621679348489 :: a) <$@#@$$ (b1 :: TyFun (f b) (f a))
- type family (a6989586621679348489 :: a) <$@#@$$$ (a6989586621679348490 :: f b) :: f a where ...
- data (<**>@#@$) (a1 :: TyFun (f a) (f (a ~> b) ~> f b))
- data (a6989586621679348472 :: f a) <**>@#@$$ (b1 :: TyFun (f (a ~> b)) (f b))
- type family (a6989586621679348472 :: f a) <**>@#@$$$ (a6989586621679348473 :: f (a ~> b)) :: f b where ...
- data LiftASym0 (a1 :: TyFun (a ~> b) (f a ~> f b))
- data LiftASym1 (a6989586621679348461 :: a ~> b) (b1 :: TyFun (f a) (f b))
- type family LiftASym2 (a6989586621679348461 :: a ~> b) (a6989586621679348462 :: f a) :: f b where ...
- data LiftA2Sym0 (a1 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)))
- data LiftA2Sym1 (a6989586621679348518 :: a ~> (b ~> c)) (b1 :: TyFun (f a) (f b ~> f c))
- data LiftA2Sym2 (a6989586621679348518 :: a ~> (b ~> c)) (a6989586621679348519 :: f a) (c1 :: TyFun (f b) (f c))
- type family LiftA2Sym3 (a6989586621679348518 :: a ~> (b ~> c)) (a6989586621679348519 :: f a) (a6989586621679348520 :: f b) :: f c where ...
- data LiftA3Sym0 (a1 :: TyFun (a ~> (b ~> (c ~> d))) (f a ~> (f b ~> (f c ~> f d))))
- data LiftA3Sym1 (a6989586621679348450 :: a ~> (b ~> (c ~> d))) (b1 :: TyFun (f a) (f b ~> (f c ~> f d)))
- data LiftA3Sym2 (a6989586621679348450 :: a ~> (b ~> (c ~> d))) (a6989586621679348451 :: f a) (c1 :: TyFun (f b) (f c ~> f d))
- data LiftA3Sym3 (a6989586621679348450 :: a ~> (b ~> (c ~> d))) (a6989586621679348451 :: f a) (a6989586621679348452 :: f b) (d1 :: TyFun (f c) (f d))
- data OptionalSym0 (a1 :: TyFun (f a) (f (Maybe a)))
- type family OptionalSym1 (a6989586621681182611 :: f a) :: f (Maybe a) where ...
Documentation
class PApplicative (f :: Type -> Type) Source #
type Pure (arg :: a) :: f a Source #
type (arg :: f (a ~> b)) <*> (arg1 :: f a) :: f b infixl 4 Source #
type (arg :: f (a ~> b)) <*> (arg1 :: f a) = Apply (Apply (TFHelper_6989586621679348533Sym0 :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) arg) arg1
type LiftA2 (arg :: a ~> (b ~> c)) (arg1 :: f a) (arg2 :: f b) :: f c Source #
type LiftA2 (arg :: a ~> (b ~> c)) (arg1 :: f a) (arg2 :: f b) = Apply (Apply (Apply (LiftA2_6989586621679348549Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) arg) arg1) arg2
Instances
class SFunctor f => SApplicative (f :: Type -> Type) where Source #
sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (f a) -> Type) t) Source #
(%<*>) :: forall a b (t1 :: f (a ~> b)) (t2 :: f a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) t1) t2) infixl 4 Source #
default (%<*>) :: forall a b (t1 :: f (a ~> b)) (t2 :: f a). Apply (Apply ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) t1) t2 ~ Apply (Apply (TFHelper_6989586621679348533Sym0 :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) t1) t2 => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) t1) t2) Source #
sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: f a) (t3 :: f b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) t1) t2) t3) Source #
default sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: f a) (t3 :: f b). Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) t1) t2) t3 ~ Apply (Apply (Apply (LiftA2_6989586621679348549Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) t1) t2) t3 => Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) t1) t2) t3) Source #
(%*>) :: forall a b (t1 :: f a) (t2 :: f b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (f a) (f b ~> f b) -> Type) t1) t2) infixl 4 Source #
default (%*>) :: forall a b (t1 :: f a) (t2 :: f b). Apply (Apply ((*>@#@$) :: TyFun (f a) (f b ~> f b) -> Type) t1) t2 ~ Apply (Apply (TFHelper_6989586621679348565Sym0 :: TyFun (f a) (f b ~> f b) -> Type) t1) t2 => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (f a) (f b ~> f b) -> Type) t1) t2) Source #
(%<*) :: forall a b (t1 :: f a) (t2 :: f b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (f a) (f b ~> f a) -> Type) t1) t2) infixl 4 Source #
default (%<*) :: forall a b (t1 :: f a) (t2 :: f b). Apply (Apply ((<*@#@$) :: TyFun (f a) (f b ~> f a) -> Type) t1) t2 ~ Apply (Apply (TFHelper_6989586621679348576Sym0 :: TyFun (f a) (f b ~> f a) -> Type) t1) t2 => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (f a) (f b ~> f a) -> Type) t1) t2) Source #
Instances
SApplicative Identity Source # | |
Defined in Data.Functor.Identity.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Identity a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Identity (a ~> b)) (t2 :: Identity a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Identity (a ~> b)) (Identity a ~> Identity b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Identity a) (t3 :: Identity b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Identity a ~> (Identity b ~> Identity c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Identity a) (t2 :: Identity b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Identity a) (Identity b ~> Identity b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Identity a) (t2 :: Identity b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Identity a) (Identity b ~> Identity a) -> Type) t1) t2) Source # | |
SApplicative First Source # | |
Defined in Data.Monoid.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (First a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: First (a ~> b)) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (First (a ~> b)) (First a ~> First b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: First a) (t3 :: First b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (First a ~> (First b ~> First c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: First a) (t2 :: First b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (First a) (First b ~> First b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: First a) (t2 :: First b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (First a) (First b ~> First a) -> Type) t1) t2) Source # | |
SApplicative Last Source # | |
Defined in Data.Monoid.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Last a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Last (a ~> b)) (t2 :: Last a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Last (a ~> b)) (Last a ~> Last b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Last a) (t3 :: Last b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Last a ~> (Last b ~> Last c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Last a) (t2 :: Last b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Last a) (Last b ~> Last b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Last a) (t2 :: Last b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Last a) (Last b ~> Last a) -> Type) t1) t2) Source # | |
SApplicative Down Source # | |
Defined in Control.Applicative.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Down a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Down (a ~> b)) (t2 :: Down a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Down (a ~> b)) (Down a ~> Down b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Down a) (t3 :: Down b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Down a ~> (Down b ~> Down c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Down a) (t2 :: Down b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Down a) (Down b ~> Down b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Down a) (t2 :: Down b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Down a) (Down b ~> Down a) -> Type) t1) t2) Source # | |
SApplicative First Source # | |
Defined in Data.Semigroup.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (First a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: First (a ~> b)) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (First (a ~> b)) (First a ~> First b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: First a) (t3 :: First b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (First a ~> (First b ~> First c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: First a) (t2 :: First b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (First a) (First b ~> First b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: First a) (t2 :: First b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (First a) (First b ~> First a) -> Type) t1) t2) Source # | |
SApplicative Last Source # | |
Defined in Data.Semigroup.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Last a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Last (a ~> b)) (t2 :: Last a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Last (a ~> b)) (Last a ~> Last b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Last a) (t3 :: Last b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Last a ~> (Last b ~> Last c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Last a) (t2 :: Last b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Last a) (Last b ~> Last b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Last a) (t2 :: Last b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Last a) (Last b ~> Last a) -> Type) t1) t2) Source # | |
SApplicative Max Source # | |
Defined in Data.Semigroup.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Max a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Max (a ~> b)) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Max (a ~> b)) (Max a ~> Max b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Max a) (t3 :: Max b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Max a ~> (Max b ~> Max c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Max a) (t2 :: Max b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Max a) (Max b ~> Max b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Max a) (t2 :: Max b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Max a) (Max b ~> Max a) -> Type) t1) t2) Source # | |
SApplicative Min Source # | |
Defined in Data.Semigroup.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Min a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Min (a ~> b)) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Min (a ~> b)) (Min a ~> Min b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Min a) (t3 :: Min b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Min a ~> (Min b ~> Min c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Min a) (t2 :: Min b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Min a) (Min b ~> Min b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Min a) (t2 :: Min b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Min a) (Min b ~> Min a) -> Type) t1) t2) Source # | |
SApplicative Dual Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Dual a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Dual (a ~> b)) (t2 :: Dual a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Dual (a ~> b)) (Dual a ~> Dual b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Dual a) (t3 :: Dual b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Dual a ~> (Dual b ~> Dual c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Dual a) (t2 :: Dual b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Dual a) (Dual b ~> Dual b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Dual a) (t2 :: Dual b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Dual a) (Dual b ~> Dual a) -> Type) t1) t2) Source # | |
SApplicative Product Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Product a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Product (a ~> b)) (t2 :: Product a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Product (a ~> b)) (Product a ~> Product b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Product a) (t3 :: Product b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Product a ~> (Product b ~> Product c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Product a) (t2 :: Product b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Product a) (Product b ~> Product b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Product a) (t2 :: Product b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Product a) (Product b ~> Product a) -> Type) t1) t2) Source # | |
SApplicative Sum Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Sum a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Sum (a ~> b)) (t2 :: Sum a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Sum (a ~> b)) (Sum a ~> Sum b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Sum a) (t3 :: Sum b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Sum a ~> (Sum b ~> Sum c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Sum a) (t2 :: Sum b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Sum a) (Sum b ~> Sum b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Sum a) (t2 :: Sum b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Sum a) (Sum b ~> Sum a) -> Type) t1) t2) Source # | |
SApplicative NonEmpty Source # | |
Defined in Control.Monad.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (NonEmpty a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: NonEmpty (a ~> b)) (t2 :: NonEmpty a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (NonEmpty (a ~> b)) (NonEmpty a ~> NonEmpty b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: NonEmpty a) (t3 :: NonEmpty b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (NonEmpty a ~> (NonEmpty b ~> NonEmpty c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: NonEmpty a) (t2 :: NonEmpty b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (NonEmpty a) (NonEmpty b ~> NonEmpty b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: NonEmpty a) (t2 :: NonEmpty b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (NonEmpty a) (NonEmpty b ~> NonEmpty a) -> Type) t1) t2) Source # | |
SApplicative Maybe Source # | |
Defined in Control.Monad.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Maybe a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Maybe (a ~> b)) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Maybe (a ~> b)) (Maybe a ~> Maybe b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Maybe a) (t3 :: Maybe b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Maybe a ~> (Maybe b ~> Maybe c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Maybe a) (t2 :: Maybe b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Maybe a) (Maybe b ~> Maybe b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Maybe a) (t2 :: Maybe b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Maybe a) (Maybe b ~> Maybe a) -> Type) t1) t2) Source # | |
SApplicative [] Source # | |
Defined in Control.Monad.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a [a] -> Type) t) Source # (%<*>) :: forall a b (t1 :: [a ~> b]) (t2 :: [a]). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun [a ~> b] ([a] ~> [b]) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: [a]) (t3 :: [b]). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) ([a] ~> ([b] ~> [c])) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: [a]) (t2 :: [b]). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun [a] ([b] ~> [b]) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: [a]) (t2 :: [b]). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun [a] ([b] ~> [a]) -> Type) t1) t2) Source # | |
SApplicative (Either e) Source # | |
Defined in Control.Monad.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Either e a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Either e (a ~> b)) (t2 :: Either e a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Either e (a ~> b)) (Either e a ~> Either e b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Either e a) (t3 :: Either e b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Either e a ~> (Either e b ~> Either e c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Either e a) (t2 :: Either e b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Either e a) (Either e b ~> Either e b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Either e a) (t2 :: Either e b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Either e a) (Either e b ~> Either e a) -> Type) t1) t2) Source # | |
SApplicative (Proxy :: Type -> Type) Source # | |
Defined in Data.Proxy.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Proxy a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Proxy (a ~> b)) (t2 :: Proxy a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Proxy (a ~> b)) (Proxy a ~> Proxy b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Proxy a) (t3 :: Proxy b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Proxy a ~> (Proxy b ~> Proxy c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Proxy a) (t2 :: Proxy b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Proxy a) (Proxy b ~> Proxy b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Proxy a) (t2 :: Proxy b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Proxy a) (Proxy b ~> Proxy a) -> Type) t1) t2) Source # | |
SMonoid a => SApplicative ((,) a) Source # | |
Defined in Control.Applicative.Singletons sPure :: forall a0 (t :: a0). Sing t -> Sing (Apply (PureSym0 :: TyFun a (a, a) -> Type) t) Source # (%<*>) :: forall a0 b (t1 :: (a, a0 ~> b)) (t2 :: (a, a0)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (a, a ~> b) ((a, a) ~> (a, b)) -> Type) t1) t2) Source # sLiftA2 :: forall a0 b c (t1 :: a0 ~> (b ~> c)) (t2 :: (a, a0)) (t3 :: (a, b)). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) ((a, a) ~> ((a, b) ~> (a, c))) -> Type) t1) t2) t3) Source # (%*>) :: forall a0 b (t1 :: (a, a0)) (t2 :: (a, b)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (a, a) ((a, b) ~> (a, b)) -> Type) t1) t2) Source # (%<*) :: forall a0 b (t1 :: (a, a0)) (t2 :: (a, b)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (a, a) ((a, b) ~> (a, a)) -> Type) t1) t2) Source # | |
SMonoid m => SApplicative (Const m :: Type -> Type) Source # | |
Defined in Data.Functor.Const.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Const m a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Const m (a ~> b)) (t2 :: Const m a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Const m (a ~> b)) (Const m a ~> Const m b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Const m a) (t3 :: Const m b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Const m a ~> (Const m b ~> Const m c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Const m a) (t2 :: Const m b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Const m a) (Const m b ~> Const m b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Const m a) (t2 :: Const m b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Const m a) (Const m b ~> Const m a) -> Type) t1) t2) Source # | |
(SApplicative f, SApplicative g) => SApplicative (Product f g) Source # | |
Defined in Data.Functor.Product.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Product f g a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Product f g (a ~> b)) (t2 :: Product f g a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Product f g (a ~> b)) (Product f g a ~> Product f g b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Product f g a) (t3 :: Product f g b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Product f g a ~> (Product f g b ~> Product f g c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Product f g a) (t2 :: Product f g b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Product f g a) (Product f g b ~> Product f g b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Product f g a) (t2 :: Product f g b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Product f g a) (Product f g b ~> Product f g a) -> Type) t1) t2) Source # | |
(SApplicative f, SApplicative g) => SApplicative (Compose f g) Source # | |
Defined in Data.Functor.Compose.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Compose f g a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Compose f g (a ~> b)) (t2 :: Compose f g a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Compose f g (a ~> b)) (Compose f g a ~> Compose f g b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Compose f g a) (t3 :: Compose f g b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Compose f g a ~> (Compose f g b ~> Compose f g c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Compose f g a) (t2 :: Compose f g b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Compose f g a) (Compose f g b ~> Compose f g b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Compose f g a) (t2 :: Compose f g b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Compose f g a) (Compose f g b ~> Compose f g a) -> Type) t1) t2) Source # |
class PAlternative (f :: k -> Type) Source #
Instances
PAlternative Maybe Source # | |||||||||
Defined in Control.Monad.Singletons.Internal
| |||||||||
PAlternative [] Source # | |||||||||
Defined in Control.Monad.Singletons.Internal
| |||||||||
PAlternative (Proxy :: k -> Type) Source # | |||||||||
Defined in Data.Proxy.Singletons | |||||||||
PAlternative (Product f g :: k -> Type) Source # | |||||||||
Defined in Data.Functor.Product.Singletons | |||||||||
PAlternative (Compose f g :: k2 -> Type) Source # | |||||||||
Defined in Data.Functor.Compose.Singletons |
class SApplicative f => SAlternative (f :: Type -> Type) where Source #
sEmpty :: Sing (EmptySym0 :: f a) Source #
(%<|>) :: forall a (t1 :: f a) (t2 :: f a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<|>@#@$) :: TyFun (f a) (f a ~> f a) -> Type) t1) t2) infixl 3 Source #
Instances
SAlternative Maybe Source # | |
SAlternative [] Source # | |
SAlternative (Proxy :: Type -> Type) Source # | |
(SAlternative f, SAlternative g) => SAlternative (Product f g) Source # | |
(SAlternative f, SApplicative g) => SAlternative (Compose f g) Source # | |
type family Sing :: k -> Type #
Instances
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in GHC.TypeLits.Singletons.Internal | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Singletons.Base.TypeError | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in GHC.TypeLits.Singletons.Internal | |
type Sing Source # | |
Defined in GHC.TypeLits.Singletons.Internal | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Monoid.Singletons | |
type Sing Source # | |
Defined in Data.Monoid.Singletons | |
type Sing Source # | |
Defined in Data.Ord.Singletons | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | A choice of singleton for the kind Conceivably, one could generalize this instance to `Sing @k` for
any kind We cannot produce explicit singleton values for everything in |
Defined in Data.Singletons.Base.TypeRepTYPE | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Proxy.Singletons | |
type Sing Source # | |
Defined in Data.Semigroup.Singletons | |
type Sing | |
Defined in Data.Singletons | |
type Sing | |
Defined in Data.Singletons | |
type Sing | |
Defined in Data.Singletons.Sigma | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Functor.Const.Singletons | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Functor.Product.Singletons | |
type Sing Source # | |
Defined in Data.Functor.Sum.Singletons | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Functor.Compose.Singletons | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances |
data SConst (a1 :: Const a b) where Source #
Instances
SDecide a => TestCoercion (SConst :: Const a b -> Type) Source # | |
Defined in Data.Functor.Const.Singletons | |
SDecide a => TestEquality (SConst :: Const a b -> Type) Source # | |
Defined in Data.Functor.Const.Singletons | |
Eq (SConst z) Source # | |
Ord (SConst z) Source # | |
Defined in Data.Functor.Const.Singletons |
The Const
functor.
Instances
Generic1 (Const a :: k -> Type) | |||||||||
Defined in Data.Functor.Const
| |||||||||
SingI1 ('Const :: k1 -> Const k1 b) Source # | |||||||||
Bifoldable (Const :: Type -> Type -> Type) | Since: base-4.10.0.0 | ||||||||
Bifoldable1 (Const :: Type -> Type -> Type) | |||||||||
Defined in Data.Bifoldable1 | |||||||||
Bifunctor (Const :: Type -> Type -> Type) | Since: base-4.8.0.0 | ||||||||
Bitraversable (Const :: Type -> Type -> Type) | Since: base-4.10.0.0 | ||||||||
Defined in Data.Bitraversable bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Const a b -> f (Const c d) # | |||||||||
Eq2 (Const :: Type -> Type -> Type) | Since: base-4.9.0.0 | ||||||||
Ord2 (Const :: Type -> Type -> Type) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Classes | |||||||||
Read2 (Const :: Type -> Type -> Type) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Classes liftReadsPrec2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> Int -> ReadS (Const a b) # liftReadList2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> ReadS [Const a b] # liftReadPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec (Const a b) # liftReadListPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec [Const a b] # | |||||||||
Show2 (Const :: Type -> Type -> Type) | Since: base-4.9.0.0 | ||||||||
NFData2 (Const :: Type -> Type -> Type) | Since: deepseq-1.4.3.0 | ||||||||
Defined in Control.DeepSeq | |||||||||
Foldable (Const m :: Type -> Type) | Since: base-4.7.0.0 | ||||||||
Defined in Data.Functor.Const fold :: Monoid m0 => Const m m0 -> m0 # foldMap :: Monoid m0 => (a -> m0) -> Const m a -> m0 # foldMap' :: Monoid m0 => (a -> m0) -> Const m a -> m0 # foldr :: (a -> b -> b) -> b -> Const m a -> b # foldr' :: (a -> b -> b) -> b -> Const m a -> b # foldl :: (b -> a -> b) -> b -> Const m a -> b # foldl' :: (b -> a -> b) -> b -> Const m a -> b # foldr1 :: (a -> a -> a) -> Const m a -> a # foldl1 :: (a -> a -> a) -> Const m a -> a # elem :: Eq a => a -> Const m a -> Bool # maximum :: Ord a => Const m a -> a # minimum :: Ord a => Const m a -> a # | |||||||||
Eq a => Eq1 (Const a :: Type -> Type) | Since: base-4.9.0.0 | ||||||||
Ord a => Ord1 (Const a :: Type -> Type) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Classes | |||||||||
Read a => Read1 (Const a :: Type -> Type) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Classes | |||||||||
Show a => Show1 (Const a :: Type -> Type) | Since: base-4.9.0.0 | ||||||||
Contravariant (Const a :: Type -> Type) | |||||||||
Traversable (Const m :: Type -> Type) | Since: base-4.7.0.0 | ||||||||
Monoid m => Applicative (Const m :: Type -> Type) | Since: base-2.0.1 | ||||||||
Functor (Const m :: Type -> Type) | Since: base-2.1 | ||||||||
NFData a => NFData1 (Const a :: Type -> Type) | Since: deepseq-1.4.3.0 | ||||||||
Defined in Control.DeepSeq | |||||||||
PApplicative (Const m :: Type -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
PFunctor (Const m :: Type -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SMonoid m => SApplicative (Const m :: Type -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Const m a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Const m (a ~> b)) (t2 :: Const m a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Const m (a ~> b)) (Const m a ~> Const m b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Const m a) (t3 :: Const m b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Const m a ~> (Const m b ~> Const m c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Const m a) (t2 :: Const m b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Const m a) (Const m b ~> Const m b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Const m a) (t2 :: Const m b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Const m a) (Const m b ~> Const m a) -> Type) t1) t2) Source # | |||||||||
SFunctor (Const m :: Type -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons sFmap :: forall a b (t1 :: a ~> b) (t2 :: Const m a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (FmapSym0 :: TyFun (a ~> b) (Const m a ~> Const m b) -> Type) t1) t2) Source # (%<$) :: forall a b (t1 :: a) (t2 :: Const m b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$@#@$) :: TyFun a (Const m b ~> Const m a) -> Type) t1) t2) Source # | |||||||||
PFoldable (Const m :: Type -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SFoldable (Const m :: Type -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons sFold :: forall m0 (t1 :: Const m m0). SMonoid m0 => Sing t1 -> Sing (Apply (FoldSym0 :: TyFun (Const m m) m -> Type) t1) Source # sFoldMap :: forall a m0 (t1 :: a ~> m0) (t2 :: Const m a). SMonoid m0 => Sing t1 -> Sing t2 -> Sing (Apply (Apply (FoldMapSym0 :: TyFun (a ~> m) (Const m a ~> m) -> Type) t1) t2) Source # sFoldr :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Const m a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (Const m a ~> b)) -> Type) t1) t2) t3) Source # sFoldr' :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Const m a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldr'Sym0 :: TyFun (a ~> (b ~> b)) (b ~> (Const m a ~> b)) -> Type) t1) t2) t3) Source # sFoldl :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Const m a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (Const m a ~> b)) -> Type) t1) t2) t3) Source # sFoldl' :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Const m a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldl'Sym0 :: TyFun (b ~> (a ~> b)) (b ~> (Const m a ~> b)) -> Type) t1) t2) t3) Source # sFoldr1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Const m a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldr1Sym0 :: TyFun (a ~> (a ~> a)) (Const m a ~> a) -> Type) t1) t2) Source # sFoldl1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Const m a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldl1Sym0 :: TyFun (a ~> (a ~> a)) (Const m a ~> a) -> Type) t1) t2) Source # sToList :: forall a (t1 :: Const m a). Sing t1 -> Sing (Apply (ToListSym0 :: TyFun (Const m a) [a] -> Type) t1) Source # sNull :: forall a (t1 :: Const m a). Sing t1 -> Sing (Apply (NullSym0 :: TyFun (Const m a) Bool -> Type) t1) Source # sLength :: forall a (t1 :: Const m a). Sing t1 -> Sing (Apply (LengthSym0 :: TyFun (Const m a) Natural -> Type) t1) Source # sElem :: forall a (t1 :: a) (t2 :: Const m a). SEq a => Sing t1 -> Sing t2 -> Sing (Apply (Apply (ElemSym0 :: TyFun a (Const m a ~> Bool) -> Type) t1) t2) Source # sMaximum :: forall a (t1 :: Const m a). SOrd a => Sing t1 -> Sing (Apply (MaximumSym0 :: TyFun (Const m a) a -> Type) t1) Source # sMinimum :: forall a (t1 :: Const m a). SOrd a => Sing t1 -> Sing (Apply (MinimumSym0 :: TyFun (Const m a) a -> Type) t1) Source # sSum :: forall a (t1 :: Const m a). SNum a => Sing t1 -> Sing (Apply (SumSym0 :: TyFun (Const m a) a -> Type) t1) Source # sProduct :: forall a (t1 :: Const m a). SNum a => Sing t1 -> Sing (Apply (ProductSym0 :: TyFun (Const m a) a -> Type) t1) Source # | |||||||||
PTraversable (Const m :: Type -> Type) Source # | |||||||||
Defined in Data.Traversable.Singletons | |||||||||
STraversable (Const m :: Type -> Type) Source # | |||||||||
Defined in Data.Traversable.Singletons sTraverse :: forall a (f :: Type -> Type) b (t1 :: a ~> f b) (t2 :: Const m a). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply (TraverseSym0 :: TyFun (a ~> f b) (Const m a ~> f (Const m b)) -> Type) t1) t2) Source # sSequenceA :: forall (f :: Type -> Type) a (t1 :: Const m (f a)). SApplicative f => Sing t1 -> Sing (Apply (SequenceASym0 :: TyFun (Const m (f a)) (f (Const m a)) -> Type) t1) Source # sMapM :: forall a (m0 :: Type -> Type) b (t1 :: a ~> m0 b) (t2 :: Const m a). SMonad m0 => Sing t1 -> Sing t2 -> Sing (Apply (Apply (MapMSym0 :: TyFun (a ~> m b) (Const m a ~> m (Const m b)) -> Type) t1) t2) Source # sSequence :: forall (m0 :: Type -> Type) a (t1 :: Const m (m0 a)). SMonad m0 => Sing t1 -> Sing (Apply (SequenceSym0 :: TyFun (Const m (m a)) (m (Const m a)) -> Type) t1) Source # | |||||||||
SingI (GetConstSym0 :: TyFun (Const a b) a -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SingI (ConstSym0 :: TyFun a (Const a b) -> Type) Source # | |||||||||
SuppressUnusedWarnings (GetConstSym0 :: TyFun (Const a b) a -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons suppressUnusedWarnings :: () # | |||||||||
(Typeable k, Data a, Typeable b) => Data (Const a b) | Since: base-4.10.0.0 | ||||||||
Defined in Data.Data gfoldl :: (forall d b0. Data d => c (d -> b0) -> d -> c b0) -> (forall g. g -> c g) -> Const a b -> c (Const a b) # gunfold :: (forall b0 r. Data b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Const a b) # toConstr :: Const a b -> Constr # dataTypeOf :: Const a b -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Const a b)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Const a b)) # gmapT :: (forall b0. Data b0 => b0 -> b0) -> Const a b -> Const a b # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Const a b -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Const a b -> r # gmapQ :: (forall d. Data d => d -> u) -> Const a b -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Const a b -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Const a b -> m (Const a b) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Const a b -> m (Const a b) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Const a b -> m (Const a b) # | |||||||||
IsString a => IsString (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.String fromString :: String -> Const a b # | |||||||||
Storable a => Storable (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const | |||||||||
Monoid a => Monoid (Const a b) | Since: base-4.9.0.0 | ||||||||
Semigroup a => Semigroup (Const a b) | Since: base-4.9.0.0 | ||||||||
Bits a => Bits (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const (.&.) :: Const a b -> Const a b -> Const a b # (.|.) :: Const a b -> Const a b -> Const a b # xor :: Const a b -> Const a b -> Const a b # complement :: Const a b -> Const a b # shift :: Const a b -> Int -> Const a b # rotate :: Const a b -> Int -> Const a b # setBit :: Const a b -> Int -> Const a b # clearBit :: Const a b -> Int -> Const a b # complementBit :: Const a b -> Int -> Const a b # testBit :: Const a b -> Int -> Bool # bitSizeMaybe :: Const a b -> Maybe Int # isSigned :: Const a b -> Bool # shiftL :: Const a b -> Int -> Const a b # unsafeShiftL :: Const a b -> Int -> Const a b # shiftR :: Const a b -> Int -> Const a b # unsafeShiftR :: Const a b -> Int -> Const a b # rotateL :: Const a b -> Int -> Const a b # | |||||||||
FiniteBits a => FiniteBits (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const finiteBitSize :: Const a b -> Int # countLeadingZeros :: Const a b -> Int # countTrailingZeros :: Const a b -> Int # | |||||||||
Bounded a => Bounded (Const a b) | Since: base-4.9.0.0 | ||||||||
Enum a => Enum (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const succ :: Const a b -> Const a b # pred :: Const a b -> Const a b # fromEnum :: Const a b -> Int # enumFrom :: Const a b -> [Const a b] # enumFromThen :: Const a b -> Const a b -> [Const a b] # enumFromTo :: Const a b -> Const a b -> [Const a b] # enumFromThenTo :: Const a b -> Const a b -> Const a b -> [Const a b] # | |||||||||
Floating a => Floating (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const exp :: Const a b -> Const a b # log :: Const a b -> Const a b # sqrt :: Const a b -> Const a b # (**) :: Const a b -> Const a b -> Const a b # logBase :: Const a b -> Const a b -> Const a b # sin :: Const a b -> Const a b # cos :: Const a b -> Const a b # tan :: Const a b -> Const a b # asin :: Const a b -> Const a b # acos :: Const a b -> Const a b # atan :: Const a b -> Const a b # sinh :: Const a b -> Const a b # cosh :: Const a b -> Const a b # tanh :: Const a b -> Const a b # asinh :: Const a b -> Const a b # acosh :: Const a b -> Const a b # atanh :: Const a b -> Const a b # log1p :: Const a b -> Const a b # expm1 :: Const a b -> Const a b # | |||||||||
RealFloat a => RealFloat (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const floatRadix :: Const a b -> Integer # floatDigits :: Const a b -> Int # floatRange :: Const a b -> (Int, Int) # decodeFloat :: Const a b -> (Integer, Int) # encodeFloat :: Integer -> Int -> Const a b # exponent :: Const a b -> Int # significand :: Const a b -> Const a b # scaleFloat :: Int -> Const a b -> Const a b # isInfinite :: Const a b -> Bool # isDenormalized :: Const a b -> Bool # isNegativeZero :: Const a b -> Bool # | |||||||||
Generic (Const a b) | |||||||||
Defined in Data.Functor.Const
| |||||||||
Ix a => Ix (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const range :: (Const a b, Const a b) -> [Const a b] # index :: (Const a b, Const a b) -> Const a b -> Int # unsafeIndex :: (Const a b, Const a b) -> Const a b -> Int # inRange :: (Const a b, Const a b) -> Const a b -> Bool # rangeSize :: (Const a b, Const a b) -> Int # unsafeRangeSize :: (Const a b, Const a b) -> Int # | |||||||||
Num a => Num (Const a b) | Since: base-4.9.0.0 | ||||||||
Read a => Read (Const a b) | This instance would be equivalent to the derived instances of the
Since: base-4.8.0.0 | ||||||||
Fractional a => Fractional (Const a b) | Since: base-4.9.0.0 | ||||||||
Integral a => Integral (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const | |||||||||
Real a => Real (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const toRational :: Const a b -> Rational # | |||||||||
RealFrac a => RealFrac (Const a b) | Since: base-4.9.0.0 | ||||||||
Show a => Show (Const a b) | This instance would be equivalent to the derived instances of the
Since: base-4.8.0.0 | ||||||||
NFData a => NFData (Const a b) | Since: deepseq-1.4.0.0 | ||||||||
Defined in Control.DeepSeq | |||||||||
Eq a => Eq (Const a b) | Since: base-4.9.0.0 | ||||||||
Ord a => Ord (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const | |||||||||
SingKind a => SingKind (Const a b) Source # | |||||||||
SDecide a => SDecide (Const a b) Source # | |||||||||
PEq (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SEq a => SEq (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons (%==) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((==@#@$) :: TyFun (Const a b) (Const a b ~> Bool) -> Type) t1) t2) Source # (%/=) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((/=@#@$) :: TyFun (Const a b) (Const a b ~> Bool) -> Type) t1) t2) Source # | |||||||||
PMonoid (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons
| |||||||||
SMonoid a => SMonoid (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons sMempty :: Sing (MemptySym0 :: Const a b) Source # sMappend :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (MappendSym0 :: TyFun (Const a b) (Const a b ~> Const a b) -> Type) t1) t2) Source # sMconcat :: forall (t :: [Const a b]). Sing t -> Sing (Apply (MconcatSym0 :: TyFun [Const a b] (Const a b) -> Type) t) Source # | |||||||||
POrd (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SOrd a => SOrd (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons sCompare :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (CompareSym0 :: TyFun (Const a b) (Const a b ~> Ordering) -> Type) t1) t2) Source # (%<) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<@#@$) :: TyFun (Const a b) (Const a b ~> Bool) -> Type) t1) t2) Source # (%<=) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<=@#@$) :: TyFun (Const a b) (Const a b ~> Bool) -> Type) t1) t2) Source # (%>) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((>@#@$) :: TyFun (Const a b) (Const a b ~> Bool) -> Type) t1) t2) Source # (%>=) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((>=@#@$) :: TyFun (Const a b) (Const a b ~> Bool) -> Type) t1) t2) Source # sMax :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (MaxSym0 :: TyFun (Const a b) (Const a b ~> Const a b) -> Type) t1) t2) Source # sMin :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (MinSym0 :: TyFun (Const a b) (Const a b ~> Const a b) -> Type) t1) t2) Source # | |||||||||
PSemigroup (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SSemigroup a => SSemigroup (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons (%<>) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (Const a b) (Const a b ~> Const a b) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (Const a b)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (Const a b)) (Const a b) -> Type) t) Source # | |||||||||
PBounded (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons
| |||||||||
PEnum (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SBounded a => SBounded (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SEnum a => SEnum (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons sSucc :: forall (t :: Const a b). Sing t -> Sing (Apply (SuccSym0 :: TyFun (Const a b) (Const a b) -> Type) t) Source # sPred :: forall (t :: Const a b). Sing t -> Sing (Apply (PredSym0 :: TyFun (Const a b) (Const a b) -> Type) t) Source # sToEnum :: forall (t :: Natural). Sing t -> Sing (Apply (ToEnumSym0 :: TyFun Natural (Const a b) -> Type) t) Source # sFromEnum :: forall (t :: Const a b). Sing t -> Sing (Apply (FromEnumSym0 :: TyFun (Const a b) Natural -> Type) t) Source # sEnumFromTo :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (EnumFromToSym0 :: TyFun (Const a b) (Const a b ~> [Const a b]) -> Type) t1) t2) Source # sEnumFromThenTo :: forall (t1 :: Const a b) (t2 :: Const a b) (t3 :: Const a b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (EnumFromThenToSym0 :: TyFun (Const a b) (Const a b ~> (Const a b ~> [Const a b])) -> Type) t1) t2) t3) Source # | |||||||||
PIsString (Const a b) Source # | |||||||||
Defined in Data.String.Singletons | |||||||||
SIsString a => SIsString (Const a b) Source # | |||||||||
Defined in Data.String.Singletons | |||||||||
PNum (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SNum a => SNum (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons (%+) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((+@#@$) :: TyFun (Const a b) (Const a b ~> Const a b) -> Type) t1) t2) Source # (%-) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((-@#@$) :: TyFun (Const a b) (Const a b ~> Const a b) -> Type) t1) t2) Source # (%*) :: forall (t1 :: Const a b) (t2 :: Const a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*@#@$) :: TyFun (Const a b) (Const a b ~> Const a b) -> Type) t1) t2) Source # sNegate :: forall (t :: Const a b). Sing t -> Sing (Apply (NegateSym0 :: TyFun (Const a b) (Const a b) -> Type) t) Source # sAbs :: forall (t :: Const a b). Sing t -> Sing (Apply (AbsSym0 :: TyFun (Const a b) (Const a b) -> Type) t) Source # sSignum :: forall (t :: Const a b). Sing t -> Sing (Apply (SignumSym0 :: TyFun (Const a b) (Const a b) -> Type) t) Source # sFromInteger :: forall (t :: Natural). Sing t -> Sing (Apply (FromIntegerSym0 :: TyFun Natural (Const a b) -> Type) t) Source # | |||||||||
PShow (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SShow a => SShow (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons sShowsPrec :: forall (t1 :: Natural) (t2 :: Const a b) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Const a b ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Const a b). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (Const a b) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Const a b]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Const a b] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||
SDecide a => TestCoercion (SConst :: Const a b -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SDecide a => TestEquality (SConst :: Const a b -> Type) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
SingI a2 => SingI ('Const a2 :: Const a1 b) Source # | |||||||||
type MapM (arg1 :: a ~> m1 b) (arg2 :: Const m2 a) Source # | |||||||||
Defined in Data.Traversable.Singletons | |||||||||
type Traverse (a2 :: a1 ~> f b) (a3 :: Const m a1) Source # | |||||||||
Defined in Data.Traversable.Singletons | |||||||||
type LiftA2 (a2 :: a1 ~> (b ~> c)) (a3 :: Const m a1) (a4 :: Const m b) Source # | |||||||||
type Fmap (a2 :: a1 ~> b) (a3 :: Const m a1) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type FoldMap (a2 :: a1 ~> k2) (a3 :: Const m a1) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Foldl (arg :: b ~> (a ~> b)) (arg1 :: b) (arg2 :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Foldl' (arg :: b ~> (a ~> b)) (arg1 :: b) (arg2 :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Foldr (a2 :: a1 ~> (k2 ~> k2)) (a3 :: k2) (a4 :: Const m a1) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Foldr' (arg :: a ~> (b ~> b)) (arg1 :: b) (arg2 :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Rep1 (Const a :: k -> Type) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const | |||||||||
type Pure (a :: k1) Source # | |||||||||
Defined in Data.Functor.Const.Singletons type Pure (a :: k1) | |||||||||
type Elem (arg :: a) (arg1 :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Foldl1 (arg :: a ~> (a ~> a)) (arg1 :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Foldr1 (arg :: a ~> (a ~> a)) (arg1 :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (a1 :: k1) <$ (a2 :: Const m b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Apply (ConstSym0 :: TyFun a (Const a b) -> Type) (x :: a) Source # | |||||||||
type Fold (arg :: Const m1 m2) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Length (arg :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Maximum (arg :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Minimum (arg :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Null (arg :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Product (arg :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Sum (arg :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type ToList (arg :: Const m a) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Sequence (arg :: Const m1 (m2 a)) Source # | |||||||||
Defined in Data.Traversable.Singletons | |||||||||
type SequenceA (arg :: Const m (f a)) Source # | |||||||||
Defined in Data.Traversable.Singletons | |||||||||
type (arg :: Const m a) *> (arg1 :: Const m b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (arg :: Const m a) <* (arg1 :: Const m b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (a2 :: Const m (a1 ~> b)) <*> (a3 :: Const m a1) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Rep (Const a b) | Since: base-4.9.0.0 | ||||||||
Defined in Data.Functor.Const | |||||||||
type Demote (Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Sing Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Mempty Source # | |||||||||
Defined in Data.Functor.Const.Singletons type Mempty | |||||||||
type MaxBound Source # | |||||||||
Defined in Data.Functor.Const.Singletons type MaxBound | |||||||||
type MinBound Source # | |||||||||
Defined in Data.Functor.Const.Singletons type MinBound | |||||||||
type Mconcat (arg :: [Const a b]) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Sconcat (arg :: NonEmpty (Const a b)) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type FromEnum (a2 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Pred (a2 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Succ (a2 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type ToEnum a2 Source # | |||||||||
Defined in Data.Functor.Const.Singletons type ToEnum a2 | |||||||||
type FromString a2 Source # | |||||||||
Defined in Data.String.Singletons type FromString a2 | |||||||||
type Abs (a2 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type FromInteger a2 Source # | |||||||||
Defined in Data.Functor.Const.Singletons type FromInteger a2 | |||||||||
type Negate (a2 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Signum (a2 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Show_ (arg :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (arg :: Const a b) /= (arg1 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (a2 :: Const a1 b) == (a3 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Mappend (arg :: Const a b) (arg1 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (arg :: Const a b) < (arg1 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (arg :: Const a b) <= (arg1 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (arg :: Const a b) > (arg1 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (arg :: Const a b) >= (arg1 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Compare (a2 :: Const a1 b) (a3 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Max (arg :: Const a b) (arg1 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Min (arg :: Const a b) (arg1 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (a2 :: Const a1 b) <> (a3 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type EnumFromTo (a2 :: Const a1 b) (a3 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (a2 :: Const a1 b) * (a3 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (a2 :: Const a1 b) + (a3 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type (a2 :: Const a1 b) - (a3 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type ShowList (arg :: [Const a b]) arg1 Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type EnumFromThenTo (a2 :: Const a1 b) (a3 :: Const a1 b) (a4 :: Const a1 b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type ShowsPrec a2 (a3 :: Const a1 b) a4 Source # | |||||||||
Defined in Data.Functor.Const.Singletons | |||||||||
type Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) (a6989586621680681956 :: Const a b) Source # | |||||||||
Defined in Data.Functor.Const.Singletons |
sGetConst :: forall {k} a (b :: k) (t :: Const a b). Sing t -> Sing (Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) t) Source #
(%<$>) :: forall a b (f :: Type -> Type) (t1 :: a ~> b) (t2 :: f a). SFunctor f => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$>@#@$) :: TyFun (a ~> b) (f a ~> f b) -> Type) t1) t2) infixl 4 Source #
type family (arg :: a) <$ (arg1 :: f b) :: f a infixl 4 Source #
Instances
type (a1 :: k1) <$ (a2 :: Identity b) Source # | |
Defined in Data.Functor.Identity.Singletons | |
type (a1 :: k1) <$ (a2 :: First b) Source # | |
Defined in Data.Monoid.Singletons | |
type (a1 :: k1) <$ (a2 :: Last b) Source # | |
Defined in Data.Monoid.Singletons | |
type (a1 :: k1) <$ (a2 :: Down b) Source # | |
Defined in Data.Functor.Singletons | |
type (a1 :: k1) <$ (a2 :: First b) Source # | |
Defined in Data.Semigroup.Singletons | |
type (a1 :: k1) <$ (a2 :: Last b) Source # | |
Defined in Data.Semigroup.Singletons | |
type (a1 :: k1) <$ (a2 :: Max b) Source # | |
Defined in Data.Semigroup.Singletons | |
type (a1 :: k1) <$ (a2 :: Min b) Source # | |
Defined in Data.Semigroup.Singletons | |
type (a1 :: k1) <$ (a2 :: Dual b) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type (a1 :: k1) <$ (a2 :: Product b) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type (a1 :: k1) <$ (a2 :: Sum b) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
type (a1 :: k1) <$ (a2 :: NonEmpty b) Source # | |
Defined in Control.Monad.Singletons.Internal | |
type (a1 :: k1) <$ (a2 :: Maybe b) Source # | |
Defined in Control.Monad.Singletons.Internal | |
type (a1 :: k1) <$ (a2 :: [b]) Source # | |
Defined in Control.Monad.Singletons.Internal type (a1 :: k1) <$ (a2 :: [b]) | |
type (arg :: a) <$ (arg1 :: Proxy b) Source # | |
Defined in Data.Proxy.Singletons | |
type (a2 :: k1) <$ (a3 :: Either a1 b) Source # | |
Defined in Control.Monad.Singletons.Internal | |
type (a2 :: k1) <$ (a3 :: Arg a1 b) Source # | |
Defined in Data.Semigroup.Singletons | |
type (a2 :: k1) <$ (a3 :: (a1, b)) Source # | |
Defined in Data.Functor.Singletons type (a2 :: k1) <$ (a3 :: (a1, b)) | |
type (a1 :: k1) <$ (a2 :: Const m b) Source # | |
Defined in Data.Functor.Const.Singletons | |
type (a1 :: k1) <$ (a2 :: Product f g b) Source # | |
Defined in Data.Functor.Product.Singletons | |
type (a1 :: k1) <$ (a2 :: Sum f g b) Source # | |
Defined in Data.Functor.Sum.Singletons | |
type (a1 :: k1) <$ (a2 :: Compose f g b) Source # | |
Defined in Data.Functor.Compose.Singletons |
(%<$) :: forall a b (t1 :: a) (t2 :: f b). SFunctor f => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) t1) t2) infixl 4 Source #
type family (a1 :: f a) <**> (a2 :: f (a ~> b)) :: f b where ... infixl 4 Source #
(a_6989586621679348465 :: f a) <**> (a_6989586621679348467 :: f (a ~> c)) = Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> ((a ~> c) ~> c)) (f a ~> (f (a ~> c) ~> f c)) -> Type) (Apply (Apply (Lambda_6989586621679348476Sym0 :: TyFun (f a) (TyFun (f (a ~> c)) (TyFun a (TyFun (a ~> c) c -> Type) -> Type) -> Type) -> Type) a_6989586621679348465) a_6989586621679348467)) a_6989586621679348465) a_6989586621679348467 |
(%<**>) :: forall (f :: Type -> Type) a b (t1 :: f a) (t2 :: f (a ~> b)). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<**>@#@$) :: TyFun (f a) (f (a ~> b) ~> f b) -> Type) t1) t2) infixl 4 Source #
sLiftA :: forall a b (f :: Type -> Type) (t1 :: a ~> b) (t2 :: f a). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply (LiftASym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) t1) t2) Source #
type family LiftA3 (a1 :: a ~> (b ~> (c ~> d))) (a2 :: f a) (a3 :: f b) (a4 :: f c) :: f d where ... Source #
sLiftA3 :: forall a b c d (f :: Type -> Type) (t1 :: a ~> (b ~> (c ~> d))) (t2 :: f a) (t3 :: f b) (t4 :: f c). SApplicative f => Sing t1 -> Sing t2 -> Sing t3 -> Sing t4 -> Sing (Apply (Apply (Apply (Apply (LiftA3Sym0 :: TyFun (a ~> (b ~> (c ~> d))) (f a ~> (f b ~> (f c ~> f d))) -> Type) t1) t2) t3) t4) Source #
type family Optional (a1 :: f a) :: f (Maybe a) where ... Source #
Optional (v :: f a) = Apply (Apply ((<|>@#@$) :: TyFun (f (Maybe a)) (f (Maybe a) ~> f (Maybe a)) -> Type) (Apply (Apply ((<$>@#@$) :: TyFun (a ~> Maybe a) (f a ~> f (Maybe a)) -> Type) (JustSym0 :: TyFun a (Maybe a) -> Type)) v)) (Apply (PureSym0 :: TyFun (Maybe a) (f (Maybe a)) -> Type) (NothingSym0 :: Maybe a)) |
sOptional :: forall (f :: Type -> Type) a (t :: f a). SAlternative f => Sing t -> Sing (Apply (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) t) Source #
Defunctionalization symbols
data PureSym0 (a1 :: TyFun a (f a)) Source #
Instances
data (<*>@#@$) (a1 :: TyFun (f (a ~> b)) (f a ~> f b)) infixl 4 Source #
Instances
SApplicative f => SingI ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) Source # | |
SuppressUnusedWarnings ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) (a6989586621679348512 :: f (a ~> b)) Source # | |
Defined in Control.Monad.Singletons.Internal |
data (a6989586621679348512 :: f (a ~> b)) <*>@#@$$ (b1 :: TyFun (f a) (f b)) infixl 4 Source #
Instances
SApplicative f => SingI1 ((<*>@#@$$) :: f (a ~> b) -> TyFun (f a) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
(SApplicative f, SingI d) => SingI ((<*>@#@$$) d :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing ((<*>@#@$$) d) # | |
SuppressUnusedWarnings ((<*>@#@$$) a6989586621679348512 :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<*>@#@$$) a6989586621679348512 :: TyFun (f a) (f b) -> Type) (a6989586621679348513 :: f a) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply ((<*>@#@$$) a6989586621679348512 :: TyFun (f a) (f b) -> Type) (a6989586621679348513 :: f a) = a6989586621679348512 <*> a6989586621679348513 |
type family (a6989586621679348512 :: f (a ~> b)) <*>@#@$$$ (a6989586621679348513 :: f a) :: f b where ... infixl 4 Source #
data (*>@#@$) (a1 :: TyFun (f a) (f b ~> f b)) infixl 4 Source #
Instances
SApplicative f => SingI ((*>@#@$) :: TyFun (f a) (f b ~> f b) -> Type) Source # | |
SuppressUnusedWarnings ((*>@#@$) :: TyFun (f a) (f b ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((*>@#@$) :: TyFun (f a) (f b ~> f b) -> Type) (a6989586621679348524 :: f a) Source # | |
data (a6989586621679348524 :: f a) *>@#@$$ (b1 :: TyFun (f b) (f b)) infixl 4 Source #
Instances
SApplicative f => SingI1 ((*>@#@$$) :: f a -> TyFun (f b) (f b) -> Type) Source # | |
(SApplicative f, SingI d) => SingI ((*>@#@$$) d :: TyFun (f b) (f b) -> Type) Source # | |
SuppressUnusedWarnings ((*>@#@$$) a6989586621679348524 :: TyFun (f b) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((*>@#@$$) a6989586621679348524 :: TyFun (f b) (f b) -> Type) (a6989586621679348525 :: f b) Source # | |
type family (a6989586621679348524 :: f a) *>@#@$$$ (a6989586621679348525 :: f b) :: f b where ... infixl 4 Source #
data (<*@#@$) (a1 :: TyFun (f a) (f b ~> f a)) infixl 4 Source #
Instances
SApplicative f => SingI ((<*@#@$) :: TyFun (f a) (f b ~> f a) -> Type) Source # | |
SuppressUnusedWarnings ((<*@#@$) :: TyFun (f a) (f b ~> f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<*@#@$) :: TyFun (f a) (f b ~> f a) -> Type) (a6989586621679348529 :: f a) Source # | |
data (a6989586621679348529 :: f a) <*@#@$$ (b1 :: TyFun (f b) (f a)) infixl 4 Source #
Instances
SApplicative f => SingI1 ((<*@#@$$) :: f a -> TyFun (f b) (f a) -> Type) Source # | |
(SApplicative f, SingI d) => SingI ((<*@#@$$) d :: TyFun (f b) (f a) -> Type) Source # | |
SuppressUnusedWarnings ((<*@#@$$) a6989586621679348529 :: TyFun (f b) (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<*@#@$$) a6989586621679348529 :: TyFun (f b) (f a) -> Type) (a6989586621679348530 :: f b) Source # | |
type family (a6989586621679348529 :: f a) <*@#@$$$ (a6989586621679348530 :: f b) :: f a where ... infixl 4 Source #
data (<|>@#@$) (a1 :: TyFun (f a) (f a ~> f a)) infixl 3 Source #
Instances
SAlternative f => SingI ((<|>@#@$) :: TyFun (f a) (f a ~> f a) -> Type) Source # | |
SuppressUnusedWarnings ((<|>@#@$) :: TyFun (f a) (f a ~> f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<|>@#@$) :: TyFun (f a) (f a ~> f a) -> Type) (a6989586621679348633 :: f a) Source # | |
Defined in Control.Monad.Singletons.Internal |
data (a6989586621679348633 :: f a) <|>@#@$$ (b :: TyFun (f a) (f a)) infixl 3 Source #
Instances
SAlternative f => SingI1 ((<|>@#@$$) :: f a -> TyFun (f a) (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal liftSing :: forall (x :: f a). Sing x -> Sing ((<|>@#@$$) x) # | |
(SAlternative f, SingI d) => SingI ((<|>@#@$$) d :: TyFun (f a) (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing ((<|>@#@$$) d) # | |
SuppressUnusedWarnings ((<|>@#@$$) a6989586621679348633 :: TyFun (f a) (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<|>@#@$$) a6989586621679348633 :: TyFun (f a) (f a) -> Type) (a6989586621679348634 :: f a) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply ((<|>@#@$$) a6989586621679348633 :: TyFun (f a) (f a) -> Type) (a6989586621679348634 :: f a) = a6989586621679348633 <|> a6989586621679348634 |
type family (a6989586621679348633 :: f a) <|>@#@$$$ (a6989586621679348634 :: f a) :: f a where ... infixl 3 Source #
data GetConstSym0 (a1 :: TyFun (Const a b) a) Source #
Instances
SingI (GetConstSym0 :: TyFun (Const a b) a -> Type) Source # | |
Defined in Data.Functor.Const.Singletons | |
SuppressUnusedWarnings (GetConstSym0 :: TyFun (Const a b) a -> Type) Source # | |
Defined in Data.Functor.Const.Singletons suppressUnusedWarnings :: () # | |
type Apply (GetConstSym0 :: TyFun (Const a b) a -> Type) (a6989586621680681956 :: Const a b) Source # | |
Defined in Data.Functor.Const.Singletons |
type family GetConstSym1 (a6989586621680681956 :: Const a b) :: a where ... Source #
GetConstSym1 (a6989586621680681956 :: Const a b) = GetConst a6989586621680681956 |
data (<$>@#@$) (a1 :: TyFun (a ~> b) (f a ~> f b)) infixl 4 Source #
Instances
SFunctor f => SingI ((<$>@#@$) :: TyFun (a ~> b) (f a ~> f b) -> Type) Source # | |
SuppressUnusedWarnings ((<$>@#@$) :: TyFun (a ~> b) (f a ~> f b) -> Type) Source # | |
Defined in Data.Functor.Singletons suppressUnusedWarnings :: () # | |
type Apply ((<$>@#@$) :: TyFun (a ~> b) (f a ~> f b) -> Type) (a6989586621679532919 :: a ~> b) Source # | |
data (a6989586621679532919 :: a ~> b) <$>@#@$$ (b1 :: TyFun (f a) (f b)) infixl 4 Source #
Instances
SFunctor f => SingI1 ((<$>@#@$$) :: (a ~> b) -> TyFun (f a) (f b) -> Type) Source # | |
Defined in Data.Functor.Singletons | |
(SFunctor f, SingI d) => SingI ((<$>@#@$$) d :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Data.Functor.Singletons | |
SuppressUnusedWarnings ((<$>@#@$$) a6989586621679532919 :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Data.Functor.Singletons suppressUnusedWarnings :: () # | |
type Apply ((<$>@#@$$) a6989586621679532919 :: TyFun (f a) (f b) -> Type) (a6989586621679532920 :: f a) Source # | |
Defined in Data.Functor.Singletons type Apply ((<$>@#@$$) a6989586621679532919 :: TyFun (f a) (f b) -> Type) (a6989586621679532920 :: f a) = a6989586621679532919 <$> a6989586621679532920 |
type family (a6989586621679532919 :: a ~> b) <$>@#@$$$ (a6989586621679532920 :: f a) :: f b where ... infixl 4 Source #
data (<$@#@$) (a1 :: TyFun a (f b ~> f a)) infixl 4 Source #
Instances
SFunctor f => SingI ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) Source # | |
SuppressUnusedWarnings ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) (a6989586621679348489 :: a) Source # | |
data (a6989586621679348489 :: a) <$@#@$$ (b1 :: TyFun (f b) (f a)) infixl 4 Source #
Instances
SFunctor f => SingI1 ((<$@#@$$) :: a -> TyFun (f b) (f a) -> Type) Source # | |
(SFunctor f, SingI d) => SingI ((<$@#@$$) d :: TyFun (f b) (f a) -> Type) Source # | |
SuppressUnusedWarnings ((<$@#@$$) a6989586621679348489 :: TyFun (f b) (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<$@#@$$) a6989586621679348489 :: TyFun (f b) (f a) -> Type) (a6989586621679348490 :: f b) Source # | |
type family (a6989586621679348489 :: a) <$@#@$$$ (a6989586621679348490 :: f b) :: f a where ... infixl 4 Source #
data (<**>@#@$) (a1 :: TyFun (f a) (f (a ~> b) ~> f b)) infixl 4 Source #
Instances
SApplicative f => SingI ((<**>@#@$) :: TyFun (f a) (f (a ~> b) ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings ((<**>@#@$) :: TyFun (f a) (f (a ~> b) ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<**>@#@$) :: TyFun (f a) (f (a ~> b) ~> f b) -> Type) (a6989586621679348472 :: f a) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply ((<**>@#@$) :: TyFun (f a) (f (a ~> b) ~> f b) -> Type) (a6989586621679348472 :: f a) = (<**>@#@$$) a6989586621679348472 :: TyFun (f (a ~> b)) (f b) -> Type |
data (a6989586621679348472 :: f a) <**>@#@$$ (b1 :: TyFun (f (a ~> b)) (f b)) infixl 4 Source #
Instances
SApplicative f => SingI1 ((<**>@#@$$) :: f a -> TyFun (f (a ~> b)) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
(SApplicative f, SingI d) => SingI ((<**>@#@$$) d :: TyFun (f (a ~> b)) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings ((<**>@#@$$) a6989586621679348472 :: TyFun (f (a ~> b)) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<**>@#@$$) a6989586621679348472 :: TyFun (f (a ~> b)) (f b) -> Type) (a6989586621679348473 :: f (a ~> b)) Source # | |
Defined in Control.Monad.Singletons.Internal |
type family (a6989586621679348472 :: f a) <**>@#@$$$ (a6989586621679348473 :: f (a ~> b)) :: f b where ... infixl 4 Source #
(a6989586621679348472 :: f a) <**>@#@$$$ (a6989586621679348473 :: f (a ~> b)) = a6989586621679348472 <**> a6989586621679348473 |
data LiftASym0 (a1 :: TyFun (a ~> b) (f a ~> f b)) Source #
Instances
SApplicative f => SingI (LiftASym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) Source # | |
SuppressUnusedWarnings (LiftASym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftASym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) (a6989586621679348461 :: a ~> b) Source # | |
data LiftASym1 (a6989586621679348461 :: a ~> b) (b1 :: TyFun (f a) (f b)) Source #
Instances
SApplicative f => SingI1 (LiftASym1 :: (a ~> b) -> TyFun (f a) (f b) -> Type) Source # | |
(SApplicative f, SingI d) => SingI (LiftASym1 d :: TyFun (f a) (f b) -> Type) Source # | |
SuppressUnusedWarnings (LiftASym1 a6989586621679348461 :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftASym1 a6989586621679348461 :: TyFun (f a) (f b) -> Type) (a6989586621679348462 :: f a) Source # | |
type family LiftASym2 (a6989586621679348461 :: a ~> b) (a6989586621679348462 :: f a) :: f b where ... Source #
data LiftA2Sym0 (a1 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c))) Source #
Instances
SApplicative f => SingI (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) Source # | |
SuppressUnusedWarnings (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) (a6989586621679348518 :: a ~> (b ~> c)) Source # | |
Defined in Control.Monad.Singletons.Internal |
data LiftA2Sym1 (a6989586621679348518 :: a ~> (b ~> c)) (b1 :: TyFun (f a) (f b ~> f c)) Source #
Instances
SApplicative f => SingI1 (LiftA2Sym1 :: (a ~> (b ~> c)) -> TyFun (f a) (f b ~> f c) -> Type) Source # | |
(SApplicative f, SingI d) => SingI (LiftA2Sym1 d :: TyFun (f a) (f b ~> f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings (LiftA2Sym1 a6989586621679348518 :: TyFun (f a) (f b ~> f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA2Sym1 a6989586621679348518 :: TyFun (f a) (f b ~> f c) -> Type) (a6989586621679348519 :: f a) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply (LiftA2Sym1 a6989586621679348518 :: TyFun (f a) (f b ~> f c) -> Type) (a6989586621679348519 :: f a) = LiftA2Sym2 a6989586621679348518 a6989586621679348519 |
data LiftA2Sym2 (a6989586621679348518 :: a ~> (b ~> c)) (a6989586621679348519 :: f a) (c1 :: TyFun (f b) (f c)) Source #
Instances
(SApplicative f, SingI d) => SingI1 (LiftA2Sym2 d :: f a -> TyFun (f b) (f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal liftSing :: forall (x :: f a). Sing x -> Sing (LiftA2Sym2 d x) # | |
SApplicative f => SingI2 (LiftA2Sym2 :: (a ~> (b ~> c)) -> f a -> TyFun (f b) (f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
(SApplicative f, SingI d1, SingI d2) => SingI (LiftA2Sym2 d1 d2 :: TyFun (f b) (f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing (LiftA2Sym2 d1 d2) # | |
SuppressUnusedWarnings (LiftA2Sym2 a6989586621679348518 a6989586621679348519 :: TyFun (f b) (f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA2Sym2 a6989586621679348518 a6989586621679348519 :: TyFun (f b) (f c) -> Type) (a6989586621679348520 :: f b) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply (LiftA2Sym2 a6989586621679348518 a6989586621679348519 :: TyFun (f b) (f c) -> Type) (a6989586621679348520 :: f b) = LiftA2 a6989586621679348518 a6989586621679348519 a6989586621679348520 |
type family LiftA2Sym3 (a6989586621679348518 :: a ~> (b ~> c)) (a6989586621679348519 :: f a) (a6989586621679348520 :: f b) :: f c where ... Source #
LiftA2Sym3 (a6989586621679348518 :: a ~> (b ~> c)) (a6989586621679348519 :: f a) (a6989586621679348520 :: f b) = LiftA2 a6989586621679348518 a6989586621679348519 a6989586621679348520 |
data LiftA3Sym0 (a1 :: TyFun (a ~> (b ~> (c ~> d))) (f a ~> (f b ~> (f c ~> f d)))) Source #
Instances
SApplicative f => SingI (LiftA3Sym0 :: TyFun (a ~> (b ~> (c ~> d))) (f a ~> (f b ~> (f c ~> f d))) -> Type) Source # | |
SuppressUnusedWarnings (LiftA3Sym0 :: TyFun (a ~> (b ~> (c ~> d))) (f a ~> (f b ~> (f c ~> f d))) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA3Sym0 :: TyFun (a ~> (b ~> (c ~> d))) (f a ~> (f b ~> (f c ~> f d))) -> Type) (a6989586621679348450 :: a ~> (b ~> (c ~> d))) Source # | |
data LiftA3Sym1 (a6989586621679348450 :: a ~> (b ~> (c ~> d))) (b1 :: TyFun (f a) (f b ~> (f c ~> f d))) Source #
Instances
SApplicative f => SingI1 (LiftA3Sym1 :: (a ~> (b ~> (c ~> d))) -> TyFun (f a) (f b ~> (f c ~> f d)) -> Type) Source # | |
(SApplicative f, SingI d2) => SingI (LiftA3Sym1 d2 :: TyFun (f a) (f b ~> (f c ~> f d1)) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings (LiftA3Sym1 a6989586621679348450 :: TyFun (f a) (f b ~> (f c ~> f d)) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA3Sym1 a6989586621679348450 :: TyFun (f a) (f b ~> (f c ~> f d)) -> Type) (a6989586621679348451 :: f a) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply (LiftA3Sym1 a6989586621679348450 :: TyFun (f a) (f b ~> (f c ~> f d)) -> Type) (a6989586621679348451 :: f a) = LiftA3Sym2 a6989586621679348450 a6989586621679348451 |
data LiftA3Sym2 (a6989586621679348450 :: a ~> (b ~> (c ~> d))) (a6989586621679348451 :: f a) (c1 :: TyFun (f b) (f c ~> f d)) Source #
Instances
(SApplicative f, SingI d2) => SingI1 (LiftA3Sym2 d2 :: f a -> TyFun (f b) (f c ~> f d1) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal liftSing :: forall (x :: f a). Sing x -> Sing (LiftA3Sym2 d2 x) # | |
SApplicative f => SingI2 (LiftA3Sym2 :: (a ~> (b ~> (c ~> d))) -> f a -> TyFun (f b) (f c ~> f d) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
(SApplicative f, SingI d2, SingI d3) => SingI (LiftA3Sym2 d2 d3 :: TyFun (f b) (f c ~> f d1) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing (LiftA3Sym2 d2 d3) # | |
SuppressUnusedWarnings (LiftA3Sym2 a6989586621679348450 a6989586621679348451 :: TyFun (f b) (f c ~> f d) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA3Sym2 a6989586621679348450 a6989586621679348451 :: TyFun (f b) (f c ~> f d) -> Type) (a6989586621679348452 :: f b) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply (LiftA3Sym2 a6989586621679348450 a6989586621679348451 :: TyFun (f b) (f c ~> f d) -> Type) (a6989586621679348452 :: f b) = LiftA3Sym3 a6989586621679348450 a6989586621679348451 a6989586621679348452 |
data LiftA3Sym3 (a6989586621679348450 :: a ~> (b ~> (c ~> d))) (a6989586621679348451 :: f a) (a6989586621679348452 :: f b) (d1 :: TyFun (f c) (f d)) Source #
Instances
(SApplicative f, SingI d2) => SingI2 (LiftA3Sym3 d2 :: f a -> f b -> TyFun (f c) (f d1) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
(SApplicative f, SingI d2, SingI d3) => SingI1 (LiftA3Sym3 d2 d3 :: f b -> TyFun (f c) (f d1) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal liftSing :: forall (x :: f b). Sing x -> Sing (LiftA3Sym3 d2 d3 x) # | |
(SApplicative f, SingI d2, SingI d3, SingI d4) => SingI (LiftA3Sym3 d2 d3 d4 :: TyFun (f c) (f d1) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing (LiftA3Sym3 d2 d3 d4) # | |
SuppressUnusedWarnings (LiftA3Sym3 a6989586621679348450 a6989586621679348451 a6989586621679348452 :: TyFun (f c) (f d) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA3Sym3 a6989586621679348450 a6989586621679348451 a6989586621679348452 :: TyFun (f c) (f d) -> Type) (a6989586621679348453 :: f c) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply (LiftA3Sym3 a6989586621679348450 a6989586621679348451 a6989586621679348452 :: TyFun (f c) (f d) -> Type) (a6989586621679348453 :: f c) = LiftA3 a6989586621679348450 a6989586621679348451 a6989586621679348452 a6989586621679348453 |
data OptionalSym0 (a1 :: TyFun (f a) (f (Maybe a))) Source #
Instances
SAlternative f => SingI (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) Source # | |
Defined in Control.Applicative.Singletons | |
SuppressUnusedWarnings (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) Source # | |
Defined in Control.Applicative.Singletons suppressUnusedWarnings :: () # | |
type Apply (OptionalSym0 :: TyFun (f a) (f (Maybe a)) -> Type) (a6989586621681182611 :: f a) Source # | |
Defined in Control.Applicative.Singletons |
type family OptionalSym1 (a6989586621681182611 :: f a) :: f (Maybe a) where ... Source #
OptionalSym1 (a6989586621681182611 :: f a) = Optional a6989586621681182611 |
Orphan instances
PApplicative Down Source # | |||||||||||||||||||||
| |||||||||||||||||||||
SApplicative Down Source # | |||||||||||||||||||||
sPure :: forall a (t :: a). Sing t -> Sing (Apply (PureSym0 :: TyFun a (Down a) -> Type) t) Source # (%<*>) :: forall a b (t1 :: Down (a ~> b)) (t2 :: Down a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (Down (a ~> b)) (Down a ~> Down b) -> Type) t1) t2) Source # sLiftA2 :: forall a b c (t1 :: a ~> (b ~> c)) (t2 :: Down a) (t3 :: Down b). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (Down a ~> (Down b ~> Down c)) -> Type) t1) t2) t3) Source # (%*>) :: forall a b (t1 :: Down a) (t2 :: Down b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (Down a) (Down b ~> Down b) -> Type) t1) t2) Source # (%<*) :: forall a b (t1 :: Down a) (t2 :: Down b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (Down a) (Down b ~> Down a) -> Type) t1) t2) Source # | |||||||||||||||||||||
PApplicative ((,) a) Source # | |||||||||||||||||||||
SMonoid a => SApplicative ((,) a) Source # | |||||||||||||||||||||
sPure :: forall a0 (t :: a0). Sing t -> Sing (Apply (PureSym0 :: TyFun a (a, a) -> Type) t) Source # (%<*>) :: forall a0 b (t1 :: (a, a0 ~> b)) (t2 :: (a, a0)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*>@#@$) :: TyFun (a, a ~> b) ((a, a) ~> (a, b)) -> Type) t1) t2) Source # sLiftA2 :: forall a0 b c (t1 :: a0 ~> (b ~> c)) (t2 :: (a, a0)) (t3 :: (a, b)). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) ((a, a) ~> ((a, b) ~> (a, c))) -> Type) t1) t2) t3) Source # (%*>) :: forall a0 b (t1 :: (a, a0)) (t2 :: (a, b)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*>@#@$) :: TyFun (a, a) ((a, b) ~> (a, b)) -> Type) t1) t2) Source # (%<*) :: forall a0 b (t1 :: (a, a0)) (t2 :: (a, b)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<*@#@$) :: TyFun (a, a) ((a, b) ~> (a, a)) -> Type) t1) t2) Source # |