| GSemigroup Ordering Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup () Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup Void Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup All Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup Any Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup [a] Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup a => GSemigroup (Maybe a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| Ord a => GSemigroup (Min a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| Ord a => GSemigroup (Max a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup (First a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup (Last a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GMonoid m => GSemigroup (WrappedMonoid m) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup |
| GSemigroup a => GSemigroup (Option a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup a => GSemigroup (Identity a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup (First a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup (Last a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup a => GSemigroup (Dual a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup (Endo a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| Num a => GSemigroup (Sum a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| Num a => GSemigroup (Product a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup a => GSemigroup (Down a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup (NonEmpty a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| (Generic a, GSemigroup' (Rep a)) => GSemigroup (Default a) Source # | Semigroups often have many sensible implementations of
<> / gsappend, and therefore no sensible default.
Indeed, there is no GSemigroup' instance for representations of sum
types. In other cases, one may wish to use the existing wrapper newtypes in
base, such as the following (using First): newtype FirstSemigroup = FirstSemigroup Bool
deriving stock (Eq, Show)
deriving (GSemigroup) via (First Bool)
|
Instance detailsDefined in Generics.Deriving.Default |
| GSemigroup b => GSemigroup (a -> b) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup (Either a b) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| (GSemigroup a, GSemigroup b) => GSemigroup (a, b) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| GSemigroup (Proxy s) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| (GSemigroup a, GSemigroup b, GSemigroup c) => GSemigroup (a, b, c) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal Methods gsappend :: (a, b, c) -> (a, b, c) -> (a, b, c) Source # gstimes :: Integral b0 => b0 -> (a, b, c) -> (a, b, c) Source # gsconcat :: NonEmpty (a, b, c) -> (a, b, c) Source # |
| GSemigroup a => GSemigroup (Const a b) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| Alternative f => GSemigroup (Alt f a) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal |
| (GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d) => GSemigroup (a, b, c, d) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal Methods gsappend :: (a, b, c, d) -> (a, b, c, d) -> (a, b, c, d) Source # gstimes :: Integral b0 => b0 -> (a, b, c, d) -> (a, b, c, d) Source # gsconcat :: NonEmpty (a, b, c, d) -> (a, b, c, d) Source # |
| (GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d, GSemigroup e) => GSemigroup (a, b, c, d, e) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal Methods gsappend :: (a, b, c, d, e) -> (a, b, c, d, e) -> (a, b, c, d, e) Source # gstimes :: Integral b0 => b0 -> (a, b, c, d, e) -> (a, b, c, d, e) Source # gsconcat :: NonEmpty (a, b, c, d, e) -> (a, b, c, d, e) Source # |
| (GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d, GSemigroup e, GSemigroup f) => GSemigroup (a, b, c, d, e, f) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal Methods gsappend :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> (a, b, c, d, e, f) Source # gstimes :: Integral b0 => b0 -> (a, b, c, d, e, f) -> (a, b, c, d, e, f) Source # gsconcat :: NonEmpty (a, b, c, d, e, f) -> (a, b, c, d, e, f) Source # |
| (GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d, GSemigroup e, GSemigroup f, GSemigroup g) => GSemigroup (a, b, c, d, e, f, g) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal Methods gsappend :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) Source # gstimes :: Integral b0 => b0 -> (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) Source # gsconcat :: NonEmpty (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) Source # |
| (GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d, GSemigroup e, GSemigroup f, GSemigroup g, GSemigroup h) => GSemigroup (a, b, c, d, e, f, g, h) Source # | |
Instance detailsDefined in Generics.Deriving.Semigroup.Internal Methods gsappend :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) Source # gstimes :: Integral b0 => b0 -> (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) Source # gsconcat :: NonEmpty (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) Source # |