Module CLMap.WithForeign

Parameters

module Map2 : sig ... end

Signature

type (!'b, !'c) polyfilter_map_foreign = {
  1. f : 'a. key -> ('a, 'b) Map2.value -> 'c value option;
}
val filter_map_no_share : ('b, 'c) polyfilter_map_foreign -> 'b Map2.t -> 'c t
type (!'value, !'map2) polyinter_foreign = {
  1. f : 'a. key -> 'value value -> ('a, 'map2) Map2.value -> 'value value;
}
val nonidempotent_inter : ('a, 'b) polyinter_foreign -> 'a t -> 'b Map2.t -> 'a t
type (!'map1, !'map2) polyupdate_multiple = {
  1. f : 'a. key -> 'map1 value option -> ('a, 'map2) Map2.value -> 'map1 value option;
}
val update_multiple_from_foreign : 'b Map2.t -> ('a, 'b) polyupdate_multiple -> 'a t -> 'a t
type (!'map1, !'map2) polyupdate_multiple_inter = {
  1. f : 'a. key -> 'map1 value -> ('a, 'map2) Map2.value -> 'map1 value option;
}
val update_multiple_from_inter_with_foreign : 'b Map2.t -> ('a, 'b) polyupdate_multiple_inter -> 'a t -> 'a t
type (!'map1, !'map2) polydifference = ('map1, 'map2) polyupdate_multiple_inter
val difference : ('a, 'b) polydifference -> 'a t -> 'b Map2.t -> 'a t