Struct tiny_http::Server[][src]

pub struct Server { /* fields omitted */ }
Expand description

The main class of this library.

Destroying this object will immediatly close the listening socket and the reading part of all the client’s connections. Requests that have already been returned by the recv() function will not close and the responses will be transferred to the client.

Implementations

impl Server[src]

pub fn http<A>(
    addr: A
) -> Result<Server, Box<dyn Error + Send + Sync + 'static>> where
    A: ToSocketAddrs
[src]

Shortcut for a simple server on a specific address.

pub fn new<A>(
    config: ServerConfig<A>
) -> Result<Server, Box<dyn Error + Send + Sync + 'static>> where
    A: ToSocketAddrs
[src]

Builds a new server that listens on the specified address.

pub fn incoming_requests(&self) -> IncomingRequests<'_>

Notable traits for IncomingRequests<'a>

impl<'a> Iterator for IncomingRequests<'a> type Item = Request;
[src]

Returns an iterator for all the incoming requests.

The iterator will return None if the server socket is shutdown.

pub fn server_addr(&self) -> SocketAddr[src]

Returns the address the server is listening to.

pub fn num_connections(&self) -> usize[src]

Returns the number of clients currently connected to the server.

pub fn recv(&self) -> IoResult<Request>[src]

Blocks until an HTTP request has been submitted and returns it.

pub fn recv_timeout(&self, timeout: Duration) -> IoResult<Option<Request>>[src]

Same as recv() but doesn’t block longer than timeout

pub fn try_recv(&self) -> IoResult<Option<Request>>[src]

Same as recv() but doesn’t block.

Trait Implementations

impl Drop for Server[src]

fn drop(&mut self)[src]

Executes the destructor for this type. Read more

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]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

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.

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

Performs the conversion.

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.

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

Performs the conversion.