package mopsa

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Pointwise.MakeSource

Parameters

module Key : KEY

Signature

module M : sig ... end
Sourcetype nt_t = Value.t M.t
Sourceval bottom : t
Sourceval empty : t
Sourceval top : t
Sourceval is_bottom : t -> bool
Sourceval is_empty : t -> bool
Sourceval is_top : t -> bool
Sourceval subset : t -> t -> bool
Sourceval join : t -> t -> t
Sourceval widen : 'a Core.Context.ctx -> t -> t -> t
Sourceval meet : t -> t -> t
Sourceval print : Core.All.printer -> t -> unit
Sourceval find : Key.t -> t -> Value.t

Returns ⊥ value if either k is not found, or a is the ⊤ map.

Sourceval remove : Key.t -> t -> t
Sourceval m_add : Key.t -> Value.t -> nt_t -> nt_t
Sourceval add : Key.t -> Value.t -> t -> t
Sourceval mem : Key.t -> t -> bool

Returns false of a is the ⊤ map, or k is mapped to the ⊥ value.

Sourceval rename : Key.t -> Key.t -> t -> t
Sourceval apply : Key.t -> (Value.t -> Value.t) -> t -> t
Sourceval singleton : Key.t -> Value.t -> t
Sourceval filter : (Key.t -> Value.t -> bool) -> t -> t
Sourceval bindings : t -> (Key.t * Value.t) list

Raises a Top_encountered exception for the ⊤ map.

Sourceval max_binding : t -> (Key.t * Value.t) option

Returns None for a ⊤ or ⊥ map.

Sourceval cardinal : t -> int

Raises a Top_encountered exception for the ⊤ map.

Sourceval of_list : (Key.t * Value.t) list -> t

Iterator functions.

These functions do nothing for the ⊤ map, which is equivalent here to the empty map.

Sourceval iter : (Key.t -> Value.t -> unit) -> t -> unit
Sourceval fold : (Key.t -> Value.t -> 'a -> 'a) -> t -> 'a -> 'a
Sourceval map : (Value.t -> Value.t) -> t -> t
Sourceval mapi : (Key.t -> Value.t -> Value.t) -> t -> t
Sourceval for_all : (Key.t -> Value.t -> bool) -> t -> bool
Sourceval exists : (Key.t -> Value.t -> bool) -> t -> bool

Binary iterators.

If a key is bound in only one map, the function is called with the ⊥ value as missing argument. These functions do nothing if either map is the ⊤ map.

Sourceval map2 : (Key.t -> Value.t -> Value.t -> Value.t) -> t -> t -> t
Sourceval iter2 : (Key.t -> Value.t -> Value.t -> unit) -> t -> t -> unit
Sourceval fold2 : (Key.t -> Value.t -> Value.t -> 'a -> 'a) -> t -> t -> 'a -> 'a
Sourceval for_all2 : (Key.t -> Value.t -> Value.t -> bool) -> t -> t -> bool
Sourceval exists2 : (Key.t -> Value.t -> Value.t -> bool) -> t -> t -> bool
Sourceval map2z : (Key.t -> Value.t -> Value.t -> Value.t) -> t -> t -> t
Sourceval iter2z : (Key.t -> Value.t -> Value.t -> unit) -> t -> t -> unit
Sourceval fold2z : (Key.t -> Value.t -> Value.t -> 'a -> 'a) -> t -> t -> 'a -> 'a
Sourceval fold2zo : (Key.t -> Value.t -> 'a -> 'a) -> (Key.t -> Value.t -> 'a -> 'a) -> (Key.t -> Value.t -> Value.t -> 'a -> 'a) -> t -> t -> 'a -> 'a
Sourceval for_all2z : (Key.t -> Value.t -> Value.t -> bool) -> t -> t -> bool
Sourceval exists2z : (Key.t -> Value.t -> Value.t -> bool) -> t -> t -> bool

Slice iterations.

Sourceval map_slice : (Key.t -> Value.t -> Value.t) -> t -> Key.t -> Key.t -> t
Sourceval iter_slice : (Key.t -> Value.t -> unit) -> t -> Key.t -> Key.t -> unit
Sourceval fold_slice : (Key.t -> Value.t -> 'a -> 'a) -> t -> Key.t -> Key.t -> 'a -> 'a
Sourceval for_all_slice : (Key.t -> Value.t -> bool) -> t -> Key.t -> Key.t -> bool
Sourceval exists_slice : (Key.t -> Value.t -> bool) -> t -> Key.t -> Key.t -> bool
OCaml

Innovation. Community. Security.