Hoogle Search
Within LTS Haskell 24.52 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
mapperIsLabelDeriver :: Deriverdomain Domain Generates instances of IsLabel for sums and products, providing mappers over their components.
Product Example
Having the following schema:NetworkAddress: product: protocol: TransportProtocol host: Host port: Word16
The following instances will be generated:instance mapper ~ (TransportProtocol -> TransportProtocol) => IsLabel "protocol" (mapper -> NetworkAddress -> NetworkAddress) where fromLabel mapper (NetworkAddress a b c) = NetworkAddress (mapper a) b c instance mapper ~ (Host -> Host) => IsLabel "host" (mapper -> NetworkAddress -> NetworkAddress) where fromLabel mapper (NetworkAddress a b c) = NetworkAddress a (mapper b) c instance mapper ~ (Word16 -> Word16) => IsLabel "port" (mapper -> NetworkAddress -> NetworkAddress) where fromLabel mapper (NetworkAddress a b c) = NetworkAddress a b (mapper c)
In case you're wondering what this tilde (~) constraint business is about, refer to the Type Equality Constraint section.Sum Example
Having the following schema:Host: sum: ip: Ip name: Text
The following instances will be generated:instance mapper ~ (Ip -> Ip) => IsLabel "ip" (mapper -> Host -> Host) where fromLabel fn (IpHost a) = IpHost (fn a) fromLabel _ a = a instance mapper ~ (Text -> Text) => IsLabel "name" (mapper -> Host -> Host) where fromLabel fn (NameHost a) = NameHost (fn a) fromLabel _ a = a
In case you're wondering what this tilde (~) constraint business is about, refer to the Type Equality Constraint section.-
domain Domain Derives Ord. Requires to have the StandaloneDeriving compiler extension enabled.
-
domain Domain Derives Show. Requires to have the StandaloneDeriving compiler extension enabled.
-
domain Domain Combination of all derivers exported by this module.
-
domain Domain Derives Typeable. Requires to have the StandaloneDeriving and DeriveDataTypeable compiler extensions enabled.
reallyDeriveCascading :: Name -> (Name -> DecsQ) -> Name -> DecsQexpress Data.Express.Utils.TH No documentation available.
defineHasPrimaryConstraintInstanceDerived :: TypeQ -> Q [Dec]persistable-record Database.Record.TH Template of HasKeyConstraint instance.
defaultDeriveOptions :: DeriveOptionsavro Data.Avro.Deriving Default deriving options
defaultDeriveOptions = DeriveOptions { fieldNameBuilder = mkPrefixedFieldName , fieldStrictness = mkLazyField , namespaceBehavior = IgnoreNamespaces }
-
barbies Barbies.Internal CanDeriveApplicativeB B f g is in practice a predicate about B only. Intuitively, it says that the following holds, for any arbitrary f:
- There is an instance of Generic (B f).
- B has only one constructor (that is, it is not a sum-type).
- Every field of B f is either a monoid, or of the form f a, for some type a.
-
barbies Barbies.Internal CanDeriveApplicativeT T f g x is in practice a predicate about T only. Intuitively, it says that the following holds, for any arbitrary f:
- There is an instance of Generic (T f).
- T has only one constructor (that is, it is not a sum-type).
- Every field of T f x is either a monoid, or of the form f a, for some type a.