references-0.2.1.1: Generalization of lenses, folds and traversals to handle monads and addition.

Safe HaskellNone

Control.Reference.TH.Monad

Description

A module for making connections between different monads.

Synopsis

Documentation

makeMonadRepr :: (ToQType t1, ToQType t2, ToQExp e) => t1 -> t2 -> e -> Q [Dec]Source

Creates MMorph instances from reflectivity, and transitivity of the relation. Uses data from all instances declared so far.

class ToQType t whereSource

A type name or a type expression, that can be converted into a type inside Q.

Methods

toQType :: t -> Q TypeSource

class ToQExp t whereSource

A variable or function name or an expression, that can be converted into an expression inside Q.

Methods

toQExp :: t -> Q ExpSource

Instances