Parameters
module Fiber : sig ... endmodule Chan : sig ... endSignature
Sourcetype t = {chan : Chan.t;requests : (Dune_rpc_private__.Types.Id.t,
[ `Cancelled
| `Pending of
[ `Completed of
(Stdune.Sexp.t, Dune_rpc_private__.Types.Response.Error.t)
result
| `Connection_dead
| `Cancelled ]
Fiber.Ivar.t ])
Stdune.Table.t;initialize : Dune_rpc_private__.Types.Initialize.Request.t;mutable next_id : int;mutable running : bool;mutable handler_initialized : bool;handler : unit V.Handler.t Fiber.t;on_preemptive_abort : Dune_rpc_private__.Exported_types.Message.t ->
unit Fiber.t;
} Sourceval create :
chan:Chan.t ->
initialize:Dune_rpc_private__.Types.Initialize.Request.t ->
handler:unit V.Handler.t Fiber.t ->
on_preemptive_abort:
(Dune_rpc_private__.Exported_types.Message.t -> unit Fiber.t) ->
t Sourceval prepare_request' :
t ->
(Dune_rpc_private__.Types.Id.t * Dune_rpc_private__.Types.Call.t) ->
([ `Cancelled
| `Completed of
(Stdune.Sexp.t, Dune_rpc_private__.Types.Response.Error.t) result
| `Connection_dead ]
Fiber.Ivar.t,
Dune_rpc_private__.Types.Response.Error.t)
result Sourceval request_untyped :
t ->
(Dune_rpc_private__.Types.Id.t * Dune_rpc_private__.Types.Call.t) ->
[ `Cancelled
| `Completed of
(Stdune.Sexp.t, Dune_rpc_private__.Types.Response.Error.t) result
| `Connection_dead ]
Fiber.t Sourceval gen_id :
t ->
Dune_rpc_private__.Types.Id.t option ->
Dune_rpc_private__.Types.Id.t Sourceval no_cancel_raise_connection_dead :
Dune_rpc_private__.Types.Id.t ->
[< `Cancelled
| `Completed of ('a, Dune_rpc_private__.Types.Response.Error.t) result
| `Connection_dead ] ->
('a, Dune_rpc_private__.Types.Response.Error.t) result Sourcetype proc = | Request : ('a, 'b) Dune_rpc_private__.Types.Decl.Request.t -> proc| Notification : 'a Dune_rpc_private__.Types.Decl.Notification.t -> proc| Poll : 'a Procedures.Poll.t -> proc| Handle_request : ('a, 'b) Dune_rpc_private__.Types.Decl.Request.t
* ('a ->
'b Fiber.t) -> proc
Sourceval setup_versioning :
private_menu:proc list ->
handler:Handler.t ->
unit Dune_rpc_private__Versioned.Make(Fiber).Builder.t