jsonrpc-lite

JSON-RPC 2.0 Specification serialization for Rust.

Crates version Build Status Coverage Status Crates downloads

Implementations:

API

Documentation https://iorust.github.io/resp/resp

Rust extern crate resp; use resp::{Value, encode, encode_slice, Decoder};

RESP Values

Rust enum Value { /// Null bulk reply, $-1\r\n Null, /// Null array reply, *-1\r\n NullArray, /// For Simple Strings the first byte of the reply is "+" String(String), /// For Errors the first byte of the reply is "-" Error(String), /// For Integers the first byte of the reply is ":" Integer(i64), /// For Bulk Strings the first byte of the reply is "$" Bulk(String), /// For Bulk <binary> Strings the first byte of the reply is "$" BufBulk(Vec<u8>), /// For Arrays the first byte of the reply is "*" Array(Vec<Value>), }

value.is_null() -> bool

value.is_error() -> bool

value.encode() -> Vec<u8>

value.to_encoded_string() -> io::Result<String>

value.to_beautify_string() -> String

encode

fn encode(value: &Value) -> Vec<u8>

fn encode_slice(array: &[&str]) -> Vec<u8>

Decoder

Decoder.new() -> Self

Decoder.with_buf_bulk() -> Self

decoder.feed(buf: &[u8]) -> Result<(), io:Error>

decoder.read() -> Option<Value>

decoder.buffer_len() -> usize

decoder.result_len() -> usize