stack-1.9.3.1: The Haskell Tool Stack

Safe HaskellNone
LanguageHaskell2010

Text.PrettyPrint.Leijen.Extended

Contents

Description

This module re-exports some of the interface for Text.PrettyPrint.Annotated.Leijen along with additional definitions useful for stack.

It defines a Monoid instance for Doc.

Synopsis

Pretty-print typeclass

class Display a where Source #

Minimal complete definition

Nothing

Associated Types

type Ann a Source #

Methods

display :: a -> Doc (Ann a) Source #

display :: Show a => a -> Doc (Ann a) Source #

Instances
Display ModuleName Source # 
Instance details

Defined in Stack.PrettyPrint

Associated Types

type Ann ModuleName :: Type Source #

Display PackageName Source # 
Instance details

Defined in Stack.PrettyPrint

Associated Types

type Ann PackageName :: Type Source #

Display Version Source # 
Instance details

Defined in Stack.PrettyPrint

Associated Types

type Ann Version :: Type Source #

Display PackageIdentifier Source # 
Instance details

Defined in Stack.PrettyPrint

Associated Types

type Ann PackageIdentifier :: Type Source #

Display (Doc a) Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

Associated Types

type Ann (Doc a) :: Type Source #

Methods

display :: Doc a -> Doc (Ann (Doc a)) Source #

Display (PackageName, NamedComponent) Source # 
Instance details

Defined in Stack.PrettyPrint

Associated Types

type Ann (PackageName, NamedComponent) :: Type Source #

Display (Path b Dir) Source # 
Instance details

Defined in Stack.PrettyPrint

Associated Types

type Ann (Path b Dir) :: Type Source #

Methods

display :: Path b Dir -> Doc (Ann (Path b Dir)) Source #

Display (Path b File) Source # 
Instance details

Defined in Stack.PrettyPrint

Associated Types

type Ann (Path b File) :: Type Source #

Methods

display :: Path b File -> Doc (Ann (Path b File)) Source #

Ansi terminal Doc

newtype AnsiAnn Source #

Constructors

AnsiAnn [SGR] 
Instances
Eq AnsiAnn Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

Methods

(==) :: AnsiAnn -> AnsiAnn -> Bool #

(/=) :: AnsiAnn -> AnsiAnn -> Bool #

Show AnsiAnn Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

Methods

showsPrec :: Int -> AnsiAnn -> ShowS

show :: AnsiAnn -> String #

showList :: [AnsiAnn] -> ShowS

Semigroup AnsiAnn Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

Methods

(<>) :: AnsiAnn -> AnsiAnn -> AnsiAnn #

sconcat :: NonEmpty AnsiAnn -> AnsiAnn #

stimes :: Integral b => b -> AnsiAnn -> AnsiAnn #

Monoid AnsiAnn Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

HasAnsiAnn AnsiAnn Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

class HasAnsiAnn a where Source #

Minimal complete definition

getAnsiAnn

hDisplayAnsi :: (Display a, HasAnsiAnn (Ann a), MonadIO m) => Handle -> Int -> a -> m () Source #

displayAnsi :: (Display a, HasAnsiAnn (Ann a)) => Int -> a -> Text Source #

renderDefault :: Int -> Doc a -> SimpleDoc a Source #

Color combinators

Intensity combinators

Selective re-exports from Text.PrettyPrint.Annotated.Leijen

Documents, parametrized by their annotations

data Doc a #

Instances
Functor Doc 
Instance details

Defined in Text.PrettyPrint.Annotated.Leijen

Methods

fmap :: (a -> b) -> Doc a -> Doc b #

(<$) :: a -> Doc b -> Doc a #

Show (Doc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.Leijen

Methods

showsPrec :: Int -> Doc a -> ShowS

show :: Doc a -> String #

showList :: [Doc a] -> ShowS

IsString (Doc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.Leijen

Methods

fromString :: String -> Doc a #

Semigroup (Doc a) Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

Methods

(<>) :: Doc a -> Doc a -> Doc a #

sconcat :: NonEmpty (Doc a) -> Doc a #

stimes :: Integral b => b -> Doc a -> Doc a #

Monoid (Doc a) Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

Methods

mempty :: Doc a #

mappend :: Doc a -> Doc a -> Doc a #

mconcat :: [Doc a] -> Doc a #

Display (Doc a) Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

Associated Types

type Ann (Doc a) :: Type Source #

Methods

display :: Doc a -> Doc (Ann (Doc a)) Source #

type Ann (Doc a) Source # 
Instance details

Defined in Text.PrettyPrint.Leijen.Extended

type Ann (Doc a) = a

Basic combinators

nest :: Int -> Doc a -> Doc a #

line :: Doc a #

group :: Doc a -> Doc a #

Alignment

align :: Doc a -> Doc a #

hang :: Int -> Doc a -> Doc a #

indent :: Int -> Doc a -> Doc a #

encloseSep :: Doc a -> Doc a -> Doc a -> [Doc a] -> Doc a #

Operators

(<+>) :: Doc a -> Doc a -> Doc a #

List combinators

hsep :: [Doc a] -> Doc a #

vsep :: [Doc a] -> Doc a #

fillSep :: [Doc a] -> Doc a #

sep :: [Doc a] -> Doc a #

hcat :: [Doc a] -> Doc a #

vcat :: [Doc a] -> Doc a #

fillCat :: [Doc a] -> Doc a #

cat :: [Doc a] -> Doc a #

punctuate :: Doc a -> [Doc a] -> [Doc a] #

Fillers

fill :: Int -> Doc a -> Doc a #

fillBreak :: Int -> Doc a -> Doc a #

Bracketing combinators

enclose :: Doc a -> Doc a -> Doc a -> Doc a #

squotes :: Doc a -> Doc a #

dquotes :: Doc a -> Doc a #

parens :: Doc a -> Doc a #

angles :: Doc a -> Doc a #

braces :: Doc a -> Doc a #

brackets :: Doc a -> Doc a #

Character documents

Primitive type documents

Semantic annotations

annotate :: a -> Doc a -> Doc a #

noAnnotate :: Doc a -> Doc a #

Rendering

Undocumented

Orphan instances

Semigroup (Doc a) Source # 
Instance details

Methods

(<>) :: Doc a -> Doc a -> Doc a #

sconcat :: NonEmpty (Doc a) -> Doc a #

stimes :: Integral b => b -> Doc a -> Doc a #

Monoid (Doc a) Source # 
Instance details

Methods

mempty :: Doc a #

mappend :: Doc a -> Doc a -> Doc a #

mconcat :: [Doc a] -> Doc a #