use super::types::{Request, Response};
pub fn parse_request(raw: &str) -> Result<Request, String> {
let parsed: Request = serde_json::from_str(raw).map_err(|e| format!("parse: {e}"))?;
if parsed.jsonrpc != "2.0" {
return Err("jsonrpc != 2.0".into());
}
Ok(parsed)
}
pub fn encode_response(r: &Response) -> String {
serde_json::to_string(r).expect("Response should always serialize")
}