Safe Haskell | Safe-Infered |
---|
- class Convertible a b where
- convert :: a -> b
- appE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQ
- appT' :: (Convertible typeQ TypeQ, Convertible typeQ' TypeQ) => typeQ -> typeQ' -> TypeQ
- appsE' :: Convertible expQs [ExpQ] => expQs -> ExpQ
- arithSeqE' :: Convertible rangeQ RangeQ => rangeQ -> ExpQ
- arrowK' :: (Convertible kind Kind, Convertible kind' Kind) => kind -> kind' -> Kind
- asP' :: (Convertible name Name, Convertible patQ PatQ) => name -> patQ -> PatQ
- bangP' :: Convertible patQ PatQ => patQ -> PatQ
- bindS' :: (Convertible patQ PatQ, Convertible expQ ExpQ) => patQ -> expQ -> StmtQ
- caseE' :: (Convertible expQ ExpQ, Convertible matchQs [MatchQ]) => expQ -> matchQs -> ExpQ
- classD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible funDeps [FunDep], Convertible decQs [DecQ]) => cxtQ -> name -> tyVarBndrs -> funDeps -> decQs -> DecQ
- classP' :: (Convertible name Name, Convertible typeQs [TypeQ]) => name -> typeQs -> PredQ
- clause' :: (Convertible patQs [PatQ], Convertible bodyQ BodyQ, Convertible decQs [DecQ]) => patQs -> bodyQ -> decQs -> ClauseQ
- compE' :: Convertible stmtQs [StmtQ] => stmtQs -> ExpQ
- conE' :: Convertible name Name => name -> ExpQ
- conP' :: (Convertible name Name, Convertible patQs [PatQ]) => name -> patQs -> PatQ
- conT' :: Convertible name Name => name -> TypeQ
- condE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> ExpQ
- cxt' :: Convertible predQs [PredQ] => predQs -> CxtQ
- dataD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible conQs [ConQ], Convertible names [Name]) => cxtQ -> name -> tyVarBndrs -> conQs -> names -> DecQ
- dataInstD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible typeQs [TypeQ], Convertible conQs [ConQ], Convertible names [Name]) => cxtQ -> name -> typeQs -> conQs -> names -> DecQ
- doE' :: Convertible stmtQs [StmtQ] => stmtQs -> ExpQ
- dyn' :: Convertible string String => string -> Q Exp
- equalP' :: (Convertible typeQ TypeQ, Convertible typeQ' TypeQ) => typeQ -> typeQ' -> PredQ
- familyKindD' :: (Convertible famFlavour FamFlavour, Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible kind Kind) => famFlavour -> name -> tyVarBndrs -> kind -> DecQ
- familyNoKindD' :: (Convertible famFlavour FamFlavour, Convertible name Name, Convertible tyVarBndrs [TyVarBndr]) => famFlavour -> name -> tyVarBndrs -> DecQ
- fieldExp' :: (Convertible name Name, Convertible expQ ExpQ) => name -> expQ -> Q (Name, Exp)
- fieldPat' :: (Convertible name Name, Convertible patQ PatQ) => name -> patQ -> FieldPatQ
- forImpD' :: (Convertible callconv Callconv, Convertible safety Safety, Convertible string String, Convertible name Name, Convertible typeQ TypeQ) => callconv -> safety -> string -> name -> typeQ -> DecQ
- forallC' :: (Convertible tyVarBndrs [TyVarBndr], Convertible cxtQ CxtQ, Convertible conQ ConQ) => tyVarBndrs -> cxtQ -> conQ -> ConQ
- forallT' :: (Convertible tyVarBndrs [TyVarBndr], Convertible cxtQ CxtQ, Convertible typeQ TypeQ) => tyVarBndrs -> cxtQ -> typeQ -> TypeQ
- fromE' :: Convertible expQ ExpQ => expQ -> ExpQ
- fromR' :: Convertible expQ ExpQ => expQ -> RangeQ
- fromThenE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQ
- fromThenR' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> RangeQ
- fromThenToE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> ExpQ
- fromThenToR' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> RangeQ
- fromToE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQ
- fromToR' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> RangeQ
- funD' :: (Convertible name Name, Convertible clauseQs [ClauseQ]) => name -> clauseQs -> DecQ
- funDep' :: (Convertible names [Name], Convertible names' [Name]) => names -> names' -> FunDep
- global' :: Convertible name Name => name -> ExpQ
- guardedB' :: Convertible guardedExpQs [Q (Guard, Exp)] => guardedExpQs -> BodyQ
- infixApp' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> ExpQ
- infixC' :: (Convertible strictTypeQ (Q (Strict, Type)), Convertible name Name, Convertible strictTypeQ' (Q (Strict, Type))) => strictTypeQ -> name -> strictTypeQ' -> ConQ
- infixE' :: (Convertible maybeExpQ (Maybe ExpQ), Convertible expQ ExpQ, Convertible maybeExpQ' (Maybe ExpQ)) => maybeExpQ -> expQ -> maybeExpQ' -> ExpQ
- infixP' :: (Convertible patQ PatQ, Convertible name Name, Convertible patQ' PatQ) => patQ -> name -> patQ' -> PatQ
- instanceD' :: (Convertible cxtQ CxtQ, Convertible typeQ TypeQ, Convertible decQs [DecQ]) => cxtQ -> typeQ -> decQs -> DecQ
- kindedTV' :: (Convertible name Name, Convertible kind Kind) => name -> kind -> TyVarBndr
- lam1E' :: (Convertible patQ PatQ, Convertible expQ ExpQ) => patQ -> expQ -> ExpQ
- lamE' :: (Convertible patQs [PatQ], Convertible expQ ExpQ) => patQs -> expQ -> ExpQ
- letE' :: (Convertible decQs [DecQ], Convertible expQ ExpQ) => decQs -> expQ -> ExpQ
- letS' :: Convertible decQs [DecQ] => decQs -> StmtQ
- listE' :: Convertible expQs [ExpQ] => expQs -> ExpQ
- listP' :: Convertible patQs [PatQ] => patQs -> PatQ
- litE' :: Convertible lit Lit => lit -> ExpQ
- litP' :: Convertible lit Lit => lit -> PatQ
- match' :: (Convertible patQ PatQ, Convertible bodyQ BodyQ, Convertible decQs [DecQ]) => patQ -> bodyQ -> decQs -> MatchQ
- newtypeD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible conQ ConQ, Convertible names [Name]) => cxtQ -> name -> tyVarBndrs -> conQ -> names -> DecQ
- newtypeInstD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible typeQs [TypeQ], Convertible conQ ConQ, Convertible names [Name]) => cxtQ -> name -> typeQs -> conQ -> names -> DecQ
- noBindS' :: Convertible expQ ExpQ => expQ -> StmtQ
- normalB' :: Convertible expQ ExpQ => expQ -> BodyQ
- normalC' :: (Convertible name Name, Convertible strictTypeQs [StrictTypeQ]) => name -> strictTypeQs -> ConQ
- normalG' :: Convertible expQ ExpQ => expQ -> GuardQ
- normalGE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> Q (Guard, Exp)
- parS' :: Convertible stmtQss [[StmtQ]] => stmtQss -> StmtQ
- parensE' :: Convertible expQ ExpQ => expQ -> ExpQ
- parensP' :: Convertible patQ PatQ => patQ -> PatQ
- patG' :: Convertible stmtQs [StmtQ] => stmtQs -> GuardQ
- patGE' :: (Convertible stmtQs [StmtQ], Convertible expQ ExpQ) => stmtQs -> expQ -> Q (Guard, Exp)
- plainTV' :: Convertible name Name => name -> TyVarBndr
- pragInlD' :: (Convertible name Name, Convertible inlineSpecQ InlineSpecQ) => name -> inlineSpecQ -> DecQ
- pragSpecD' :: (Convertible name Name, Convertible typeQ TypeQ) => name -> typeQ -> DecQ
- pragSpecInlD' :: (Convertible name Name, Convertible typeQ TypeQ, Convertible inlineSpecQ InlineSpecQ) => name -> typeQ -> inlineSpecQ -> DecQ
- recC' :: (Convertible name Name, Convertible varStrictTypeQs [VarStrictTypeQ]) => name -> varStrictTypeQs -> ConQ
- recConE' :: (Convertible name Name, Convertible nameExpPairQs [Q (Name, Exp)]) => name -> nameExpPairQs -> ExpQ
- recP' :: (Convertible name Name, Convertible fieldPatQs [FieldPatQ]) => name -> fieldPatQs -> PatQ
- recUpdE' :: (Convertible expQ ExpQ, Convertible nameExpPairQs [Q (Name, Exp)]) => expQ -> nameExpPairQs -> ExpQ
- sectionL' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQ
- sectionR' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQ
- sigD' :: (Convertible name Name, Convertible typeQ TypeQ) => name -> typeQ -> DecQ
- sigE' :: (Convertible expQ ExpQ, Convertible typeQ TypeQ) => expQ -> typeQ -> ExpQ
- sigP' :: (Convertible patQ PatQ, Convertible typeQ TypeQ) => patQ -> typeQ -> PatQ
- sigT' :: (Convertible typeQ TypeQ, Convertible kind Kind) => typeQ -> kind -> TypeQ
- strictType' :: (Convertible strictQ (Q Strict), Convertible typeQ TypeQ) => strictQ -> typeQ -> StrictTypeQ
- tildeP' :: Convertible patQ PatQ => patQ -> PatQ
- tupE' :: Convertible expQs [ExpQ] => expQs -> ExpQ
- tupP' :: Convertible patQs [PatQ] => patQs -> PatQ
- tySynD' :: (Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible typeQ TypeQ) => name -> tyVarBndrs -> typeQ -> DecQ
- tySynInstD' :: (Convertible name Name, Convertible typeQs [TypeQ], Convertible typeQ TypeQ) => name -> typeQs -> typeQ -> DecQ
- uInfixE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> ExpQ
- uInfixP' :: (Convertible patQ PatQ, Convertible name Name, Convertible patQ' PatQ) => patQ -> name -> patQ' -> PatQ
- unboxedTupE' :: Convertible expQs [ExpQ] => expQs -> ExpQ
- unboxedTupP' :: Convertible patQs [PatQ] => patQs -> PatQ
- valD' :: (Convertible patQ PatQ, Convertible bodyQ BodyQ, Convertible decQs [DecQ]) => patQ -> bodyQ -> decQs -> DecQ
- varE' :: Convertible name Name => name -> ExpQ
- varP' :: Convertible name Name => name -> PatQ
- varStrictType' :: (Convertible name Name, Convertible strictTypeQ StrictTypeQ) => name -> strictTypeQ -> VarStrictTypeQ
- varT' :: Convertible name Name => name -> TypeQ
- viewP' :: (Convertible expQ ExpQ, Convertible patQ PatQ) => expQ -> patQ -> PatQ
- getFieldE :: Convertible a Name => a -> Int -> Int -> Q Exp
- htuple' :: Convertible a TypeQ => Int -> a -> TypeQ
- (\->) :: (Convertible a [PatQ], Convertible a1 ExpQ) => a -> a1 -> ExpQ
- class Arrows a b | a -> b, b -> a where
- arrow :: a -> b -> b
- (-->) :: (Convertible qa (Q a), Convertible qb (Q b), Arrows a b) => qa -> qb -> Q b
- class Sigs a b c | c -> a b, a -> b c where
- signature :: a -> b -> c
- (.::) :: (Convertible qa (Q a'), Convertible qb (Q b'), Sigs a' b' c) => qa -> qb -> Q c
- svalD :: (Convertible patQ PatQ, Convertible bodyQ BodyQ) => patQ -> bodyQ -> DecQ
- smatch :: (Convertible patQ PatQ, Convertible bodyQ BodyQ) => patQ -> bodyQ -> MatchQ
- sclause :: (Convertible patQs [PatQ], Convertible bodyQ BodyQ) => patQs -> bodyQ -> ClauseQ
- sdataD :: (Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible conQs [ConQ], Convertible names [Name]) => name -> tyVarBndrs -> conQs -> names -> DecQ
- snewtypeD :: (Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible conQ ConQ, Convertible names [Name]) => name -> tyVarBndrs -> conQ -> names -> DecQ
- expQ :: Convertible a ExpQ => a -> ExpQ
- expQs :: Convertible a [ExpQ] => a -> [ExpQ]
- patQ :: Convertible a PatQ => a -> PatQ
- patQs :: Convertible a [PatQ] => a -> [PatQ]
- typeQ :: Convertible a TypeQ => a -> TypeQ
- typeQs :: Convertible a [TypeQ] => a -> [TypeQ]
- name :: Convertible a Name => a -> Name
- tyVarBndr :: Convertible a TyVarBndr => a -> TyVarBndr
- conQ :: Convertible a ConQ => a -> ConQ
- cxtQ :: Convertible a CxtQ => a -> CxtQ
- strictTypeQ :: Convertible a StrictTypeQ => a -> StrictTypeQ
- strictTypeQs :: Convertible a [StrictTypeQ] => a -> [StrictTypeQ]
- decsQ :: Convertible a DecsQ => a -> DecsQ
Documentation
class Convertible a b whereSource
Autoconverting wrappers around Language.Haskell.TH.Lib functions
appE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQSource
appT' :: (Convertible typeQ TypeQ, Convertible typeQ' TypeQ) => typeQ -> typeQ' -> TypeQSource
appsE' :: Convertible expQs [ExpQ] => expQs -> ExpQSource
arithSeqE' :: Convertible rangeQ RangeQ => rangeQ -> ExpQSource
arrowK' :: (Convertible kind Kind, Convertible kind' Kind) => kind -> kind' -> KindSource
asP' :: (Convertible name Name, Convertible patQ PatQ) => name -> patQ -> PatQSource
bangP' :: Convertible patQ PatQ => patQ -> PatQSource
bindS' :: (Convertible patQ PatQ, Convertible expQ ExpQ) => patQ -> expQ -> StmtQSource
caseE' :: (Convertible expQ ExpQ, Convertible matchQs [MatchQ]) => expQ -> matchQs -> ExpQSource
classD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible funDeps [FunDep], Convertible decQs [DecQ]) => cxtQ -> name -> tyVarBndrs -> funDeps -> decQs -> DecQSource
classP' :: (Convertible name Name, Convertible typeQs [TypeQ]) => name -> typeQs -> PredQSource
clause' :: (Convertible patQs [PatQ], Convertible bodyQ BodyQ, Convertible decQs [DecQ]) => patQs -> bodyQ -> decQs -> ClauseQSource
compE' :: Convertible stmtQs [StmtQ] => stmtQs -> ExpQSource
conE' :: Convertible name Name => name -> ExpQSource
conP' :: (Convertible name Name, Convertible patQs [PatQ]) => name -> patQs -> PatQSource
conT' :: Convertible name Name => name -> TypeQSource
condE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> ExpQSource
cxt' :: Convertible predQs [PredQ] => predQs -> CxtQSource
dataD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible conQs [ConQ], Convertible names [Name]) => cxtQ -> name -> tyVarBndrs -> conQs -> names -> DecQSource
dataInstD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible typeQs [TypeQ], Convertible conQs [ConQ], Convertible names [Name]) => cxtQ -> name -> typeQs -> conQs -> names -> DecQSource
doE' :: Convertible stmtQs [StmtQ] => stmtQs -> ExpQSource
equalP' :: (Convertible typeQ TypeQ, Convertible typeQ' TypeQ) => typeQ -> typeQ' -> PredQSource
familyKindD' :: (Convertible famFlavour FamFlavour, Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible kind Kind) => famFlavour -> name -> tyVarBndrs -> kind -> DecQSource
familyNoKindD' :: (Convertible famFlavour FamFlavour, Convertible name Name, Convertible tyVarBndrs [TyVarBndr]) => famFlavour -> name -> tyVarBndrs -> DecQSource
fieldExp' :: (Convertible name Name, Convertible expQ ExpQ) => name -> expQ -> Q (Name, Exp)Source
fieldPat' :: (Convertible name Name, Convertible patQ PatQ) => name -> patQ -> FieldPatQSource
forImpD' :: (Convertible callconv Callconv, Convertible safety Safety, Convertible string String, Convertible name Name, Convertible typeQ TypeQ) => callconv -> safety -> string -> name -> typeQ -> DecQSource
forallC' :: (Convertible tyVarBndrs [TyVarBndr], Convertible cxtQ CxtQ, Convertible conQ ConQ) => tyVarBndrs -> cxtQ -> conQ -> ConQSource
forallT' :: (Convertible tyVarBndrs [TyVarBndr], Convertible cxtQ CxtQ, Convertible typeQ TypeQ) => tyVarBndrs -> cxtQ -> typeQ -> TypeQSource
fromE' :: Convertible expQ ExpQ => expQ -> ExpQSource
fromR' :: Convertible expQ ExpQ => expQ -> RangeQSource
fromThenE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQSource
fromThenR' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> RangeQSource
fromThenToE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> ExpQSource
fromThenToR' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> RangeQSource
fromToE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQSource
fromToR' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> RangeQSource
funD' :: (Convertible name Name, Convertible clauseQs [ClauseQ]) => name -> clauseQs -> DecQSource
funDep' :: (Convertible names [Name], Convertible names' [Name]) => names -> names' -> FunDepSource
global' :: Convertible name Name => name -> ExpQSource
infixApp' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> ExpQSource
infixC' :: (Convertible strictTypeQ (Q (Strict, Type)), Convertible name Name, Convertible strictTypeQ' (Q (Strict, Type))) => strictTypeQ -> name -> strictTypeQ' -> ConQSource
infixE' :: (Convertible maybeExpQ (Maybe ExpQ), Convertible expQ ExpQ, Convertible maybeExpQ' (Maybe ExpQ)) => maybeExpQ -> expQ -> maybeExpQ' -> ExpQSource
infixP' :: (Convertible patQ PatQ, Convertible name Name, Convertible patQ' PatQ) => patQ -> name -> patQ' -> PatQSource
instanceD' :: (Convertible cxtQ CxtQ, Convertible typeQ TypeQ, Convertible decQs [DecQ]) => cxtQ -> typeQ -> decQs -> DecQSource
kindedTV' :: (Convertible name Name, Convertible kind Kind) => name -> kind -> TyVarBndrSource
lam1E' :: (Convertible patQ PatQ, Convertible expQ ExpQ) => patQ -> expQ -> ExpQSource
lamE' :: (Convertible patQs [PatQ], Convertible expQ ExpQ) => patQs -> expQ -> ExpQSource
letE' :: (Convertible decQs [DecQ], Convertible expQ ExpQ) => decQs -> expQ -> ExpQSource
letS' :: Convertible decQs [DecQ] => decQs -> StmtQSource
listE' :: Convertible expQs [ExpQ] => expQs -> ExpQSource
listP' :: Convertible patQs [PatQ] => patQs -> PatQSource
litE' :: Convertible lit Lit => lit -> ExpQSource
litP' :: Convertible lit Lit => lit -> PatQSource
match' :: (Convertible patQ PatQ, Convertible bodyQ BodyQ, Convertible decQs [DecQ]) => patQ -> bodyQ -> decQs -> MatchQSource
newtypeD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible conQ ConQ, Convertible names [Name]) => cxtQ -> name -> tyVarBndrs -> conQ -> names -> DecQSource
newtypeInstD' :: (Convertible cxtQ CxtQ, Convertible name Name, Convertible typeQs [TypeQ], Convertible conQ ConQ, Convertible names [Name]) => cxtQ -> name -> typeQs -> conQ -> names -> DecQSource
noBindS' :: Convertible expQ ExpQ => expQ -> StmtQSource
normalB' :: Convertible expQ ExpQ => expQ -> BodyQSource
normalC' :: (Convertible name Name, Convertible strictTypeQs [StrictTypeQ]) => name -> strictTypeQs -> ConQSource
normalG' :: Convertible expQ ExpQ => expQ -> GuardQSource
normalGE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> Q (Guard, Exp)Source
parS' :: Convertible stmtQss [[StmtQ]] => stmtQss -> StmtQSource
parensE' :: Convertible expQ ExpQ => expQ -> ExpQSource
parensP' :: Convertible patQ PatQ => patQ -> PatQSource
patG' :: Convertible stmtQs [StmtQ] => stmtQs -> GuardQSource
patGE' :: (Convertible stmtQs [StmtQ], Convertible expQ ExpQ) => stmtQs -> expQ -> Q (Guard, Exp)Source
plainTV' :: Convertible name Name => name -> TyVarBndrSource
pragInlD' :: (Convertible name Name, Convertible inlineSpecQ InlineSpecQ) => name -> inlineSpecQ -> DecQSource
pragSpecD' :: (Convertible name Name, Convertible typeQ TypeQ) => name -> typeQ -> DecQSource
pragSpecInlD' :: (Convertible name Name, Convertible typeQ TypeQ, Convertible inlineSpecQ InlineSpecQ) => name -> typeQ -> inlineSpecQ -> DecQSource
recC' :: (Convertible name Name, Convertible varStrictTypeQs [VarStrictTypeQ]) => name -> varStrictTypeQs -> ConQSource
recConE' :: (Convertible name Name, Convertible nameExpPairQs [Q (Name, Exp)]) => name -> nameExpPairQs -> ExpQSource
recP' :: (Convertible name Name, Convertible fieldPatQs [FieldPatQ]) => name -> fieldPatQs -> PatQSource
recUpdE' :: (Convertible expQ ExpQ, Convertible nameExpPairQs [Q (Name, Exp)]) => expQ -> nameExpPairQs -> ExpQSource
sectionL' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQSource
sectionR' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ) => expQ -> expQ' -> ExpQSource
sigD' :: (Convertible name Name, Convertible typeQ TypeQ) => name -> typeQ -> DecQSource
sigE' :: (Convertible expQ ExpQ, Convertible typeQ TypeQ) => expQ -> typeQ -> ExpQSource
sigP' :: (Convertible patQ PatQ, Convertible typeQ TypeQ) => patQ -> typeQ -> PatQSource
sigT' :: (Convertible typeQ TypeQ, Convertible kind Kind) => typeQ -> kind -> TypeQSource
strictType' :: (Convertible strictQ (Q Strict), Convertible typeQ TypeQ) => strictQ -> typeQ -> StrictTypeQSource
tildeP' :: Convertible patQ PatQ => patQ -> PatQSource
tupE' :: Convertible expQs [ExpQ] => expQs -> ExpQSource
tupP' :: Convertible patQs [PatQ] => patQs -> PatQSource
tySynD' :: (Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible typeQ TypeQ) => name -> tyVarBndrs -> typeQ -> DecQSource
tySynInstD' :: (Convertible name Name, Convertible typeQs [TypeQ], Convertible typeQ TypeQ) => name -> typeQs -> typeQ -> DecQSource
uInfixE' :: (Convertible expQ ExpQ, Convertible expQ' ExpQ, Convertible expQ'' ExpQ) => expQ -> expQ' -> expQ'' -> ExpQSource
uInfixP' :: (Convertible patQ PatQ, Convertible name Name, Convertible patQ' PatQ) => patQ -> name -> patQ' -> PatQSource
unboxedTupE' :: Convertible expQs [ExpQ] => expQs -> ExpQSource
unboxedTupP' :: Convertible patQs [PatQ] => patQs -> PatQSource
valD' :: (Convertible patQ PatQ, Convertible bodyQ BodyQ, Convertible decQs [DecQ]) => patQ -> bodyQ -> decQs -> DecQSource
varE' :: Convertible name Name => name -> ExpQSource
varP' :: Convertible name Name => name -> PatQSource
varStrictType' :: (Convertible name Name, Convertible strictTypeQ StrictTypeQ) => name -> strictTypeQ -> VarStrictTypeQSource
varT' :: Convertible name Name => name -> TypeQSource
viewP' :: (Convertible expQ ExpQ, Convertible patQ PatQ) => expQ -> patQ -> PatQSource
Additional builder functions
Sugar
(\->) :: (Convertible a [PatQ], Convertible a1 ExpQ) => a -> a1 -> ExpQSource
= lamE'
(-->) :: (Convertible qa (Q a), Convertible qb (Q b), Arrows a b) => qa -> qb -> Q bSource
(.::) :: (Convertible qa (Q a'), Convertible qb (Q b'), Sigs a' b' c) => qa -> qb -> Q cSource
Variants without usually-empty parameters
svalD :: (Convertible patQ PatQ, Convertible bodyQ BodyQ) => patQ -> bodyQ -> DecQSource
Value decl without a where
-clause
smatch :: (Convertible patQ PatQ, Convertible bodyQ BodyQ) => patQ -> bodyQ -> MatchQSource
case
match without a where
-clause
sclause :: (Convertible patQs [PatQ], Convertible bodyQ BodyQ) => patQs -> bodyQ -> ClauseQSource
Clause
without a where
-clause
sdataD :: (Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible conQs [ConQ], Convertible names [Name]) => name -> tyVarBndrs -> conQs -> names -> DecQSource
data
decl with no context
snewtypeD :: (Convertible name Name, Convertible tyVarBndrs [TyVarBndr], Convertible conQ ConQ, Convertible names [Name]) => name -> tyVarBndrs -> conQ -> names -> DecQSource
newtype
decl with no context
Type restrictions of convert
expQ :: Convertible a ExpQ => a -> ExpQSource
expQs :: Convertible a [ExpQ] => a -> [ExpQ]Source
patQ :: Convertible a PatQ => a -> PatQSource
patQs :: Convertible a [PatQ] => a -> [PatQ]Source
typeQ :: Convertible a TypeQ => a -> TypeQSource
typeQs :: Convertible a [TypeQ] => a -> [TypeQ]Source
name :: Convertible a Name => a -> NameSource
tyVarBndr :: Convertible a TyVarBndr => a -> TyVarBndrSource
conQ :: Convertible a ConQ => a -> ConQSource
cxtQ :: Convertible a CxtQ => a -> CxtQSource
strictTypeQ :: Convertible a StrictTypeQ => a -> StrictTypeQSource
strictTypeQs :: Convertible a [StrictTypeQ] => a -> [StrictTypeQ]Source
decsQ :: Convertible a DecsQ => a -> DecsQSource