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 version of Semigroup
, PSemigroup
, and the
singleton version, SSemigroup
.
Synopsis
- class PSemigroup a where
- class SSemigroup a where
- type family Sing :: k -> Type
- data SMin (a1 :: Min a) where
- data SMax (a1 :: Max a) where
- data SFirst (a1 :: First a) where
- data SLast (a1 :: Last a) where
- data SWrappedMonoid (a :: WrappedMonoid m) where
- SWrapMonoid :: forall m (n :: m). Sing n -> SWrappedMonoid ('WrapMonoid n)
- data SDual (a1 :: Dual a) where
- data SAll (a :: All) where
- data SAny (a :: Any) where
- data SSum (a1 :: Sum a) where
- data SProduct (a1 :: Product a) where
- data SArg (a1 :: Arg a b) where
- type family GetMin (a1 :: Min a) :: a where ...
- type family GetMax (a1 :: Max a) :: a where ...
- type family GetFirst (a1 :: First a) :: a where ...
- type family GetLast (a1 :: Last a) :: a where ...
- type family UnwrapMonoid (a :: WrappedMonoid m) :: m where ...
- type family GetDual (a1 :: Dual a) :: a where ...
- type family GetAll (a :: All) :: Bool where ...
- type family GetAny (a :: Any) :: Bool where ...
- type family GetSum (a1 :: Sum a) :: a where ...
- type family GetProduct (a1 :: Product a) :: a where ...
- sGetMin :: forall a (t :: Min a). Sing t -> Sing (Apply (GetMinSym0 :: TyFun (Min a) a -> Type) t)
- sGetMax :: forall a (t :: Max a). Sing t -> Sing (Apply (GetMaxSym0 :: TyFun (Max a) a -> Type) t)
- sGetFirst :: forall a (t :: First a). Sing t -> Sing (Apply (GetFirstSym0 :: TyFun (First a) a -> Type) t)
- sGetLast :: forall a (t :: Last a). Sing t -> Sing (Apply (GetLastSym0 :: TyFun (Last a) a -> Type) t)
- sUnwrapMonoid :: forall m (t :: WrappedMonoid m). Sing t -> Sing (Apply (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) t)
- sGetDual :: forall a (t :: Dual a). Sing t -> Sing (Apply (GetDualSym0 :: TyFun (Dual a) a -> Type) t)
- sGetAll :: forall (t :: All). Sing t -> Sing (Apply GetAllSym0 t)
- sGetAny :: forall (t :: Any). Sing t -> Sing (Apply GetAnySym0 t)
- sGetSum :: forall a (t :: Sum a). Sing t -> Sing (Apply (GetSumSym0 :: TyFun (Sum a) a -> Type) t)
- sGetProduct :: forall a (t :: Product a). Sing t -> Sing (Apply (GetProductSym0 :: TyFun (Product a) a -> Type) t)
- data (<>@#@$) (a1 :: TyFun a (a ~> a))
- data (a6989586621679207889 :: a) <>@#@$$ (b :: TyFun a a)
- type family (a6989586621679207889 :: a) <>@#@$$$ (a6989586621679207890 :: a) :: a where ...
- data SconcatSym0 (a1 :: TyFun (NonEmpty a) a)
- type family SconcatSym1 (a6989586621679207893 :: NonEmpty a) :: a where ...
- data MinSym0 (a1 :: TyFun a (Min a))
- type family MinSym1 (a6989586621679687620 :: a) :: Min a where ...
- data GetMinSym0 (a1 :: TyFun (Min a) a)
- type family GetMinSym1 (a6989586621679687623 :: Min a) :: a where ...
- data MaxSym0 (a1 :: TyFun a (Max a))
- type family MaxSym1 (a6989586621679687639 :: a) :: Max a where ...
- data GetMaxSym0 (a1 :: TyFun (Max a) a)
- type family GetMaxSym1 (a6989586621679687642 :: Max a) :: a where ...
- data FirstSym0 (a1 :: TyFun a (First a))
- type family FirstSym1 (a6989586621679687658 :: a) :: First a where ...
- data GetFirstSym0 (a1 :: TyFun (First a) a)
- type family GetFirstSym1 (a6989586621679687661 :: First a) :: a where ...
- data LastSym0 (a1 :: TyFun a (Last a))
- type family LastSym1 (a6989586621679687677 :: a) :: Last a where ...
- data GetLastSym0 (a1 :: TyFun (Last a) a)
- type family GetLastSym1 (a6989586621679687680 :: Last a) :: a where ...
- data WrapMonoidSym0 (a :: TyFun m (WrappedMonoid m))
- type family WrapMonoidSym1 (a6989586621679687696 :: m) :: WrappedMonoid m where ...
- data UnwrapMonoidSym0 (a :: TyFun (WrappedMonoid m) m)
- type family UnwrapMonoidSym1 (a6989586621679687699 :: WrappedMonoid m) :: m where ...
- data DualSym0 (a1 :: TyFun a (Dual a))
- type family DualSym1 (a6989586621679687531 :: a) :: Dual a where ...
- data GetDualSym0 (a1 :: TyFun (Dual a) a)
- type family GetDualSym1 (a6989586621679687534 :: Dual a) :: a where ...
- data AllSym0 (a :: TyFun Bool All)
- type family AllSym1 (a6989586621679687547 :: Bool) :: All where ...
- data GetAllSym0 (a :: TyFun All Bool)
- type family GetAllSym1 (a6989586621679687550 :: All) :: Bool where ...
- data AnySym0 (a :: TyFun Bool Any)
- type family AnySym1 (a6989586621679687563 :: Bool) :: Any where ...
- data GetAnySym0 (a :: TyFun Any Bool)
- type family GetAnySym1 (a6989586621679687566 :: Any) :: Bool where ...
- data SumSym0 (a1 :: TyFun a (Sum a))
- type family SumSym1 (a6989586621679687582 :: a) :: Sum a where ...
- data GetSumSym0 (a1 :: TyFun (Sum a) a)
- type family GetSumSym1 (a6989586621679687585 :: Sum a) :: a where ...
- data ProductSym0 (a1 :: TyFun a (Product a))
- type family ProductSym1 (a6989586621679687601 :: a) :: Product a where ...
- data GetProductSym0 (a1 :: TyFun (Product a) a)
- type family GetProductSym1 (a6989586621679687604 :: Product a) :: a where ...
- data ArgSym0 (a1 :: TyFun a (b ~> Arg a b))
- data ArgSym1 (a6989586621680862528 :: a) (b1 :: TyFun b (Arg a b))
- type family ArgSym2 (a6989586621680862528 :: a) (a6989586621680862529 :: b) :: Arg a b where ...
Documentation
class PSemigroup a Source #
Instances
class SSemigroup a where Source #
(%<>) :: forall (t1 :: a) (t2 :: a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun a (a ~> a) -> Type) t1) t2) infixr 6 Source #
sSconcat :: forall (t :: NonEmpty a). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty a) a -> Type) t) Source #
Instances
SSemigroup All Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SSemigroup Any Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SSemigroup Void Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes | |
SSemigroup Ordering Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes (%<>) :: forall (t1 :: Ordering) (t2 :: Ordering). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun Ordering (Ordering ~> Ordering) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty Ordering). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty Ordering) Ordering -> Type) t) Source # | |
SSemigroup () Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes | |
SSemigroup Symbol Source # | |
Defined in GHC.TypeLits.Singletons.Internal | |
SSemigroup a => SSemigroup (Identity a) Source # | |
Defined in Data.Functor.Identity.Singletons (%<>) :: forall (t1 :: Identity a) (t2 :: Identity a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (Identity a) (Identity a ~> Identity a) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (Identity a)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (Identity a)) (Identity a) -> Type) t) Source # | |
SSemigroup (First a) Source # | |
Defined in Data.Monoid.Singletons (%<>) :: forall (t1 :: First a) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (First a) (First a ~> First a) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (First a)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (First a)) (First a) -> Type) t) Source # | |
SSemigroup (Last a) Source # | |
Defined in Data.Monoid.Singletons | |
SSemigroup a => SSemigroup (Down a) Source # | |
Defined in Data.Ord.Singletons | |
SSemigroup (First a) Source # | |
Defined in Data.Semigroup.Singletons (%<>) :: forall (t1 :: First a) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (First a) (First a ~> First a) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (First a)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (First a)) (First a) -> Type) t) Source # | |
SSemigroup (Last a) Source # | |
Defined in Data.Semigroup.Singletons | |
SOrd a => SSemigroup (Max a) Source # | |
Defined in Data.Semigroup.Singletons | |
SOrd a => SSemigroup (Min a) Source # | |
Defined in Data.Semigroup.Singletons | |
SMonoid m => SSemigroup (WrappedMonoid m) Source # | |
Defined in Data.Semigroup.Singletons (%<>) :: forall (t1 :: WrappedMonoid m) (t2 :: WrappedMonoid m). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (WrappedMonoid m) (WrappedMonoid m ~> WrappedMonoid m) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (WrappedMonoid m)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (WrappedMonoid m)) (WrappedMonoid m) -> Type) t) Source # | |
SSemigroup a => SSemigroup (Dual a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SNum a => SSemigroup (Product a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers (%<>) :: forall (t1 :: Product a) (t2 :: Product a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (Product a) (Product a ~> Product a) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (Product a)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (Product a)) (Product a) -> Type) t) Source # | |
SNum a => SSemigroup (Sum a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SSemigroup (NonEmpty a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes (%<>) :: forall (t1 :: NonEmpty a) (t2 :: NonEmpty a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (NonEmpty a) (NonEmpty a ~> NonEmpty a) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (NonEmpty a)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (NonEmpty a)) (NonEmpty a) -> Type) t) Source # | |
SSemigroup a => SSemigroup (Maybe a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes (%<>) :: forall (t1 :: Maybe a) (t2 :: Maybe a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (Maybe a) (Maybe a ~> Maybe a) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (Maybe a)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (Maybe a)) (Maybe a) -> Type) t) Source # | |
SSemigroup [a] Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes | |
SSemigroup (Either a b) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes (%<>) :: forall (t1 :: Either a b) (t2 :: Either a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (Either a b) (Either a b ~> Either a b) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (Either a b)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (Either a b)) (Either a b) -> Type) t) Source # | |
SSemigroup (Proxy s) Source # | |
Defined in Data.Proxy.Singletons (%<>) :: forall (t1 :: Proxy s) (t2 :: Proxy s). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (Proxy s) (Proxy s ~> Proxy s) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (Proxy s)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (Proxy s)) (Proxy s) -> Type) t) Source # | |
SSemigroup b => SSemigroup (a ~> b) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes (%<>) :: forall (t1 :: a ~> b) (t2 :: a ~> b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (a ~> b) ((a ~> b) ~> (a ~> b)) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (a ~> b)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (a ~> b)) (a ~> b) -> Type) t) Source # | |
(SSemigroup a, SSemigroup b) => SSemigroup (a, b) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes | |
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 # | |
(SSemigroup a, SSemigroup b, SSemigroup c) => SSemigroup (a, b, c) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes (%<>) :: forall (t1 :: (a, b, c)) (t2 :: (a, b, c)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (a, b, c) ((a, b, c) ~> (a, b, c)) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (a, b, c)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (a, b, c)) (a, b, c) -> Type) t) Source # | |
(SSemigroup a, SSemigroup b, SSemigroup c, SSemigroup d) => SSemigroup (a, b, c, d) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes (%<>) :: forall (t1 :: (a, b, c, d)) (t2 :: (a, b, c, d)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (a, b, c, d) ((a, b, c, d) ~> (a, b, c, d)) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (a, b, c, d)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (a, b, c, d)) (a, b, c, d) -> Type) t) Source # | |
(SSemigroup a, SSemigroup b, SSemigroup c, SSemigroup d, SSemigroup e) => SSemigroup (a, b, c, d, e) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes (%<>) :: forall (t1 :: (a, b, c, d, e)) (t2 :: (a, b, c, d, e)). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (a, b, c, d, e) ((a, b, c, d, e) ~> (a, b, c, d, e)) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (a, b, c, d, e)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (a, b, c, d, e)) (a, b, c, d, e) -> Type) t) 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 SFirst (a1 :: First a) where Source #
Instances
data SLast (a1 :: Last a) where Source #
Instances
data SWrappedMonoid (a :: WrappedMonoid m) where Source #
SWrapMonoid :: forall m (n :: m). Sing n -> SWrappedMonoid ('WrapMonoid n) |
Instances
SDecide m => TestCoercion (SWrappedMonoid :: WrappedMonoid m -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers testCoercion :: forall (a :: WrappedMonoid m) (b :: WrappedMonoid m). SWrappedMonoid a -> SWrappedMonoid b -> Maybe (Coercion a b) # | |
SDecide m => TestEquality (SWrappedMonoid :: WrappedMonoid m -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers testEquality :: forall (a :: WrappedMonoid m) (b :: WrappedMonoid m). SWrappedMonoid a -> SWrappedMonoid b -> Maybe (a :~: b) # | |
ShowSing m => Show (SWrappedMonoid z) Source # | |
Defined in Data.Semigroup.Singletons showsPrec :: Int -> SWrappedMonoid z -> ShowS # show :: SWrappedMonoid z -> String # showList :: [SWrappedMonoid z] -> ShowS # | |
Eq (SWrappedMonoid z) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers (==) :: SWrappedMonoid z -> SWrappedMonoid z -> Bool # (/=) :: SWrappedMonoid z -> SWrappedMonoid z -> Bool # |
data SDual (a1 :: Dual a) where Source #
Instances
data SProduct (a1 :: Product a) where Source #
Instances
SDecide a => TestCoercion (SProduct :: Product a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SDecide a => TestEquality (SProduct :: Product a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
ShowSing a => Show (SProduct z) Source # | |
Eq (SProduct z) Source # | |
type family UnwrapMonoid (a :: WrappedMonoid m) :: m where ... Source #
UnwrapMonoid ('WrapMonoid field :: WrappedMonoid m) = field |
type family GetProduct (a1 :: Product a) :: a where ... Source #
GetProduct ('Product field :: Product a) = field |
sGetMin :: forall a (t :: Min a). Sing t -> Sing (Apply (GetMinSym0 :: TyFun (Min a) a -> Type) t) Source #
sGetMax :: forall a (t :: Max a). Sing t -> Sing (Apply (GetMaxSym0 :: TyFun (Max a) a -> Type) t) Source #
sGetFirst :: forall a (t :: First a). Sing t -> Sing (Apply (GetFirstSym0 :: TyFun (First a) a -> Type) t) Source #
sGetLast :: forall a (t :: Last a). Sing t -> Sing (Apply (GetLastSym0 :: TyFun (Last a) a -> Type) t) Source #
sUnwrapMonoid :: forall m (t :: WrappedMonoid m). Sing t -> Sing (Apply (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) t) Source #
sGetDual :: forall a (t :: Dual a). Sing t -> Sing (Apply (GetDualSym0 :: TyFun (Dual a) a -> Type) t) Source #
sGetSum :: forall a (t :: Sum a). Sing t -> Sing (Apply (GetSumSym0 :: TyFun (Sum a) a -> Type) t) Source #
sGetProduct :: forall a (t :: Product a). Sing t -> Sing (Apply (GetProductSym0 :: TyFun (Product a) a -> Type) t) Source #
Defunctionalization symbols
data (<>@#@$) (a1 :: TyFun a (a ~> a)) infixr 6 Source #
Instances
SSemigroup a => SingI ((<>@#@$) :: TyFun a (a ~> a) -> Type) Source # | |
SuppressUnusedWarnings ((<>@#@$) :: TyFun a (a ~> a) -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes suppressUnusedWarnings :: () # | |
type Apply ((<>@#@$) :: TyFun a (a ~> a) -> Type) (a6989586621679207889 :: a) Source # | |
data (a6989586621679207889 :: a) <>@#@$$ (b :: TyFun a a) infixr 6 Source #
Instances
SSemigroup a => SingI1 ((<>@#@$$) :: a -> TyFun a a -> Type) Source # | |
(SSemigroup a, SingI d) => SingI ((<>@#@$$) d :: TyFun a a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes | |
SuppressUnusedWarnings ((<>@#@$$) a6989586621679207889 :: TyFun a a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes suppressUnusedWarnings :: () # | |
type Apply ((<>@#@$$) a6989586621679207889 :: TyFun a a -> Type) (a6989586621679207890 :: a) Source # | |
type family (a6989586621679207889 :: a) <>@#@$$$ (a6989586621679207890 :: a) :: a where ... infixr 6 Source #
data SconcatSym0 (a1 :: TyFun (NonEmpty a) a) Source #
Instances
SSemigroup a => SingI (SconcatSym0 :: TyFun (NonEmpty a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes | |
SuppressUnusedWarnings (SconcatSym0 :: TyFun (NonEmpty a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes suppressUnusedWarnings :: () # | |
type Apply (SconcatSym0 :: TyFun (NonEmpty a) a -> Type) (a6989586621679207893 :: NonEmpty a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Classes |
type family SconcatSym1 (a6989586621679207893 :: NonEmpty a) :: a where ... Source #
SconcatSym1 (a6989586621679207893 :: NonEmpty a) = Sconcat a6989586621679207893 |
data MinSym0 (a1 :: TyFun a (Min a)) Source #
Instances
data GetMinSym0 (a1 :: TyFun (Min a) a) Source #
Instances
SingI (GetMinSym0 :: TyFun (Min a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings (GetMinSym0 :: TyFun (Min a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (GetMinSym0 :: TyFun (Min a) a -> Type) (a6989586621679687623 :: Min a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family GetMinSym1 (a6989586621679687623 :: Min a) :: a where ... Source #
GetMinSym1 (a6989586621679687623 :: Min a) = GetMin a6989586621679687623 |
data MaxSym0 (a1 :: TyFun a (Max a)) Source #
Instances
data GetMaxSym0 (a1 :: TyFun (Max a) a) Source #
Instances
SingI (GetMaxSym0 :: TyFun (Max a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings (GetMaxSym0 :: TyFun (Max a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (GetMaxSym0 :: TyFun (Max a) a -> Type) (a6989586621679687642 :: Max a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family GetMaxSym1 (a6989586621679687642 :: Max a) :: a where ... Source #
GetMaxSym1 (a6989586621679687642 :: Max a) = GetMax a6989586621679687642 |
data FirstSym0 (a1 :: TyFun a (First a)) Source #
Instances
SingI (FirstSym0 :: TyFun a (First a) -> Type) Source # | |
SuppressUnusedWarnings (FirstSym0 :: TyFun a (First a) -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (FirstSym0 :: TyFun a (First a) -> Type) (a6989586621679687658 :: a) Source # | |
data GetFirstSym0 (a1 :: TyFun (First a) a) Source #
Instances
SingI (GetFirstSym0 :: TyFun (First a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings (GetFirstSym0 :: TyFun (First a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (GetFirstSym0 :: TyFun (First a) a -> Type) (a6989586621679687661 :: First a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family GetFirstSym1 (a6989586621679687661 :: First a) :: a where ... Source #
GetFirstSym1 (a6989586621679687661 :: First a) = GetFirst a6989586621679687661 |
data LastSym0 (a1 :: TyFun a (Last a)) Source #
Instances
data GetLastSym0 (a1 :: TyFun (Last a) a) Source #
Instances
SingI (GetLastSym0 :: TyFun (Last a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings (GetLastSym0 :: TyFun (Last a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (GetLastSym0 :: TyFun (Last a) a -> Type) (a6989586621679687680 :: Last a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family GetLastSym1 (a6989586621679687680 :: Last a) :: a where ... Source #
GetLastSym1 (a6989586621679687680 :: Last a) = GetLast a6989586621679687680 |
data WrapMonoidSym0 (a :: TyFun m (WrappedMonoid m)) Source #
Instances
SingI (WrapMonoidSym0 :: TyFun m (WrappedMonoid m) -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers sing :: Sing (WrapMonoidSym0 :: TyFun m (WrappedMonoid m) -> Type) # | |
SuppressUnusedWarnings (WrapMonoidSym0 :: TyFun m (WrappedMonoid m) -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (WrapMonoidSym0 :: TyFun m (WrappedMonoid m) -> Type) (a6989586621679687696 :: m) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers type Apply (WrapMonoidSym0 :: TyFun m (WrappedMonoid m) -> Type) (a6989586621679687696 :: m) = 'WrapMonoid a6989586621679687696 |
type family WrapMonoidSym1 (a6989586621679687696 :: m) :: WrappedMonoid m where ... Source #
WrapMonoidSym1 (a6989586621679687696 :: m) = 'WrapMonoid a6989586621679687696 |
data UnwrapMonoidSym0 (a :: TyFun (WrappedMonoid m) m) Source #
Instances
SingI (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers sing :: Sing (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) # | |
SuppressUnusedWarnings (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) (a6989586621679687699 :: WrappedMonoid m) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers type Apply (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) (a6989586621679687699 :: WrappedMonoid m) = UnwrapMonoid a6989586621679687699 |
type family UnwrapMonoidSym1 (a6989586621679687699 :: WrappedMonoid m) :: m where ... Source #
UnwrapMonoidSym1 (a6989586621679687699 :: WrappedMonoid m) = UnwrapMonoid a6989586621679687699 |
data DualSym0 (a1 :: TyFun a (Dual a)) Source #
Instances
data GetDualSym0 (a1 :: TyFun (Dual a) a) Source #
Instances
SingI (GetDualSym0 :: TyFun (Dual a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings (GetDualSym0 :: TyFun (Dual a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (GetDualSym0 :: TyFun (Dual a) a -> Type) (a6989586621679687534 :: Dual a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family GetDualSym1 (a6989586621679687534 :: Dual a) :: a where ... Source #
GetDualSym1 (a6989586621679687534 :: Dual a) = GetDual a6989586621679687534 |
data AllSym0 (a :: TyFun Bool All) Source #
Instances
SingI AllSym0 Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings AllSym0 Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply AllSym0 (a6989586621679687547 :: Bool) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
data GetAllSym0 (a :: TyFun All Bool) Source #
Instances
SingI GetAllSym0 Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers sing :: Sing GetAllSym0 # | |
SuppressUnusedWarnings GetAllSym0 Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply GetAllSym0 (a6989586621679687550 :: All) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family GetAllSym1 (a6989586621679687550 :: All) :: Bool where ... Source #
GetAllSym1 a6989586621679687550 = GetAll a6989586621679687550 |
data AnySym0 (a :: TyFun Bool Any) Source #
Instances
SingI AnySym0 Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings AnySym0 Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply AnySym0 (a6989586621679687563 :: Bool) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
data GetAnySym0 (a :: TyFun Any Bool) Source #
Instances
SingI GetAnySym0 Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers sing :: Sing GetAnySym0 # | |
SuppressUnusedWarnings GetAnySym0 Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply GetAnySym0 (a6989586621679687566 :: Any) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family GetAnySym1 (a6989586621679687566 :: Any) :: Bool where ... Source #
GetAnySym1 a6989586621679687566 = GetAny a6989586621679687566 |
data SumSym0 (a1 :: TyFun a (Sum a)) Source #
Instances
data GetSumSym0 (a1 :: TyFun (Sum a) a) Source #
Instances
SingI (GetSumSym0 :: TyFun (Sum a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings (GetSumSym0 :: TyFun (Sum a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (GetSumSym0 :: TyFun (Sum a) a -> Type) (a6989586621679687585 :: Sum a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family GetSumSym1 (a6989586621679687585 :: Sum a) :: a where ... Source #
GetSumSym1 (a6989586621679687585 :: Sum a) = GetSum a6989586621679687585 |
data ProductSym0 (a1 :: TyFun a (Product a)) Source #
Instances
SingI (ProductSym0 :: TyFun a (Product a) -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings (ProductSym0 :: TyFun a (Product a) -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (ProductSym0 :: TyFun a (Product a) -> Type) (a6989586621679687601 :: a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers |
type family ProductSym1 (a6989586621679687601 :: a) :: Product a where ... Source #
ProductSym1 (a6989586621679687601 :: a) = 'Product a6989586621679687601 |
data GetProductSym0 (a1 :: TyFun (Product a) a) Source #
Instances
SingI (GetProductSym0 :: TyFun (Product a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers | |
SuppressUnusedWarnings (GetProductSym0 :: TyFun (Product a) a -> Type) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers suppressUnusedWarnings :: () # | |
type Apply (GetProductSym0 :: TyFun (Product a) a -> Type) (a6989586621679687604 :: Product a) Source # | |
Defined in Data.Semigroup.Singletons.Internal.Wrappers type Apply (GetProductSym0 :: TyFun (Product a) a -> Type) (a6989586621679687604 :: Product a) = GetProduct a6989586621679687604 |
type family GetProductSym1 (a6989586621679687604 :: Product a) :: a where ... Source #
GetProductSym1 (a6989586621679687604 :: Product a) = GetProduct a6989586621679687604 |
data ArgSym0 (a1 :: TyFun a (b ~> Arg a b)) Source #
Instances
data ArgSym1 (a6989586621680862528 :: a) (b1 :: TyFun b (Arg a b)) Source #
Instances
SingI1 (ArgSym1 :: a -> TyFun b (Arg a b) -> Type) Source # | |
SingI d => SingI (ArgSym1 d :: TyFun b (Arg a b) -> Type) Source # | |
SuppressUnusedWarnings (ArgSym1 a6989586621680862528 :: TyFun b (Arg a b) -> Type) Source # | |
Defined in Data.Semigroup.Singletons suppressUnusedWarnings :: () # | |
type Apply (ArgSym1 a6989586621680862528 :: TyFun b (Arg a b) -> Type) (a6989586621680862529 :: b) Source # | |
type family ArgSym2 (a6989586621680862528 :: a) (a6989586621680862529 :: b) :: Arg a b where ... Source #
Orphan instances
PApplicative First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PApplicative Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PApplicative Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PApplicative Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFunctor First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFunctor Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFunctor Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFunctor Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PMonad First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PMonad Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PMonad Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PMonad Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SApplicative First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFunctor First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFmap :: forall a b (t1 :: a ~> b) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (FmapSym0 :: TyFun (a ~> b) (First a ~> First b) -> Type) t1) t2) Source # (%<$) :: forall a b (t1 :: a) (t2 :: First b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$@#@$) :: TyFun a (First b ~> First a) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFunctor Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFmap :: forall a b (t1 :: a ~> b) (t2 :: Last a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (FmapSym0 :: TyFun (a ~> b) (Last a ~> Last b) -> Type) t1) t2) Source # (%<$) :: forall a b (t1 :: a) (t2 :: Last b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$@#@$) :: TyFun a (Last b ~> Last a) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFunctor Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFmap :: forall a b (t1 :: a ~> b) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (FmapSym0 :: TyFun (a ~> b) (Max a ~> Max b) -> Type) t1) t2) Source # (%<$) :: forall a b (t1 :: a) (t2 :: Max b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$@#@$) :: TyFun a (Max b ~> Max a) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFunctor Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFmap :: forall a b (t1 :: a ~> b) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (FmapSym0 :: TyFun (a ~> b) (Min a ~> Min b) -> Type) t1) t2) Source # (%<$) :: forall a b (t1 :: a) (t2 :: Min b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$@#@$) :: TyFun a (Min b ~> Min a) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMonad First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%>>=) :: forall a b (t1 :: First a) (t2 :: a ~> First b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((>>=@#@$) :: TyFun (First a) ((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 b) -> Type) t1) t2) Source # sReturn :: forall a (t :: a). Sing t -> Sing (Apply (ReturnSym0 :: TyFun a (First a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMonad Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%>>=) :: forall a b (t1 :: Last a) (t2 :: a ~> Last b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((>>=@#@$) :: TyFun (Last a) ((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 b) -> Type) t1) t2) Source # sReturn :: forall a (t :: a). Sing t -> Sing (Apply (ReturnSym0 :: TyFun a (Last a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMonad Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%>>=) :: forall a b (t1 :: Max a) (t2 :: a ~> Max b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((>>=@#@$) :: TyFun (Max a) ((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 b) -> Type) t1) t2) Source # sReturn :: forall a (t :: a). Sing t -> Sing (Apply (ReturnSym0 :: TyFun a (Max a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMonad Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%>>=) :: forall a b (t1 :: Min a) (t2 :: a ~> Min b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((>>=@#@$) :: TyFun (Min a) ((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 b) -> Type) t1) t2) Source # sReturn :: forall a (t :: a). Sing t -> Sing (Apply (ReturnSym0 :: TyFun a (Min a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFoldable First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFoldable Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFoldable Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFoldable Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFoldable First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFold :: forall m (t1 :: First m). SMonoid m => Sing t1 -> Sing (Apply (FoldSym0 :: TyFun (First m) m -> Type) t1) Source # sFoldMap :: forall a m (t1 :: a ~> m) (t2 :: First a). SMonoid m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (FoldMapSym0 :: TyFun (a ~> m) (First a ~> m) -> Type) t1) t2) Source # sFoldr :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: First a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (First a ~> b)) -> Type) t1) t2) t3) Source # sFoldr' :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: First a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldr'Sym0 :: TyFun (a ~> (b ~> b)) (b ~> (First a ~> b)) -> Type) t1) t2) t3) Source # sFoldl :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: First a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (First a ~> b)) -> Type) t1) t2) t3) Source # sFoldl' :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: First a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldl'Sym0 :: TyFun (b ~> (a ~> b)) (b ~> (First a ~> b)) -> Type) t1) t2) t3) Source # sFoldr1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldr1Sym0 :: TyFun (a ~> (a ~> a)) (First a ~> a) -> Type) t1) t2) Source # sFoldl1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldl1Sym0 :: TyFun (a ~> (a ~> a)) (First a ~> a) -> Type) t1) t2) Source # sToList :: forall a (t1 :: First a). Sing t1 -> Sing (Apply (ToListSym0 :: TyFun (First a) [a] -> Type) t1) Source # sNull :: forall a (t1 :: First a). Sing t1 -> Sing (Apply (NullSym0 :: TyFun (First a) Bool -> Type) t1) Source # sLength :: forall a (t1 :: First a). Sing t1 -> Sing (Apply (LengthSym0 :: TyFun (First a) Natural -> Type) t1) Source # sElem :: forall a (t1 :: a) (t2 :: First a). SEq a => Sing t1 -> Sing t2 -> Sing (Apply (Apply (ElemSym0 :: TyFun a (First a ~> Bool) -> Type) t1) t2) Source # sMaximum :: forall a (t1 :: First a). SOrd a => Sing t1 -> Sing (Apply (MaximumSym0 :: TyFun (First a) a -> Type) t1) Source # sMinimum :: forall a (t1 :: First a). SOrd a => Sing t1 -> Sing (Apply (MinimumSym0 :: TyFun (First a) a -> Type) t1) Source # sSum :: forall a (t1 :: First a). SNum a => Sing t1 -> Sing (Apply (SumSym0 :: TyFun (First a) a -> Type) t1) Source # sProduct :: forall a (t1 :: First a). SNum a => Sing t1 -> Sing (Apply (ProductSym0 :: TyFun (First a) a -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFoldable Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFold :: forall m (t1 :: Last m). SMonoid m => Sing t1 -> Sing (Apply (FoldSym0 :: TyFun (Last m) m -> Type) t1) Source # sFoldMap :: forall a m (t1 :: a ~> m) (t2 :: Last a). SMonoid m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (FoldMapSym0 :: TyFun (a ~> m) (Last a ~> m) -> Type) t1) t2) Source # sFoldr :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Last a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (Last a ~> b)) -> Type) t1) t2) t3) Source # sFoldr' :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Last a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldr'Sym0 :: TyFun (a ~> (b ~> b)) (b ~> (Last a ~> b)) -> Type) t1) t2) t3) Source # sFoldl :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Last a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (Last a ~> b)) -> Type) t1) t2) t3) Source # sFoldl' :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Last a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldl'Sym0 :: TyFun (b ~> (a ~> b)) (b ~> (Last a ~> b)) -> Type) t1) t2) t3) Source # sFoldr1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Last a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldr1Sym0 :: TyFun (a ~> (a ~> a)) (Last a ~> a) -> Type) t1) t2) Source # sFoldl1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Last a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldl1Sym0 :: TyFun (a ~> (a ~> a)) (Last a ~> a) -> Type) t1) t2) Source # sToList :: forall a (t1 :: Last a). Sing t1 -> Sing (Apply (ToListSym0 :: TyFun (Last a) [a] -> Type) t1) Source # sNull :: forall a (t1 :: Last a). Sing t1 -> Sing (Apply (NullSym0 :: TyFun (Last a) Bool -> Type) t1) Source # sLength :: forall a (t1 :: Last a). Sing t1 -> Sing (Apply (LengthSym0 :: TyFun (Last a) Natural -> Type) t1) Source # sElem :: forall a (t1 :: a) (t2 :: Last a). SEq a => Sing t1 -> Sing t2 -> Sing (Apply (Apply (ElemSym0 :: TyFun a (Last a ~> Bool) -> Type) t1) t2) Source # sMaximum :: forall a (t1 :: Last a). SOrd a => Sing t1 -> Sing (Apply (MaximumSym0 :: TyFun (Last a) a -> Type) t1) Source # sMinimum :: forall a (t1 :: Last a). SOrd a => Sing t1 -> Sing (Apply (MinimumSym0 :: TyFun (Last a) a -> Type) t1) Source # sSum :: forall a (t1 :: Last a). SNum a => Sing t1 -> Sing (Apply (SumSym0 :: TyFun (Last a) a -> Type) t1) Source # sProduct :: forall a (t1 :: Last a). SNum a => Sing t1 -> Sing (Apply (ProductSym0 :: TyFun (Last a) a -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFoldable Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFold :: forall m (t1 :: Max m). SMonoid m => Sing t1 -> Sing (Apply (FoldSym0 :: TyFun (Max m) m -> Type) t1) Source # sFoldMap :: forall a m (t1 :: a ~> m) (t2 :: Max a). SMonoid m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (FoldMapSym0 :: TyFun (a ~> m) (Max a ~> m) -> Type) t1) t2) Source # sFoldr :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Max a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (Max a ~> b)) -> Type) t1) t2) t3) Source # sFoldr' :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Max a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldr'Sym0 :: TyFun (a ~> (b ~> b)) (b ~> (Max a ~> b)) -> Type) t1) t2) t3) Source # sFoldl :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Max a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (Max a ~> b)) -> Type) t1) t2) t3) Source # sFoldl' :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Max a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldl'Sym0 :: TyFun (b ~> (a ~> b)) (b ~> (Max a ~> b)) -> Type) t1) t2) t3) Source # sFoldr1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldr1Sym0 :: TyFun (a ~> (a ~> a)) (Max a ~> a) -> Type) t1) t2) Source # sFoldl1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldl1Sym0 :: TyFun (a ~> (a ~> a)) (Max a ~> a) -> Type) t1) t2) Source # sToList :: forall a (t1 :: Max a). Sing t1 -> Sing (Apply (ToListSym0 :: TyFun (Max a) [a] -> Type) t1) Source # sNull :: forall a (t1 :: Max a). Sing t1 -> Sing (Apply (NullSym0 :: TyFun (Max a) Bool -> Type) t1) Source # sLength :: forall a (t1 :: Max a). Sing t1 -> Sing (Apply (LengthSym0 :: TyFun (Max a) Natural -> Type) t1) Source # sElem :: forall a (t1 :: a) (t2 :: Max a). SEq a => Sing t1 -> Sing t2 -> Sing (Apply (Apply (ElemSym0 :: TyFun a (Max a ~> Bool) -> Type) t1) t2) Source # sMaximum :: forall a (t1 :: Max a). SOrd a => Sing t1 -> Sing (Apply (MaximumSym0 :: TyFun (Max a) a -> Type) t1) Source # sMinimum :: forall a (t1 :: Max a). SOrd a => Sing t1 -> Sing (Apply (MinimumSym0 :: TyFun (Max a) a -> Type) t1) Source # sSum :: forall a (t1 :: Max a). SNum a => Sing t1 -> Sing (Apply (SumSym0 :: TyFun (Max a) a -> Type) t1) Source # sProduct :: forall a (t1 :: Max a). SNum a => Sing t1 -> Sing (Apply (ProductSym0 :: TyFun (Max a) a -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFoldable Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFold :: forall m (t1 :: Min m). SMonoid m => Sing t1 -> Sing (Apply (FoldSym0 :: TyFun (Min m) m -> Type) t1) Source # sFoldMap :: forall a m (t1 :: a ~> m) (t2 :: Min a). SMonoid m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (FoldMapSym0 :: TyFun (a ~> m) (Min a ~> m) -> Type) t1) t2) Source # sFoldr :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Min a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (Min a ~> b)) -> Type) t1) t2) t3) Source # sFoldr' :: forall a b (t1 :: a ~> (b ~> b)) (t2 :: b) (t3 :: Min a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldr'Sym0 :: TyFun (a ~> (b ~> b)) (b ~> (Min a ~> b)) -> Type) t1) t2) t3) Source # sFoldl :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Min a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (Min a ~> b)) -> Type) t1) t2) t3) Source # sFoldl' :: forall b a (t1 :: b ~> (a ~> b)) (t2 :: b) (t3 :: Min a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldl'Sym0 :: TyFun (b ~> (a ~> b)) (b ~> (Min a ~> b)) -> Type) t1) t2) t3) Source # sFoldr1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldr1Sym0 :: TyFun (a ~> (a ~> a)) (Min a ~> a) -> Type) t1) t2) Source # sFoldl1 :: forall a (t1 :: a ~> (a ~> a)) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldl1Sym0 :: TyFun (a ~> (a ~> a)) (Min a ~> a) -> Type) t1) t2) Source # sToList :: forall a (t1 :: Min a). Sing t1 -> Sing (Apply (ToListSym0 :: TyFun (Min a) [a] -> Type) t1) Source # sNull :: forall a (t1 :: Min a). Sing t1 -> Sing (Apply (NullSym0 :: TyFun (Min a) Bool -> Type) t1) Source # sLength :: forall a (t1 :: Min a). Sing t1 -> Sing (Apply (LengthSym0 :: TyFun (Min a) Natural -> Type) t1) Source # sElem :: forall a (t1 :: a) (t2 :: Min a). SEq a => Sing t1 -> Sing t2 -> Sing (Apply (Apply (ElemSym0 :: TyFun a (Min a ~> Bool) -> Type) t1) t2) Source # sMaximum :: forall a (t1 :: Min a). SOrd a => Sing t1 -> Sing (Apply (MaximumSym0 :: TyFun (Min a) a -> Type) t1) Source # sMinimum :: forall a (t1 :: Min a). SOrd a => Sing t1 -> Sing (Apply (MinimumSym0 :: TyFun (Min a) a -> Type) t1) Source # sSum :: forall a (t1 :: Min a). SNum a => Sing t1 -> Sing (Apply (SumSym0 :: TyFun (Min a) a -> Type) t1) Source # sProduct :: forall a (t1 :: Min a). SNum a => Sing t1 -> Sing (Apply (ProductSym0 :: TyFun (Min a) a -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PTraversable First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PTraversable Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PTraversable Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PTraversable Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
STraversable First Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sTraverse :: forall a (f :: Type -> Type) b (t1 :: a ~> f b) (t2 :: First a). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply (TraverseSym0 :: TyFun (a ~> f b) (First a ~> f (First b)) -> Type) t1) t2) Source # sSequenceA :: forall (f :: Type -> Type) a (t1 :: First (f a)). SApplicative f => Sing t1 -> Sing (Apply (SequenceASym0 :: TyFun (First (f a)) (f (First a)) -> Type) t1) Source # sMapM :: forall a (m :: Type -> Type) b (t1 :: a ~> m b) (t2 :: First a). SMonad m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (MapMSym0 :: TyFun (a ~> m b) (First a ~> m (First b)) -> Type) t1) t2) Source # sSequence :: forall (m :: Type -> Type) a (t1 :: First (m a)). SMonad m => Sing t1 -> Sing (Apply (SequenceSym0 :: TyFun (First (m a)) (m (First a)) -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
STraversable Last Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sTraverse :: forall a (f :: Type -> Type) b (t1 :: a ~> f b) (t2 :: Last a). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply (TraverseSym0 :: TyFun (a ~> f b) (Last a ~> f (Last b)) -> Type) t1) t2) Source # sSequenceA :: forall (f :: Type -> Type) a (t1 :: Last (f a)). SApplicative f => Sing t1 -> Sing (Apply (SequenceASym0 :: TyFun (Last (f a)) (f (Last a)) -> Type) t1) Source # sMapM :: forall a (m :: Type -> Type) b (t1 :: a ~> m b) (t2 :: Last a). SMonad m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (MapMSym0 :: TyFun (a ~> m b) (Last a ~> m (Last b)) -> Type) t1) t2) Source # sSequence :: forall (m :: Type -> Type) a (t1 :: Last (m a)). SMonad m => Sing t1 -> Sing (Apply (SequenceSym0 :: TyFun (Last (m a)) (m (Last a)) -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
STraversable Max Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sTraverse :: forall a (f :: Type -> Type) b (t1 :: a ~> f b) (t2 :: Max a). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply (TraverseSym0 :: TyFun (a ~> f b) (Max a ~> f (Max b)) -> Type) t1) t2) Source # sSequenceA :: forall (f :: Type -> Type) a (t1 :: Max (f a)). SApplicative f => Sing t1 -> Sing (Apply (SequenceASym0 :: TyFun (Max (f a)) (f (Max a)) -> Type) t1) Source # sMapM :: forall a (m :: Type -> Type) b (t1 :: a ~> m b) (t2 :: Max a). SMonad m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (MapMSym0 :: TyFun (a ~> m b) (Max a ~> m (Max b)) -> Type) t1) t2) Source # sSequence :: forall (m :: Type -> Type) a (t1 :: Max (m a)). SMonad m => Sing t1 -> Sing (Apply (SequenceSym0 :: TyFun (Max (m a)) (m (Max a)) -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
STraversable Min Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sTraverse :: forall a (f :: Type -> Type) b (t1 :: a ~> f b) (t2 :: Min a). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply (TraverseSym0 :: TyFun (a ~> f b) (Min a ~> f (Min b)) -> Type) t1) t2) Source # sSequenceA :: forall (f :: Type -> Type) a (t1 :: Min (f a)). SApplicative f => Sing t1 -> Sing (Apply (SequenceASym0 :: TyFun (Min (f a)) (f (Min a)) -> Type) t1) Source # sMapM :: forall a (m :: Type -> Type) b (t1 :: a ~> m b) (t2 :: Min a). SMonad m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (MapMSym0 :: TyFun (a ~> m b) (Min a ~> m (Min b)) -> Type) t1) t2) Source # sSequence :: forall (m :: Type -> Type) a (t1 :: Min (m a)). SMonad m => Sing t1 -> Sing (Apply (SequenceSym0 :: TyFun (Min (m a)) (m (Min a)) -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow All Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow Any Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow Bool => SShow All Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: All) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (All ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: All). Sing t -> Sing (Apply (Show_Sym0 :: TyFun All Symbol -> Type) t) Source # sShowList :: forall (t1 :: [All]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [All] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow Bool => SShow Any Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: Any) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Any ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Any). Sing t -> Sing (Apply (Show_Sym0 :: TyFun Any Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Any]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Any] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SingI2 ('Arg :: k1 -> k2 -> Arg k1 k2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SingI n => SingI1 ('Arg n :: k1 -> Arg a k1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing Bool => Show (SAll z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing Bool => Show (SAny z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFunctor (Arg a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFunctor (Arg a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFmap :: forall a0 b (t1 :: a0 ~> b) (t2 :: Arg a a0). Sing t1 -> Sing t2 -> Sing (Apply (Apply (FmapSym0 :: TyFun (a ~> b) (Arg a a ~> Arg a b) -> Type) t1) t2) Source # (%<$) :: forall a0 b (t1 :: a0) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<$@#@$) :: TyFun a (Arg a b ~> Arg a a) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PFoldable (Arg a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SFoldable (Arg a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sFold :: forall m (t1 :: Arg a m). SMonoid m => Sing t1 -> Sing (Apply (FoldSym0 :: TyFun (Arg a m) m -> Type) t1) Source # sFoldMap :: forall a0 m (t1 :: a0 ~> m) (t2 :: Arg a a0). SMonoid m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (FoldMapSym0 :: TyFun (a ~> m) (Arg a a ~> m) -> Type) t1) t2) Source # sFoldr :: forall a0 b (t1 :: a0 ~> (b ~> b)) (t2 :: b) (t3 :: Arg a a0). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (Arg a a ~> b)) -> Type) t1) t2) t3) Source # sFoldr' :: forall a0 b (t1 :: a0 ~> (b ~> b)) (t2 :: b) (t3 :: Arg a a0). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldr'Sym0 :: TyFun (a ~> (b ~> b)) (b ~> (Arg a a ~> b)) -> Type) t1) t2) t3) Source # sFoldl :: forall b a0 (t1 :: b ~> (a0 ~> b)) (t2 :: b) (t3 :: Arg a a0). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (Arg a a ~> b)) -> Type) t1) t2) t3) Source # sFoldl' :: forall b a0 (t1 :: b ~> (a0 ~> b)) (t2 :: b) (t3 :: Arg a a0). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (Foldl'Sym0 :: TyFun (b ~> (a ~> b)) (b ~> (Arg a a ~> b)) -> Type) t1) t2) t3) Source # sFoldr1 :: forall a0 (t1 :: a0 ~> (a0 ~> a0)) (t2 :: Arg a a0). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldr1Sym0 :: TyFun (a ~> (a ~> a)) (Arg a a ~> a) -> Type) t1) t2) Source # sFoldl1 :: forall a0 (t1 :: a0 ~> (a0 ~> a0)) (t2 :: Arg a a0). Sing t1 -> Sing t2 -> Sing (Apply (Apply (Foldl1Sym0 :: TyFun (a ~> (a ~> a)) (Arg a a ~> a) -> Type) t1) t2) Source # sToList :: forall a0 (t1 :: Arg a a0). Sing t1 -> Sing (Apply (ToListSym0 :: TyFun (Arg a a) [a] -> Type) t1) Source # sNull :: forall a0 (t1 :: Arg a a0). Sing t1 -> Sing (Apply (NullSym0 :: TyFun (Arg a a) Bool -> Type) t1) Source # sLength :: forall a0 (t1 :: Arg a a0). Sing t1 -> Sing (Apply (LengthSym0 :: TyFun (Arg a a) Natural -> Type) t1) Source # sElem :: forall a0 (t1 :: a0) (t2 :: Arg a a0). SEq a0 => Sing t1 -> Sing t2 -> Sing (Apply (Apply (ElemSym0 :: TyFun a (Arg a a ~> Bool) -> Type) t1) t2) Source # sMaximum :: forall a0 (t1 :: Arg a a0). SOrd a0 => Sing t1 -> Sing (Apply (MaximumSym0 :: TyFun (Arg a a) a -> Type) t1) Source # sMinimum :: forall a0 (t1 :: Arg a a0). SOrd a0 => Sing t1 -> Sing (Apply (MinimumSym0 :: TyFun (Arg a a) a -> Type) t1) Source # sSum :: forall a0 (t1 :: Arg a a0). SNum a0 => Sing t1 -> Sing (Apply (SumSym0 :: TyFun (Arg a a) a -> Type) t1) Source # sProduct :: forall a0 (t1 :: Arg a a0). SNum a0 => Sing t1 -> Sing (Apply (ProductSym0 :: TyFun (Arg a a) a -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PMonoid (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PMonoid (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PMonoid (WrappedMonoid m) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(SOrd a, SBounded a) => SMonoid (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sMempty :: Sing (MemptySym0 :: Max a) Source # sMappend :: forall (t1 :: Max a) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (MappendSym0 :: TyFun (Max a) (Max a ~> Max a) -> Type) t1) t2) Source # sMconcat :: forall (t :: [Max a]). Sing t -> Sing (Apply (MconcatSym0 :: TyFun [Max a] (Max a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(SOrd a, SBounded a) => SMonoid (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sMempty :: Sing (MemptySym0 :: Min a) Source # sMappend :: forall (t1 :: Min a) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (MappendSym0 :: TyFun (Min a) (Min a ~> Min a) -> Type) t1) t2) Source # sMconcat :: forall (t :: [Min a]). Sing t -> Sing (Apply (MconcatSym0 :: TyFun [Min a] (Min a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMonoid m => SMonoid (WrappedMonoid m) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sMempty :: Sing (MemptySym0 :: WrappedMonoid m) Source # sMappend :: forall (t1 :: WrappedMonoid m) (t2 :: WrappedMonoid m). Sing t1 -> Sing t2 -> Sing (Apply (Apply (MappendSym0 :: TyFun (WrappedMonoid m) (WrappedMonoid m ~> WrappedMonoid m) -> Type) t1) t2) Source # sMconcat :: forall (t :: [WrappedMonoid m]). Sing t -> Sing (Apply (MconcatSym0 :: TyFun [WrappedMonoid m] (WrappedMonoid m) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PSemigroup (First a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PSemigroup (Last a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PSemigroup (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PSemigroup (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PSemigroup (WrappedMonoid m) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SSemigroup (First a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%<>) :: forall (t1 :: First a) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (First a) (First a ~> First a) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (First a)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (First a)) (First a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SSemigroup (Last a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SOrd a => SSemigroup (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SOrd a => SSemigroup (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMonoid m => SSemigroup (WrappedMonoid m) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%<>) :: forall (t1 :: WrappedMonoid m) (t2 :: WrappedMonoid m). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<>@#@$) :: TyFun (WrappedMonoid m) (WrappedMonoid m ~> WrappedMonoid m) -> Type) t1) t2) Source # sSconcat :: forall (t :: NonEmpty (WrappedMonoid m)). Sing t -> Sing (Apply (SconcatSym0 :: TyFun (NonEmpty (WrappedMonoid m)) (WrappedMonoid m) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PEnum (First a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PEnum (Last a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PEnum (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PEnum (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PEnum (WrappedMonoid a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SEnum a => SEnum (First a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sSucc :: forall (t :: First a). Sing t -> Sing (Apply (SuccSym0 :: TyFun (First a) (First a) -> Type) t) Source # sPred :: forall (t :: First a). Sing t -> Sing (Apply (PredSym0 :: TyFun (First a) (First a) -> Type) t) Source # sToEnum :: forall (t :: Natural). Sing t -> Sing (Apply (ToEnumSym0 :: TyFun Natural (First a) -> Type) t) Source # sFromEnum :: forall (t :: First a). Sing t -> Sing (Apply (FromEnumSym0 :: TyFun (First a) Natural -> Type) t) Source # sEnumFromTo :: forall (t1 :: First a) (t2 :: First a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (EnumFromToSym0 :: TyFun (First a) (First a ~> [First a]) -> Type) t1) t2) Source # sEnumFromThenTo :: forall (t1 :: First a) (t2 :: First a) (t3 :: First a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (EnumFromThenToSym0 :: TyFun (First a) (First a ~> (First a ~> [First a])) -> Type) t1) t2) t3) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SEnum a => SEnum (Last a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sSucc :: forall (t :: Last a). Sing t -> Sing (Apply (SuccSym0 :: TyFun (Last a) (Last a) -> Type) t) Source # sPred :: forall (t :: Last a). Sing t -> Sing (Apply (PredSym0 :: TyFun (Last a) (Last a) -> Type) t) Source # sToEnum :: forall (t :: Natural). Sing t -> Sing (Apply (ToEnumSym0 :: TyFun Natural (Last a) -> Type) t) Source # sFromEnum :: forall (t :: Last a). Sing t -> Sing (Apply (FromEnumSym0 :: TyFun (Last a) Natural -> Type) t) Source # sEnumFromTo :: forall (t1 :: Last a) (t2 :: Last a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (EnumFromToSym0 :: TyFun (Last a) (Last a ~> [Last a]) -> Type) t1) t2) Source # sEnumFromThenTo :: forall (t1 :: Last a) (t2 :: Last a) (t3 :: Last a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (EnumFromThenToSym0 :: TyFun (Last a) (Last a ~> (Last a ~> [Last a])) -> Type) t1) t2) t3) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SEnum a => SEnum (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sSucc :: forall (t :: Max a). Sing t -> Sing (Apply (SuccSym0 :: TyFun (Max a) (Max a) -> Type) t) Source # sPred :: forall (t :: Max a). Sing t -> Sing (Apply (PredSym0 :: TyFun (Max a) (Max a) -> Type) t) Source # sToEnum :: forall (t :: Natural). Sing t -> Sing (Apply (ToEnumSym0 :: TyFun Natural (Max a) -> Type) t) Source # sFromEnum :: forall (t :: Max a). Sing t -> Sing (Apply (FromEnumSym0 :: TyFun (Max a) Natural -> Type) t) Source # sEnumFromTo :: forall (t1 :: Max a) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (EnumFromToSym0 :: TyFun (Max a) (Max a ~> [Max a]) -> Type) t1) t2) Source # sEnumFromThenTo :: forall (t1 :: Max a) (t2 :: Max a) (t3 :: Max a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (EnumFromThenToSym0 :: TyFun (Max a) (Max a ~> (Max a ~> [Max a])) -> Type) t1) t2) t3) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SEnum a => SEnum (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sSucc :: forall (t :: Min a). Sing t -> Sing (Apply (SuccSym0 :: TyFun (Min a) (Min a) -> Type) t) Source # sPred :: forall (t :: Min a). Sing t -> Sing (Apply (PredSym0 :: TyFun (Min a) (Min a) -> Type) t) Source # sToEnum :: forall (t :: Natural). Sing t -> Sing (Apply (ToEnumSym0 :: TyFun Natural (Min a) -> Type) t) Source # sFromEnum :: forall (t :: Min a). Sing t -> Sing (Apply (FromEnumSym0 :: TyFun (Min a) Natural -> Type) t) Source # sEnumFromTo :: forall (t1 :: Min a) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (EnumFromToSym0 :: TyFun (Min a) (Min a ~> [Min a]) -> Type) t1) t2) Source # sEnumFromThenTo :: forall (t1 :: Min a) (t2 :: Min a) (t3 :: Min a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (EnumFromThenToSym0 :: TyFun (Min a) (Min a ~> (Min a ~> [Min a])) -> Type) t1) t2) t3) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SEnum a => SEnum (WrappedMonoid a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sSucc :: forall (t :: WrappedMonoid a). Sing t -> Sing (Apply (SuccSym0 :: TyFun (WrappedMonoid a) (WrappedMonoid a) -> Type) t) Source # sPred :: forall (t :: WrappedMonoid a). Sing t -> Sing (Apply (PredSym0 :: TyFun (WrappedMonoid a) (WrappedMonoid a) -> Type) t) Source # sToEnum :: forall (t :: Natural). Sing t -> Sing (Apply (ToEnumSym0 :: TyFun Natural (WrappedMonoid a) -> Type) t) Source # sFromEnum :: forall (t :: WrappedMonoid a). Sing t -> Sing (Apply (FromEnumSym0 :: TyFun (WrappedMonoid a) Natural -> Type) t) Source # sEnumFromTo :: forall (t1 :: WrappedMonoid a) (t2 :: WrappedMonoid a). Sing t1 -> Sing t2 -> Sing (Apply (Apply (EnumFromToSym0 :: TyFun (WrappedMonoid a) (WrappedMonoid a ~> [WrappedMonoid a]) -> Type) t1) t2) Source # sEnumFromThenTo :: forall (t1 :: WrappedMonoid a) (t2 :: WrappedMonoid a) (t3 :: WrappedMonoid a). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (EnumFromThenToSym0 :: TyFun (WrappedMonoid a) (WrappedMonoid a ~> (WrappedMonoid a ~> [WrappedMonoid a])) -> Type) t1) t2) t3) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PTraversable (Arg a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
STraversable (Arg a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sTraverse :: forall a0 (f :: Type -> Type) b (t1 :: a0 ~> f b) (t2 :: Arg a a0). SApplicative f => Sing t1 -> Sing t2 -> Sing (Apply (Apply (TraverseSym0 :: TyFun (a ~> f b) (Arg a a ~> f (Arg a b)) -> Type) t1) t2) Source # sSequenceA :: forall (f :: Type -> Type) a0 (t1 :: Arg a (f a0)). SApplicative f => Sing t1 -> Sing (Apply (SequenceASym0 :: TyFun (Arg a (f a)) (f (Arg a a)) -> Type) t1) Source # sMapM :: forall a0 (m :: Type -> Type) b (t1 :: a0 ~> m b) (t2 :: Arg a a0). SMonad m => Sing t1 -> Sing t2 -> Sing (Apply (Apply (MapMSym0 :: TyFun (a ~> m b) (Arg a a ~> m (Arg a b)) -> Type) t1) t2) Source # sSequence :: forall (m :: Type -> Type) a0 (t1 :: Arg a (m a0)). SMonad m => Sing t1 -> Sing (Apply (SequenceSym0 :: TyFun (Arg a (m a)) (m (Arg a a)) -> Type) t1) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PNum (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PNum (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SNum a => SNum (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%+) :: forall (t1 :: Max a) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((+@#@$) :: TyFun (Max a) (Max a ~> Max a) -> Type) t1) t2) Source # (%-) :: forall (t1 :: Max a) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((-@#@$) :: TyFun (Max a) (Max a ~> Max a) -> Type) t1) t2) Source # (%*) :: forall (t1 :: Max a) (t2 :: Max a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*@#@$) :: TyFun (Max a) (Max a ~> Max a) -> Type) t1) t2) Source # sNegate :: forall (t :: Max a). Sing t -> Sing (Apply (NegateSym0 :: TyFun (Max a) (Max a) -> Type) t) Source # sAbs :: forall (t :: Max a). Sing t -> Sing (Apply (AbsSym0 :: TyFun (Max a) (Max a) -> Type) t) Source # sSignum :: forall (t :: Max a). Sing t -> Sing (Apply (SignumSym0 :: TyFun (Max a) (Max a) -> Type) t) Source # sFromInteger :: forall (t :: Natural). Sing t -> Sing (Apply (FromIntegerSym0 :: TyFun Natural (Max a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SNum a => SNum (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%+) :: forall (t1 :: Min a) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((+@#@$) :: TyFun (Min a) (Min a ~> Min a) -> Type) t1) t2) Source # (%-) :: forall (t1 :: Min a) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((-@#@$) :: TyFun (Min a) (Min a ~> Min a) -> Type) t1) t2) Source # (%*) :: forall (t1 :: Min a) (t2 :: Min a). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((*@#@$) :: TyFun (Min a) (Min a ~> Min a) -> Type) t1) t2) Source # sNegate :: forall (t :: Min a). Sing t -> Sing (Apply (NegateSym0 :: TyFun (Min a) (Min a) -> Type) t) Source # sAbs :: forall (t :: Min a). Sing t -> Sing (Apply (AbsSym0 :: TyFun (Min a) (Min a) -> Type) t) Source # sSignum :: forall (t :: Min a). Sing t -> Sing (Apply (SignumSym0 :: TyFun (Min a) (Min a) -> Type) t) Source # sFromInteger :: forall (t :: Natural). Sing t -> Sing (Apply (FromIntegerSym0 :: TyFun Natural (Min a) -> Type) t) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (First a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (Last a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (WrappedMonoid m) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (Dual a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (Product a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (Sum a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow a => SShow (First a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: First a) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (First a ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: First a). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (First a) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [First a]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [First a] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow a => SShow (Last a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: Last a) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Last a ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Last a). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (Last a) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Last a]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Last a] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow a => SShow (Max a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: Max a) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Max a ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Max a). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (Max a) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Max a]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Max a] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow a => SShow (Min a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: Min a) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Min a ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Min a). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (Min a) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Min a]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Min a] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow m => SShow (WrappedMonoid m) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: WrappedMonoid m) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (WrappedMonoid m ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: WrappedMonoid m). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (WrappedMonoid m) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [WrappedMonoid m]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [WrappedMonoid m] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow a => SShow (Dual a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: Dual a) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Dual a ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Dual a). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (Dual a) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Dual a]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Dual a] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow a => SShow (Product a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: Product a) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Product a ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Product a). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (Product a) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Product a]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Product a] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SShow a => SShow (Sum a) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: Sum a) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Sum a ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Sum a). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (Sum a) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Sum a]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Sum a] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing a => Show (SDual z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing a => Show (SFirst z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing a => Show (SLast z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing a => Show (SMax z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing a => Show (SMin z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing a => Show (SProduct z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing a => Show (SSum z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ShowSing m => Show (SWrappedMonoid z) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
showsPrec :: Int -> SWrappedMonoid z -> ShowS # show :: SWrappedMonoid z -> String # showList :: [SWrappedMonoid z] -> ShowS # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(SingKind a, SingKind b) => SingKind (Arg a b) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PEq (Arg a b) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SEq a => SEq (Arg a b) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(%==) :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((==@#@$) :: TyFun (Arg a b) (Arg a b ~> Bool) -> Type) t1) t2) Source # (%/=) :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((/=@#@$) :: TyFun (Arg a b) (Arg a b ~> Bool) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
POrd (Arg a b) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SOrd a => SOrd (Arg a b) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sCompare :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (CompareSym0 :: TyFun (Arg a b) (Arg a b ~> Ordering) -> Type) t1) t2) Source # (%<) :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<@#@$) :: TyFun (Arg a b) (Arg a b ~> Bool) -> Type) t1) t2) Source # (%<=) :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((<=@#@$) :: TyFun (Arg a b) (Arg a b ~> Bool) -> Type) t1) t2) Source # (%>) :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((>@#@$) :: TyFun (Arg a b) (Arg a b ~> Bool) -> Type) t1) t2) Source # (%>=) :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply ((>=@#@$) :: TyFun (Arg a b) (Arg a b ~> Bool) -> Type) t1) t2) Source # sMax :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (MaxSym0 :: TyFun (Arg a b) (Arg a b ~> Arg a b) -> Type) t1) t2) Source # sMin :: forall (t1 :: Arg a b) (t2 :: Arg a b). Sing t1 -> Sing t2 -> Sing (Apply (Apply (MinSym0 :: TyFun (Arg a b) (Arg a b ~> Arg a b) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PShow (Arg a b) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(SShow a, SShow b) => SShow (Arg a b) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sShowsPrec :: forall (t1 :: Natural) (t2 :: Arg a b) (t3 :: Symbol). Sing t1 -> Sing t2 -> Sing t3 -> Sing (Apply (Apply (Apply (ShowsPrecSym0 :: TyFun Natural (Arg a b ~> (Symbol ~> Symbol)) -> Type) t1) t2) t3) Source # sShow_ :: forall (t :: Arg a b). Sing t -> Sing (Apply (Show_Sym0 :: TyFun (Arg a b) Symbol -> Type) t) Source # sShowList :: forall (t1 :: [Arg a b]) (t2 :: Symbol). Sing t1 -> Sing t2 -> Sing (Apply (Apply (ShowListSym0 :: TyFun [Arg a b] (Symbol ~> Symbol) -> Type) t1) t2) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(SingI n1, SingI n2) => SingI ('Arg n1 n2 :: Arg a b) Source # | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||