Crate solana_jsonrpc_core[−][src]
Transport agnostic jsonrpc library.
Right now it supports only server side handling requests.
extern crate solana_jsonrpc_core as jsonrpc_core; use jsonrpc_core::*; use jsonrpc_core::futures::Future; fn main() { let mut io = IoHandler::new(); io.add_method("say_hello", |_| { Ok(Value::String("Hello World!".into())) }); let request = r#"{"jsonrpc": "2.0", "method": "say_hello", "params": [42, 23], "id": 1}"#; let response = r#"{"jsonrpc":"2.0","result":"Hello World!","id":1}"#; assert_eq!(io.handle_request(request).wait().unwrap(), Some(response.to_string())); }
Re-exports
pub extern crate futures; |
pub use types::*; |
Modules
types |
JSON-RPC types |
Structs
IoHandler |
Simplified |
MetaIoHandler |
Request handler |
NoopMiddleware |
No-op middleware implementation |
Enums
Compatibility |
|
RemoteProcedure |
Possible Remote Procedures with Metadata |
Traits
Metadata |
Metadata trait |
Middleware |
RPC middleware |
RpcMethod |
Asynchronous Method with Metadata |
RpcMethodSimple |
Asynchronous Method |
RpcNotification |
Notification with Metadata |
RpcNotificationSimple |
Notification |
Type Definitions
BoxFuture |
A |
FutureOutput |
A type representing a result of a single method call. |
FutureResponse |
A type representing middleware or RPC response before serialization. |
FutureResult |
A type representing future string response. |
FutureRpcResult |
A type representing an optional |
Result |
A Result type. |