language-c-quote-0.12.2: 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

data Fixity Source #

Constructors

Fixity Assoc Int 

Instances

data Assoc Source #

Constructors

LeftAssoc 
RightAssoc 
NonAssoc 

Instances

Eq Assoc Source # 

Methods

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

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

Ord Assoc Source # 

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 Source #

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 Source #

Arguments

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

precedence of context

-> op

operator

-> a

argument

-> Doc 

Pretty print prefix unary operators

class CFixity a where Source #

Minimal complete definition

fixity

Methods

fixity :: a -> Fixity Source #

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

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

Orphan instances

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

Methods

ppr :: ObjCRecv -> Doc #

pprPrec :: Int -> ObjCRecv -> Doc #

pprList :: [ObjCRecv] -> Doc #

Pretty ObjCDictElem Source # 
Pretty ObjCCatch Source # 

Methods

ppr :: ObjCCatch -> Doc #

pprPrec :: Int -> ObjCCatch -> Doc #

pprList :: [ObjCCatch] -> Doc #

Pretty ObjCMethodProto Source # 
Pretty ObjCParam Source # 

Methods

ppr :: ObjCParam -> Doc #

pprPrec :: Int -> ObjCParam -> Doc #

pprList :: [ObjCParam] -> Doc #

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

Methods

ppr :: BlockType -> Doc #

pprPrec :: Int -> BlockType -> Doc #

pprList :: [BlockType] -> Doc #

Pretty AsmIn Source # 

Methods

ppr :: AsmIn -> Doc #

pprPrec :: Int -> AsmIn -> Doc #

pprList :: [AsmIn] -> Doc #

Pretty AsmOut Source # 

Methods

ppr :: AsmOut -> Doc #

pprPrec :: Int -> AsmOut -> Doc #

pprList :: [AsmOut] -> Doc #

Pretty UnOp Source # 

Methods

ppr :: UnOp -> Doc #

pprPrec :: Int -> UnOp -> Doc #

pprList :: [UnOp] -> Doc #

Pretty AssignOp Source # 

Methods

ppr :: AssignOp -> Doc #

pprPrec :: Int -> AssignOp -> Doc #

pprList :: [AssignOp] -> Doc #

Pretty BinOp Source # 

Methods

ppr :: BinOp -> Doc #

pprPrec :: Int -> BinOp -> Doc #

pprList :: [BinOp] -> Doc #

Pretty Exp Source # 

Methods

ppr :: Exp -> Doc #

pprPrec :: Int -> Exp -> Doc #

pprList :: [Exp] -> Doc #

Pretty Const Source # 

Methods

ppr :: Const -> Doc #

pprPrec :: Int -> Const -> Doc #

pprList :: [Const] -> Doc #

Pretty BlockItem Source # 

Methods

ppr :: BlockItem -> Doc #

pprPrec :: Int -> BlockItem -> Doc #

pprList :: [BlockItem] -> Doc #

Pretty Stm Source # 

Methods

ppr :: Stm -> Doc #

pprPrec :: Int -> Stm -> Doc #

pprList :: [Stm] -> Doc #

Pretty Definition Source # 
Pretty Func Source # 

Methods

ppr :: Func -> Doc #

pprPrec :: Int -> Func -> Doc #

pprList :: [Func] -> Doc #

Pretty Params Source # 

Methods

ppr :: Params -> Doc #

pprPrec :: Int -> Params -> Doc #

pprList :: [Params] -> Doc #

Pretty Param Source # 

Methods

ppr :: Param -> Doc #

pprPrec :: Int -> Param -> Doc #

pprList :: [Param] -> Doc #

Pretty Attr Source # 

Methods

ppr :: Attr -> Doc #

pprPrec :: Int -> Attr -> Doc #

pprList :: [Attr] -> Doc #

Pretty CEnum Source # 

Methods

ppr :: CEnum -> Doc #

pprPrec :: Int -> CEnum -> Doc #

pprList :: [CEnum] -> Doc #

Pretty FieldGroup Source # 
Pretty Field Source # 

Methods

ppr :: Field -> Doc #

pprPrec :: Int -> Field -> Doc #

pprList :: [Field] -> Doc #

Pretty InitGroup Source # 

Methods

ppr :: InitGroup -> Doc #

pprPrec :: Int -> InitGroup -> Doc #

pprList :: [InitGroup] -> Doc #

Pretty Typedef Source # 

Methods

ppr :: Typedef -> Doc #

pprPrec :: Int -> Typedef -> Doc #

pprList :: [Typedef] -> Doc #

Pretty Init Source # 

Methods

ppr :: Init -> Doc #

pprPrec :: Int -> Init -> Doc #

pprList :: [Init] -> Doc #

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

Methods

ppr :: Type -> Doc #

pprPrec :: Int -> Type -> Doc #

pprList :: [Type] -> Doc #

Pretty ArraySize Source # 

Methods

ppr :: ArraySize -> Doc #

pprPrec :: Int -> ArraySize -> Doc #

pprList :: [ArraySize] -> Doc #

Pretty DeclSpec Source # 

Methods

ppr :: DeclSpec -> Doc #

pprPrec :: Int -> DeclSpec -> Doc #

pprList :: [DeclSpec] -> Doc #

Pretty TypeSpec Source # 

Methods

ppr :: TypeSpec -> Doc #

pprPrec :: Int -> TypeSpec -> Doc #

pprList :: [TypeSpec] -> Doc #

Pretty Sign Source # 

Methods

ppr :: Sign -> Doc #

pprPrec :: Int -> Sign -> Doc #

pprList :: [Sign] -> Doc #

Pretty TypeQual Source # 

Methods

ppr :: TypeQual -> Doc #

pprPrec :: Int -> TypeQual -> Doc #

pprList :: [TypeQual] -> Doc #

Pretty Storage Source # 

Methods

ppr :: Storage -> Doc #

pprPrec :: Int -> Storage -> Doc #

pprList :: [Storage] -> Doc #

Pretty StringLit Source # 

Methods

ppr :: StringLit -> Doc #

pprPrec :: Int -> StringLit -> Doc #

pprList :: [StringLit] -> Doc #

Pretty Id Source # 

Methods

ppr :: Id -> Doc #

pprPrec :: Int -> Id -> Doc #

pprList :: [Id] -> Doc #