[][src]Struct yarws::Server

pub struct Server { /* fields omitted */ }

Creates server side of the WebSocket connection.

Errors if binding can't be started. In most cases because port is already used, but other errors could occur also; too many open files, incorrect addr.

Examples

create listener

Uses builder pattern for setting options. Start with new set options and finish with bind.

    let addr = "localhost:9001";
    let mut listener = Server::new(addr)
        .logger(log)
        .bind()
        .await?;

accept connections

    while let Some(mut socket) = listener.accept().await {
        tokio::spawn(async move {
             // handle socket
        });
    };

Methods

impl Server[src]

pub fn new(addr: &str) -> Self[src]

pub fn default_logger(self) -> Server[src]

pub fn logger(self, log: Logger) -> Server[src]

pub async fn bind(self) -> Result<Listener, Error>[src]

Auto Trait Implementations

impl RefUnwindSafe for Server

impl Send for Server

impl Sync for Server

impl Unpin for Server

impl UnwindSafe for Server

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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