language-c99-0.2.0: An implementation of the C99 AST that strictly follows the standard.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.C99.AST

Documentation

data Ident Source #

Instances

Instances details
Pretty Ident Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Ident -> Doc Source #

data IdentNonDigit Source #

Instances

Instances details
Pretty IdentNonDigit Source # 
Instance details

Defined in Language.C99.Pretty

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

Instances details
Pretty NonDigit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: NonDigit -> Doc Source #

data Digit Source #

Instances

Instances details
Pretty Digit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Digit -> Doc Source #

data UnivCharName Source #

Instances

Instances details
Pretty UnivCharName Source # 
Instance details

Defined in Language.C99.Pretty

data HexQuad Source #

Instances

Instances details
Pretty HexQuad Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexQuad -> Doc Source #

data Const Source #

Instances

Instances details
Pretty Const Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Const -> Doc Source #

data IntConst Source #

Instances

Instances details
Pretty IntConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: IntConst -> Doc Source #

data DecConst Source #

Instances

Instances details
Pretty DecConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: DecConst -> Doc Source #

data OcConst Source #

Constructors

Oc0 
OcCons OcConst OcDigit 

Instances

Instances details
Pretty OcConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: OcConst -> Doc Source #

data HexConst Source #

Instances

Instances details
Pretty HexConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexConst -> Doc Source #

data HexPrefix Source #

Constructors

OX 

Instances

Instances details
Pretty HexPrefix Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexPrefix -> Doc Source #

data NonZeroDigit Source #

Instances

Instances details
Pretty NonZeroDigit Source # 
Instance details

Defined in Language.C99.Pretty

data OcDigit Source #

Instances

Instances details
Pretty OcDigit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: OcDigit -> Doc Source #

data HexDigit Source #

Instances

Instances details
Pretty HexDigit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexDigit -> Doc Source #

data UnsignedSuffix Source #

Constructors

U 

Instances

Instances details
Pretty UnsignedSuffix Source # 
Instance details

Defined in Language.C99.Pretty

data LongSuffix Source #

Constructors

L 

Instances

Instances details
Pretty LongSuffix Source # 
Instance details

Defined in Language.C99.Pretty

data LongLongSuffix Source #

Constructors

LL 

Instances

Instances details
Pretty LongLongSuffix Source # 
Instance details

Defined in Language.C99.Pretty

data FloatConst Source #

Instances

Instances details
Pretty FloatConst Source # 
Instance details

Defined in Language.C99.Pretty

data FracConst Source #

Instances

Instances details
Pretty FracConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: FracConst -> Doc Source #

data ExpPart Source #

Constructors

E (Maybe Sign) DigitSeq 

Instances

Instances details
Pretty ExpPart Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ExpPart -> Doc Source #

data Sign Source #

Constructors

SPlus 
SMinus 

Instances

Instances details
Pretty Sign Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Sign -> Doc Source #

data DigitSeq Source #

Instances

Instances details
Pretty DigitSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: DigitSeq -> Doc Source #

data HexFracConst Source #

Instances

Instances details
Pretty HexFracConst Source # 
Instance details

Defined in Language.C99.Pretty

data BinExpPart Source #

Constructors

P (Maybe Sign) DigitSeq 

Instances

Instances details
Pretty BinExpPart Source # 
Instance details

Defined in Language.C99.Pretty

data HexDigitSeq Source #

Instances

Instances details
Pretty HexDigitSeq Source # 
Instance details

Defined in Language.C99.Pretty

data FloatSuffix Source #

Constructors

FF 
FL 

Instances

Instances details
Pretty FloatSuffix Source # 
Instance details

Defined in Language.C99.Pretty

data EnumConst Source #

Constructors

Enum Ident 

Instances

Instances details
Pretty EnumConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: EnumConst -> Doc Source #

data CharConst Source #

Constructors

Char CCharSeq 
CharL CCharSeq 

Instances

Instances details
Pretty CharConst Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CharConst -> Doc Source #

data CCharSeq Source #

Instances

Instances details
Pretty CCharSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CCharSeq -> Doc Source #

data CChar Source #

Constructors

