pub struct Connection<S> { /* private fields */ }Expand description
A portable websocket connection
Where possible, this should be used as the basis for a websocket client
implementation. See the arpy-reqwasm crate for an example.
Implementations§
Trait Implementations§
Source§impl<S: Clone> Clone for Connection<S>
impl<S: Clone> Clone for Connection<S>
Source§fn clone(&self) -> Connection<S>
fn clone(&self) -> Connection<S>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<Spawn: Spawner> ConcurrentRpcClient for Connection<Spawn>
impl<Spawn: Spawner> ConcurrentRpcClient for Connection<Spawn>
type Call<Output: DeserializeOwned> = Call<Output>
type SubscriptionStream<Item: DeserializeOwned> = SubscriptionStream<Item>
Source§fn begin_call<'life0, 'async_trait, F>(
&'life0 self,
function: F,
) -> Pin<Box<dyn Future<Output = Result<Self::Call<F::Output>, Self::Error>> + 'async_trait>>where
F: FnRemote + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
fn begin_call<'life0, 'async_trait, F>(
&'life0 self,
function: F,
) -> Pin<Box<dyn Future<Output = Result<Self::Call<F::Output>, Self::Error>> + 'async_trait>>where
F: FnRemote + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
Initiate a call, but don’t wait for results until
awaited again. Read moreSource§fn subscribe<'life0, 'async_trait, S>(
&'life0 self,
service: S,
updates: impl 'async_trait + Stream<Item = S::Update> + 'static,
) -> Pin<Box<dyn Future<Output = Result<(S::InitialReply, SubscriptionStream<S::Item>), Error>> + 'async_trait>>where
S: FnSubscription + 'static + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
fn subscribe<'life0, 'async_trait, S>(
&'life0 self,
service: S,
updates: impl 'async_trait + Stream<Item = S::Update> + 'static,
) -> Pin<Box<dyn Future<Output = Result<(S::InitialReply, SubscriptionStream<S::Item>), Error>> + 'async_trait>>where
S: FnSubscription + 'static + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
Subscripte to a stream of
S::Item. Read moreSource§fn try_begin_call<'life0, 'async_trait, F, Success, Error>(
&'life0 self,
function: F,
) -> Pin<Box<dyn Future<Output = Result<TryCall<Success, Error, Self>, Self::Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: Sized + 'async_trait,
F: FnRemote<Output = Result<Success, Error>> + 'async_trait,
Success: DeserializeOwned + 'async_trait,
Error: DeserializeOwned + 'async_trait,
fn try_begin_call<'life0, 'async_trait, F, Success, Error>(
&'life0 self,
function: F,
) -> Pin<Box<dyn Future<Output = Result<TryCall<Success, Error, Self>, Self::Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: Sized + 'async_trait,
F: FnRemote<Output = Result<Success, Error>> + 'async_trait,
Success: DeserializeOwned + 'async_trait,
Error: DeserializeOwned + 'async_trait,
Fallible version of
Self::begin_call. Read moreSource§impl<S: Spawner> RpcClient for Connection<S>
impl<S: Spawner> RpcClient for Connection<S>
Source§fn call<'life0, 'async_trait, Args>(
&'life0 self,
args: Args,
) -> Pin<Box<dyn Future<Output = Result<Args::Output, Self::Error>> + 'async_trait>>where
Args: FnRemote + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait, Args>(
&'life0 self,
args: Args,
) -> Pin<Box<dyn Future<Output = Result<Args::Output, Self::Error>> + 'async_trait>>where
Args: FnRemote + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
Make an RPC call.
Auto Trait Implementations§
impl<S> Freeze for Connection<S>where
S: Freeze,
impl<S> !RefUnwindSafe for Connection<S>
impl<S> !Send for Connection<S>
impl<S> !Sync for Connection<S>
impl<S> Unpin for Connection<S>where
S: Unpin,
impl<S> !UnwindSafe for Connection<S>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more