Language.Haskell.TH.Ppr
Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Description
contains a prettyprinter for the Template Haskell datatypes
type Precedence = Int Source
parensIf :: Bool -> Doc -> Doc Source
pprint :: Ppr a => a -> String Source
Minimal complete definition
Instances
Ppr Exp | |
Ppr Match | |
Ppr Clause | |
Ppr Pat | |
Ppr Type | |
Ppr Dec | |
Ppr Name | |
Ppr FunDep | |
Ppr InjectivityAnn | |
Defined in Language.Haskell.TH.Ppr | |
Ppr Role | |
Ppr TyLit | |
Ppr FamilyResultSig | |
Defined in Language.Haskell.TH.Ppr | |
Ppr TyVarBndr | |
Ppr PatSynArgs | |
Defined in Language.Haskell.TH.Ppr | |
Ppr PatSynDir | |
Ppr Bang | |
Ppr Con | |
Ppr DecidedStrictness | |
Defined in Language.Haskell.TH.Ppr | |
Ppr SourceStrictness | |
Defined in Language.Haskell.TH.Ppr | |
Ppr SourceUnpackedness | |
Defined in Language.Haskell.TH.Ppr | |
Ppr RuleBndr | |
Ppr Phases | |
Ppr RuleMatch | |
Ppr Inline | |
Ppr Pragma | |
Ppr Foreign | |
Ppr Range | |
Ppr Stmt | |
Ppr Lit | |
Ppr ModuleInfo | |
Defined in Language.Haskell.TH.Ppr | |
Ppr Info | |
Ppr Loc | |
Ppr Module | |
Ppr TypeArg | |
Ppr a => Ppr [a] | |
ppr_sig :: Name -> Type -> Doc Source
pprFixity :: Name -> Fixity -> Doc Source
pprPatSynSig :: Name -> PatSynType -> Doc Source
Pretty prints a pattern synonym type signature
pprPatSynType :: PatSynType -> Doc Source
Pretty prints a pattern synonym's type; follows the usual conventions to print a pattern synonym type compactly, yet unambiguously. See the note on PatSynType
and the section on pattern synonyms in the GHC user's guide for more information.
pprPrefixOcc :: Name -> Doc Source
isSymOcc :: Name -> Bool Source
pprInfixExp :: Exp -> Doc Source
pprExp :: Precedence -> Exp -> Doc Source
pprFields :: [(Name, Exp)] -> Doc Source
pprMaybeExp :: Precedence -> Maybe Exp -> Doc Source
pprMatchPat :: Pat -> Doc Source
pprGuarded :: Doc -> (Guard, Exp) -> Doc Source
pprBody :: Bool -> Body -> Doc Source
pprLit :: Precedence -> Lit -> Doc Source
bytesToString :: [Word8] -> String Source
pprString :: String -> Doc Source
pprPat :: Precedence -> Pat -> Doc Source
ppr_dec :: Bool -> Dec -> Doc Source
ppr_deriv_strategy :: DerivStrategy -> Doc Source
ppr_overlap :: Overlap -> Doc Source
ppr_data :: Doc -> Cxt -> Maybe Name -> Doc -> Maybe Kind -> [Con] -> [DerivClause] -> Doc Source
ppr_newtype :: Doc -> Cxt -> Maybe Name -> Doc -> Maybe Kind -> Con -> [DerivClause] -> Doc Source
ppr_deriv_clause :: DerivClause -> Doc Source
ppr_tySyn :: Doc -> Maybe Name -> Doc -> Type -> Doc Source
ppr_tf_head :: TypeFamilyHead -> Doc Source
ppr_bndrs :: Maybe [TyVarBndr] -> Doc Source
commaSepApplied :: [Name] -> Doc Source
pprForall :: [TyVarBndr] -> Cxt -> Doc Source
pprForallVis :: [TyVarBndr] -> Cxt -> Doc Source
pprForall' :: ForallVisFlag -> [TyVarBndr] -> Cxt -> Doc Source
pprRecFields :: [(Name, Strict, Type)] -> Type -> Doc Source
pprGadtRHS :: [(Strict, Type)] -> Type -> Doc Source
pprVarBangType :: VarBangType -> Doc Source
pprBangType :: BangType -> Doc Source
pprVarStrictType :: (Name, Strict, Type) -> Doc Source
Deprecated: As of template-haskell-2.11.0.0
, VarStrictType
has been replaced by VarBangType
. Please use pprVarBangType
instead.
pprStrictType :: (Strict, Type) -> Doc Source
Deprecated: As of template-haskell-2.11.0.0
, StrictType
has been replaced by BangType
. Please use pprBangType
instead.
pprParendType :: Type -> Doc Source
pprUInfixT :: Type -> Doc Source
pprParendTypeArg :: TypeArg -> Doc Source
pprTyApp :: (Type, [TypeArg]) -> Doc Source
pprFunArgType :: Type -> Doc Source
data ForallVisFlag Source
Constructors
ForallVis | |
ForallInvis |
Instances
Show ForallVisFlag | |
Defined in Language.Haskell.TH.Ppr MethodsshowsPrec :: Int -> ForallVisFlag -> ShowS Source show :: ForallVisFlag -> String Source showList :: [ForallVisFlag] -> ShowS Source |
Instances
split :: Type -> (Type, [TypeArg]) Source
pprTyLit :: TyLit -> Doc Source
ppr_cxt_preds :: Cxt -> Doc Source
where_clause :: [Dec] -> Doc Source
showtextl :: Show a => a -> Doc Source
hashParens :: Doc -> Doc Source
quoteParens :: Doc -> Doc Source
commaSep :: Ppr a => [a] -> Doc Source
commaSepWith :: (a -> Doc) -> [a] -> Doc Source
semiSep :: Ppr a => [a] -> Doc Source
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/8.10.2/docs/html/libraries/template-haskell-2.16.0.0/Language-Haskell-TH-Ppr.html