package core_kernel
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
Industrial strength alternative to OCaml's standard library
Install
dune-project
Dependency
Authors
Maintainers
Sources
v0.14.2.tar.gz
sha256=66f5353964d35a994ec7fdc88fe60ae5d497ac89a8042786f3e37d9e2202ce4b
md5=ede2f6d22eaa8320f88bac67d41b5cff
doc/src/core_kernel/hashable.ml.html
Source file hashable.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131(** Functors and interfaces used to make modules hashable. *) open! Import module Binable = Binable0 module type Common = sig type t [@@deriving compare, hash] val hashable : t Hashtbl.Hashable.t end module type S_plain = sig include Common module Table : Hashtbl.S_plain with type key = t module Hash_set : Hash_set.S_plain with type elt = t module Hash_queue : Hash_queue.S with type key = t end module type S = sig include Common module Table : Hashtbl.S with type key = t module Hash_set : Hash_set.S with type elt = t module Hash_queue : Hash_queue.S with type key = t end module Make_plain (T : sig type t [@@deriving hash] include Hashtbl.Key_plain with type t := t end) : S_plain with type t := T.t = struct include T module Table = Hashtbl.Make_plain (T) module Hash_set = Hash_set.Make_plain (T) module Hash_queue = Hash_queue.Make (T) let hashable = Table.hashable end module Make_plain_and_derive_hash_fold_t (T : Hashtbl.Key_plain) : S_plain with type t := T.t = Make_plain (struct include T let hash_fold_t state t = hash_fold_int state (hash t) end) module Make (T : sig type t [@@deriving hash] include Hashtbl.Key with type t := t end) : S with type t := T.t = struct include T module Table = Hashtbl.Make (T) module Hash_set = Hash_set.Make (T) module Hash_queue = Hash_queue.Make (T) let hashable = Table.hashable end module Make_and_derive_hash_fold_t (T : Hashtbl.Key) : S with type t := T.t = Make (struct include T let hash_fold_t state t = hash_fold_int state (hash t) end) module type S_binable = sig type t [@@deriving hash] val hashable : t Hashtbl.Hashable.t module Table : Hashtbl.S_binable with type key = t module Hash_set : Hash_set.S_binable with type elt = t module Hash_queue : Hash_queue.S with type key = t end module Make_binable (T : sig type t [@@deriving hash] include Hashtbl.Key_binable with type t := t end) : S_binable with type t := T.t = struct module Table = Hashtbl.Make_binable (T) module Hash_set = Hash_set.Make_binable (T) module Hash_queue = Hash_queue.Make (T) include T let hashable = Table.hashable end module Make_binable_and_derive_hash_fold_t (T : Hashtbl.Key_binable) : S_binable with type t := T.t = Make_binable (struct include T let hash_fold_t state t = hash_fold_int state (hash t) end) module Stable : sig module V1 : sig module type S = sig type key module Table : sig type 'a t = (key, 'a) Hashtbl.t [@@deriving sexp, bin_io] end module Hash_set : sig type t = key Hash_set.t [@@deriving sexp, bin_io] end end module Make (Key : Hashtbl.Key_binable) : S with type key := Key.t end end = struct module V1 = struct module type S = sig type key module Table : sig type 'a t = (key, 'a) Hashtbl.t [@@deriving sexp, bin_io] end module Hash_set : sig type t = key Hash_set.t [@@deriving sexp, bin_io] end end module Make (Key : Hashtbl.Key_binable) : S with type key := Key.t = struct module Table = Hashtbl.Make_binable (Key) module Hash_set = Hash_set.Make_binable (Key) end end end
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>