CChar Char 
CCharEsc EscSeq 

Instances

Instances details
Pretty CChar Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CChar -> Doc Source #

data EscSeq Source #

Instances

Instances details
Pretty EscSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: EscSeq -> Doc Source #

data SimpleEscSeq Source #

Instances

Instances details
Pretty SimpleEscSeq Source # 
Instance details

Defined in Language.C99.Pretty

data OcEscSeq Source #

Instances

Instances details
Pretty OcEscSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: OcEscSeq -> Doc Source #

data HexEscSeq Source #

Instances

Instances details
Pretty HexEscSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: HexEscSeq -> Doc Source #

data StringLit Source #

Instances

Instances details
Pretty StringLit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: StringLit -> Doc Source #

data SCharSeq Source #

Instances

Instances details
Pretty SCharSeq Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: SCharSeq -> Doc Source #

data SChar Source #

Constructors

SChar Char 
SCharEsc EscSeq 

Instances

Instances details
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 PrimExpr Source #

Instances

Instances details
Pretty PrimExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: PrimExpr -> Doc Source #

data ArgExprList Source #

Instances

Instances details
Pretty ArgExprList Source # 
Instance details

Defined in Language.C99.Pretty

data UnaryOp Source #

Constructors

UORef 
UODeref 
UOPlus 
UOMin 
UOBNot 
UONot 

Instances

Instances details
Pretty UnaryOp Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: UnaryOp -> Doc Source #

data CastExpr Source #

Instances

Instances details
Pretty CastExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CastExpr -> Doc Source #

data MultExpr Source #

Instances

Instances details
Pretty MultExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: MultExpr -> Doc Source #

data AddExpr Source #

Instances

Instances details
Pretty AddExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: AddExpr -> Doc Source #

data ShiftExpr Source #

Instances

Instances details
Pretty ShiftExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ShiftExpr -> Doc Source #

data EqExpr Source #

Instances

Instances details
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

Instances details
Pretty AndExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: AndExpr -> Doc Source #

data XOrExpr Source #

Instances

Instances details
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

Instances details
Pretty OrExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: OrExpr -> Doc Source #

data LAndExpr Source #

Instances

Instances details
Pretty LAndExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: LAndExpr -> Doc Source #

data LOrExpr Source #

Instances

Instances details
Pretty LOrExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: LOrExpr -> Doc Source #

data CondExpr Source #

Instances

Instances details
Pretty CondExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: CondExpr -> Doc Source #

data AssignExpr Source #

Instances

Instances details
Pretty AssignExpr Source # 
Instance details

Defined in Language.C99.Pretty

data AssignOp Source #

Constructors

AEq 
ATimes 
ADiv 
AMod 
AAdd 
ASub 
AShiftL 
AShiftR 
AAnd 
AXOr 
AOr 

Instances

Instances details
Pretty AssignOp Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: AssignOp -> Doc Source #

data Expr Source #

Instances

Instances details
Pretty Expr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Expr -> Doc Source #

data ConstExpr Source #

Constructors

Const CondExpr 

Instances

Instances details
Pretty ConstExpr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ConstExpr -> Doc Source #

data Decln Source #

Instances

Instances details
Pretty Decln Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Decln -> Doc Source #

data InitDeclrList Source #

Instances

Instances details
Pretty InitDeclrList Source # 
Instance details

Defined in Language.C99.Pretty

data InitDeclr Source #

Instances

Instances details
Pretty InitDeclr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: InitDeclr -> Doc Source #

data StorageClassSpec Source #

Instances

Instances details
Pretty StorageClassSpec Source # 
Instance details

Defined in Language.C99.Pretty

data StructOrUnion Source #

Constructors

Struct 
Union 

Instances

Instances details
Pretty StructOrUnion Source # 
Instance details

Defined in Language.C99.Pretty

data StructDecln Source #

Instances

Instances details
Pretty StructDecln Source # 
Instance details

Defined in Language.C99.Pretty

data SpecQualList Source #

Instances

Instances details
Pretty SpecQualList Source # 
Instance details

Defined in Language.C99.Pretty

data StructDeclr Source #

Instances

