Client.Rpcval bidirectional_streaming :
handler:
(string Async.Pipe.Writer.t ->
string Async.Pipe.Reader.t ->
'a Async.Deferred.t) ->
'a handlerbidirectional_streaming ~handler write read sets up the sending and receiving logic using write and read, then calls handler with a writer pipe and a reader pipe, for sending and receiving payloads to and from the server.
The stream is closed when the deferred returned by the handler becomes determined.
val client_streaming :
handler:
(string Async.Pipe.Writer.t ->
string option Async.Deferred.t ->
'a Async.Deferred.t) ->
'a handlerclient_streaming ~handler write read sets up the sending and receiving logic using write and read, then calls handler with a writer pipe to send payloads to the server.
The stream is closed when the deferred returned by the handler becomes determined.
val server_streaming :
handler:(string Async.Pipe.Reader.t -> 'a Async.Deferred.t) ->
encoded_request:string ->
'a handlerserver_streaming ~handler encoded_request write read sets up the sending and receiving logic using write and read, then sends encoded_request and calls handler with a pipe of responses.
The stream is closed when the deferred returned by the handler becomes determined.
val unary :
handler:(string option -> 'a Async.Deferred.t) ->
encoded_request:string ->
'a handlerunary ~handler ~encoded_request sends the encoded request to the server . When the response is received, the handler is called with an option response. The response is is None if the server sent an empty response.