@hackage composite-cassava0.0.3.1
Csv parsing functionality for composite.
Categories
License
MIT
Maintainer
dan.firth@homotopic.tech
Links
Versions
Installation
Dependencies (6)
- base >=4.7 && <5
- cassava >=0.5.0.0 && <0.6
- composite-base >=0.7.0.0 && <0.8
- text
- unordered-containers
- vector Show all…
Dependents (1)
@hackage/sheets
composite-cassava
Provides FromNamedRecord and ToNamedRecord instances for composite records.
In order to use this, use DerivingVia with one of the newtypes, depending on your use case. The recommended way is like so:
withLensesAndProxies
[d|
type A = "A" :-> Text
type B = "B" :-> Double
type C = "C" :-> Text
type D = "D" :-> Int
|]
type RecMaybe = Rec Maybe '[A, B, C, D]
deriving newtype instance FromField A
deriving newtype instance FromField B
deriving newtype instance FromField C
deriving newtype instance FromField D
deriving newtype instance ToField A
deriving newtype instance ToField B
deriving newtype instance ToField C
deriving newtype instance ToField D
deriving via (TF Maybe '[A, B, C, D]) instance FromNamedRecord RecMaybe
deriving via (TF Maybe '[A, B, C, D]) instance ToNamedRecord RecMaybe