template-haskell-2.12.0.0: Support library for Template Haskell

Safe HaskellSafe
LanguageHaskell2010

Language.Haskell.TH.Ppr

Description

contains a prettyprinter for the Template Haskell datatypes

Synopsis

Documentation

nestDepth :: Int Source #

type Precedence = Int Source #

appPrec :: Precedence Source #

unopPrec :: Precedence Source #

opPrec :: Precedence Source #

noPrec :: Precedence Source #

parensIf :: Bool -> Doc -> Doc Source #

pprint :: Ppr a => a -> String Source #

class Ppr a where Source #

Minimal complete definition

ppr

Methods

ppr :: a -> Doc Source #

ppr_list :: [a] -> Doc Source #

Instances

Methods

ppr :: Exp -> Doc Source #

ppr_list :: [Exp] -> Doc Source #

Methods

ppr :: Match -> Doc Source #

ppr_list :: [Match] -> Doc Source #

Methods

ppr :: Clause -> Doc Source #

ppr_list :: [Clause] -> Doc Source #

Methods

ppr :: Pat -> Doc Source #

ppr_list :: [Pat] -> Doc Source #

Methods

ppr :: Type -> Doc Source #

ppr_list :: [Type] -> Doc Source #

Methods

ppr :: Dec -> Doc Source #

ppr_list :: [Dec] -> Doc Source #

Methods

ppr :: Name -> Doc Source #

ppr_list :: [Name] -> Doc Source #

Methods

ppr :: FunDep -> Doc Source #

ppr_list :: [FunDep] -> Doc Source #

Methods

ppr :: Role -> Doc Source #

ppr_list :: [Role] -> Doc Source #

Methods

ppr :: TyLit -> Doc Source #

ppr_list :: [TyLit] -> Doc Source #

Methods

ppr :: Bang -> Doc Source #

ppr_list :: [Bang] -> Doc Source #

Methods

ppr :: Con -> Doc Source #

ppr_list :: [Con] -> Doc Source #

Methods

ppr :: Phases -> Doc Source #

ppr_list :: [Phases] -> Doc Source #

Methods

ppr :: Inline -> Doc Source #

ppr_list :: [Inline] -> Doc Source #

Methods

ppr :: Pragma -> Doc Source #

ppr_list :: [Pragma] -> Doc Source #

Methods

ppr :: Foreign -> Doc Source #

ppr_list :: [Foreign] -> Doc Source #

Methods

ppr :: Range -> Doc Source #

ppr_list :: [Range] -> Doc Source #

Methods

ppr :: Stmt -> Doc Source #

ppr_list :: [Stmt] -> Doc Source #

Methods

ppr :: Lit -> Doc Source #

ppr_list :: [Lit] -> Doc Source #

Methods

ppr :: Info -> Doc Source #

ppr_list :: [Info] -> Doc Source #

Methods

ppr :: Loc -> Doc Source #

ppr_list :: [Loc] -> Doc Source #

Methods

ppr :: Module -> Doc Source #

ppr_list :: [Module] -> Doc Source #

Ppr a => Ppr [a] Source #

Methods

ppr :: [a] -> Doc Source #

ppr_list :: [[a]] -> Doc Source #

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 #

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 -> Name -> Doc -> Maybe Kind -> [Con] -> [DerivClause] -> Doc Source #

ppr_newtype :: Doc -> Cxt -> Name -> Doc -> Maybe Kind -> Con -> [DerivClause] -> Doc Source #

ppr_deriv_clause :: DerivClause -> Doc Source #

ppr_tySyn :: Doc -> Name -> Doc -> Type -> Doc Source #

ppr_tf_head :: TypeFamilyHead -> Doc Source #

commaSepApplied :: [Name] -> Doc Source #

pprForall :: [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 #

pprTyApp :: (Type, [Type]) -> Doc Source #

pprFunArgType :: Type -> Doc Source #

split :: Type -> (Type, [Type]) Source #

pprTyLit :: TyLit -> Doc Source #

pprCxt :: Cxt -> 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 #

unboxedSumBars :: Doc -> SumAlt -> SumArity -> Doc Source #

bar :: Doc Source #

AltStyle によって変換されたページ (->オリジナル) /