template-haskell-natural-1.0.0.0
Safe HaskellNone
LanguageHaskell2010

Language.Haskell.TH.Gen

Description

Typeclasses to standardise the arguments that the various Builder functions take

Documentation

class GenDec a where Source #

Methods

genDec :: a -> Q Dec Source #

Instances

Instances details
GenDec Dec Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genDec :: Dec -> Q Dec Source #

ExtractedConstructor a Dec => GenDec a Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genDec :: a -> Q Dec Source #

GenDec a => GenDec (Q a) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genDec :: Q a -> Q Dec Source #

class GenDecs a where Source #

Methods

genDecs :: a -> Q [Dec] Source #

Instances

Instances details
GenDec a => GenDecs a Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genDecs :: a -> Q [Dec] Source #

GenDecs a => GenDecs (Q a) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genDecs :: Q a -> Q [Dec] Source #

GenDecs [Dec] Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genDecs :: [Dec] -> Q [Dec] Source #

class GenExpr a where Source #

Methods

genExpr :: a -> Q Exp Source #

Instances

Instances details
GenExpr Exp Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genExpr :: Exp -> Q Exp Source #

ExtractedConstructor a Exp => GenExpr a Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genExpr :: a -> Q Exp Source #

GenExpr a => GenExpr (Q a) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genExpr :: Q a -> Q Exp Source #

m ~ Q => GenExpr (m Exp) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genExpr :: m Exp -> Q Exp Source #

(IsExprBuilder st, GenExpr (Definition st)) => GenExpr (Builder st step 'Ready ()) Source # 
Instance details

Defined in Language.Haskell.TH.Natural.Syntax.Expr.Untyped.Class

Methods

genExpr :: Builder st step 'Ready () -> Q Exp Source #

class GenTExpr t a where Source #

Methods

genTExpr :: a -> Q (TExp t) Source #

Instances

Instances details
m ~ Q => GenTExpr t (Code m t) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genTExpr :: Code m t -> Q (TExp t) Source #

class GenType a where Source #

Methods

genTy :: a -> Q Type Source #

Instances

Instances details
GenType Type Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genTy :: Type -> Q Type Source #

ExtractedConstructor a Type => GenType a Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genTy :: a -> Q Type Source #

GenType (Q Type) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genTy :: Q Type -> Q Type Source #

(m ~ Q, GenType a) => GenType (m a) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genTy :: m a -> Q Type Source #

GenType (SignatureBuilder step 'Ready ()) Source # 
Instance details

Defined in Language.Haskell.TH.Natural.Syntax.Signature

Methods

genTy :: SignatureBuilder step 'Ready () -> Q Type Source #

class GenPat a where Source #

Methods

genPat :: a -> Q Pat Source #

Instances

Instances details
GenPat Pat Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genPat :: Pat -> Q Pat Source #

ExtractedConstructor a Pat => GenPat a Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genPat :: a -> Q Pat Source #

GenPat (Q Pat) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genPat :: Q Pat -> Q Pat Source #

class GenCon a where Source #

Methods

genCon :: a -> Q Con Source #

Instances

Instances details
GenCon Con Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genCon :: Con -> Q Con Source #

ExtractedConstructor a Con => GenCon a Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genCon :: a -> Q Con Source #

GenCon (Q Con) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genCon :: Q Con -> Q Con Source #

GenCon a => GenCon (Q a) Source # 
Instance details

Defined in Language.Haskell.TH.Gen

Methods

genCon :: Q a -> Q Con Source #