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
[@@@alert
unstable "The API of this library is not stable and may change without notice."]
[@@@alert "-unstable"]
module Appendable_list = Appendable_list
module Nonempty_list = Nonempty_list
module Ansi_color = Ansi_color
module Array = Array
module Bytes = Bytes
module Char = Char
module Comparator = Comparator
module Console = Console
module Either = Either
module Exn = Exn
module Exn_with_backtrace = Exn_with_backtrace
module Fcntl = Fcntl
module Filename = Filename
module Hashtbl = Hashtbl
module Table = Table
module Int = Int
module Id = Id
module Io = Io
module List = List
module Lock_file = Lock_file
module Map = Map
module Option = Option
module Or_exn = Or_exn
module Ordering = Ordering
module Pp = Pp
module Result = Result
module Set = Set
module Signal = Signal
module Comparable = Comparable
module Comparable_intf = Comparable_intf
module Staged = Staged
module String = String
module Bool = Bool
module Sexp = Sexp
module Path = Path
module Fpath = Fpath
module Univ_map = Univ_map
module Loc = Loc
module Env = Env
module Proc = Proc
module Type_eq = Type_eq
module Nothing = Nothing
module Bin = Bin
module Digest = Digest
module Fdecl = Fdecl
module Unit = Unit
module Monad = Monad
module State = State
module Monoid = Monoid
module Float = Float
module Tuple = Tuple
module Poly = Poly
module Code_error = Code_error
module User_error = User_error
module User_message = User_message
module User_warning = User_warning
module Lexbuf = Lexbuf
module Scanf = Scanf
module Sys = Sys
module Pid = Pid
module Applicative = Applicative
module Top_closure_intf = Top_closure_intf
module Top_closure = Top_closure
module Seq = Seq
module Temp = Temp
module Queue = Queue
module Caller_id = Caller_id
module Metrics = Metrics
module Dune_filesystem_stubs = Dune_filesystem_stubs
module Unix_error = struct
include Dune_filesystem_stubs.Unix_error
module Detailed = struct
include Dune_filesystem_stubs.Unix_error.Detailed
let to_dyn (error, syscall, arg) =
Dyn.Record
[ ("error", String (Unix.error_message error))
; ("syscall", String syscall)
; ("arg", String arg)
]
let pp ?(prefix = "") unix_error =
Pp.verbatim (prefix ^ to_string_hum unix_error)
end
end
module File_kind = struct
include Dune_filesystem_stubs.File_kind
let to_dyn t = Dyn.String (to_string t)
end
module type Applicative = Applicative_intf.S
module type Monad = Monad_intf.S
module type Monoid = Monoid_intf.S
external reraise : exn -> _ = "%reraise"
let compare _ _ = `Use_Poly_compare
type ('a, 'error) result = ('a, 'error) Result.t =
| Ok of 'a
| Error of 'error
type ('a, 'b) either = ('a, 'b) Either.t =
| Left of 'a
| Right of 'b
type ordering = Ordering.t =
| Lt
| Eq
| Gt
let sprintf = Printf.sprintf
let ksprintf = Printf.ksprintf
let printfn a = ksprintf print_endline a