sig
type localizable =
PStmt of (Db_types.kernel_function * Cil_types.stmt)
| PLval of
(Db_types.kernel_function option * Cil_types.kinstr * Cil_types.lval)
| PTermLval of
(Db_types.kernel_function option * Cil_types.kinstr *
Cil_types.term_lval)
| PVDecl of (Db_types.kernel_function option * Cil_types.varinfo)
| PCodeAnnot of
(Db_types.kernel_function * Cil_types.stmt *
Cil_types.code_annotation)
| PGlobal of Cil_types.global
| PBehavior of (Db_types.kernel_function * Cil_types.funbehavior)
| PPredicate of
(Db_types.kernel_function option * Cil_types.kinstr *
Cil_types.identified_predicate)
module Localizable_Datatype :
sig
type t = localizable
val rehash : t -> t
val descr : Unmarshal.t
val copy : t -> t
val name : string
val register_comparable :
?compare:(t -> t -> int) ->
?equal:(t -> t -> bool) ->
?hash:(t -> int) -> ?physical_hash:(t -> int) -> unit -> unit
val is_comparable_set : unit -> bool
val hash : t -> int
val physical_hash : t -> int
val equal : t -> t -> bool
val compare : t -> t -> int
val contain_project : (Project.project -> t -> bool) option ref
end
module Locs : sig type state end
val display_source :
Cil_types.global list ->
GSourceView.source_buffer ->
host:Gtk_helper.host ->
highlighter:(Pretty_source.localizable -> start:int -> stop:int -> unit) ->
selector:(button:int -> Pretty_source.localizable -> unit) ->
Pretty_source.Locs.state
val hilite : Pretty_source.Locs.state -> unit
val locate_localizable :
Pretty_source.Locs.state ->
Pretty_source.localizable -> (int * int) option
val localizable_from_locs :
Pretty_source.Locs.state ->
file:string -> line:int -> Pretty_source.localizable list
end