HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

Modulehaskell-src-exts-1.23.1Haskell98

Language.Haskell.Exts.Pretty

Pretty printer for Haskell with extensions.

  • 5 types
  • 1 class
  • 7 values

Pretty printing

4 declarations
classclass Pretty a where
#

Things that can be pretty-printed, including all the syntactic objects in Language.Haskell.Exts.Syntax.

Instances82Pretty, …
  • Pretty SrcLocDefined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty SrcSpanDefined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty ToolDefined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (GuardedAlt l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (GuardedAlts l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Activation l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Alt l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Annotation l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Assoc l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Asst l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (BangType l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (BooleanFormula l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Bracket l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (CName l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (CallConv l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ClassDecl l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ConDecl l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Context l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (DataOrNew l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Decl l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (DeclHead l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (DerivStrategy l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Deriving l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Exp l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ExportSpec l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ExportSpecList l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (FieldDecl l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (FieldUpdate l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (FunDep l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (GadtDecl l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (GuardedRhs l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (IPBind l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (IPName l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ImportDecl l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ImportSpec l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ImportSpecList l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (InjectivityInfo l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (InstDecl l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (InstHead l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (InstRule l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Literal l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Match l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (MaybePromotedName l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Module pos)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ModuleHead l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ModuleName l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ModulePragma l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Name l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Namespace l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Op l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Overlap l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (PXAttr l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Pat l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (PatField l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Promoted l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (QName l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (QOp l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (QualConDecl l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (QualStmt l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (RPat l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (RPatOp l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (ResultSig l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Rhs l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Role l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Rule l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (RuleVar l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Safety l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (SpecialCon l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Splice l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Stmt l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (TyVarBind l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Type l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (TypeEqn l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (Unpackedness l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (XAttr l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • Pretty (XName l)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • SrcInfo loc => Pretty (PAsst loc)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • SrcInfo loc => Pretty (PContext loc)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • SrcInfo loc => Pretty (PExp loc)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • SrcInfo loc => Pretty (PFieldUpdate loc)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • SrcInfo loc => Pretty (PType loc)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
  • SrcInfo loc => Pretty (ParseXAttr loc)Defined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
valueprettyPrintStyleMode :: Pretty a => Style -> PPHsMode -> a -> String
#

render the document with a given mode. renderWithMode :: PPHsMode -> Doc -> String renderWithMode = renderStyleMode P.style

render the document with defaultMode. render :: Doc -> String render = renderWithMode defaultMode

pretty-print with a given style and mode.

Pretty-printing styles (from Text.PrettyPrint.HughesPJ)

3 declarations
datadata Style
#

A rendering style. Allows us to specify constraints to choose among the many different rendering options.

Constructors

  • Style
    • mode :: Mode

      The rendering mode.

    • lineLength :: Int

      Maximum length of a line, in characters.

    • ribbonsPerLine :: Float

      Ratio of line length to ribbon length. A ribbon refers to the characters on a line excluding indentation. So a lineLength of 100, with a ribbonsPerLine of 2.0 would only allow up to 50 characters of ribbon to be displayed on a line, while allowing it to be indented up to 50 characters.

Instances4Eq, Show, Generic, Rep
valuestyle :: Style
#

The default style (mode=PageMode, lineLength=100, ribbonsPerLine=1.5).

datadata Mode
#

Rendering mode.

Constructors

Instances4Eq, Show, Generic, Rep

Haskell formatting modes

4 declarations
datadata PPHsMode
#

Pretty-printing parameters.

Note: the onsideIndent must be positive and less than all other indents.

Constructors

datadata PPLayout
#

Varieties of layout we can use.

Constructors

Instances1Eq
  • Eq PPLayoutDefined in haskell-src-exts-1.23.1 · Language.Haskell.Exts.Pretty
valuedefaultMode :: PPHsMode
#

The default mode: pretty-print using the offside rule and sensible defaults.

Primitive Printers

2 declarations