package codex

  1. Overview
  2. Docs
The Codex library for building static analysers based on abstract interpretation

Install

dune-project
 Dependency

Authors

Maintainers

Sources

1.0-rc4.tar.gz
md5=bc7266a140c6886add673ede90e335d3
sha512=8da42c0ff2c1098c5f9cb2b5b43b306faf7ac93b8f5ae00c176918cee761f249ff45b29309f31a05bbcf6312304f86a0d5a000eb3f1094d3d3c2b9b4c7f5c386

doc/codex.whilelib/Whilelib/Analysis_sva/State/index.html

Module Analysis_sva.StateSource

Sourcetype key = Var.t
Sourcetype 'a t
Sourcetype !'a value = 'a
Sourcemodule BaseMap : sig ... end
Sourceval empty : 'a t
Sourceval is_empty : 'a t -> bool
Sourceval unsigned_min_binding : 'a t -> key * 'a value
Sourceval unsigned_max_binding : 'a t -> key * 'a value
Sourceval singleton : key -> 'a value -> 'a t
Sourceval cardinal : 'a t -> int
Sourceval is_singleton : 'a t -> (key * 'a value) option
Sourceval find : key -> 'a t -> 'a value
Sourceval find_opt : key -> 'a t -> 'a value option
Sourceval mem : key -> 'a t -> bool
Sourceval remove : key -> 'a t -> 'a t
Sourceval pop_unsigned_minimum : 'a t -> (key * 'a value * 'a t) option
Sourceval pop_unsigned_maximum : 'a t -> (key * 'a value * 'a t) option
Sourceval insert : key -> ('a value option -> 'a value) -> 'a t -> 'a t
Sourceval update : key -> ('a value option -> 'a value option) -> 'a t -> 'a t
Sourceval add : key -> 'a value -> 'a t -> 'a t
Sourceval split : key -> 'a t -> 'a t * 'a value option * 'a t
Sourceval iter : (key -> 'a value -> unit) -> 'a t -> unit
Sourceval fold : (key -> 'a value -> 'acc -> 'acc) -> 'a t -> 'acc -> 'acc
Sourceval fold_on_nonequal_inter : (key -> 'a value -> 'a value -> 'acc -> 'acc) -> 'a t -> 'a t -> 'acc -> 'acc
Sourceval fold_on_nonequal_union : (key -> 'a value option -> 'a value option -> 'acc -> 'acc) -> 'a t -> 'a t -> 'acc -> 'acc
Sourceval filter : (key -> 'a value -> bool) -> 'a t -> 'a t
Sourceval for_all : (key -> 'a value -> bool) -> 'a t -> bool
Sourceval map : ('a value -> 'a value) -> 'a t -> 'a t
Sourceval map_no_share : ('a value -> 'b value) -> 'a t -> 'b t
Sourceval mapi : (key -> 'a value -> 'a value) -> 'a t -> 'a t
Sourceval mapi_no_share : (key -> 'a value -> 'b value) -> 'a t -> 'b t
Sourceval filter_map : (key -> 'a value -> 'a value option) -> 'a t -> 'a t
Sourceval filter_map_no_share : (key -> 'a value -> 'b value option) -> 'a t -> 'b t
Sourceval reflexive_same_domain_for_all2 : (key -> 'a value -> 'a value -> bool) -> 'a t -> 'a t -> bool
Sourceval nonreflexive_same_domain_for_all2 : (key -> 'a value -> 'b value -> bool) -> 'a t -> 'b t -> bool
Sourceval reflexive_subset_domain_for_all2 : (key -> 'a value -> 'a value -> bool) -> 'a t -> 'a t -> bool
Sourceval reflexive_equal : ('a value -> 'a value -> bool) -> 'a t -> 'a t -> bool
Sourceval reflexive_compare : ('a value -> 'a value -> int) -> 'a t -> 'a t -> int
Sourceval disjoint : 'a t -> 'a t -> bool
Sourceval min_binding_inter : 'a t -> 'b t -> (key * 'a value * 'b value) option
Sourceval max_binding_inter : 'a t -> 'b t -> (key * 'a value * 'b value) option
Sourceval idempotent_union : (key -> 'a value -> 'a value -> 'a value) -> 'a t -> 'a t -> 'a t
Sourceval idempotent_inter : (key -> 'a value -> 'a value -> 'a value) -> 'a t -> 'a t -> 'a t
Sourceval nonidempotent_inter_no_share : (key -> 'a value -> 'b value -> 'c value) -> 'a t -> 'b t -> 'c t
Sourceval idempotent_inter_filter : (key -> 'a value -> 'a value -> 'a value option) -> 'a t -> 'a t -> 'a t
Sourceval slow_merge : (key -> 'a value option -> 'b value option -> 'c value option) -> 'a t -> 'b t -> 'c t
Sourceval symmetric_difference : (key -> 'a value -> 'a value -> 'a value option) -> 'a t -> 'a t -> 'a t
Sourceval difference : (key -> 'a value -> 'a value -> 'a value option) -> 'a t -> 'a t -> 'a t
Sourcemodule WithForeign (Map2 : sig ... end) : sig ... end
Sourceval pretty : ?pp_sep:(Format.formatter -> unit -> unit) -> (Format.formatter -> key -> 'a value -> unit) -> Format.formatter -> 'a t -> unit
Sourceval to_seq : 'a t -> (key * 'a value) Seq.t
Sourceval to_rev_seq : 'a t -> (key * 'a value) Seq.t
Sourceval add_seq : (key * 'a value) Seq.t -> 'a t -> 'a t
Sourceval of_seq : (key * 'a value) Seq.t -> 'a t
Sourceval of_list : (key * 'a value) list -> 'a t
Sourceval to_list : 'a t -> (key * 'a value) list