Options that further configure how the functions in Data.Functor.Classes.Generic should behave.
Moduletransformers-compat-0.7.2Haskell2010
Data.Functor.Classes.Generic.Internal
Internal functionality for Data.Functor.Classes.Generic.
This is an internal module and, as such, the API is not guaranteed to remain the same between any given release.
- 9 types
- 12 classes
- 15 values
- Packagetransformers-compat-0.7.2
- Exports36
- LanguageHaskell2010
- LicenceBSD-3-Clause
- SourceInternal.hs
Options
3 declarationsOptions that match the behavior of the installed version of GHC.
Options that match the behavior of the most recent GHC release.
Eq1
4 declarationsLike liftEqDefault, but with configurable Options. Currently, the Options have no effect (but this may change in the future).
Class of generic representation types that can lift equality through unary type constructors.
Instances15GEq1, …
GEq1 NonV4 Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v U1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v UAddrDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v UCharDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v UDoubleDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v UFloatDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v UIntDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v UWordDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v V1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalEq1 f => GEq1 NonV4 (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalEq c => GEq1 v (K1 i c)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GEq1 v f, GEq1 v g) => GEq1 v (f :*: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GEq1 v f, GEq1 v g) => GEq1 v (f :+: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq1 v f => GEq1 v (M1 i c f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Eq1 f, GEq1 NonV4 g) => GEq1 NonV4 (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Ord1
4 declarationsA sensible default liftCompare implementation for Generic1 instances.
Like liftCompareDefault, but with configurable Options. Currently, the Options have no effect (but this may change in the future).
Class of generic representation types that can lift a total order through unary type constructors.
Methods
gliftCompare :: Ord1Args v a b -> t a -> t b -> Ordering
Instances15GOrd1, …
GOrd1 NonV4 Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v U1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v UAddrDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v UCharDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v UDoubleDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v UFloatDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v UIntDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v UWordDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v V1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalOrd1 f => GOrd1 NonV4 (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalOrd c => GOrd1 v (K1 i c)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GOrd1 v f, GOrd1 v g) => GOrd1 v (f :*: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GOrd1 v f, GOrd1 v g) => GOrd1 v (f :+: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 v f => GOrd1 v (M1 i c f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Ord1 f, GOrd1 NonV4 g) => GOrd1 NonV4 (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
An Ord1Args value either stores an Ord a dictionary (for the
transformers-0.4 version of Ord1), or it stores the function argument that
compares occurrences of the type parameter (for the non-transformers-0.4
version of Ord1).
Constructors
V4Ord1Args :: Ord a => Ord1Args V4 a aNonV4Ord1Args :: (a -> b -> Ordering) -> Ord1Args NonV4 a b
Read1
5 declarationsA sensible default liftReadsPrec implementation for Generic1 instances.
Like liftReadsPrecDefault, but with configurable Options. Currently, the Options have no effect (but this may change in the future).
Class of generic representation types for unary type constructors that can be parsed from a String.
Methods
gliftReadPrec :: Read1Args v a -> ReadPrec (f a)
Instances4GRead1
GRead1 v V1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Constructor c, GRead1Con v f, IsNullaryCon f) => GRead1 v (C1 c f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GRead1 v f, GRead1 v g) => GRead1 v (f :+: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GRead1 v f, IsNullaryDataType f) => GRead1 v (D1 d f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Class of generic representation types for unary type constructors that can be parsed from a String, and for which the ConType has been determined.
Methods
gliftReadPrecCon :: ConType -> Read1Args v a -> ReadPrec (f a)
Instances7GRead1Con, …
GRead1Con NonV4 Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGRead1Con v U1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalRead1 f => GRead1Con NonV4 (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalRead c => GRead1Con v (K1 i c)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Selector s, GRead1Con v f) => GRead1Con v (S1 s f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GRead1Con v f, GRead1Con v g) => GRead1Con v (f :*: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Read1 f, GRead1Con NonV4 g) => GRead1Con NonV4 (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
A Read1Args value either stores a Read a dictionary (for the
transformers-0.4 version of Read1), or it stores the two function arguments
that parse occurrences of the type parameter (for the non-transformers-0.4
version of Read1).
Constructors
V4Read1Args :: Read a => Read1Args V4 aNonV4Read1Args :: ReadPrec a -> ReadPrec [a] -> Read1Args NonV4 a
Show1
5 declarationsA sensible default liftShowsPrec implementation for Generic1 instances.
Like liftShowsPrecDefault, but with configurable Options.
Class of generic representation types for unary type constructors that can be converted to a String.
Methods
gliftShowsPrec :: Options -> Show1Args v a -> Int -> f a -> ShowS
Instances4GShow1
GShow1 v V1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow1 v f => GShow1 v (D1 d f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Constructor c, GShow1Con v f, IsNullaryCon f) => GShow1 v (C1 c f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GShow1 v f, GShow1 v g) => GShow1 v (f :+: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Instances12GShow1Con, …
GShow1Con NonV4 Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow1Con v U1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow1Con v UCharDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow1Con v UDoubleDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow1Con v UFloatDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow1Con v UIntDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow1Con v UWordDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalShow1 f => GShow1Con NonV4 (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalShow c => GShow1Con v (K1 i c)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Selector s, GShow1Con v f) => GShow1Con v (S1 s f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GShow1Con v f, GShow1Con v g) => GShow1Con v (f :*: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Show1 f, GShow1Con NonV4 g) => GShow1Con NonV4 (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
A Show1Args value either stores a Show a dictionary (for the
transformers-0.4 version of Show1), or it stores the two function arguments
that show occurrences of the type parameter (for the non-transformers-0.4
version of Show1).
Constructors
V4Show1Args :: Show a => Show1Args V4 aNonV4Show1Args :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Show1Args NonV4 a
Eq
2 declarationsInstances15GEq, …
Eq p => GEq (Par1 p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (U1 p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (UAddr p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (UChar p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (UDouble p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (UFloat p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (UInt p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (UWord p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (V1 p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Eq1 f, Eq p) => GEq (Rec1 f p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalEq c => GEq (K1 i c p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GEq (f p), GEq (g p)) => GEq ((:*:) f g p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GEq (f p), GEq (g p)) => GEq ((:+:) f g p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGEq (f p) => GEq (M1 i c f p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Eq1 f, GEq (g p)) => GEq ((:.:) f g p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Ord
2 declarationsClass of generic representation types that can be totally ordered.
Instances15GOrd, …
Ord p => GOrd (Par1 p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (U1 p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (UAddr p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (UChar p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (UDouble p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (UFloat p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (UInt p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (UWord p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (V1 p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Ord1 f, Ord p) => GOrd (Rec1 f p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalOrd c => GOrd (K1 i c p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GOrd (f p), GOrd (g p)) => GOrd ((:*:) f g p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GOrd (f p), GOrd (g p)) => GOrd ((:+:) f g p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd (f p) => GOrd (M1 i c f p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Ord1 f, GOrd (g p)) => GOrd ((:.:) f g p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Read
2 declarationsClass of generic representation types that can be parsed from a String.
Instances4GRead
GRead (V1 p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Constructor c, GReadCon (f p), IsNullaryCon f) => GRead (C1 c f p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GRead (f p), GRead (g p)) => GRead ((:+:) f g p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GRead (f p), IsNullaryDataType f) => GRead (D1 d f p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Show
3 declarationsLike showsPrecDefault, but with configurable Options.
Class of generic representation types that can be converted to a String.
Methods
gshowsPrec :: Options -> Int -> a -> ShowS
Instances4GShow
GShow (V1 p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow (f p) => GShow (D1 d f p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Constructor c, GShowCon (f p), IsNullaryCon f) => GShow (C1 c f p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GShow (f p), GShow (g p)) => GShow ((:+:) f g p)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
FunctorClassesDefault
1 declarationAn adapter newtype, suitable for DerivingVia. Its Eq1, Ord1,
Read1, and Show1 instances leverage Generic1-based defaults.
Constructors
Instances8Eq1, Ord1, Read1, Show1, Eq, Ord, …
(GEq1 NonV4 (Rep1 f), Generic1 f) => Eq1 (FunctorClassesDefault f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GOrd1 NonV4 (Rep1 f), Generic1 f) => Ord1 (FunctorClassesDefault f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GRead1 NonV4 (Rep1 f), Generic1 f) => Read1 (FunctorClassesDefault f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GShow1 NonV4 (Rep1 f), Generic1 f) => Show1 (FunctorClassesDefault f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GEq (Rep1 f a), Generic1 f) => Eq (FunctorClassesDefault f a)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GOrd (Rep1 f a), Generic1 f) => Ord (FunctorClassesDefault f a)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GRead (Rep1 f a), Generic1 f) => Read (FunctorClassesDefault f a)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(GShow (Rep1 f a), Generic1 f) => Show (FunctorClassesDefault f a)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Miscellaneous types
5 declarationsA type-level indicator that the transformers-0.4 version of a class method
is being derived generically.
A type-level indicator that the non-transformers-0.4 version of a class
method is being derived generically.
Instances12GEq1, GOrd1, GRead1Con, GShow1Con, …
GEq1 NonV4 Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGOrd1 NonV4 Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGRead1Con NonV4 Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalGShow1Con NonV4 Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalEq1 f => GEq1 NonV4 (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalOrd1 f => GOrd1 NonV4 (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalRead1 f => GRead1Con NonV4 (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalShow1 f => GShow1Con NonV4 (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Eq1 f, GEq1 NonV4 g) => GEq1 NonV4 (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Ord1 f, GOrd1 NonV4 g) => GOrd1 NonV4 (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Read1 f, GRead1Con NonV4 g) => GRead1Con NonV4 (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal(Show1 f, GShow1Con NonV4 g) => GShow1Con NonV4 (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Class of generic representation types that represent a data type with zero or more constructors.
Methods
isNullaryDataType :: f a -> BoolReturns True if the data type has no constructors.
Instances3IsNullaryDataType
IsNullaryDataType V1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryDataType (C1 c f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryDataType (f :+: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
Class of generic representation types that represent a constructor with zero or more fields.
Methods
isNullaryCon :: f a -> BoolReturns True if the constructor has no fields.
Instances12IsNullaryCon, …
IsNullaryCon Par1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon U1Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon UCharDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon UDoubleDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon UFloatDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon UIntDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon UWordDefined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon (Rec1 f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon (K1 i c)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon (f :*: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon f => IsNullaryCon (S1 s f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.InternalIsNullaryCon (f :.: g)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal