pub struct ServerFunction { /* private fields */ }Available on crate feature
server only.Expand description
A function endpoint that can be called from the client.
Implementations§
Source§impl ServerFunction
impl ServerFunction
Sourcepub const fn new(
method: Method,
path: &'static str,
handler: fn() -> MethodRouter<FullstackState>,
) -> ServerFunction
pub const fn new( method: Method, path: &'static str, handler: fn() -> MethodRouter<FullstackState>, ) -> ServerFunction
Create a new server function object from a MethodRouter
Sourcepub fn collect() -> Vec<&'static ServerFunction>
pub fn collect() -> Vec<&'static ServerFunction>
Collect all globally registered server functions
Sourcepub fn method_router(&self) -> MethodRouter<FullstackState>
pub fn method_router(&self) -> MethodRouter<FullstackState>
Create a MethodRouter for this server function that can be mounted on an axum::Router.
This runs the handler inside the required FullstackContext scope and populates
FullstackContext so that the handler can use those features.
It also runs the server function inside a tokio LocalPool to allow !Send futures.
Sourcepub fn make_handler(
method: Method,
handler: fn(State<FullstackContext>, Request<Body>) -> Pin<Box<dyn Future<Output = Response<Body>>>>,
) -> MethodRouter<FullstackState>
pub fn make_handler( method: Method, handler: fn(State<FullstackContext>, Request<Body>) -> Pin<Box<dyn Future<Output = Response<Body>>>>, ) -> MethodRouter<FullstackState>
Creates a new MethodRouter for the given method and !Send handler.
This is used internally by the ServerFunction to create the method router that this
server function uses.
Trait Implementations§
Source§impl Clone for ServerFunction
impl Clone for ServerFunction
Source§fn clone(&self) -> ServerFunction
fn clone(&self) -> ServerFunction
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Collect for ServerFunction
Auto Trait Implementations§
impl Freeze for ServerFunction
impl RefUnwindSafe for ServerFunction
impl Send for ServerFunction
impl Sync for ServerFunction
impl Unpin for ServerFunction
impl UnsafeUnpin for ServerFunction
impl UnwindSafe for ServerFunction
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
Source§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
Create an instance of this type from an initialization function
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> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<Ret> SpawnIfAsync<(), Ret> for Ret
impl<Ret> SpawnIfAsync<(), Ret> for Ret
Source§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
Source§fn super_from(input: T) -> O
fn super_from(input: T) -> O
Convert from a type to another type.
Source§impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
Source§fn super_into(self) -> O
fn super_into(self) -> O
Convert from a type to another type.