module Builtin_functions:State_builder.Hashtblwith type key = string and type data = typ * typ list * bool
A list of the built-in functions for the current compiler (GCC or
MSVC, depending on !msvcMode). Maps the name to the
result and argument types, and whether it is vararg.
Initialized by Cil.initCIL. Do not add builtins directly, use
Cil_builtins.add_custom_builtin below for that.
This map replaces gccBuiltins and msvcBuiltins in previous
versions of CIL.
include State_builder.S
Hashtbl are a standard computation.
BUT that is INCORRECT to use projectified hashtables if keys have a
custom rehash function (see Project.DATATYPE_OUTPUT.rehash)
type key
type data
val replace : key -> data -> unitAdd a new binding. The previous one is removed.
val add : key -> data -> unitAdd a new binding. The previous one is only hidden.
val clear : unit -> unitClear the table.
val length : unit -> intLength of the table.
val iter : (key -> data -> unit) -> unit
val iter_sorted : ?cmp:(key -> key -> int) ->
(key -> data -> unit) -> unit
val fold : (key -> data -> 'a -> 'a) ->
'a -> 'a
val fold_sorted : ?cmp:(key -> key -> int) ->
(key -> data -> 'a -> 'a) ->
'a -> 'a
val memo : ?change:(data -> data) ->
(key -> data) ->
key -> dataMemoization. Compute on need the data associated to a given key using
the given function.
If the data is already computed, it is possible to change with
change.
val find : key -> dataReturn the current binding of the given key.
Not_found if the key is not in the table.val find_all : key -> data listReturn the list of all data associated with the given key.
val mem : key -> bool
val remove : key -> unit