Copyright | (C) 2020 Ryan Scott |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | Richard Eisenberg (rae@cs.brynmawr.edu) |
Stability | experimental |
Portability | non-portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Exports promoted and singled versions of the definitions in Data.Proxy.
Synopsis
- type family Sing :: k -> Type
- data SProxy :: Proxy t -> Type where
- type family AsProxyTypeOf (a :: a) (a :: proxy a) :: a where ...
- sAsProxyTypeOf :: forall a proxy (t :: a) (t :: proxy a). Sing t -> Sing t -> Sing (Apply (Apply AsProxyTypeOfSym0 t) t :: a)
- type family ProxySym0 where ...
- data AsProxyTypeOfSym0 :: (~>) a ((~>) (proxy a) a)
- data AsProxyTypeOfSym1 (a6989586621680394739 :: a) :: (~>) (proxy a) a
- type family AsProxyTypeOfSym2 (a6989586621680394739 :: a) (a6989586621680394740 :: proxy a) :: a where ...
The Proxy
singleton
type family Sing :: k -> Type #
Instances
data SProxy :: Proxy t -> Type where Source #
Instances
TestCoercion (SProxy :: Proxy t -> Type) Source # | |
Defined in Data.Proxy.Singletons | |
TestEquality (SProxy :: Proxy t -> Type) Source # | |
Defined in Data.Proxy.Singletons | |
Show (SProxy z) Source # | |
type family AsProxyTypeOf (a :: a) (a :: proxy a) :: a where ... Source #
AsProxyTypeOf a_6989586621680394732 a_6989586621680394734 = Apply (Apply ConstSym0 a_6989586621680394732) a_6989586621680394734 |
sAsProxyTypeOf :: forall a proxy (t :: a) (t :: proxy a). Sing t -> Sing t -> Sing (Apply (Apply AsProxyTypeOfSym0 t) t :: a) Source #
Defunctionalization symbols
data AsProxyTypeOfSym0 :: (~>) a ((~>) (proxy a) a) Source #
Instances
SingI (AsProxyTypeOfSym0 :: TyFun a (proxy a ~> a) -> Type) Source # | |
Defined in Data.Proxy.Singletons | |
SuppressUnusedWarnings (AsProxyTypeOfSym0 :: TyFun a (proxy a ~> a) -> Type) Source # | |
Defined in Data.Proxy.Singletons suppressUnusedWarnings :: () # | |
type Apply (AsProxyTypeOfSym0 :: TyFun a (proxy a ~> a) -> Type) (a6989586621680394739 :: a) Source # | |
Defined in Data.Proxy.Singletons type Apply (AsProxyTypeOfSym0 :: TyFun a (proxy a ~> a) -> Type) (a6989586621680394739 :: a) = AsProxyTypeOfSym1 a6989586621680394739 :: TyFun (proxy a) a -> Type |
data AsProxyTypeOfSym1 (a6989586621680394739 :: a) :: (~>) (proxy a) a Source #
Instances
SingI1 (AsProxyTypeOfSym1 :: a -> TyFun (proxy a) a -> Type) Source # | |
Defined in Data.Proxy.Singletons liftSing :: forall (x :: k1). Sing x -> Sing (AsProxyTypeOfSym1 x) | |
SingI d => SingI (AsProxyTypeOfSym1 d :: TyFun (proxy a) a -> Type) Source # | |
Defined in Data.Proxy.Singletons sing :: Sing (AsProxyTypeOfSym1 d) | |
SuppressUnusedWarnings (AsProxyTypeOfSym1 a6989586621680394739 :: TyFun (proxy a) a -> Type) Source # | |
Defined in Data.Proxy.Singletons suppressUnusedWarnings :: () # | |
type Apply (AsProxyTypeOfSym1 a6989586621680394739 :: TyFun (proxy a) a -> Type) (a6989586621680394740 :: proxy a) Source # | |
Defined in Data.Proxy.Singletons type Apply (AsProxyTypeOfSym1 a6989586621680394739 :: TyFun (proxy a) a -> Type) (a6989586621680394740 :: proxy a) = AsProxyTypeOf a6989586621680394739 a6989586621680394740 |
type family AsProxyTypeOfSym2 (a6989586621680394739 :: a) (a6989586621680394740 :: proxy a) :: a where ... Source #
AsProxyTypeOfSym2 a6989586621680394739 a6989586621680394740 = AsProxyTypeOf a6989586621680394739 a6989586621680394740 |
Orphan instances
PAlternative (Proxy :: k -> Type) Source # | |
PMonadPlus (Proxy :: k -> Type) Source # | |
PApplicative (Proxy :: Type -> Type) Source # | |
PFunctor (Proxy :: Type -> Type) Source # | |
PMonad (Proxy :: Type -> Type) Source # | |
SAlternative (Proxy :: Type -> Type) Source # | |
SApplicative (Proxy :: Type -> Type) Source # | |
sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Proxy (a ~> b)) (t :: Proxy a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Proxy a) (t :: Proxy b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Proxy a) (t :: Proxy b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Proxy a) (t :: Proxy b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SFunctor (Proxy :: Type -> Type) Source # | |
SMonad (Proxy :: Type -> Type) Source # | |
(%>>=) :: forall a b (t :: Proxy a) (t :: a ~> Proxy b). Sing t -> Sing t -> Sing (Apply (Apply (>>=@#@$) t) t) Source # (%>>) :: forall a b (t :: Proxy a) (t :: Proxy b). Sing t -> Sing t -> Sing (Apply (Apply (>>@#@$) t) t) Source # sReturn :: forall a (t :: a). Sing t -> Sing (Apply ReturnSym0 t) Source # | |
SMonadPlus (Proxy :: Type -> Type) Source # | |
SingKind (Proxy t) Source # | |
SDecide (Proxy t) Source # | |
PEq (Proxy s) Source # | |
SEq (Proxy s) Source # | |
PMonoid (Proxy s) Source # | |
SMonoid (Proxy s) Source # | |
POrd (Proxy s) Source # | |
SOrd (Proxy s) Source # | |
sCompare :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
PSemigroup (Proxy s) Source # | |
SSemigroup (Proxy s) Source # | |
PBounded (Proxy s) Source # | |
PEnum (Proxy s) Source # | |
SBounded (Proxy s) Source # | |
SEnum (Proxy s) Source # | |
sSucc :: forall (t :: Proxy s). Sing t -> Sing (Apply SuccSym0 t) Source # sPred :: forall (t :: Proxy s). Sing t -> Sing (Apply PredSym0 t) Source # sToEnum :: forall (t :: Natural). Sing t -> Sing (Apply ToEnumSym0 t) Source # sFromEnum :: forall (t :: Proxy s). Sing t -> Sing (Apply FromEnumSym0 t) Source # sEnumFromTo :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply EnumFromToSym0 t) t) Source # sEnumFromThenTo :: forall (t :: Proxy s) (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t) t) t) Source # | |
PShow (Proxy s) Source # | |
SShow (Proxy s) Source # | |
sShowsPrec :: forall (t :: Natural) (t :: Proxy s) (t :: Symbol). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ShowsPrecSym0 t) t) t) Source # sShow_ :: forall (t :: Proxy s). Sing t -> Sing (Apply Show_Sym0 t) Source # sShowList :: forall (t :: [Proxy s]) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply ShowListSym0 t) t) Source # | |
SingI ('Proxy :: Proxy t) Source # | |