Language.Haskell.TH.Ppr
| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Description
contains a prettyprinter for the Template Haskell datatypes
bytesToString :: [Word8] -> String Source
commaSep :: Ppr a => [a] -> Doc Source
commaSepApplied :: [Name] -> Doc Source
commaSepWith :: (a -> Doc) -> [a] -> Doc Source
fromTANormal :: TypeArg -> Maybe Type Source
hashParens :: Doc -> Doc Source
isStarT :: Type -> Bool Source
isSymOcc :: Name -> Bool Source
parensIf :: Bool -> Doc -> Doc Source
pprBangType :: BangType -> Doc Source
pprBndrVis :: BndrVis -> Doc -> Doc Source
pprBody :: Bool -> Body -> Doc Source
pprClause :: Bool -> Clause -> Doc Source
pprCtxWith :: Ppr a => (Precedence -> a -> Doc) -> [a] -> Doc Source
pprExp :: Precedence -> Exp -> Doc Source
pprFields :: [(Name, Exp)] -> Doc Source
pprFixity :: Name -> Fixity -> NamespaceSpecifier -> Doc Source
pprForall :: [TyVarBndr Specificity] -> Cxt -> Doc Source
pprForall' :: PprFlag flag => ForallVisFlag -> [TyVarBndr flag] -> Cxt -> Doc Source
pprForallVis :: [TyVarBndr ()] -> Cxt -> Doc Source
pprFunArgType :: Type -> Doc Source
pprGadtRHS :: [(Strict, Type)] -> Type -> Doc Source
pprGuarded :: Doc -> (Guard, Exp) -> Doc Source
pprInfixExp :: Exp -> Doc Source
pprInfixT :: Precedence -> Type -> Doc Source
pprLit :: Precedence -> Lit -> Doc Source
pprMatchPat :: Pat -> Doc Source
pprMaybeExp :: Precedence -> Maybe Exp -> Doc Source
pprNamespaceSpecifier :: NamespaceSpecifier -> Doc Source
pprParendType :: Type -> Doc Source
pprParendTypeArg :: TypeArg -> Doc Source
pprPat :: Precedence -> Pat -> 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
pprRecFields :: [(Name, Strict, Type)] -> Type -> Doc Source
pprStrictType :: (Strict, Type) -> Doc Source
Deprecated: As of template-haskell-2.11.0.0, StrictType has been replaced by BangType. Please use pprBangType instead.
pprString :: String -> Doc Source
pprTyApp :: Precedence -> (Type, [TypeArg]) -> Doc Source
pprTyLit :: TyLit -> Doc Source
pprType :: Precedence -> Type -> Doc Source
pprVarBangType :: VarBangType -> 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.
ppr_bndrs :: PprFlag flag => Maybe [TyVarBndr flag] -> Doc Source
ppr_ctx_preds_with :: Ppr a => (Precedence -> a -> Doc) -> Precedence -> [a] -> Doc Source
ppr_cxt_preds :: Precedence -> Cxt -> Doc Source
Arguments
| :: Bool | declaration on the toplevel? |
| -> Doc | |
| -> Cxt | |
| -> Maybe Name | |
| -> Doc | |
| -> Maybe Kind | |
| -> [Con] | |
| -> [DerivClause] | |
| -> Doc |
ppr_deriv_clause :: DerivClause -> Doc Source
ppr_deriv_strategy :: DerivStrategy -> Doc Source
Arguments
| :: Bool | declaration on the toplevel? |
| -> Doc | |
| -> Cxt | |
| -> Maybe Name | |
| -> Doc | |
| -> Maybe Kind | |
| -> Con | |
| -> [DerivClause] | |
| -> Doc |
ppr_overlap :: Overlap -> Doc Source
ppr_sig :: Name -> Type -> Doc Source
ppr_tf_head :: TypeFamilyHead -> Doc Source
ppr_tySyn :: Doc -> Maybe Name -> Doc -> Type -> Doc Source
Arguments
| :: Bool | declaration on the toplevel? |
| -> Doc | |
| -> Cxt | |
| -> Maybe Name | |
| -> Doc | |
| -> Maybe Kind | |
| -> [Con] | |
| -> [DerivClause] | |
| -> Doc |
ppr_typedef :: String -> Bool -> Doc -> Cxt -> Maybe Name -> Doc -> Maybe Kind -> [Con] -> [DerivClause] -> Doc Source
pprint :: Ppr a => a -> String Source
quoteParens :: Doc -> Doc Source
semiSep :: Ppr a => [a] -> Doc Source
semiSepWith :: (a -> Doc) -> [a] -> Doc Source
sepWith :: Doc -> (a -> Doc) -> [a] -> Doc Source
showtextl :: Show a => a -> Doc Source
split :: Type -> (Type, [TypeArg]) Source
unboxedSumBars :: Doc -> SumAlt -> SumArity -> Doc Source
where_clause :: [Dec] -> Doc Source
data ForallVisFlag Source
Constructors
| ForallVis | |
| ForallInvis |
Instances
| Show ForallVisFlag Source | |
Defined in GHC.Boot.TH.Ppr MethodsshowsPrec :: Int -> ForallVisFlag -> ShowS Source show :: ForallVisFlag -> String Source showList :: [ForallVisFlag] -> ShowS Source | |
Minimal complete definition
Instances
| Ppr TypeArg Source | |
| Ppr Bang Source | |
| Ppr Clause Source | |
| Ppr Con Source | |
| Ppr Dec Source | |
| Ppr DecidedStrictness Source | |
Defined in GHC.Boot.TH.Ppr | |
| Ppr Exp Source | |
| Ppr FamilyResultSig Source | |
Defined in GHC.Boot.TH.Ppr | |
| Ppr Foreign Source | |
| Ppr FunDep Source | |
| Ppr Info Source | |
| Ppr InjectivityAnn Source | |
Defined in GHC.Boot.TH.Ppr | |
| Ppr Inline Source | |
| Ppr Lit Source | |
| Ppr Loc Source | |
| Ppr Match Source | |
| Ppr Module Source | |
| Ppr ModuleInfo Source | |
Defined in GHC.Boot.TH.Ppr | |
| Ppr Name Source | |
| Ppr Pat Source | |
| Ppr PatSynArgs Source | |
Defined in GHC.Boot.TH.Ppr | |
| Ppr PatSynDir Source | |
| Ppr Phases Source | |
| Ppr Pragma Source | |
| Ppr Range Source | |
| Ppr Role Source | |
| Ppr RuleBndr Source | |
| Ppr RuleMatch Source | |
| Ppr SourceStrictness Source | |
Defined in GHC.Boot.TH.Ppr | |
| Ppr SourceUnpackedness Source | |
Defined in GHC.Boot.TH.Ppr | |
| Ppr Stmt Source | |
| Ppr TyLit Source | |
| Ppr Type Source | |
| PprFlag flag => Ppr (TyVarBndr flag) Source | |
| Ppr a => Ppr [a] Source | |
class PprFlag flag where Source
Methods
pprTyVarBndr :: TyVarBndr flag -> Doc Source
Instances
| PprFlag BndrVis Source | |
Defined in GHC.Boot.TH.Ppr MethodspprTyVarBndr :: TyVarBndr BndrVis -> Doc Source | |
| PprFlag Specificity Source | |
Defined in GHC.Boot.TH.Ppr Methods | |
| PprFlag () Source | |
Defined in GHC.Boot.TH.Ppr MethodspprTyVarBndr :: TyVarBndr () -> Doc Source | |
type Precedence = Int Source
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.14.1/docs/libraries/template-haskell-2.24.0.0-7769/Language-Haskell-TH-Ppr.html