language-c99-0.1.1: An implementation of the C99 AST that strictly follows the standard.

Safe HaskellSafe
LanguageHaskell2010

Language.C99.AST

Documentation

data NonDigit Source #

Constructors

NDUnderscore 
NDa 
NDA 
NDb 
NDB 
NDc 
NDC 
NDd 
NDD 
NDe 
NDE 
NDf 
NDF 
NDg 
NDG 
NDh 
NDH 
NDi 
NDI 
NDj 
NDJ 
NDk 
NDK 
NDl 
NDL 
NDm 
NDM 
NDn 
NDN 
NDo 
NDO 
NDp 
NDP 
NDq 
NDQ 
NDr 
NDR 
NDs 
NDS 
NDt 
NDT 
NDu 
NDU 
NDv 
NDV 
NDw 
NDW 
NDx 
NDX 
NDy 
NDY 
NDz 
NDZ 
Instances
Pretty NonDigit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: NonDigit -> Doc Source #

data Digit Source #

Instances
Pretty Digit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Digit -> Doc Source #

data HexQuad Source #

Instances
Pretty HexQuad Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexQuad -> Doc Source #

data DecConst Source #

Instances
Pretty DecConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: DecConst -> Doc Source #

data OcConst Source #

Constructors

Oc0 
OcCons OcConst OcDigit 
Instances
Pretty OcConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: OcConst -> Doc Source #

data HexConst Source #

Instances
Pretty HexConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexConst -> Doc Source #

data HexPrefix Source #

Constructors

OX 
Instances
Pretty HexPrefix Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexPrefix -> Doc Source #

data NonZeroDigit Source #

Instances
Pretty NonZeroDigit Source # 
Instance details

Defined in Language.C99.Pretty

data OcDigit Source #

Instances
Pretty OcDigit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: OcDigit -> Doc Source #

data UnsignedSuffix Source #

Constructors

U 
Instances
Pretty UnsignedSuffix Source # 
Instance details

Defined in Language.C99.Pretty

data LongSuffix Source #

Constructors

L 
Instances
Pretty LongSuffix Source # 
Instance details

Defined in Language.C99.Pretty

data LongLongSuffix Source #

Constructors

LL 
Instances
Pretty LongLongSuffix Source # 
Instance details

Defined in Language.C99.Pretty

data FloatConst Source #

Instances
Pretty FloatConst Source # 
Instance details

Defined in Language.C99.Pretty

data FracConst Source #

Instances
Pretty FracConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: FracConst -> Doc Source #

data ExpPart Source #

Constructors

E (Maybe Sign) DigitSeq 
Instances
Pretty ExpPart Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ExpPart -> Doc Source #

data Sign Source #

Constructors

SPlus 
SMinus 
Instances
Pretty Sign Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Sign -> Doc Source #

data DigitSeq Source #

Instances
Pretty DigitSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: DigitSeq -> Doc Source #

data BinExpPart Source #

Constructors

P (Maybe Sign) DigitSeq 
Instances
Pretty BinExpPart Source # 
Instance details

Defined in Language.C99.Pretty

data FloatSuffix Source #

Constructors

FF 
FL 
Instances
Pretty FloatSuffix Source # 
Instance details

Defined in Language.C99.Pretty

data EnumConst Source #

Constructors

Enum Ident 
Instances
Pretty EnumConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: EnumConst -> Doc Source #

data CharConst Source #

Constructors

Char CCharSeq 
CharL CCharSeq 
Instances
Pretty CharConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CharConst -> Doc Source #

data CCharSeq Source #

Instances
Pretty CCharSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CCharSeq -> Doc Source #

data CChar Source #

Constructors

CChar Char 
CCharEsc EscSeq 
Instances
Pretty CChar Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CChar -> Doc Source #

data SimpleEscSeq Source #

Instances
Pretty SimpleEscSeq Source # 
Instance details

Defined in Language.C99.Pretty

data HexEscSeq Source #

Instances
Pretty HexEscSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexEscSeq -> Doc Source #

data StringLit Source #

Instances
Pretty StringLit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: StringLit -> Doc Source #

data SCharSeq Source #

Instances
Pretty SCharSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: SCharSeq -> Doc Source #

data SChar Source #

Constructors

SChar Char 
SCharEsc EscSeq 
Instances
Pretty SChar Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: SChar -> Doc Source #

data HChar Source #

Constructors

HChar Char 

data QChar Source #

Constructors

QChar Char 

data UnaryOp Source #

Constructors

UORef 
UODeref 
UOPlus 
UOMin 
UOBNot 
UONot 
Instances
Pretty UnaryOp Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: UnaryOp -> Doc Source #

data CastExpr Source #

