Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 22 additions & 22 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,35 +3,35 @@
//! Simple, robust and pragmatic facade for JSON-RPC2 services that is transport agnostic.
//!
//! ```
//! use json_rpc2::*;
//! use json_rpc2::{Request, Response, Result, Server, Service};
//! use serde_json::Value;
//!
//! struct ServiceHandler;
//! impl Service for ServiceHandler {
//! type Data = ();
//! fn handle(&self, request: &Request, _ctx: &Self::Data) -> Result<Option<Response>> {
//! let response = match request.method() {
//! "hello" => {
//! let params: String = request.deserialize()?;
//! let message = format!("Hello, {}!", params);
//! Some((request, Value::String(message)).into())
//! }
//! _ => None
//! };
//! Ok(response)
//! }
//! type Data = ();
//! fn handle(&self, request: &Request, _ctx: &Self::Data) -> Result<Option<Response>> {
//! let response = match request.method() {
//! "hello" => {
//! let params: String = request.deserialize()?;
//! let message = format!("Hello, {}!", params);
//! Some((request, Value::String(message)).into())
//! }
//! _ => None,
//! };
//! Ok(response)
//! }
//! }
//!
//! fn main() -> Result<()> {
//! let service: Box<dyn Service<Data = ()>> = Box::new(ServiceHandler {});
//! let request = Request::new_reply(
//! "hello", Some(Value::String("world".to_string())));
//! let server = Server::new(vec![&service]);
//! let response = server.serve(&request, &());
//! assert_eq!(
//! Some(Value::String("Hello, world!".to_string())),
//! response.unwrap().into());
//! Ok(())
//! let service: Box<dyn Service<Data = ()>> = Box::new(ServiceHandler {});
//! let request = Request::new_reply("hello", Some(Value::String("world".to_string())));
//! let server = Server::new(vec![&service]);
//! let response = server.serve(&request, &());
//! assert_eq!(
//! Some(Value::String("Hello, world!".to_string())),
//! response.unwrap().into()
//! );
//! Ok(())
//! }
//! ```
//!
Expand Down