UseWebsocket

Struct UseWebsocket 

Source
pub struct UseWebsocket<In, Out, Enc = JsonEncoding>
where In: 'static, Out: 'static, Enc: 'static,
{ /* private fields */ }
Expand description

The return type of the use_websocket hook.

See the use_websocket documentation for more details.

This handle provides methods to send and receive messages, check the connection status, and wait for the connection to be established.

Implementations§

Source§

impl<In, Out, E> UseWebsocket<In, Out, E>

Source

pub async fn connect(&self) -> WebsocketState

Wait for the connection to be established. This guarantees that subsequent calls to methods like .try_recv() will not fail due to the connection not being ready.

Source

pub fn connecting(&self) -> bool

Returns true if the WebSocket is currently connecting.

This can be useful to present a loading state to the user while the connection is being established.

Source

pub fn is_err(&self) -> bool

Returns true if the Websocket is closed due to an error.

Source

pub fn is_closed(&self) -> bool

Returns true if the WebSocket is currently shut down and cannot be used to send or receive messages.

Source

pub fn status(&self) -> ReadSignal<WebsocketState>

Get the current status of the WebSocket connection.

Source

pub async fn send_raw(&self, msg: Message) -> Result<(), WebsocketError>

Send a raw message over the WebSocket connection

To send a message with a particular type, see the .send() method instead.

Source

pub async fn recv_raw(&mut self) -> Result<Message, WebsocketError>

Receive a raw message from the WebSocket connection

To receive a message with a particular type, see the .recv() method instead.

Source

pub async fn send(&self, msg: In) -> Result<(), WebsocketError>
where In: Serialize, E: Encoding,

Source

pub async fn recv(&mut self) -> Result<Out, WebsocketError>
where Out: DeserializeOwned, E: Encoding,

Receive the next message from the WebSocket connection, deserialized into the Out type.

If the connection is still opening, this will wait until the connection is established. If the connection fails to open or is killed while waiting, an error will be returned.

This method returns an error if the connection is closed since we assume closed connections are a “failure”.

Source

pub fn set<Err: Into<CapturedError>>( &mut self, socket: Result<Websocket<In, Out, E>, Err>, )

Set the WebSocket connection.

This method takes a Result<Websocket<In, Out, E>, Err>, allowing you to drive the connection into an errored state manually.

Trait Implementations§

Source§

impl<In, Out, E> Clone for UseWebsocket<In, Out, E>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<In, Out, E> Copy for UseWebsocket<In, Out, E>

Auto Trait Implementations§

§

impl<In, Out, Enc> Freeze for UseWebsocket<In, Out, Enc>

§

impl<In, Out, Enc = JsonEncoding> !RefUnwindSafe for UseWebsocket<In, Out, Enc>

§

impl<In, Out, Enc = JsonEncoding> !Send for UseWebsocket<In, Out, Enc>

§

impl<In, Out, Enc = JsonEncoding> !Sync for UseWebsocket<In, Out, Enc>

§

impl<In, Out, Enc> Unpin for UseWebsocket<In, Out, Enc>

§

impl<In, Out, Enc = JsonEncoding> !UnwindSafe for UseWebsocket<In, Out, Enc>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<T> InitializeFromFunction<T> for T

Source§

fn initialize_from_function(f: fn() -> T) -> T

Create an instance of this type from an initialization function
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<Ret> SpawnIfAsync<(), Ret> for Ret

Source§

fn spawn(self) -> Ret

Spawn the value into the dioxus runtime if it is an async block
Source§

impl<T, O> SuperFrom<T> for O
where O: From<T>,

Source§

fn super_from(input: T) -> O

Convert from a type to another type.
Source§

impl<T, O, M> SuperInto<O, M> for T
where O: SuperFrom<T, M>,

Source§

fn super_into(self) -> O

Convert from a type to another type.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more