Struct rpc_router::RouterBuilder
source · pub struct RouterBuilder { /* private fields */ }
Implementations§
source§impl RouterBuilder
impl RouterBuilder
sourcepub fn append_dyn(
self,
name: &'static str,
dyn_handler: Box<dyn RpcHandlerWrapperTrait>
) -> Self
pub fn append_dyn( self, name: &'static str, dyn_handler: Box<dyn RpcHandlerWrapperTrait> ) -> Self
Add a dyn_handler to the router builder.
RouterBuilder::default().add_dyn("method_name", my_handler_fn.into_dyn());
Note: This is the preferred way to add handlers to the router, as it
avoids monomorphization of the add function.
The RouterInner
also has a .add()
as a convenience function to just pass the function.
See RouterInner::add
for more details.
sourcepub fn append<F, T, P, R>(self, name: &'static str, handler: F) -> Self
pub fn append<F, T, P, R>(self, name: &'static str, handler: F) -> Self
Add a route (name, handler function) to the builder
RouterBuilder::default().add("method_name", my_handler_fn);
Note: This is a convenient add function variant with generics,
and there will be monomorphed versions of this function
for each type passed. Use RouterInner::add_dyn
to avoid this.
sourcepub fn extend(self, other_builder: RouterBuilder) -> Self
pub fn extend(self, other_builder: RouterBuilder) -> Self
Extends this builder by consuming another builder.
pub fn append_resource<T>(self, val: T) -> Self
sourcepub fn extend_resources(
self,
resources_builder: Option<ResourcesBuilder>
) -> Self
pub fn extend_resources( self, resources_builder: Option<ResourcesBuilder> ) -> Self
If Some, will extends the current Base Resources with the content of this resources_builder. If None, just do nothing.
sourcepub fn set_resources(self, resources_builder: ResourcesBuilder) -> Self
pub fn set_resources(self, resources_builder: ResourcesBuilder) -> Self
Resets the router’s resources with the contents of this ResourcesBuilder.
Ensure to call append_resource
and/or .extend_resources
afterwards
if they operation needs to be included.
Note: .extend_resources(Option<ResourcesBuilder>)
is the additive function
typically used.