language-c-quote-0.12.1: C/CUDA/OpenCL/Objective-C quasiquoting library.

Copyright(c) 2006-2011 Harvard University
(c) 2011-2013 Geoffrey Mainland
: (c) 2013-2016 Drexel University
LicenseBSD-style
Maintainermainland@drexel.edu
Safe HaskellNone
LanguageHaskell98

Language.C.Pretty

Contents

Description

 

Synopsis

Documentation

pprLoc :: SrcLoc -> Doc -> Doc #

data Fixity #

Constructors

Fixity Assoc Int 

Instances

data Assoc #

Constructors

LeftAssoc 
RightAssoc 
NonAssoc 

Instances

Eq Assoc # 

Methods

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

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

Ord Assoc # 

Methods

compare :: Assoc -> Assoc -> Ordering #

(<) :: Assoc -> Assoc -> Bool #

(<=) :: Assoc -> Assoc -> Bool #

(>) :: Assoc -> Assoc -> Bool #

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

max :: Assoc -> Assoc -> Assoc #

min :: Assoc -> Assoc -> Assoc #

infixop #

Arguments

:: (Pretty a, Pretty b, Pretty op, CFixity op) 
=> Int

precedence of context

-> op

operator

-> a

left argument

-> b

right argument

-> Doc 

Pretty print infix binary operators

prefixop #

Arguments

:: (Pretty a, Pretty op, CFixity op) 
=> Int

precedence of context

-> op

operator

-> a

argument

-> Doc 

Pretty print prefix unary operators

angleList :: [Doc] -> Doc #

embrace :: [Doc] -> Doc #

class CFixity a where #

Minimal complete definition

fixity

Methods

fixity :: a -> Fixity #

parensOp :: Int -> a -> Doc -> Doc #

Instances

CFixity UnOp # 

Methods

fixity :: UnOp -> Fixity #

parensOp :: Int -> UnOp -> Doc -> Doc #

CFixity AssignOp # 

Methods

fixity :: AssignOp -> Fixity #

parensOp :: Int -> AssignOp -> Doc -> Doc #

CFixity BinOp # 

Methods

fixity :: BinOp -> Fixity #

parensOp :: Int -> BinOp -> Doc -> Doc #

pprEnum :: Maybe Id -> [CEnum] -> [Attr] -> Doc #

Orphan instances

Pretty CaptureListEntry # 
Pretty LambdaDeclarator # 
Pretty LambdaIntroducer # 
Pretty ObjCRecv # 

Methods

ppr :: ObjCRecv -> Doc #

pprPrec :: Int -> ObjCRecv -> Doc #

pprList :: [ObjCRecv] -> Doc #

Pretty ObjCDictElem # 
Pretty ObjCCatch # 

Methods

ppr :: ObjCCatch -> Doc #

pprPrec :: Int -> ObjCCatch -> Doc #

pprList :: [ObjCCatch] -> Doc #

Pretty ObjCMethodProto # 
Pretty ObjCParam # 

Methods

ppr :: ObjCParam -> Doc #

pprPrec :: Int -> ObjCParam -> Doc #

pprList :: [ObjCParam] -> Doc #

Pretty ObjCMethodReq # 
Pretty ObjCPropAttr # 
Pretty ObjCIfaceDecl # 
Pretty ObjCVisibilitySpec # 
Pretty ObjCIvarDecl # 
Pretty BlockType # 

Methods

ppr :: BlockType -> Doc #

pprPrec :: Int -> BlockType -> Doc #

pprList :: [BlockType] -> Doc #

Pretty AsmIn # 

Methods

ppr :: AsmIn -> Doc #

pprPrec :: Int -> AsmIn -> Doc #

pprList :: [AsmIn] -> Doc #

Pretty AsmOut # 

Methods

ppr :: AsmOut -> Doc #

pprPrec :: Int -> AsmOut -> Doc #

pprList :: [AsmOut] -> Doc #

Pretty UnOp # 

Methods

ppr :: UnOp -> Doc #

pprPrec :: Int -> UnOp -> Doc #

pprList :: [UnOp] -> Doc #

Pretty AssignOp # 

Methods

ppr :: AssignOp -> Doc #

