Frama-C:
Plug-ins:
Libraries:

Frama-C API - Rewrite

type visitor = {
  1. exp : Eva__.Eva_ast_types.exp_node Eva__.Eva_ast_types.tag -> Eva__.Eva_ast_types.exp_node Eva__.Eva_ast_types.tag;
  2. lval : (Eva__.Eva_ast_types.lhost * Eva__.Eva_ast_types.offset) Eva__.Eva_ast_types.tag -> (Eva__.Eva_ast_types.lhost * Eva__.Eva_ast_types.offset) Eva__.Eva_ast_types.tag;
  3. varinfo : Frama_c_kernel.Cil_types.varinfo -> Frama_c_kernel.Cil_types.varinfo;
  4. offset : Eva__.Eva_ast_types.offset -> Eva__.Eva_ast_types.offset;
}
type rewriter = {
  1. rewrite_exp : visitor:visitor -> Eva__.Eva_ast_types.exp_node Eva__.Eva_ast_types.tag -> Eva__.Eva_ast_types.exp_node Eva__.Eva_ast_types.tag;
  2. rewrite_lval : visitor:visitor -> (Eva__.Eva_ast_types.lhost * Eva__.Eva_ast_types.offset) Eva__.Eva_ast_types.tag -> (Eva__.Eva_ast_types.lhost * Eva__.Eva_ast_types.offset) Eva__.Eva_ast_types.tag;
  3. rewrite_varinfo : visitor:visitor -> Frama_c_kernel.Cil_types.varinfo -> Frama_c_kernel.Cil_types.varinfo;
  4. rewrite_offset : visitor:visitor -> Eva__.Eva_ast_types.offset -> Eva__.Eva_ast_types.offset;
}
val default : rewriter
val visit_exp : rewriter -> Eva__.Eva_ast_types.exp_node Eva__.Eva_ast_types.tag -> Eva__.Eva_ast_types.exp_node Eva__.Eva_ast_types.tag
val visit_lval : rewriter -> (Eva__.Eva_ast_types.lhost * Eva__.Eva_ast_types.offset) Eva__.Eva_ast_types.tag -> (Eva__.Eva_ast_types.lhost * Eva__.Eva_ast_types.offset) Eva__.Eva_ast_types.tag