Module Annotations


module Annotations: sig .. end
Annotations associated with a kinstr.
Consult the Plugin Development Guide for additional details.
val add : Cil_types.stmt ->
Db_types.rooted_code_annotation Db_types.before_after -> unit
Associate one more annotation with a stmt.
val add_assert : Cil_types.stmt -> before:bool -> Cil_types.predicate Cil_types.named -> unit
Associate one more assertion annotation with a stmt.
val add_alarm : Cil_types.stmt ->
before:bool -> Alarms.t -> Cil_types.predicate Cil_types.named -> unit
Associate one more alarm annotation with a stmt.
val replace : Cil_types.stmt ->
Db_types.rooted_code_annotation Db_types.before_after -> unit
Associate the given annotation with the given stmt. Previous annotations of this stmt disappear.
val reset_stmt : Cil_types.stmt -> unit
Erase the annotations associated to the given stmt.
val get : Cil_types.stmt -> Db_types.rooted_code_annotation Db_types.before_after list
Return all the annotations associated with the stmt.
val get_filter : (Cil_types.code_annotation -> bool) ->
Cil_types.stmt -> Db_types.rooted_code_annotation Db_types.before_after list
Returns all the annotation associated with the stmt that respects the given condition. Use it in conjunction with Logic_utils.is_* to retrieve a particular kind of annotations.
val filter : (Cil_types.stmt ->
Db_types.rooted_code_annotation Db_types.before_after -> bool) ->
unit
For each stmt, filter its associated annotations with the given predicate.
val iter : (Cil_types.stmt ->
Db_types.rooted_code_annotation Db_types.before_after list Pervasives.ref ->
unit) ->
unit
val self : Project.Computation.t