Rpc_effect.RpcSourceval dispatcher :
('query, 'response) Async_rpc_kernel.Rpc.Rpc.t ->
where_to_connect:Where_to_connect.t ->
('query ->
'response Core.Or_error.t Bonsai.For_open.Effect.t)
Bonsai.For_open.Computation.tAn effect for sending a particular RPC to a particular place.
val babel_dispatcher :
('query -> 'response Core.Or_error.t Async_kernel.Deferred.t) Babel.Caller.t ->
where_to_connect:Where_to_connect.t ->
('query ->
'response Core.Or_error.t Bonsai.For_open.Effect.t)
Bonsai.For_open.Computation.tval poll :
(module Bonsai.Model with type t = 'query) ->
(module Bonsai.Model with type t = 'response) ->
?clear_when_deactivated:bool ->
('query, 'response) Async_rpc_kernel.Rpc.Rpc.t ->
where_to_connect:Where_to_connect.t ->
every:Core.Time_ns.Span.t ->
'query Bonsai.For_open.Value.t ->
('query, 'response) Poll_result.t Bonsai.For_open.Computation.tA computation that periodically dispatches on an RPC and keeps track of the most recent response.
clear_when_deactivated determines whether the most recent response should be discarded when the component is deactivated. Default is true.
val babel_poll :
(module Bonsai.Model with type t = 'query) ->
(module Bonsai.Model with type t = 'response) ->
?clear_when_deactivated:bool ->
('query -> 'response Core.Or_error.t Async_kernel.Deferred.t) Babel.Caller.t ->
where_to_connect:Where_to_connect.t ->
every:Core.Time_ns.Span.t ->
'query Bonsai.For_open.Value.t ->
('query, 'response) Poll_result.t Bonsai.For_open.Computation.tAnalagous to poll for babel RPCs. See poll for details.
val poll_until_ok :
(module Bonsai.Model with type t = 'query) ->
(module Bonsai.Model with type t = 'response) ->
?clear_when_deactivated:bool ->
('query, 'response) Async_rpc_kernel.Rpc.Rpc.t ->
where_to_connect:Where_to_connect.t ->
retry_interval:Core.Time_ns.Span.t ->
'query Bonsai.For_open.Value.t ->
('query, 'response) Poll_result.t Bonsai.For_open.Computation.tLike poll, but stops polling the same input query after an ok response. If the query changes, the computation will resume polling until it receives another ok response. If the computation receives an error response, it will retry sending the RPC after waiting retry_interval.
val babel_poll_until_ok :
(module Bonsai.Model with type t = 'query) ->
(module Bonsai.Model with type t = 'response) ->
?clear_when_deactivated:bool ->
('query -> 'response Core.Or_error.t Async_kernel.Deferred.t) Babel.Caller.t ->
where_to_connect:Where_to_connect.t ->
retry_interval:Core.Time_ns.Span.t ->
'query Bonsai.For_open.Value.t ->
('query, 'response) Poll_result.t Bonsai.For_open.Computation.t