sig
  type t_proj = Marks.t_proj
  type t_fct = Marks.t_fct * Kernel_function.t
  exception EraseAssigns
  val fct_info :
    Marks.t_proj ->
    Db_types.kernel_function -> (Marks.t_fct * Db_types.kernel_function) list
  val key_visible : string -> Marks.t_fct -> PdgIndex.Key.t -> bool
  val term_visible :
    Marks.t_fct * Kernel_function.t -> Cil_types.term -> bool
  val body_visible : '-> bool
  val param_visible : Marks.t_fct * '-> int -> bool
  val label_visible :
    Marks.t_fct * '-> Cil_types.stmt -> Cil_types.label -> bool
  val annotation_visible : '-> '-> before:'-> '-> bool
  val fun_precond_visible : '-> '-> bool
  val fun_postcond_visible : '-> '-> bool
  val fun_variant_visible : '-> '-> bool
  val fun_assign_visible :
    Marks.t_fct * Kernel_function.t -> Cil_types.identified_term * '-> bool
  val fun_deps_visible :
    Marks.t_fct * Kernel_function.t -> Cil_types.identified_term -> bool
  val res_call_visible : Marks.t_fct * '-> Cil_types.stmt -> bool
  val called_info :
    Marks.t_proj * '->
    Cil_types.stmt ->
    (Kernel_function.Hptset.elt * (Marks.t_fct * Kernel_function.Hptset.elt))
    option
  val inst_visible : Marks.t_fct * '-> Cil_types.stmt -> bool
  val loc_var_visible : Marks.t_fct * '-> Cil_types.varinfo -> bool
  val fct_name : Cil_types.varinfo -> '-> string
  val result_visible : Kernel_function.t -> Marks.t_fct * '-> bool
end