Instances
Pretty CastExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CastExpr -> Doc Source #

data AddExpr Source #

Instances
Pretty AddExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: AddExpr -> Doc Source #

data EqExpr Source #

Instances
Pretty EqExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: EqExpr -> Doc Source #

data AndExpr Source #

Constructors

AndEq EqExpr 
And AndExpr EqExpr 
Instances
Pretty AndExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: AndExpr -> Doc Source #

data XOrExpr Source #

Instances
Pretty XOrExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: XOrExpr -> Doc Source #

data OrExpr Source #

Constructors

OrXOr XOrExpr 
Or OrExpr XOrExpr 
Instances
Pretty OrExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: OrExpr -> Doc Source #

data LAndExpr Source #

Instances
Pretty LAndExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: LAndExpr -> Doc Source #

data LOrExpr Source #

Instances
Pretty LOrExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: LOrExpr -> Doc Source #

data CondExpr Source #

Instances
Pretty CondExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CondExpr -> Doc Source #

data AssignOp Source #

Constructors

AEq 
ATimes 
ADiv 
AMod 
AAdd 
ASub 
AShiftL 
AShiftR 
AAnd 
AXOr 
AOr 
Instances
Pretty AssignOp Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: AssignOp -> Doc Source #

data Expr Source #

Instances
Pretty Expr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Expr -> Doc Source #

data ConstExpr Source #

Constructors

Const CondExpr 
Instances
Pretty ConstExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ConstExpr -> Doc Source #

data Decln Source #

Instances
Pretty Decln Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Decln -> Doc Source #

data InitDeclr Source #

Instances
Pretty InitDeclr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: InitDeclr -> Doc Source #

data StructOrUnion Source #

Constructors

Struct 
Union 
Instances
Pretty StructOrUnion Source # 
Instance details

Defined in Language.C99.Pretty

data EnumSpec Source #

Instances
Pretty EnumSpec Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: EnumSpec -> Doc Source #

data EnumrList Source #

Instances
Pretty EnumrList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: EnumrList -> Doc Source #

data Enumr Source #

Instances
Pretty Enumr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Enumr -> Doc Source #

data TypeQual Source #

Constructors

QConst 
QRestrict 
QVolatile 
Instances
Pretty TypeQual Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: TypeQual -> Doc Source #

data FunSpec Source #

Constructors

SpecInline 
Instances
Pretty FunSpec Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: FunSpec -> Doc Source #

data Declr Source #

Constructors

Declr (Maybe Ptr) DirectDeclr 
Instances
Pretty Declr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Declr -> Doc Source #

data Ptr Source #

Instances
Pretty Ptr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Ptr -> Doc Source #

data ParamList Source #

Instances
Pretty ParamList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ParamList -> Doc Source #

data IdentList Source #

Instances
Pretty IdentList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: IdentList -> Doc Source #

data TypeName Source #

Instances
Pretty TypeName Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: TypeName -> Doc Source #

data TypedefName Source #

Constructors

TypedefName Ident 
Instances
Pretty TypedefName Source # 
Instance details

Defined in Language.C99.Pretty

data Init Source #

Instances
Pretty Init Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Init -> Doc Source #

data InitList Source #

Instances
Pretty InitList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: InitList -> Doc Source #

data Design Source #

Constructors

Design DesigrList 
Instances
Pretty Design Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Design -> Doc Source #

data DesigrList Source #

Instances
Pretty DesigrList Source # 
Instance details

Defined in Language.C99.Pretty

data Desigr Source #

Instances
Pretty Desigr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Desigr -> Doc Source #

data CompoundStmt Source #

Constructors

Compound (Maybe BlockItemList) 
Instances
Pretty CompoundStmt Source # 
Instance details

Defined in Language.C99.Pretty

data BlockItem Source #

Instances
Pretty BlockItem Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: BlockItem -> Doc Source #

data ExprStmt Source #

Constructors

ExprStmt (Maybe Expr) 
Instances
Pretty ExprStmt Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ExprStmt -> Doc Source #

data JumpStmt Source #

Instances
Pretty JumpStmt Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: JumpStmt -> Doc Source #

data ExtDecln Source #

Constructors

ExtFun FunDef 
ExtDecln Decln 
Instances
Pretty ExtDecln Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ExtDecln -> Doc Source #

data FunDef Source #

Instances
Pretty FunDef Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: FunDef -> Doc Source #

data DeclnList Source #

Instances
Pretty DeclnList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: DeclnList -> Doc Source #

data ElseGroup Source #

Constructors

Else NewLine (Maybe Group) 

data EndIfLine Source #

Constructors

EndIf NewLine 

data LParen Source #

Constructors

LParen 

data NewLine Source #

Constructors

NewLine