- declareSetters :: Name -> Q [Dec]
- declareSetters' :: Name -> Q [Dec]
Documentation
declareSetters :: Name -> Q [Dec]Source
Declare setters for all fields of given `data' type. For example, for
data Record = Record { ... someField :: Integer, ... }
one will automatically get
someField :: Record -> Integer.
After calling
$(declareSetters ''Record)
one will get
setSomeField :: Integer -> Record -> Record.
declareSetters' :: Name -> Q [Dec]Source
Similar to declareSetters
, but add data type name to all setters' names.
For example, one will get setRecordSomeField
instead of setSomeField
.