package core_kernel

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

This module defines interfaces used in Core.Map. See the documentation in core_map.mli for a description of the approach.

CRs and comments about Map functions do not belong in this file. They belong next to the appropriate function in core_map.mli.

This module defines module types {Creators,Accessors}{1,2,3,_generic,_with_comparator}. It uses check functors to ensure that each module types is an instance of the corresponding _generic one.

We must treat Creators and Accessors separately, because we sometimes need to choose different instantiations of their options. In particular, Map itself matches Creators3_with_comparator but Accessors3 (without comparator).

module Binable : sig ... end
module List : sig ... end

This module extends the Base List module with bin_io and quickcheck

module Map_intf = Base.Map_intf
module Map = Base.Map
module With_comparator = Base.Map_intf.With_comparator
module Without_comparator = Base.Map_intf.Without_comparator
module type Key = Core_map_intf.Key
module Symmetric_diff_element : sig ... end
module Check_accessors (T : Base.T.T3) (Tree : Base.T.T3) (Key : Base.T.T1) (Options : Base.T.T3) (M : Core_map_intf.Accessors_generic with type ('a, 'b, 'c) options := ('a, 'b, 'c) Options.t with type ('a, 'b, 'c) t := ('a, 'b, 'c) T.t with type ('a, 'b, 'c) tree := ('a, 'b, 'c) Tree.t with type 'a key := 'a Key.t) : sig ... end

Consistency checks (same as in Container).

module Check_creators (T : Base.T.T3) (Tree : Base.T.T3) (Key : Base.T.T1) (Options : Base.T.T3) (M : Core_map_intf.Creators_generic with type ('a, 'b, 'c) options := ('a, 'b, 'c) Options.t with type ('a, 'b, 'c) t := ('a, 'b, 'c) T.t with type ('a, 'b, 'c) tree := ('a, 'b, 'c) Tree.t with type 'a key := 'a Key.t) : sig ... end
module Check_creators1 (M : Core_map_intf.Creators1) : sig ... end
module Check_creators2 (M : Core_map_intf.Creators2) : sig ... end
module Make_S_plain_tree (Key : Comparator.S) : sig ... end
module type S = Core_map_intf.S