sig
  val get_code_annotation :
    Cil_types.rooted_code_annotation -> Cil_types.code_annotation
  val add :
    Cil_types.kernel_function ->
    Cil_types.stmt ->
    State.t list -> Cil_types.rooted_code_annotation -> unit
  val add_assert :
    Cil_types.kernel_function ->
    Cil_types.stmt ->
    State.t list -> Cil_types.predicate Cil_types.named -> unit
  val set_annot :
    ?reset:bool ->
    Cil_types.kernel_function ->
    Cil_types.stmt ->
    State.t list ->
    (Cil_types.rooted_code_annotation -> Cil_types.rooted_code_annotation) ->
    unit
  val reset_stmt :
    reset:bool -> Cil_types.kernel_function -> Cil_types.stmt -> unit
  val get :
    ?who:State.t list ->
    Cil_types.stmt ->
    State.t -> (Cil_types.rooted_code_annotation * State.t) list
  val get_annotations :
    ?who:State.t list ->
    Cil_types.stmt -> State.t -> Cil_types.rooted_code_annotation list
  val get_all :
    ?who:State.t list ->
    Cil_types.stmt -> (Cil_types.rooted_code_annotation * State.t) list
  val get_all_annotations :
    ?who:State.t list ->
    Cil_types.stmt -> Cil_types.rooted_code_annotation list
  val get_by_state :
    Cil_types.stmt -> (State.t * Cil_types.rooted_code_annotation list) list
  val get_filter :
    (Cil_types.code_annotation -> bool) ->
    Cil_types.stmt -> Cil_types.rooted_code_annotation list
  val iter_stmt :
    (State.t option -> Cil_types.rooted_code_annotation * State.t -> unit) ->
    Cil_types.stmt -> unit
  val single_iter_stmt :
    (Cil_types.rooted_code_annotation -> unit) -> Cil_types.stmt -> unit
  val fold_stmt :
    (State.t option -> Cil_types.rooted_code_annotation * State.t -> '-> 'a) ->
    Cil_types.stmt -> '-> 'a
  val single_fold_stmt :
    (Cil_types.rooted_code_annotation -> '-> 'a) ->
    Cil_types.stmt -> '-> 'a
  val iter :
    (Cil_types.stmt ->
     State.t option -> Cil_types.rooted_code_annotation * State.t -> unit) ->
    unit
  val fold :
    (Cil_types.stmt ->
     State.t option -> Cil_types.rooted_code_annotation * State.t -> '-> 'a) ->
    '-> 'a
  val filter :
    reset:bool ->
    (Cil_types.stmt ->
     State.t option -> Cil_types.rooted_code_annotation -> bool) ->
    Cil_types.kernel_function -> Cil_types.stmt -> unit
  val self : State.t
end