enigma-node-types 0.0.1

Canonical node-facing types and strict codecs for Enigma (UserId hashing, identities, presence, relay envelopes).
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
use serde::de::DeserializeOwned;
use serde::Serialize;

use crate::error::{EnigmaNodeTypesError, Result};

pub fn to_json_string<T: Serialize>(v: &T) -> Result<String> {
    serde_json::to_string(v).map_err(|_| EnigmaNodeTypesError::JsonError)
}

pub fn from_json_str<T: DeserializeOwned>(s: &str) -> Result<T> {
    serde_json::from_str(s).map_err(|_| EnigmaNodeTypesError::JsonError)
}