package provider

  1. Overview
  2. Docs

Source file import.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
let phys_equal = ( == )

module Array = struct
  include ArrayLabels

  let for_alli =
    let rec loop t ~f i =
      if i = length t then true else if f i t.(i) then loop t ~f (i + 1) else false
    in
    fun t ~f -> loop t ~f 0
  ;;
end

module Hashtbl = struct
  include MoreLabels.Hashtbl
end

module Int = struct
  include Int

  let hash = (Hashtbl.hash : int -> int)
  let seeded_hash = (Hashtbl.seeded_hash : int -> int -> int)
end

module List = struct
  include ListLabels

  let stable_sort t ~compare = stable_sort t ~cmp:compare
end

module Ordering = struct
  type t =
    | Less
    | Equal
    | Greater

  let of_int i = if i < 0 then Less else if i = 0 then Equal else Greater
end