sig
  val self : State.t
  val get : Cil_types.varinfo -> Cil_types.kernel_function
  val get_params : Cil_types.kernel_function -> Cil_types.varinfo list
  val get_vi : Cil_types.kernel_function -> Cil_types.varinfo
  val mem_name : string -> bool
  val mem_def_name : string -> bool
  val mem_decl_name : string -> bool
  val find_by_name : string -> Cil_types.kernel_function
  val find_all_by_orig_name :
    ?cmp:(Cil_types.kernel_function -> Cil_types.kernel_function -> int) ->
    string -> Cil_types.kernel_function list
  val find_def_by_name : string -> Cil_types.kernel_function
  val find_decl_by_name : string -> Cil_types.kernel_function
  val iter : (Cil_types.kernel_function -> unit) -> unit
  val fold : (Cil_types.kernel_function -> '-> 'a) -> '-> 'a
  val iter_on_fundecs : (Cil_types.fundec -> unit) -> unit
  val add : Cil_types.cil_function -> unit
  val remove : Cil_types.varinfo -> unit
  val replace_by_declaration :
    Cil_types.funspec -> Cil_types.varinfo -> Cil_types.location -> unit
  val replace_by_definition :
    Cil_types.funspec -> Cil_types.fundec -> Cil_types.location -> unit
  val register : Cil_types.kernel_function -> unit
end