haskell-src-meta-0.8.2: Parse source to template-haskell abstract syntax.

Copyright(c) Matt Morrow 2008
LicenseBSD3
MaintainerMatt Morrow <mjm2002@gmail.com>
Stabilityexperimental
Portabilityportable (template-haskell)
Safe HaskellNone
LanguageHaskell98

Language.Haskell.Meta.Syntax.Translate

Description

 

Documentation

class ToDerivClauses a where #

Methods

toDerivClauses :: a -> [DerivClause] #

class ToMaybeKind a where #

Methods

toMaybeKind :: a -> Maybe Kind #

Instances
ToMaybeKind a => ToMaybeKind (Maybe a) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toMaybeKind :: Maybe a -> Maybe Kind #

ToMaybeKind (ResultSig l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

class ToTyVars a where #

Methods

toTyVars :: a -> [TyVarBndr] #

Instances
ToTyVars a => ToTyVars [a] # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toTyVars :: [a] -> [TyVarBndr] #

ToTyVars a => ToTyVars (Maybe a) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toTyVars :: Maybe a -> [TyVarBndr] #

ToTyVars (DeclHead l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toTyVars :: DeclHead l -> [TyVarBndr] #

ToTyVars (TyVarBind l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toTyVars :: TyVarBind l -> [TyVarBndr] #

class ToPred a where #

Methods

toPred :: a -> Pred #

Instances
ToPred (Asst l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toPred :: Asst l -> Pred #

class ToCxt a where #

Methods

toCxt :: a -> Cxt #

Instances
ToCxt a => ToCxt (Maybe a) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toCxt :: Maybe a -> Cxt #

ToCxt (InstRule l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toCxt :: InstRule l -> Cxt #

ToCxt (Context l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toCxt :: Context l -> Cxt #

class ToLoc a where #

Methods

toLoc :: a -> Loc #

Instances
ToLoc SrcLoc # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toLoc :: SrcLoc -> Loc #

class ToStmt a where #

Methods

toStmt :: a -> Stmt #

Instances
ToStmt (Stmt l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toStmt :: Stmt l -> Stmt0 #

class ToDec a where #

Methods

toDec :: a -> Dec #

Instances
ToDec (Decl l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toDec :: Decl l -> Dec #

class ToDecs a where #

Methods

toDecs :: a -> [Dec] #

Instances
ToDecs a => ToDecs [a] # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toDecs :: [a] -> [Dec] #

ToDecs a => ToDecs (Maybe a) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toDecs :: Maybe a -> [Dec] #

ToDecs (Decl l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toDecs :: Decl l -> [Dec] #

ToDecs (Binds l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toDecs :: Binds l -> [Dec] #

ToDecs (ClassDecl l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toDecs :: ClassDecl l -> [Dec] #

ToDecs (InstDecl l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toDecs :: InstDecl l -> [Dec] #

class ToExp a where #

Methods

toExp :: a -> Exp #

Instances
ToExp Lit # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toExp :: Lit -> Exp #

ToExp a => ToExp [a] # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toExp :: [a] -> Exp #

ToExp (QOp l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toExp :: QOp l -> Exp #

ToExp (Exp l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toExp :: Exp l -> Exp0 #

(ToExp a, ToExp b) => ToExp (a, b) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toExp :: (a, b) -> Exp #

(ToExp a, ToExp b, ToExp c) => ToExp (a, b, c) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toExp :: (a, b, c) -> Exp #

(ToExp a, ToExp b, ToExp c, ToExp d) => ToExp (a, b, c, d) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toExp :: (a, b, c, d) -> Exp #

class ToPat a where #

Methods

toPat :: a -> Pat #

Instances
ToPat Lit # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toPat :: Lit -> Pat #

ToPat a => ToPat [a] # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toPat :: [a] -> Pat #

ToPat (Pat l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toPat :: Pat l -> Pat0 #

(ToPat a, ToPat b) => ToPat (a, b) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toPat :: (a, b) -> Pat #

(ToPat a, ToPat b, ToPat c) => ToPat (a, b, c) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toPat :: (a, b, c) -> Pat #

(ToPat a, ToPat b, ToPat c, ToPat d) => ToPat (a, b, c, d) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toPat :: (a, b, c, d) -> Pat #

class ToType a where #

Methods

toType :: a -> Type #

Instances
ToType (QName l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toType :: QName l -> Type #

ToType (InstRule l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toType :: InstRule l -> Type #

ToType (InstHead l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toType :: InstHead l -> Type #

ToType (Type l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toType :: Type l -> Type0 #

ToType (Kind l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toType :: Kind l -> Type #

class ToLit a where #

Methods

toLit :: a -> Lit #

Instances
ToLit Char # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toLit :: Char -> Lit #

ToLit Double # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toLit :: Double -> Lit #

ToLit Float # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toLit :: Float -> Lit #

ToLit Int # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toLit :: Int -> Lit #

ToLit Integer # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toLit :: Integer -> Lit #

ToLit String # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toLit :: String -> Lit #

ToLit (Literal l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toLit :: Literal l -> Lit #

class ToNames a where #

Methods

toNames :: a -> [Name] #

Instances
ToNames a => ToNames (Maybe a) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toNames :: Maybe a -> [Name] #

ToNames (InstRule l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toNames :: InstRule l -> [Name] #

ToNames (InstHead l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toNames :: InstHead l -> [Name] #

ToNames (Deriving l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toNames :: Deriving l -> [Name] #

class ToName a where #

Methods

toName :: a -> Name #

Instances
ToName Name # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: Name -> Name #

ToName String # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: String -> Name #

ToName TyVarBndr # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: TyVarBndr -> Name #

ToName (SpecialCon l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: SpecialCon l -> Name #

ToName (QName l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: QName l -> Name #

ToName (Name l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: Name l -> Name0 #

ToName (Op l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: Op l -> Name #

ToName (DeclHead l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: DeclHead l -> Name #

ToName (TyVarBind l) # 
Instance details

Defined in Language.Haskell.Meta.Syntax.Translate

Methods

toName :: TyVarBind l -> Name #

noTH :: (Functor f, Show (f ())) => String -> f e -> a #

noTHyet :: (Functor f, Show (f ())) => String -> String -> f e -> a #

todo :: (Functor f, Show (f ())) => String -> f e -> a #

nonsense :: (Functor f, Show (f ())) => String -> String -> f e -> a #

toMatch :: Alt l -> Match #

toBody :: Rhs l -> Body #

toKind :: Kind l -> Kind #

(.->.) :: Type -> Type -> Type #

foldAppT :: Type -> [Type] -> Type #