sig
type nameKind = NVar | NFun | NField | NType
class type cabsVisitor =
object
method vEnterScope : unit -> unit
method vExitScope : unit -> unit
method vattr : Cabs.attribute -> Cabs.attribute list Cil.visitAction
method vblock : Cabs.block -> Cabs.block Cil.visitAction
method vdecltype : Cabs.decl_type -> Cabs.decl_type Cil.visitAction
method vdef : Cabs.definition -> Cabs.definition list Cil.visitAction
method vexpr : Cabs.expression -> Cabs.expression Cil.visitAction
method vinitexpr :
Cabs.init_expression -> Cabs.init_expression Cil.visitAction
method vname :
Cabsvisit.nameKind ->
Cabs.specifier -> Cabs.name -> Cabs.name Cil.visitAction
method vspec : Cabs.specifier -> Cabs.specifier Cil.visitAction
method vstmt : Cabs.statement -> Cabs.statement list Cil.visitAction
method vtypespec :
Cabs.typeSpecifier -> Cabs.typeSpecifier Cil.visitAction
method vvar : string -> string
end
class nopCabsVisitor : cabsVisitor
val visitCabsTypeSpecifier :
Cabsvisit.cabsVisitor -> Cabs.typeSpecifier -> Cabs.typeSpecifier
val visitCabsSpecifier :
Cabsvisit.cabsVisitor -> Cabs.specifier -> Cabs.specifier
val visitCabsDeclType :
Cabsvisit.cabsVisitor -> bool -> Cabs.decl_type -> Cabs.decl_type
val visitCabsDefinition :
Cabsvisit.cabsVisitor -> Cabs.definition -> Cabs.definition list
val visitCabsBlock : Cabsvisit.cabsVisitor -> Cabs.block -> Cabs.block
val visitCabsStatement :
Cabsvisit.cabsVisitor -> Cabs.statement -> Cabs.statement list
val visitCabsExpression :
Cabsvisit.cabsVisitor -> Cabs.expression -> Cabs.expression
val visitCabsAttributes :
Cabsvisit.cabsVisitor -> Cabs.attribute list -> Cabs.attribute list
val visitCabsName :
Cabsvisit.cabsVisitor ->
Cabsvisit.nameKind -> Cabs.specifier -> Cabs.name -> Cabs.name
val visitCabsFile : Cabsvisit.cabsVisitor -> Cabs.file -> Cabs.file
end