Trait jsonrpc_core::IoHandlerExtension[][src]

pub trait IoHandlerExtension<M: Metadata = ()> {
    fn augment<S: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>);
}

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: Middleware<M>>(self, handler: &mut MetaIoHandler<M, S>)[src]

Extend given handler with additional methods.

Loading content...

Implementations on Foreign Types

impl<M> IoHandlerExtension<M> for () where
    M: Metadata
[src]

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

impl<M, A, B> IoHandlerExtension<M> for (A, B) where
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>, 
[src]

impl<M, A, B, C> IoHandlerExtension<M> for (A, B, C) where
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>, 
[src]

impl<M, A, B, C, D> IoHandlerExtension<M> for (A, B, C, D) where
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>, 
[src]

impl<M, A, B, C, D, E> IoHandlerExtension<M> for (A, B, C, D, E) where
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>,
    E: IoHandlerExtension<M>, 
[src]

impl<M, A, B, C, D, E, F> IoHandlerExtension<M> for (A, B, C, D, E, F) where
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>,
    E: IoHandlerExtension<M>,
    F: IoHandlerExtension<M>, 
[src]

impl<M, A, B, C, D, E, F, G> IoHandlerExtension<M> for (A, B, C, D, E, F, G) where
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>,
    E: IoHandlerExtension<M>,
    F: IoHandlerExtension<M>,
    G: IoHandlerExtension<M>, 
[src]

impl<M, A, B, C, D, E, F, G, H> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H) where
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>,
    E: IoHandlerExtension<M>,
    F: IoHandlerExtension<M>,
    G: IoHandlerExtension<M>,
    H: IoHandlerExtension<M>, 
[src]

impl<M, A, B, C, D, E, F, G, H, I> IoHandlerExtension<M> for (A, B, C, D, E, F, G, H, I) where
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>,
    E: IoHandlerExtension<M>,
    F: IoHandlerExtension<M>,
    G: IoHandlerExtension<M>,
    H: IoHandlerExtension<M>,
    I: IoHandlerExtension<M>, 
[src]

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
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>,
    E: IoHandlerExtension<M>,
    F: IoHandlerExtension<M>,
    G: IoHandlerExtension<M>,
    H: IoHandlerExtension<M>,
    I: IoHandlerExtension<M>,
    J: IoHandlerExtension<M>, 
[src]

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
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>,
    E: IoHandlerExtension<M>,
    F: IoHandlerExtension<M>,
    G: IoHandlerExtension<M>,
    H: IoHandlerExtension<M>,
    I: IoHandlerExtension<M>,
    J: IoHandlerExtension<M>,
    K: IoHandlerExtension<M>, 
[src]

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
    M: Metadata,
    A: IoHandlerExtension<M>,
    B: IoHandlerExtension<M>,
    C: IoHandlerExtension<M>,
    D: IoHandlerExtension<M>,
    E: IoHandlerExtension<M>,
    F: IoHandlerExtension<M>,
    G: IoHandlerExtension<M>,
    H: IoHandlerExtension<M>,
    I: IoHandlerExtension<M>,
    J: IoHandlerExtension<M>,
    K: IoHandlerExtension<M>,
    L: IoHandlerExtension<M>, 
[src]

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

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

impl<M: Metadata, T: IoHandlerExtension<M>> IoHandlerExtension<M> for Option<T>[src]

Loading content...

Implementors

impl<M: Metadata> IoHandlerExtension<M> for IoHandler<M>[src]

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

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

Loading content...