Struct essrpc::transports::BincodeTransport [−][src]
Expand description
Transport implementation using Bincode serialization. Can be used
over any Read+Write
channel (local socket, internet socket,
pipe, etc). The present implementation is naive with regards to
this channel – no buffering is performed.
Enable the “bincode_transport” feature to use this.
Implementations
Trait Implementations
Type of transport-internal state used when bulding a call for transmission on the client. May be unit if the transport does not need to track state or does so through member variables. Read more
type FinalState = ()
type FinalState = ()
Type of state object returned from tx_finalize and consumed by rx_response. May be unit.
Begin calling the given method. The transport may begin transmitting over the wire,
or it may may wait until the call to tx_finalize
. Read more
Add a parameter to a method call started with
tx_begin_call
. This method is guaranteed to be called only
after tx_begin_call
and to be called appropriately for each
parameter of the method passed to tx_begin_call
. state
is
the object returned by tx_begin_call
. Parameters are always
added and read in order, so transmitting the name is not a requirement. Read more
Finalize transmission of a method call. Called only after
tx_begin_call
and appropriate calls to tx_add_param
. If
the transport has not yet transmitted the method identifier
and parameters over the wire, it should do so at this time. Read more
fn rx_response<T>(&mut self, _state: ()) -> Result<T, RPCError> where
for<'de> T: Deserialize<'de>,
fn rx_response<T>(&mut self, _state: ()) -> Result<T, RPCError> where
for<'de> T: Deserialize<'de>,
Read the return value of a method call. Always called after
tx_finalize
. state
is the object returned by
tx_finalize
. Read more
type RXState = VecReader
type RXState = VecReader
Type of transport-internal state used when receiving a call on the server. May be unit if the transport does not need to track state or does so through member variables. Read more
Begin reading a method cal on the server. Returns the method name or identifier and internal state. Read more
fn rx_read_param<T>(
&mut self,
_name: &'static str,
state: &mut Self::RXState
) -> Result<T, RPCError> where
for<'de> T: Deserialize<'de>,
fn rx_read_param<T>(
&mut self,
_name: &'static str,
state: &mut Self::RXState
) -> Result<T, RPCError> where
for<'de> T: Deserialize<'de>,
Read a method parameter after a an rx_begin_call
. Parameters
are always read in order, so some transports may choose to
ignore the name. Read more