Instances details
Pretty StructDeclr Source # 
Instance details

Defined in Language.C99.Pretty

data EnumSpec Source #

Instances

Instances details
Pretty EnumSpec Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: EnumSpec -> Doc Source #

data EnumrList Source #

Instances

Instances details
Pretty EnumrList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: EnumrList -> Doc Source #

data Enumr Source #

Instances

Instances details
Pretty Enumr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Enumr -> Doc Source #

data TypeQual Source #

Constructors

QConst 
QRestrict 
QVolatile 

Instances

Instances details
Pretty TypeQual Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: TypeQual -> Doc Source #

data FunSpec Source #

Constructors

SpecInline 

Instances

Instances details
Pretty FunSpec Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: FunSpec -> Doc Source #

data Declr Source #

Constructors

Declr (Maybe Ptr) DirectDeclr 

Instances

Instances details
Pretty Declr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Declr -> Doc Source #

data Ptr Source #

Instances

Instances details
Pretty Ptr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Ptr -> Doc Source #

data TypeQualList Source #

Instances

Instances details
Pretty TypeQualList Source # 
Instance details

Defined in Language.C99.Pretty

data ParamTypeList Source #

Instances

Instances details
Pretty ParamTypeList Source # 
Instance details

Defined in Language.C99.Pretty

data ParamList Source #

Instances

Instances details
Pretty ParamList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ParamList -> Doc Source #

data IdentList Source #

Instances

Instances details
Pretty IdentList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: IdentList -> Doc Source #

data TypeName Source #

Instances

Instances details
Pretty TypeName Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: TypeName -> Doc Source #

data AbstractDeclr Source #

Instances

Instances details
Pretty AbstractDeclr Source # 
Instance details

Defined in Language.C99.Pretty

data TypedefName Source #

Constructors

TypedefName Ident 

Instances

Instances details
Pretty TypedefName Source # 
Instance details

Defined in Language.C99.Pretty

data Init Source #

Instances

Instances details
Pretty Init Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Init -> Doc Source #

data InitList Source #

Instances

Instances details
Pretty InitList Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: InitList -> Doc Source #

data Design Source #

Constructors

Design DesigrList 

Instances

Instances details
Pretty Design Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Design -> Doc Source #

data DesigrList Source #

Instances

Instances details
Pretty DesigrList Source # 
Instance details

Defined in Language.C99.Pretty

data Desigr Source #

Instances

Instances details
Pretty Desigr Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: Desigr -> Doc Source #

data LabeledStmt Source #

Instances

Instances details
Pretty LabeledStmt Source # 
Instance details

Defined in Language.C99.Pretty

data CompoundStmt Source #

Constructors

Compound (Maybe BlockItemList) 

Instances

Instances details
Pretty CompoundStmt Source # 
Instance details

Defined in Language.C99.Pretty

data BlockItemList Source #

Instances

Instances details
Pretty BlockItemList Source # 
Instance details

Defined in Language.C99.Pretty

data BlockItem Source #

Instances

Instances details
Pretty BlockItem Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: BlockItem -> Doc Source #

data ExprStmt Source #

Constructors

ExprStmt (Maybe Expr) 

Instances

Instances details
Pretty ExprStmt Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ExprStmt -> Doc Source #

data SelectStmt Source #

Instances

Instances details
Pretty SelectStmt Source # 
Instance details

Defined in Language.C99.Pretty

data IterStmt Source #

Instances

Instances details
Pretty IterStmt Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: IterStmt -> Doc Source #

data JumpStmt Source #

Instances

Instances details
Pretty JumpStmt Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: JumpStmt -> Doc Source #

data TransUnit Source #

Instances

Instances details
Pretty TransUnit Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: TransUnit -> Doc Source #

data ExtDecln Source #

Constructors

ExtFun FunDef 
ExtDecln Decln 

Instances

Instances details
Pretty ExtDecln Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: ExtDecln -> Doc Source #

data FunDef Source #

Instances

Instances details
Pretty FunDef Source # 
Instance details

Defined in Language.C99.Pretty

Methods

pretty :: FunDef -> Doc Source #

data DeclnList Source #

Instances

Instances details
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