Struct App

Source
pub struct App { /* private fields */ }
Expand description

A Feather application.

Implementations§

Source§

impl App

Source

pub fn new() -> Self

Create a new instance of the application

Source

pub fn context(&mut self) -> &mut AppContext

Returns a Handle to the AppContext inside the App AppContext is Used for App wide state managment

Source

pub fn set_error_handler( &mut self, handler: Box<dyn Fn(Box<dyn Error>, &Request, &mut Response)>, )

Set up the Error Handling Solution for that App.
If there are no Error Handler present by default,
framework will Catch the error and print it to the stderr and return a 500 Status code response back to the client

Source

pub fn route<M: Middleware + 'static>( &mut self, method: Method, path: impl Into<Cow<'static, str>>, middleware: M, )

Add a route to the application.
Every Route Returns A MiddlewareResult to control the flow of your application.

Source

pub fn use_middleware(&mut self, middleware: impl Middleware + 'static)

Add a global middleware to the application that will be applied to all routes.

Source

pub fn get<M: Middleware + 'static>( &mut self, path: impl Into<String>, middleware: M, )

Adds a route to the application for the HTTP method.

Source

pub fn post<M: Middleware + 'static>( &mut self, path: impl Into<String>, middleware: M, )

Adds a route to the application for the HTTP method.

Source

pub fn put<M: Middleware + 'static>( &mut self, path: impl Into<String>, middleware: M, )

Adds a route to the application for the HTTP method.

Source

pub fn delete<M: Middleware + 'static>( &mut self, path: impl Into<String>, middleware: M, )

Adds a route to the application for the HTTP method.

Source

pub fn patch<M: Middleware + 'static>( &mut self, path: impl Into<String>, middleware: M, )

Adds a route to the application for the HTTP method.

Source

pub fn head<M: Middleware + 'static>( &mut self, path: impl Into<String>, middleware: M, )

Adds a route to the application for the HTTP method.

Source

pub fn options<M: Middleware + 'static>( &mut self, path: impl Into<String>, middleware: M, )

Adds a route to the application for the HTTP method.

Source

pub fn listen(&mut self, address: impl ToSocketAddrs + Display)

Start the application and listen for incoming requests on the given address. Blocks the current thread until the server is stopped.

§Panics

Panics if the server fails to start

Auto Trait Implementations§

§

impl Freeze for App

§

impl !RefUnwindSafe for App

§

impl !Send for App

§

impl !Sync for App

§

impl Unpin for App

§

impl !UnwindSafe for App

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

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

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

Source§

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

Source§

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<T> Any for T
where T: Any,