jsonrpc_core

Trait IoHandlerExtension

Source
pub trait IoHandlerExtension<M: Metadata = ()> {
    // Required method
    fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>);
}
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§

Source

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Extend given handler with additional methods.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<M> IoHandlerExtension<M> for ()
where M: Metadata,

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A> IoHandlerExtension<M> for (A,)
where M: Metadata, A: IoHandlerExtension<M>,

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A, B> IoHandlerExtension<M> for (A, B)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A, B, C> IoHandlerExtension<M> for (A, B, C)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A, B, C, D> IoHandlerExtension<M> for (A, B, C, D)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A, B, C, D, E> IoHandlerExtension<M> for (A, B, C, D, E)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A, B, C, D, E, F> IoHandlerExtension<M> for (A, B, C, D, E, F)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A, B, C, D, E, F, G> IoHandlerExtension<M> for (A, B, C, D, E, F, G)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A, B, C, D, E, F, G, H> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M, A, B, C, D, E, F, G, H, I> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

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)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

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)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

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)

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M: Metadata> IoHandlerExtension<M> for Vec<(String, RemoteProcedure<M>)>

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M: Metadata> IoHandlerExtension<M> for HashMap<String, RemoteProcedure<M>>

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Source§

impl<M: Metadata, T: IoHandlerExtension<M>> IoHandlerExtension<M> for Option<T>

Source§

fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)

Implementors§

Source§

impl<M: Metadata> IoHandlerExtension<M> for IoHandler<M>

Source§

impl<M: Metadata, S2: Middleware<M>> IoHandlerExtension<M> for MetaIoHandler<M, S2>

Source§

impl<T, M> IoHandlerExtension<M> for IoDelegate<T, M>
where T: Send + Sync + 'static, M: Metadata,