Language.C.Analysis.TravMonad

Name generation monad

class MonadName m

Symbol table monad

class MonadSymtab m

Specialized C error-handling monad

class MonadCError m

AST traversal monad

class MonadTrav m

Handling declarations

handleTagDecl

handleTagDef

handleEnumeratorDef

handleTypeDef

handleObjectDef

handleFunDef

handleVarDecl

handleParamDecl

handleAsmBlock

Symbol table scope modification

enterPrototypeScope

leavePrototypeScope

enterFunctionScope

leaveFunctionScope

enterBlockScope

leaveBlockScope

Symbol table lookup (delegate)

lookupTypeDef

lookupObject

Symbol table modification

createSUERef

Additional error handling facilities

hadHardErrors

handleTravError

throwOnLeft

astError

warn

Trav - default MonadTrav implementation

data Trav s a

runTrav

runTrav_

data TravState s

initTravState

withExtDeclHandler

modifyUserState

userState

getUserState

data TravOptions

modifyOptions

travErrors

Language options

data CLanguage

Helpers

mapMaybeM

maybeM

mapSndM

concatMapM