pub struct RouteProgram<Program>(/* private fields */);Expand description
Carries a typed route program during fluent composition.
Implementations§
Source§impl<Program> RouteProgram<Program>
impl<Program> RouteProgram<Program>
Sourcepub fn merge<Other>(
self,
other: RouteProgram<Other>,
) -> RouteProgram<Merge<Program, Other>>
pub fn merge<Other>( self, other: RouteProgram<Other>, ) -> RouteProgram<Merge<Program, Other>>
Records the categorical coproduct of two typed route programs.
Neither side is interpreted, so both complete program types remain available to later folds.
Sourcepub fn nest<Other>(
self,
prefix: &str,
other: RouteProgram<Other>,
) -> RouteProgram<Merge<Program, Nest<Other>>>
pub fn nest<Other>( self, prefix: &str, other: RouteProgram<Other>, ) -> RouteProgram<Merge<Program, Nest<Other>>>
Records other under prefix and merges it into this program.
The prefix is selector precomposition rather than a framework-specific router operation.
Sourcepub fn get<Handler, Inputs, Args, Transform>(
self,
path: &str,
operation: Operation<Handler, Inputs, Args, Transform>,
) -> WithEndpoint<Program, Get, Handler, Inputs, Args, Transform>
pub fn get<Handler, Inputs, Args, Transform>( self, path: &str, operation: Operation<Handler, Inputs, Args, Transform>, ) -> WithEndpoint<Program, Get, Handler, Inputs, Args, Transform>
Records a GET selector and typed operation at an exact path.
Sourcepub fn post<Handler, Inputs, Args, Transform>(
self,
path: &str,
operation: Operation<Handler, Inputs, Args, Transform>,
) -> WithEndpoint<Program, Post, Handler, Inputs, Args, Transform>
pub fn post<Handler, Inputs, Args, Transform>( self, path: &str, operation: Operation<Handler, Inputs, Args, Transform>, ) -> WithEndpoint<Program, Post, Handler, Inputs, Args, Transform>
Records a POST selector and typed operation at an exact path.
Sourcepub fn into_program(self) -> Program
pub fn into_program(self) -> Program
Removes the fluent wrapper and returns the first-order syntax tree.
Trait Implementations§
Auto Trait Implementations§
impl<Program> Freeze for RouteProgram<Program>where
Program: Freeze,
impl<Program> RefUnwindSafe for RouteProgram<Program>where
Program: RefUnwindSafe,
impl<Program> Send for RouteProgram<Program>where
Program: Send,
impl<Program> Sync for RouteProgram<Program>where
Program: Sync,
impl<Program> Unpin for RouteProgram<Program>where
Program: Unpin,
impl<Program> UnsafeUnpin for RouteProgram<Program>where
Program: UnsafeUnpin,
impl<Program> UnwindSafe for RouteProgram<Program>where
Program: UnwindSafe,
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<This> HttpProgramExt<This> for This
impl<This> HttpProgramExt<This> for This
Source§fn compile_http<Program>(
&self,
program: Program,
) -> <Program as HttpProgramAlg<This>>::Routewhere
Program: HttpProgramAlg<This>,
fn compile_http<Program>(
&self,
program: Program,
) -> <Program as HttpProgramAlg<This>>::Routewhere
Program: HttpProgramAlg<This>,
Compiles a named HTTP program with this interpreter.