Struct soketto::connection::Builder

source ·
pub struct Builder<T> { /* private fields */ }
Expand description

A connection builder.

Allows configuring certain parameters and extensions before creating the Sender/Receiver pair that represents the connection.

Implementations§

source§

impl<T: AsyncRead + AsyncWrite + Unpin> Builder<T>

source

pub fn new(socket: T, mode: Mode) -> Self

Create a new Builder from the given async I/O resource and mode.

Note: Use this type only after a successful handshake. You can either use this crate’s handshake functionality or perform the handshake by some other means.

source

pub fn set_buffer(&mut self, b: BytesMut)

Set a custom buffer to use.

source

pub fn add_extensions<I>(&mut self, extensions: I)
where I: IntoIterator<Item = Box<dyn Extension + Send>>,

Add extensions to use with this connection.

Only enabled extensions will be considered.

source

pub fn set_max_message_size(&mut self, max: usize)

Set the maximum size of a complete message.

Message fragments will be buffered and concatenated up to this value, i.e. the sum of all message frames payload lengths will not be greater than this maximum. However, extensions may increase the total message size further, e.g. by decompressing the payload data.

source

pub fn set_max_frame_size(&mut self, max: usize)

Set the maximum size of a single websocket frame payload.

source

pub fn finish(self) -> (Sender<T>, Receiver<T>)

Create a configured Sender/Receiver pair.

Trait Implementations§

source§

impl<T: Debug> Debug for Builder<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> Freeze for Builder<T>
where T: Freeze,

§

impl<T> !RefUnwindSafe for Builder<T>

§

impl<T> Send for Builder<T>
where T: Send,

§

impl<T> !Sync for Builder<T>

§

impl<T> Unpin for Builder<T>
where T: Unpin,

§

impl<T> !UnwindSafe for Builder<T>

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> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

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> Same for T

§

type Output = T

Should always be Self
source§

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

§

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>,

§

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