pub trait Transport {
// Required methods
fn send<'a>(
&'a mut self,
message: WireMessage,
) -> LocalBoxFuture<'a, Result<(), TransportError>>;
fn receive<'a>(
&'a mut self,
) -> LocalBoxFuture<'a, Result<TransportEvent, TransportError>>;
fn close<'a>(&'a mut self) -> LocalBoxFuture<'a, Result<(), TransportError>>;
// Provided methods
fn supports_binary(&self) -> bool { ... }
fn close_with<'a>(
&'a mut self,
request: TransportCloseRequest,
) -> LocalBoxFuture<'a, Result<(), TransportError>> { ... }
}Expand description
A runtime-neutral, object-safe transport interface.
LocalBoxFuture is intentional: browser WebSocket futures are not Send.
Native adapters can still be driven on a dedicated local executor.
Required Methods§
Sourcefn send<'a>(
&'a mut self,
message: WireMessage,
) -> LocalBoxFuture<'a, Result<(), TransportError>>
fn send<'a>( &'a mut self, message: WireMessage, ) -> LocalBoxFuture<'a, Result<(), TransportError>>
Sends one complete wire message.
Sourcefn receive<'a>(
&'a mut self,
) -> LocalBoxFuture<'a, Result<TransportEvent, TransportError>>
fn receive<'a>( &'a mut self, ) -> LocalBoxFuture<'a, Result<TransportEvent, TransportError>>
Waits for the next message or close notification.
Sourcefn close<'a>(&'a mut self) -> LocalBoxFuture<'a, Result<(), TransportError>>
fn close<'a>(&'a mut self) -> LocalBoxFuture<'a, Result<(), TransportError>>
Closes the transport using its default close behavior.
Provided Methods§
Sourcefn supports_binary(&self) -> bool
fn supports_binary(&self) -> bool
Returns whether this transport can send Phoenix binary frames.
Sourcefn close_with<'a>(
&'a mut self,
request: TransportCloseRequest,
) -> LocalBoxFuture<'a, Result<(), TransportError>>
fn close_with<'a>( &'a mut self, request: TransportCloseRequest, ) -> LocalBoxFuture<'a, Result<(), TransportError>>
Closes the transport with an explicit WebSocket code and reason.