Safe Haskell | None |
---|
Declares serveral templates for comfortable instance derivation
- mkScanner :: Name -> Q [Dec]
- mkPrinter :: Name -> Q [Dec]
- mkFinalizer :: Name -> Q [Dec]
- mkExpander :: Name -> Q [Dec]
- mkExpanderEnv :: Name -> Q [Dec]
- mkHistoryEnv :: Name -> Q [Dec]
- mkInteractor :: InteractorMaker i => Name -> i
- mkSpawn :: Name -> Q [Dec]
- mkRandom :: Name -> Q [Dec]
- mkClock :: Name -> Q [Dec]
- mkChatty :: Name -> Q [Dec]
- mkChannelPrinter :: Name -> Name -> Q [Dec]
- mkDefCP :: Name -> Q [Dec]
- mkArchiver :: Name -> Q [Dec]
- mkExtendedPrinter :: Name -> Q [Dec]
Documentation
mkFinalizer :: Name -> Q [Dec]Source
Automatically derives a MonadFinalizer instance for you.
mkExpander :: Name -> Q [Dec]Source
Automatically derives a MonadExpand instance for you.
mkExpanderEnv :: Name -> Q [Dec]Source
Automatically derives an ExpanderEnv instance for you
mkHistoryEnv :: Name -> Q [Dec]Source
Automatically derives a HistoryEnv instance for you
mkInteractor :: InteractorMaker i => Name -> iSource
mkInteractor takes a type name and a list of typeclass derivers and applies them all.
mkChannelPrinter :: Name -> Name -> Q [Dec]Source
Automatically derives a ChannelPrinter instance for you.
mkArchiver :: Name -> Q [Dec]Source
Automatically derives all chatty typeclasses that are sensible for an ArchiverT.
mkExtendedPrinter :: Name -> Q [Dec]Source
Automatically derives an ExtendedPrinter instance for you.