deriving-compat-0.5.2: Backports of GHC deriving extensions
Provides Template Haskell functions that mimic deriving extensions that were introduced or modified in recent versions of GHC. Currently, the following typeclasses/extensions are covered:
- Deriving
Bounded - Deriving
Enum - Deriving
Ix - Deriving
Eq,Eq1, andEq2 - Deriving
Ord,Ord1, andOrd2 - Deriving
Read,Read1, andRead2 - Deriving
Show,Show1, andShow2 DeriveFoldable
DeriveFunctor
DeriveTraversable
GeneralizedNewtypeDeriving(with GHC 8.2 or later)DerivingVia(with GHC 8.2 or later)
See the Data.Deriving module for a full list of backported changes.
Note that some recent GHC typeclasses/extensions are not covered by this package:
DeriveDataTypeable
DeriveGeneric, which was introducted in GHC 7.2 for derivingGenericinstances, and modified in GHC 7.6 to allow derivation ofGeneric1instances. UseGenerics.Deriving.THfromgeneric-derivingto deriveGeneric(1)using Template Haskell.DeriveLift, which was introduced in GHC 8.0 for derivingLiftinstances. UseLanguage.Haskell.TH.Liftfromth-liftto deriveLiftusing Template Haskell.- The
Bifunctortypeclass, which was introduced in GHC 7.10, as well as theBifoldableandBitraversabletypeclasses, which were introduced in GHC 8.2. UseData.Bifunctor.THfrombifunctorsto derive these typeclasses using Template Haskell.
Signatures
Modules
- Data
- Text