pprPrec :: Int -> AssignOp -> Doc #

pprList :: [AssignOp] -> Doc #

Pretty BinOp # 

Methods

ppr :: BinOp -> Doc #

pprPrec :: Int -> BinOp -> Doc #

pprList :: [BinOp] -> Doc #

Pretty Exp # 

Methods

ppr :: Exp -> Doc #

pprPrec :: Int -> Exp -> Doc #

pprList :: [Exp] -> Doc #

Pretty Const # 

Methods

ppr :: Const -> Doc #

pprPrec :: Int -> Const -> Doc #

pprList :: [Const] -> Doc #

Pretty BlockItem # 

Methods

ppr :: BlockItem -> Doc #

pprPrec :: Int -> BlockItem -> Doc #

pprList :: [BlockItem] -> Doc #

Pretty Stm # 

Methods

ppr :: Stm -> Doc #

pprPrec :: Int -> Stm -> Doc #

pprList :: [Stm] -> Doc #

Pretty Definition # 
Pretty Func # 

Methods

ppr :: Func -> Doc #

pprPrec :: Int -> Func -> Doc #

pprList :: [Func] -> Doc #

Pretty Params # 

Methods

ppr :: Params -> Doc #

pprPrec :: Int -> Params -> Doc #

pprList :: [Params] -> Doc #

Pretty Param # 

Methods

ppr :: Param -> Doc #

pprPrec :: Int -> Param -> Doc #

pprList :: [Param] -> Doc #

Pretty Attr # 

Methods

ppr :: Attr -> Doc #

pprPrec :: Int -> Attr -> Doc #

pprList :: [Attr] -> Doc #

Pretty CEnum # 

Methods

ppr :: CEnum -> Doc #

pprPrec :: Int -> CEnum -> Doc #

pprList :: [CEnum] -> Doc #

Pretty FieldGroup # 
Pretty Field # 

Methods

ppr :: Field -> Doc #

pprPrec :: Int -> Field -> Doc #

pprList :: [Field] -> Doc #

Pretty InitGroup # 

Methods

ppr :: InitGroup -> Doc #

pprPrec :: Int -> InitGroup -> Doc #

pprList :: [InitGroup] -> Doc #

Pretty Typedef # 

Methods

ppr :: Typedef -> Doc #

pprPrec :: Int -> Typedef -> Doc #

pprList :: [Typedef] -> Doc #

Pretty Init # 

Methods

ppr :: Init -> Doc #

pprPrec :: Int -> Init -> Doc #

pprList :: [Init] -> Doc #

Pretty Initializer # 
Pretty Designation # 
Pretty Designator # 
Pretty Type # 

Methods

ppr :: Type -> Doc #

pprPrec :: Int -> Type -> Doc #

pprList :: [Type] -> Doc #

Pretty ArraySize # 

Methods

ppr :: ArraySize -> Doc #

pprPrec :: Int -> ArraySize -> Doc #

pprList :: [ArraySize] -> Doc #

Pretty DeclSpec # 

Methods

ppr :: DeclSpec -> Doc #

pprPrec :: Int -> DeclSpec -> Doc #

pprList :: [DeclSpec] -> Doc #

Pretty TypeSpec # 

Methods

ppr :: TypeSpec -> Doc #

pprPrec :: Int -> TypeSpec -> Doc #

pprList :: [TypeSpec] -> Doc #

Pretty Sign # 

Methods

ppr :: Sign -> Doc #

pprPrec :: Int -> Sign -> Doc #

pprList :: [Sign] -> Doc #

Pretty TypeQual # 

Methods

ppr :: TypeQual -> Doc #

pprPrec :: Int -> TypeQual -> Doc #

pprList :: [TypeQual] -> Doc #

Pretty Storage # 

Methods

ppr :: Storage -> Doc #

pprPrec :: Int -> Storage -> Doc #

pprList :: [Storage] -> Doc #

Pretty StringLit # 

Methods

ppr :: StringLit -> Doc #

pprPrec :: Int -> StringLit -> Doc #

pprList :: [StringLit] -> Doc #

Pretty Id # 

Methods

ppr :: Id -> Doc #

pprPrec :: Int -> Id -> Doc #

pprList :: [Id] -> Doc #