An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.

deriving-compat

deriving-compat 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 Deriving Ord Deriving Read Deriving Show 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. In addition, deriving-compat also provides some additional deriving functionality that has not yet been merged into upstream GHC. Aside from the GHC deriving extensions mentioned above, deriving-compat also permits deriving instances of classes in the Data.Functor.Classes module, covering the Eq1, Eq2, Ord1, Ord2, Read1, Read2, Show1, and Show2 classes. This extra functionality is outside of the main scope of deriving-compat, as it does not backport extensions that exist in today's GHC. Nevertheless, the underlying Template Haskell machinery needed to derive Eq and friends extends very naturally to Eq1 and friends, so this extra functionality is included in deriving-compat as a convenience. Note that some recent GHC typeclasses/extensions are not covered by this package: DeriveGeneric, which was introducted in GHC 7.2 for deriving Generic instances, and modified in GHC 7.6 to allow derivation of Generic1 instances. Use Generics.Deriving.TH from generic-deriving to derive Generic(1) using Template Haskell. DeriveLift, which was introduced in GHC 8.0 for deriving Lift instances. Use Language.Haskell.TH.Lift from th-lift to derive Lift using Template Haskell. The Bifunctor typeclass, which was introduced in GHC 7.10, as well as the Bifoldable and Bitraversable typeclasses, which were introduced in GHC 8.2. Use Data.Bifunctor.TH from bifunctors to derive these typeclasses using Template Haskell.

Ecosystem
hackage.haskell.org
Latest Release
0.6.8
3 months ago
Versions
35
Downloads
49,087 total
Dependent Packages
10
Dependent Repos
91
Links
Registry hackage.haskell.org
Source Repository
JSON API View JSON
CodeMeta codemeta.json
Package Details
PURL pkg:hackage/deriving-compat
spec
License BSD-3-Clause
First Release over 10 years ago
Last Synced 12 days ago
Repository
Stars 13 on GitHub
Forks 4 on GitHub
Commits 175
Committers 4
Avg per Author 43.75
DDS 0.017
Rankings on hackage.haskell.org
Downloads Top 3.0%
Dependent packages Top 2.7%
Dependent repos Top 6.4%