pub struct WsServerConnection {
pub stream: ReplayStream,
pub decoder: FrameDecoder,
pub encoder: FrameEncoder,
}Expand description
A server-side WebSocket connection: upgraded stream + frame codec.
Fields§
§stream: ReplayStream§decoder: FrameDecoder§encoder: FrameEncoderImplementations§
Source§impl WsServerConnection
impl WsServerConnection
Sourcepub fn accept(
stream: TcpStream,
peeked: Vec<u8>,
) -> Result<WsServerConnection, HandshakeError>
pub fn accept( stream: TcpStream, peeked: Vec<u8>, ) -> Result<WsServerConnection, HandshakeError>
Build a connection from a TcpStream whose first peeked.len() bytes
have already been read into peeked (the HTTP upgrade request). Runs
the RFC 6455 server handshake.
Sourcepub fn write_text(&mut self, data: &str) -> Result<(), ()>
pub fn write_text(&mut self, data: &str) -> Result<(), ()>
Write a text frame to the peer (server-side, unmasked per RFC 6455 §5.1).
Sourcepub fn read(&mut self) -> ReadOutcome
pub fn read(&mut self) -> ReadOutcome
Read one frame and translate it into a ReadOutcome.
Auto Trait Implementations§
impl Freeze for WsServerConnection
impl RefUnwindSafe for WsServerConnection
impl Send for WsServerConnection
impl Sync for WsServerConnection
impl Unpin for WsServerConnection
impl UnsafeUnpin for WsServerConnection
impl UnwindSafe for WsServerConnection
Blanket Implementations§
Source§impl<T> AsCtxPtr for Twhere
T: ?Sized,
impl<T> AsCtxPtr for Twhere
T: ?Sized,
Source§fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
self’s address as *mut Self for deferred-task / scopeguard /
ref_guard ctx slots. The closures/trampolines deref it as shared
(&*p) — every method they reach is &self post-R-2, so no write
provenance is required; the *mut spelling is purely to match the
existing DerefOnDrop / HasAutoFlush / RefCount ABI.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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
Creates a filterable data provider with the given name for debugging. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
Source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
Source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
Source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert