Trait sc_rpc::RpcExtension [−]
pub trait RpcExtension<M = ()> where
M: Metadata, { fn augment<S>(self, handler: &mut MetaIoHandler<M, S>)
where
S: Middleware<M>; }
Expand description
A type that can augment MetaIoHandler
.
This allows your code to accept generic extensions for IoHandler
and compose them to create the RPC server.
Required methods
fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
Extend given handler
with additional methods.
Implementations on Foreign Types
impl<M, A, B, C, D, E, F, G> IoHandlerExtension<M> for (A, B, C, D, E, F, G) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
M: Metadata,
impl<M, A, B, C, D, E, F, G> IoHandlerExtension<M> for (A, B, C, D, E, F, G) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M> IoHandlerExtension<M> for HashMap<String, RemoteProcedure<M>, RandomState> where
M: Metadata,
impl<M> IoHandlerExtension<M> for HashMap<String, RemoteProcedure<M>, RandomState> where
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C> IoHandlerExtension<M> for (A, B, C) where
C: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
M: Metadata,
impl<M, A, B, C> IoHandlerExtension<M> for (A, B, C) where
C: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C, D, E, F> IoHandlerExtension<M> for (A, B, C, D, E, F) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
M: Metadata,
impl<M, A, B, C, D, E, F> IoHandlerExtension<M> for (A, B, C, D, E, F) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C, D, E, F, G, H, I, J> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I, J) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
I: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
J: IoHandlerExtension<M>,
impl<M, A, B, C, D, E, F, G, H, I, J> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I, J) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
I: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
J: IoHandlerExtension<M>,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C, D, E> IoHandlerExtension<M> for (A, B, C, D, E) where
C: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
M: Metadata,
impl<M, A, B, C, D, E> IoHandlerExtension<M> for (A, B, C, D, E) where
C: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C, D, E, F, G, H, I> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
I: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
impl<M, A, B, C, D, E, F, G, H, I> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
I: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C, D> IoHandlerExtension<M> for (A, B, C, D) where
C: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
M: Metadata,
impl<M, A, B, C, D> IoHandlerExtension<M> for (A, B, C, D) where
C: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C, D, E, F, G, H> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
impl<M, A, B, C, D, E, F, G, H> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<T, M> IoHandlerExtension<M> for IoDelegate<T, M> where
T: Send + Sync + 'static,
M: Metadata,
impl<T, M> IoHandlerExtension<M> for IoDelegate<T, M> where
T: Send + Sync + 'static,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M> IoHandlerExtension<M> for IoHandler<M> where
M: Metadata,
impl<M> IoHandlerExtension<M> for IoHandler<M> where
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B> IoHandlerExtension<M> for (A, B) where
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
M: Metadata,
impl<M, A, B> IoHandlerExtension<M> for (A, B) where
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, T> IoHandlerExtension<M> for Option<T> where
T: IoHandlerExtension<M>,
M: Metadata,
impl<M, T> IoHandlerExtension<M> for Option<T> where
T: IoHandlerExtension<M>,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C, D, E, F, G, H, I, J, K, L> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I, J, K, L) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
I: IoHandlerExtension<M>,
K: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
L: IoHandlerExtension<M>,
J: IoHandlerExtension<M>,
impl<M, A, B, C, D, E, F, G, H, I, J, K, L> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I, J, K, L) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
I: IoHandlerExtension<M>,
K: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
L: IoHandlerExtension<M>,
J: IoHandlerExtension<M>,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, S2> IoHandlerExtension<M> for MetaIoHandler<M, S2> where
M: Metadata,
S2: Middleware<M>,
impl<M, S2> IoHandlerExtension<M> for MetaIoHandler<M, S2> where
M: Metadata,
S2: Middleware<M>,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A, B, C, D, E, F, G, H, I, J, K> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I, J, K) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
I: IoHandlerExtension<M>,
K: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
J: IoHandlerExtension<M>,
impl<M, A, B, C, D, E, F, G, H, I, J, K> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I, J, K) where
C: IoHandlerExtension<M>,
F: IoHandlerExtension<M>,
G: IoHandlerExtension<M>,
A: IoHandlerExtension<M>,
B: IoHandlerExtension<M>,
D: IoHandlerExtension<M>,
E: IoHandlerExtension<M>,
I: IoHandlerExtension<M>,
K: IoHandlerExtension<M>,
M: Metadata,
H: IoHandlerExtension<M>,
J: IoHandlerExtension<M>,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M, A> IoHandlerExtension<M> for (A,) where
A: IoHandlerExtension<M>,
M: Metadata,
impl<M, A> IoHandlerExtension<M> for (A,) where
A: IoHandlerExtension<M>,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<M> IoHandlerExtension<M> for () where
M: Metadata,
impl<M> IoHandlerExtension<M> for () where
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,
impl<T, M> IoHandlerExtension<M> for IoDelegate<T, M> where
T: Send + Sync + 'static,
M: Metadata,
impl<T, M> IoHandlerExtension<M> for IoDelegate<T, M> where
T: Send + Sync + 'static,
M: Metadata,
pub fn augment<S>(self, handler: &mut MetaIoHandler<M, S>) where
S: Middleware<M>,