pub struct Method<Handler, Params = Positional> { /* private fields */ }Expand description
Represents one named JSON-RPC method without choosing an interpreter.
Trait Implementations§
Source§impl<Compiler, Handler, Handle> CompileJsonRpcProgram<Compiler> for Method<Handler, Positional>where
Compiler: JsonRpcApiAlg + HandlerContextAlg<Handler::Context, Handle = Handle> + JsonRpcMethodAlg<Handle, Handler::Args, Handler::Output>,
Handler: OperationAlg + ApplyAlg<Handle, Handler::Args> + Send + Sync + 'static,
impl<Compiler, Handler, Handle> CompileJsonRpcProgram<Compiler> for Method<Handler, Positional>where
Compiler: JsonRpcApiAlg + HandlerContextAlg<Handler::Context, Handle = Handle> + JsonRpcMethodAlg<Handle, Handler::Args, Handler::Output>,
Handler: OperationAlg + ApplyAlg<Handle, Handler::Args> + Send + Sync + 'static,
Source§type Methods = <Compiler as JsonRpcAlg>::Methods
type Methods = <Compiler as JsonRpcAlg>::Methods
The method collection produced by
Compiler.Source§fn compile_jsonrpc_program(self, compiler: &Compiler) -> Self::Methods
fn compile_jsonrpc_program(self, compiler: &Compiler) -> Self::Methods
Folds the complete first-order program through
compiler.Source§impl<Compiler, Handler, Handle> CompileJsonRpcProgram<Compiler> for Method<Handler, NamedParams>where
Compiler: JsonRpcApiAlg + HandlerContextAlg<Handler::Context, Handle = Handle> + JsonRpcMethodAlg<Handle, Handler::Args, Handler::Output>,
Handler: OperationAlg + ApplyAlg<Handle, Handler::Args> + Send + Sync + 'static,
impl<Compiler, Handler, Handle> CompileJsonRpcProgram<Compiler> for Method<Handler, NamedParams>where
Compiler: JsonRpcApiAlg + HandlerContextAlg<Handler::Context, Handle = Handle> + JsonRpcMethodAlg<Handle, Handler::Args, Handler::Output>,
Handler: OperationAlg + ApplyAlg<Handle, Handler::Args> + Send + Sync + 'static,
Source§type Methods = <Compiler as JsonRpcAlg>::Methods
type Methods = <Compiler as JsonRpcAlg>::Methods
The method collection produced by
Compiler.Source§fn compile_jsonrpc_program(self, compiler: &Compiler) -> Self::Methods
fn compile_jsonrpc_program(self, compiler: &Compiler) -> Self::Methods
Folds the complete first-order program through
compiler.Source§impl<Compiler, Handler, Handle> CompileJsonRpcProgram<Compiler> for Method<Handler, FalliblePositional>where
Compiler: JsonRpcApiAlg + HandlerContextAlg<Handler::Context, Handle = Handle> + JsonRpcFallibleAlg<Handle, Handler::Args, Handler::Output>,
Handler: OperationAlg + ApplyAlg<Handle, Handler::Args> + Send + Sync + 'static,
impl<Compiler, Handler, Handle> CompileJsonRpcProgram<Compiler> for Method<Handler, FalliblePositional>where
Compiler: JsonRpcApiAlg + HandlerContextAlg<Handler::Context, Handle = Handle> + JsonRpcFallibleAlg<Handle, Handler::Args, Handler::Output>,
Handler: OperationAlg + ApplyAlg<Handle, Handler::Args> + Send + Sync + 'static,
Source§type Methods = <Compiler as JsonRpcAlg>::Methods
type Methods = <Compiler as JsonRpcAlg>::Methods
The method collection produced by
Compiler.Source§fn compile_jsonrpc_program(self, compiler: &Compiler) -> Self::Methods
fn compile_jsonrpc_program(self, compiler: &Compiler) -> Self::Methods
Folds the complete first-order program through
compiler.Source§impl<Compiler, Handler, Handle> CompileJsonRpcProgram<Compiler> for Method<Handler, FallibleNamed>where
Compiler: JsonRpcApiAlg + HandlerContextAlg<Handler::Context, Handle = Handle> + JsonRpcFallibleAlg<Handle, Handler::Args, Handler::Output>,
Handler: OperationAlg + ApplyAlg<Handle, Handler::Args> + Send + Sync + 'static,
impl<Compiler, Handler, Handle> CompileJsonRpcProgram<Compiler> for Method<Handler, FallibleNamed>where
Compiler: JsonRpcApiAlg + HandlerContextAlg<Handler::Context, Handle = Handle> + JsonRpcFallibleAlg<Handle, Handler::Args, Handler::Output>,
Handler: OperationAlg + ApplyAlg<Handle, Handler::Args> + Send + Sync + 'static,
Source§type Methods = <Compiler as JsonRpcAlg>::Methods
type Methods = <Compiler as JsonRpcAlg>::Methods
The method collection produced by
Compiler.Source§fn compile_jsonrpc_program(self, compiler: &Compiler) -> Self::Methods
fn compile_jsonrpc_program(self, compiler: &Compiler) -> Self::Methods
Folds the complete first-order program through
compiler.Auto Trait Implementations§
impl<Handler, Params> Freeze for Method<Handler, Params>
impl<Handler, Params> RefUnwindSafe for Method<Handler, Params>
impl<Handler, Params> Send for Method<Handler, Params>
impl<Handler, Params> Sync for Method<Handler, Params>
impl<Handler, Params> Unpin for Method<Handler, Params>
impl<Handler, Params> UnsafeUnpin for Method<Handler, Params>
impl<Handler, Params> UnwindSafe for Method<Handler, Params>
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<This> JsonRpcProgramExt<This> for This
impl<This> JsonRpcProgramExt<This> for This
Source§fn compile_jsonrpc<Program>(
&self,
program: Program,
) -> <Program as JsonRpcProgramAlg<This>>::Methodswhere
Program: JsonRpcProgramAlg<This>,
fn compile_jsonrpc<Program>(
&self,
program: Program,
) -> <Program as JsonRpcProgramAlg<This>>::Methodswhere
Program: JsonRpcProgramAlg<This>,
Compiles a named JSON-RPC program with this interpreter.