| Copyright | (C) 2018 Ryan Scott |
|---|---|
| License | BSD-style (see LICENSE) |
| Maintainer | Ryan Scott |
| Stability | experimental |
| Portability | non-portable |
| Safe Haskell | None |
| Language | Haskell2010 |
Data.Singletons.Prelude.Semigroup
Description
Defines the promoted version of Semigroup, PSemigroup, and the
singleton version, SSemigroup.
Synopsis
- class PSemigroup (a :: Type) where
- class SSemigroup a where
- data family Sing :: k -> Type
- type family GetMin (a :: Min a) :: a where ...
- type family GetMax (a :: Max a) :: a where ...
- type family GetFirst (a :: First a) :: a where ...
- type family GetLast (a :: Last a) :: a where ...
- type family GetDual (a :: Dual a) :: a where ...
- type family GetAll (a :: All) :: Bool where ...
- type family GetAny (a :: Any) :: Bool where ...
- type family GetSum (a :: Sum a) :: a where ...
- type family GetProduct (a :: Product a) :: a where ...
- type family GetOption (a :: Option a) :: Maybe a where ...
- type SMin = (Sing :: Min a -> Type)
- type SMax = (Sing :: Max a -> Type)
- type SFirst = (Sing :: First a -> Type)
- type SLast = (Sing :: Last a -> Type)
- type SWrappedMonoid = (Sing :: WrappedMonoid m -> Type)
- type SDual = (Sing :: Dual a -> Type)
- type SAll = (Sing :: All -> Type)
- type SAny = (Sing :: Any -> Type)
- type SSum = (Sing :: Sum a -> Type)
- type SProduct = (Sing :: Product a -> Type)
- type SOption = (Sing :: Option a -> Type)
- type SArg = (Sing :: Arg a b -> Type)
- option_ :: b -> (a -> b) -> Option a -> b
- sOption_ :: forall b a (t :: b) (t :: (~>) a b) (t :: Option a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Option_Sym0 t) t) t :: b)
- type family Option_ (a :: b) (a :: (~>) a b) (a :: Option a) :: b where ...
- data (<>@#@$) :: forall a6989586621679833215. (~>) a6989586621679833215 ((~>) a6989586621679833215 a6989586621679833215)
- data (<>@#@$$) (arg6989586621679833700 :: a6989586621679833215) :: (~>) a6989586621679833215 a6989586621679833215
- type (<>@#@$$$) (arg6989586621679833700 :: a6989586621679833215) (arg6989586621679833701 :: a6989586621679833215) = (<>) arg6989586621679833700 arg6989586621679833701
- data SconcatSym0 :: forall a6989586621679833215. (~>) (NonEmpty a6989586621679833215) a6989586621679833215
- type SconcatSym1 (arg6989586621679833704 :: NonEmpty a6989586621679833215) = Sconcat arg6989586621679833704
- data MinSym0 :: forall (a6989586621679063725 :: Type). (~>) a6989586621679063725 (Min (a6989586621679063725 :: Type))
- type MinSym1 (t6989586621679843003 :: a6989586621679063725) = Min t6989586621679843003
- data GetMinSym0 :: forall a6989586621679063725. (~>) (Min a6989586621679063725) a6989586621679063725
- type GetMinSym1 (a6989586621679843000 :: Min a6989586621679063725) = GetMin a6989586621679843000
- data MaxSym0 :: forall (a6989586621679063731 :: Type). (~>) a6989586621679063731 (Max (a6989586621679063731 :: Type))
- type MaxSym1 (t6989586621679843020 :: a6989586621679063731) = Max t6989586621679843020
- data GetMaxSym0 :: forall a6989586621679063731. (~>) (Max a6989586621679063731) a6989586621679063731
- type GetMaxSym1 (a6989586621679843017 :: Max a6989586621679063731) = GetMax a6989586621679843017
- data FirstSym0 :: forall (a6989586621679063745 :: Type). (~>) a6989586621679063745 (First (a6989586621679063745 :: Type))
- type FirstSym1 (t6989586621679843037 :: a6989586621679063745) = First t6989586621679843037
- data GetFirstSym0 :: forall a6989586621679063745. (~>) (First a6989586621679063745) a6989586621679063745
- type GetFirstSym1 (a6989586621679843034 :: First a6989586621679063745) = GetFirst a6989586621679843034
- data LastSym0 :: forall (a6989586621679063751 :: Type). (~>) a6989586621679063751 (Last (a6989586621679063751 :: Type))
- type LastSym1 (t6989586621679843054 :: a6989586621679063751) = Last t6989586621679843054
- data GetLastSym0 :: forall a6989586621679063751. (~>) (Last a6989586621679063751) a6989586621679063751
- type GetLastSym1 (a6989586621679843051 :: Last a6989586621679063751) = GetLast a6989586621679843051
- data WrapMonoidSym0 :: forall (m6989586621679063757 :: Type). (~>) m6989586621679063757 (WrappedMonoid (m6989586621679063757 :: Type))
- type WrapMonoidSym1 (t6989586621679843071 :: m6989586621679063757) = WrapMonoid t6989586621679843071
- data UnwrapMonoidSym0 :: forall m6989586621679063757. (~>) (WrappedMonoid m6989586621679063757) m6989586621679063757
- type UnwrapMonoidSym1 (a6989586621679843068 :: WrappedMonoid m6989586621679063757) = UnwrapMonoid a6989586621679843068
- data DualSym0 :: forall (a6989586621679087235 :: Type). (~>) a6989586621679087235 (Dual (a6989586621679087235 :: Type))
- type DualSym1 (t6989586621679842924 :: a6989586621679087235) = Dual t6989586621679842924
- data GetDualSym0 :: forall a6989586621679087235. (~>) (Dual a6989586621679087235) a6989586621679087235
- type GetDualSym1 (a6989586621679842921 :: Dual a6989586621679087235) = GetDual a6989586621679842921
- data AllSym0 :: (~>) Bool All
- type AllSym1 (t6989586621679842938 :: Bool) = All t6989586621679842938
- data GetAllSym0 :: (~>) All Bool
- type GetAllSym1 (a6989586621679842935 :: All) = GetAll a6989586621679842935
- data AnySym0 :: (~>) Bool Any
- type AnySym1 (t6989586621679842952 :: Bool) = Any t6989586621679842952
- data GetAnySym0 :: (~>) Any Bool
- type GetAnySym1 (a6989586621679842949 :: Any) = GetAny a6989586621679842949
- data SumSym0 :: forall (a6989586621679087220 :: Type). (~>) a6989586621679087220 (Sum (a6989586621679087220 :: Type))
- type SumSym1 (t6989586621679842969 :: a6989586621679087220) = Sum t6989586621679842969
- data GetSumSym0 :: forall a6989586621679087220. (~>) (Sum a6989586621679087220) a6989586621679087220
- type GetSumSym1 (a6989586621679842966 :: Sum a6989586621679087220) = GetSum a6989586621679842966
- data ProductSym0 :: forall (a6989586621679087225 :: Type). (~>) a6989586621679087225 (Product (a6989586621679087225 :: Type))
- type ProductSym1 (t6989586621679842986 :: a6989586621679087225) = Product t6989586621679842986
- data GetProductSym0 :: forall a6989586621679087225. (~>) (Product a6989586621679087225) a6989586621679087225
- type GetProductSym1 (a6989586621679842983 :: Product a6989586621679087225) = GetProduct a6989586621679842983
- data OptionSym0 :: forall (a6989586621679063763 :: Type). (~>) (Maybe a6989586621679063763) (Option (a6989586621679063763 :: Type))
- type OptionSym1 (t6989586621679842907 :: Maybe a6989586621679063763) = Option t6989586621679842907
- data GetOptionSym0 :: forall a6989586621679063763. (~>) (Option a6989586621679063763) (Maybe a6989586621679063763)
- type GetOptionSym1 (a6989586621679842904 :: Option a6989586621679063763) = GetOption a6989586621679842904
- data ArgSym0 :: forall (a6989586621679063738 :: Type) (b6989586621679063739 :: Type). (~>) a6989586621679063738 ((~>) b6989586621679063739 (Arg (a6989586621679063738 :: Type) (b6989586621679063739 :: Type)))
- data ArgSym1 (t6989586621680907981 :: (a6989586621679063738 :: Type)) :: forall (b6989586621679063739 :: Type). (~>) b6989586621679063739 (Arg (a6989586621679063738 :: Type) (b6989586621679063739 :: Type))
- type ArgSym2 (t6989586621680907981 :: a6989586621679063738) (t6989586621680907982 :: b6989586621679063739) = Arg t6989586621680907981 t6989586621680907982
Documentation
class PSemigroup (a :: Type) #
Instances
class SSemigroup a where #
Minimal complete definition
Methods
(%<>) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (<>@#@$) t) t :: a) infixr 6 #
sSconcat :: forall (t :: NonEmpty a). Sing t -> Sing (Apply SconcatSym0 t :: a) #
sSconcat :: forall (t :: NonEmpty a). (Apply SconcatSym0 t :: a) ~ Apply Sconcat_6989586621679833722Sym0 t => Sing t -> Sing (Apply SconcatSym0 t :: a) #
Instances
data family Sing :: k -> Type #
The singleton kind-indexed data family.
Instances
| SDecide k => TestCoercion (Sing :: k -> Type) # | |
Defined in Data.Singletons.Decide | |
| SDecide k => TestEquality (Sing :: k -> Type) # | |
Defined in Data.Singletons.Decide | |
| Show (SSymbol s) # | |
| Show (SNat n) # | |
| Eq (Sing a) # | |
| Ord (Sing a) # | |
| Show (Sing z) # | |
| (ShowSing a, ShowSing [a]) => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| Show (Sing z) # | |
| (ShowSing a, ShowSing b) => Show (Sing z) # | |
| Show (Sing a) # | |
| Show (Sing z) # | |
| (ShowSing a, ShowSing b) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c, ShowSing d) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f) => Show (Sing z) # | |
| (ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f, ShowSing g) => Show (Sing z) # | |
| Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| (ShowSing a, ShowSing b) => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing m => Show (Sing z) # | |
| ShowSing (Maybe a) => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing (Maybe a) => Show (Sing z) # | |
| ShowSing (Maybe a) => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing Bool => Show (Sing z) # | |
| ShowSing Bool => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| ShowSing a => Show (Sing z) # | |
| (ShowSing a, ShowSing [a]) => Show (Sing z) # | |
| data Sing (a :: Bool) # | |
| data Sing (a :: Ordering) # | |
| data Sing (n :: Nat) # | |
| data Sing (n :: Symbol) # | |
Defined in Data.Singletons.TypeLits.Internal | |
| data Sing (a :: ()) # | |
Defined in Data.Singletons.Prelude.Instances | |
| data Sing (a :: Void) # | |
Defined in Data.Singletons.Prelude.Instances | |
| data Sing (a :: All) # | |
| data Sing (a :: Any) # | |
| data Sing (a :: PErrorMessage) # | |
Defined in Data.Singletons.TypeError data Sing (a :: PErrorMessage) where
| |
| data Sing (b :: [a]) # | |
| data Sing (b :: Maybe a) # | |
| newtype Sing (a :: TYPE rep) # | A choice of singleton for the kind Conceivably, one could generalize this instance to `Sing :: k -> Type` for
any kind We cannot produce explicit singleton values for everything in |
Defined in Data.Singletons.TypeRepTYPE | |
| data Sing (b :: Min a) # | |
| data Sing (b :: Max a) # | |
| data Sing (b :: First a) # | |
| data Sing (b :: Last a) # | |
| data Sing (a :: WrappedMonoid m) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal data Sing (a :: WrappedMonoid m) where
| |
| data Sing (b :: Option a) # | |
| data Sing (b :: Identity a) # | |
| data Sing (b :: First a) # | |
| data Sing (b :: Last a) # | |
| data Sing (b :: Dual a) # | |
| data Sing (b :: Sum a) # | |
| data Sing (b :: Product a) # | |
| data Sing (b :: Down a) # | |
| data Sing (b :: NonEmpty a) # | |
| data Sing (c :: Either a b) # | |
| data Sing (c :: (a, b)) # | |
| data Sing (c :: Arg a b) # | |
| newtype Sing (f :: k1 ~> k2) # | |
| data Sing (d :: (a, b, c)) # | |
| data Sing (c :: Const a b) # | |
| data Sing (e :: (a, b, c, d)) # | |
| data Sing (f :: (a, b, c, d, e)) # | |
| data Sing (g :: (a, b, c, d, e, f)) # | |
| data Sing (h :: (a, b, c, d, e, f, g)) # | |
Defined in Data.Singletons.Prelude.Instances | |
type family GetProduct (a :: Product a) :: a where ... #
Equations
| GetProduct (Product field) = field |
type SWrappedMonoid = (Sing :: WrappedMonoid m -> Type) #
sOption_ :: forall b a (t :: b) (t :: (~>) a b) (t :: Option a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Option_Sym0 t) t) t :: b) #
Defunctionalization symbols
data (<>@#@$) :: forall a6989586621679833215. (~>) a6989586621679833215 ((~>) a6989586621679833215 a6989586621679833215) infixr 6 #
Instances
| SSemigroup a => SingI ((<>@#@$) :: TyFun a (a ~> a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings ((<>@#@$) :: TyFun a6989586621679833215 (a6989586621679833215 ~> a6989586621679833215) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply ((<>@#@$) :: TyFun a6989586621679833215 (a6989586621679833215 ~> a6989586621679833215) -> Type) (arg6989586621679833700 :: a6989586621679833215) # | |
data (<>@#@$$) (arg6989586621679833700 :: a6989586621679833215) :: (~>) a6989586621679833215 a6989586621679833215 infixr 6 #
Instances
| (SSemigroup a, SingI d) => SingI ((<>@#@$$) d :: TyFun a a -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings ((<>@#@$$) arg6989586621679833700 :: TyFun a6989586621679833215 a6989586621679833215 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply ((<>@#@$$) arg6989586621679833700 :: TyFun a a -> Type) (arg6989586621679833701 :: a) # | |
type (<>@#@$$$) (arg6989586621679833700 :: a6989586621679833215) (arg6989586621679833701 :: a6989586621679833215) = (<>) arg6989586621679833700 arg6989586621679833701 #
data SconcatSym0 :: forall a6989586621679833215. (~>) (NonEmpty a6989586621679833215) a6989586621679833215 #
Instances
| SSemigroup a => SingI (SconcatSym0 :: TyFun (NonEmpty a) a -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods sing :: Sing SconcatSym0 # | |
| SuppressUnusedWarnings (SconcatSym0 :: TyFun (NonEmpty a6989586621679833215) a6989586621679833215 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (SconcatSym0 :: TyFun (NonEmpty a) a -> Type) (arg6989586621679833704 :: NonEmpty a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type SconcatSym1 (arg6989586621679833704 :: NonEmpty a6989586621679833215) = Sconcat arg6989586621679833704 #
data MinSym0 :: forall (a6989586621679063725 :: Type). (~>) a6989586621679063725 (Min (a6989586621679063725 :: Type)) #
Instances
| SingI (MinSym0 :: TyFun a (Min a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings (MinSym0 :: TyFun a6989586621679063725 (Min a6989586621679063725) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (MinSym0 :: TyFun a (Min a) -> Type) (t6989586621679843003 :: a) # | |
data GetMinSym0 :: forall a6989586621679063725. (~>) (Min a6989586621679063725) a6989586621679063725 #
Instances
| SuppressUnusedWarnings (GetMinSym0 :: TyFun (Min a6989586621679063725) a6989586621679063725 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (GetMinSym0 :: TyFun (Min a) a -> Type) (a6989586621679843000 :: Min a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetMinSym1 (a6989586621679843000 :: Min a6989586621679063725) = GetMin a6989586621679843000 #
data MaxSym0 :: forall (a6989586621679063731 :: Type). (~>) a6989586621679063731 (Max (a6989586621679063731 :: Type)) #
Instances
| SingI (MaxSym0 :: TyFun a (Max a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings (MaxSym0 :: TyFun a6989586621679063731 (Max a6989586621679063731) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (MaxSym0 :: TyFun a (Max a) -> Type) (t6989586621679843020 :: a) # | |
data GetMaxSym0 :: forall a6989586621679063731. (~>) (Max a6989586621679063731) a6989586621679063731 #
Instances
| SuppressUnusedWarnings (GetMaxSym0 :: TyFun (Max a6989586621679063731) a6989586621679063731 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (GetMaxSym0 :: TyFun (Max a) a -> Type) (a6989586621679843017 :: Max a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetMaxSym1 (a6989586621679843017 :: Max a6989586621679063731) = GetMax a6989586621679843017 #
data FirstSym0 :: forall (a6989586621679063745 :: Type). (~>) a6989586621679063745 (First (a6989586621679063745 :: Type)) #
Instances
| SingI (FirstSym0 :: TyFun a (First a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings (FirstSym0 :: TyFun a6989586621679063745 (First a6989586621679063745) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (FirstSym0 :: TyFun a (First a) -> Type) (t6989586621679843037 :: a) # | |
data GetFirstSym0 :: forall a6989586621679063745. (~>) (First a6989586621679063745) a6989586621679063745 #
Instances
| SuppressUnusedWarnings (GetFirstSym0 :: TyFun (First a6989586621679063745) a6989586621679063745 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (GetFirstSym0 :: TyFun (First a) a -> Type) (a6989586621679843034 :: First a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetFirstSym1 (a6989586621679843034 :: First a6989586621679063745) = GetFirst a6989586621679843034 #
data LastSym0 :: forall (a6989586621679063751 :: Type). (~>) a6989586621679063751 (Last (a6989586621679063751 :: Type)) #
Instances
| SingI (LastSym0 :: TyFun a (Last a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings (LastSym0 :: TyFun a6989586621679063751 (Last a6989586621679063751) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (LastSym0 :: TyFun a (Last a) -> Type) (t6989586621679843054 :: a) # | |
data GetLastSym0 :: forall a6989586621679063751. (~>) (Last a6989586621679063751) a6989586621679063751 #
Instances
| SuppressUnusedWarnings (GetLastSym0 :: TyFun (Last a6989586621679063751) a6989586621679063751 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (GetLastSym0 :: TyFun (Last a) a -> Type) (a6989586621679843051 :: Last a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetLastSym1 (a6989586621679843051 :: Last a6989586621679063751) = GetLast a6989586621679843051 #
data WrapMonoidSym0 :: forall (m6989586621679063757 :: Type). (~>) m6989586621679063757 (WrappedMonoid (m6989586621679063757 :: Type)) #
Instances
| SingI (WrapMonoidSym0 :: TyFun m (WrappedMonoid m) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods sing :: Sing WrapMonoidSym0 # | |
| SuppressUnusedWarnings (WrapMonoidSym0 :: TyFun m6989586621679063757 (WrappedMonoid m6989586621679063757) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (WrapMonoidSym0 :: TyFun m (WrappedMonoid m) -> Type) (t6989586621679843071 :: m) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal type Apply (WrapMonoidSym0 :: TyFun m (WrappedMonoid m) -> Type) (t6989586621679843071 :: m) = WrapMonoid t6989586621679843071 | |
type WrapMonoidSym1 (t6989586621679843071 :: m6989586621679063757) = WrapMonoid t6989586621679843071 #
data UnwrapMonoidSym0 :: forall m6989586621679063757. (~>) (WrappedMonoid m6989586621679063757) m6989586621679063757 #
Instances
| SuppressUnusedWarnings (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m6989586621679063757) m6989586621679063757 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) (a6989586621679843068 :: WrappedMonoid m) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal type Apply (UnwrapMonoidSym0 :: TyFun (WrappedMonoid m) m -> Type) (a6989586621679843068 :: WrappedMonoid m) | |
type UnwrapMonoidSym1 (a6989586621679843068 :: WrappedMonoid m6989586621679063757) = UnwrapMonoid a6989586621679843068 #
data DualSym0 :: forall (a6989586621679087235 :: Type). (~>) a6989586621679087235 (Dual (a6989586621679087235 :: Type)) #
Instances
| SingI (DualSym0 :: TyFun a (Dual a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings (DualSym0 :: TyFun a6989586621679087235 (Dual a6989586621679087235) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (DualSym0 :: TyFun a (Dual a) -> Type) (t6989586621679842924 :: a) # | |
data GetDualSym0 :: forall a6989586621679087235. (~>) (Dual a6989586621679087235) a6989586621679087235 #
Instances
| SuppressUnusedWarnings (GetDualSym0 :: TyFun (Dual a6989586621679087235) a6989586621679087235 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (GetDualSym0 :: TyFun (Dual a) a -> Type) (a6989586621679842921 :: Dual a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetDualSym1 (a6989586621679842921 :: Dual a6989586621679087235) = GetDual a6989586621679842921 #
data AllSym0 :: (~>) Bool All #
Instances
| SingI AllSym0 # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings AllSym0 # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply AllSym0 (t6989586621679842938 :: Bool) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
data GetAllSym0 :: (~>) All Bool #
Instances
| SuppressUnusedWarnings GetAllSym0 # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply GetAllSym0 (a6989586621679842935 :: All) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetAllSym1 (a6989586621679842935 :: All) = GetAll a6989586621679842935 #
data AnySym0 :: (~>) Bool Any #
Instances
| SingI AnySym0 # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings AnySym0 # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply AnySym0 (t6989586621679842952 :: Bool) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
data GetAnySym0 :: (~>) Any Bool #
Instances
| SuppressUnusedWarnings GetAnySym0 # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply GetAnySym0 (a6989586621679842949 :: Any) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetAnySym1 (a6989586621679842949 :: Any) = GetAny a6989586621679842949 #
data SumSym0 :: forall (a6989586621679087220 :: Type). (~>) a6989586621679087220 (Sum (a6989586621679087220 :: Type)) #
Instances
| SingI (SumSym0 :: TyFun a (Sum a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
| SuppressUnusedWarnings (SumSym0 :: TyFun a6989586621679087220 (Sum a6989586621679087220) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (SumSym0 :: TyFun a (Sum a) -> Type) (t6989586621679842969 :: a) # | |
data GetSumSym0 :: forall a6989586621679087220. (~>) (Sum a6989586621679087220) a6989586621679087220 #
Instances
| SuppressUnusedWarnings (GetSumSym0 :: TyFun (Sum a6989586621679087220) a6989586621679087220 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (GetSumSym0 :: TyFun (Sum a) a -> Type) (a6989586621679842966 :: Sum a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetSumSym1 (a6989586621679842966 :: Sum a6989586621679087220) = GetSum a6989586621679842966 #
data ProductSym0 :: forall (a6989586621679087225 :: Type). (~>) a6989586621679087225 (Product (a6989586621679087225 :: Type)) #
Instances
| SingI (ProductSym0 :: TyFun a (Product a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods sing :: Sing ProductSym0 # | |
| SuppressUnusedWarnings (ProductSym0 :: TyFun a6989586621679087225 (Product a6989586621679087225) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (ProductSym0 :: TyFun a (Product a) -> Type) (t6989586621679842986 :: a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type ProductSym1 (t6989586621679842986 :: a6989586621679087225) = Product t6989586621679842986 #
data GetProductSym0 :: forall a6989586621679087225. (~>) (Product a6989586621679087225) a6989586621679087225 #
Instances
| SuppressUnusedWarnings (GetProductSym0 :: TyFun (Product a6989586621679087225) a6989586621679087225 -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (GetProductSym0 :: TyFun (Product a) a -> Type) (a6989586621679842983 :: Product a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal type Apply (GetProductSym0 :: TyFun (Product a) a -> Type) (a6989586621679842983 :: Product a) = GetProduct a6989586621679842983 | |
type GetProductSym1 (a6989586621679842983 :: Product a6989586621679087225) = GetProduct a6989586621679842983 #
data OptionSym0 :: forall (a6989586621679063763 :: Type). (~>) (Maybe a6989586621679063763) (Option (a6989586621679063763 :: Type)) #
Instances
| SingI (OptionSym0 :: TyFun (Maybe a) (Option a) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods sing :: Sing OptionSym0 # | |
| SuppressUnusedWarnings (OptionSym0 :: TyFun (Maybe a6989586621679063763) (Option a6989586621679063763) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (OptionSym0 :: TyFun (Maybe a) (Option a) -> Type) (t6989586621679842907 :: Maybe a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type OptionSym1 (t6989586621679842907 :: Maybe a6989586621679063763) = Option t6989586621679842907 #
data GetOptionSym0 :: forall a6989586621679063763. (~>) (Option a6989586621679063763) (Maybe a6989586621679063763) #
Instances
| SuppressUnusedWarnings (GetOptionSym0 :: TyFun (Option a6989586621679063763) (Maybe a6989586621679063763) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal Methods suppressUnusedWarnings :: () # | |
| type Apply (GetOptionSym0 :: TyFun (Option a) (Maybe a) -> Type) (a6989586621679842904 :: Option a) # | |
Defined in Data.Singletons.Prelude.Semigroup.Internal | |
type GetOptionSym1 (a6989586621679842904 :: Option a6989586621679063763) = GetOption a6989586621679842904 #
data ArgSym0 :: forall (a6989586621679063738 :: Type) (b6989586621679063739 :: Type). (~>) a6989586621679063738 ((~>) b6989586621679063739 (Arg (a6989586621679063738 :: Type) (b6989586621679063739 :: Type))) #
Instances
| SingI (ArgSym0 :: TyFun a (b ~> Arg a b) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup | |
| SuppressUnusedWarnings (ArgSym0 :: TyFun a6989586621679063738 (b6989586621679063739 ~> Arg a6989586621679063738 b6989586621679063739) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup Methods suppressUnusedWarnings :: () # | |
| type Apply (ArgSym0 :: TyFun a6989586621679063738 (b6989586621679063739 ~> Arg a6989586621679063738 b6989586621679063739) -> Type) (t6989586621680907981 :: a6989586621679063738) # | |
Defined in Data.Singletons.Prelude.Semigroup type Apply (ArgSym0 :: TyFun a6989586621679063738 (b6989586621679063739 ~> Arg a6989586621679063738 b6989586621679063739) -> Type) (t6989586621680907981 :: a6989586621679063738) = (ArgSym1 t6989586621680907981 b6989586621679063739 :: TyFun b6989586621679063739 (Arg a6989586621679063738 b6989586621679063739) -> Type) | |
data ArgSym1 (t6989586621680907981 :: (a6989586621679063738 :: Type)) :: forall (b6989586621679063739 :: Type). (~>) b6989586621679063739 (Arg (a6989586621679063738 :: Type) (b6989586621679063739 :: Type)) #
Instances
| SingI d => SingI (ArgSym1 d b :: TyFun b (Arg a b) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup | |
| SuppressUnusedWarnings (ArgSym1 t6989586621680907981 b6989586621679063739 :: TyFun b6989586621679063739 (Arg a6989586621679063738 b6989586621679063739) -> Type) # | |
Defined in Data.Singletons.Prelude.Semigroup Methods suppressUnusedWarnings :: () # | |
| type Apply (ArgSym1 t6989586621680907981 b :: TyFun b (Arg a b) -> Type) (t6989586621680907982 :: b) # | |
type ArgSym2 (t6989586621680907981 :: a6989586621679063738) (t6989586621680907982 :: b6989586621679063739) = Arg t6989586621680907981 t6989586621680907982 #