package eio
Effect-based direct-style IO API for OCaml
Install
dune-project
Dependency
Authors
Maintainers
Sources
eio-1.3.tbz
sha256=8ed5c13e6689f31c85dca5f12762d84b8cc0042a7b07d3e464df6eb4b72b3dfc
sha512=46e8f817f32c3316e7f35835a136ad177a295b3306351eb2efa2386482b0169a5b19ed2925b32da2a1f10d40f083fe3d588dd401908f9fec6e4a44cd68535204
doc/src/eio.unix/pi.ml.html
Source file pi.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
open Eio.Std module type STREAM_SOCKET = sig include Eio.Net.Pi.STREAM_SOCKET val send_msg : t -> fds:Fd.t list -> Cstruct.t list -> int val recv_msg_with_fds : t -> sw:Switch.t -> max_fds:int -> Cstruct.t list -> int * Fd.t list val fd : t -> Fd.t end type (_, _, _) Eio.Resource.pi += | Stream_socket : ('t, (module STREAM_SOCKET with type t = 't), [> `Platform of [> `Unix] | `Socket | `Stream]) Eio.Resource.pi module type FLOW = sig include Eio.File.Pi.WRITE include STREAM_SOCKET with type t := t end let flow_handler (type t tag) (module X : FLOW with type t = t and type tag = tag) : (t, _) Eio.Resource.handler = Eio.Resource.handler @@ Eio.Resource.bindings (Eio.Net.Pi.stream_socket (module X)) @ Eio.Resource.bindings (Eio.File.Pi.rw (module X)) @ [ H (Resource.T, X.fd); H (Stream_socket, (module X)); ] module type DATAGRAM_SOCKET = sig include Eio.Net.Pi.DATAGRAM_SOCKET val fd : t -> Fd.t end let datagram_handler (type t tag) (module X : DATAGRAM_SOCKET with type t = t and type tag = tag) : (t, _) Eio.Resource.handler = Eio.Resource.handler @@ Eio.Resource.bindings (Eio.Net.Pi.datagram_socket (module X)) @ [ H (Resource.T, X.fd); ] module type LISTENING_SOCKET = sig include Eio.Net.Pi.LISTENING_SOCKET val fd : t -> Fd.t end let listening_socket_handler (type t tag) (module X : LISTENING_SOCKET with type t = t and type tag = tag) : (t, _) Eio.Resource.handler = Eio.Resource.handler @@ Eio.Resource.bindings (Eio.Net.Pi.listening_socket (module X)) @ [ H (Resource.T, X.fd); ]
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>