pub struct Router { /* private fields */ }Implementations§
Source§impl Router
impl Router
pub fn new(registry: MiddlewareRegistry) -> Self
Sourcepub fn route_infos(&self) -> &[RouteInfo]
pub fn route_infos(&self) -> &[RouteInfo]
Borrow the route registry collected during construction.
pub fn with_state(self) -> AxumRouter<Container>
Sourcepub fn finish(self) -> (AxumRouter<Container>, Vec<RouteInfo>)
pub fn finish(self) -> (AxumRouter<Container>, Vec<RouteInfo>)
Same as with_state, but also returns the captured RouteInfo list so
the Application can hold onto it for anvil routes.
pub fn get<H, T>(self, path: &str, handler: H) -> Self
pub fn post<H, T>(self, path: &str, handler: H) -> Self
pub fn put<H, T>(self, path: &str, handler: H) -> Self
pub fn patch<H, T>(self, path: &str, handler: H) -> Self
pub fn delete<H, T>(self, path: &str, handler: H) -> Self
pub fn any<H, T>(self, path: &str, handler: H) -> Self
pub fn prefix(self, prefix: impl Into<String>) -> Self
pub fn middleware<I, S>(self, names: I) -> Self
pub fn group<F>(self, build: F) -> Self
pub fn merge(self, other: Router) -> Self
pub fn nest(self, prefix: &str, other: Router) -> Self
Sourcepub fn with_route_infos(self, infos: Vec<RouteInfo>) -> Self
pub fn with_route_infos(self, infos: Vec<RouteInfo>) -> Self
Replace the captured RouteInfo list. Used by Router::adopt when
pulling in routes whose metadata is tracked elsewhere.
Sourcepub fn layer<L>(self, layer: L) -> Self
pub fn layer<L>(self, layer: L) -> Self
Apply a tower layer to every route on this router. Used by extension
crates (e.g. Spark’s spark.scope per-request middleware) to wrap all
user routes without each one having to opt in by name.
Sourcepub fn adopt(self, other: AxumRouter<Container>) -> Self
pub fn adopt(self, other: AxumRouter<Container>) -> Self
Adopt a raw axum::Router<Container> — useful when a crate has already
built its routes with its own layered stack and just wants to merge them in.
Auto Trait Implementations§
impl Freeze for Router
impl !RefUnwindSafe for Router
impl Send for Router
impl Sync for Router
impl Unpin for Router
impl UnsafeUnpin for Router
impl !UnwindSafe for Router
Blanket Implementations§
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
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 more