sig
  type proj = Spare_marks.proj
  type fct = Spare_marks.fct option * Kernel_function.t
  exception EraseAssigns
  exception EraseAllocation
  val fct_info :
    Spare_marks.proj ->
    Cil_types.kernel_function ->
    (Spare_marks.fct option * Cil_types.kernel_function) list
  val key_visible :
    string -> Spare_marks.fct option -> PdgIndex.Key.t -> bool
  val param_visible : Spare_marks.fct option * '-> int -> bool
  val loc_var_visible :
    Spare_marks.fct option * '-> Cil_types.varinfo -> bool
  val term_visible :
    Spare_marks.fct option * Kernel_function.t -> Cil_types.term -> bool
  val body_visible : '-> bool
  val label_visible :
    Spare_marks.fct option * '-> Cil_types.stmt -> Cil_types.label -> bool
  val annotation_visible :
    '-> Cil_types.stmt -> Cil_types.code_annotation -> bool
  val fun_precond_visible : '-> '-> bool
  val fun_postcond_visible : '-> '-> bool
  val fun_variant_visible : '-> '-> bool
  val fun_frees_visible : '-> '-> bool
  val fun_allocates_visible : '-> '-> bool
  val fun_assign_visible :
    Spare_marks.fct option * Kernel_function.t ->
    Cil_types.identified_term * '-> bool
  val fun_deps_visible :
    Spare_marks.fct option * Kernel_function.t ->
    Cil_types.identified_term -> bool
  val res_call_visible :
    Spare_marks.fct option * '-> Cil_types.stmt -> bool
  val called_info :
    Spare_marks.proj * '->
    Cil_types.stmt ->
    (Kernel_function.Hptset.elt *
     (Spare_marks.fct option * Kernel_function.Hptset.elt))
    option
  val inst_visible : Spare_marks.fct option * '-> Cil_types.stmt -> bool
  val fct_name : Cil_types.varinfo -> '-> string
  val result_visible :
    Kernel_function.t -> Spare_marks.fct option * '-> bool
  val cond_edge_visible : '-> Cil_types.stmt -> bool * bool
end