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
module Low_level = Low_level
type stdenv = Eio_unix.Stdenv.base
let run main =
Sys.(set_signal sigpipe Signal_ignore);
Eio_unix.Process.install_sigchld_handler ();
let stdin = (Flow.of_fd Eio_unix.Fd.stdin :> _ Eio_unix.source) in
let stdout = (Flow.of_fd Eio_unix.Fd.stdout :> _ Eio_unix.sink) in
let stderr = (Flow.of_fd Eio_unix.Fd.stderr :> _ Eio_unix.sink) in
Domain_mgr.run_event_loop main @@ object (_ : stdenv)
method stdin = stdin
method stdout = stdout
method stderr = stderr
method debug = Eio.Private.Debug.v
method clock = Time.clock
method mono_clock = Time.mono_clock
method net = Net.v
method process_mgr = Process.mgr
method domain_mgr = Domain_mgr.v
method cwd = ((Fs.cwd, "") :> Eio.Fs.dir_ty Eio.Path.t)
method fs = ((Fs.fs, "") :> Eio.Fs.dir_ty Eio.Path.t)
method secure_random = Flow.secure_random
method backend_id = "posix"
end