[][src]Struct jrpc::Success

pub struct Success<T> {
    pub jsonrpc: V2_0,
    pub result: T,
    pub id: Id,
}

The jsonrpc Success response, indicating a successful result.

See the parameters for more information.

Examples

extern crate serde_json;
use jrpc::{Id, Success};

let data: Vec<u32> = vec![1, 2, 3];
let example = Success::new(Id::from(4), data.clone());
let json = r#"
{
    "jsonrpc": "2.0",
    "result": [1,2,3],
    "id": 4
}
"#;
let json = json.replace("\n", "").replace(" ", "");
let result = serde_json::to_string(&example).unwrap();
assert_eq!(json, result);

Fields

jsonrpc: V2_0

A String specifying the version of the JSON-RPC protocol. MUST be exactly "2.0".

result: T

The value of this member is determined by the method invoked on the Server.

id: Id

This member is REQUIRED.

It MUST be the same as the value of the id member in the Request Object.

If there was an error in detecting the id in the Request object (e.g. Parse error/Invalid Request), it MUST be Null.

Methods

impl<T: Serialize + DeserializeOwned> Success<T>[src]

pub fn new(id: Id, result: T) -> Self[src]

Construct a Success, i.e. a Response with a result object.

pub fn to_string(&self) -> String[src]

Helper to serialize the Success as json.

pub fn from_str(s: &str) -> Result<T>[src]

Helper to deserialize the Success from json.

Trait Implementations

impl<T: Debug> Debug for Success<T>[src]

impl<T> Serialize for Success<T> where
    T: Serialize
[src]

impl<'de, T> Deserialize<'de> for Success<T> where
    T: Deserialize<'de>, 
[src]

Auto Trait Implementations

impl<T> Send for Success<T> where
    T: Send

impl<T> Sync for Success<T> where
    T: Sync

impl<T> Unpin for Success<T> where
    T: Unpin

impl<T> UnwindSafe for Success<T> where
    T: UnwindSafe

impl<T> RefUnwindSafe for Success<T> where
    T: RefUnwindSafe

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]