serde_multi

Crates.ioserde_multi
lib.rsserde_multi
version0.1.1
sourcesrc
created_at2021-05-02 20:25:37.598257
updated_at2021-05-02 20:56:31.880493
descriptionStandardized trait API for `serde`-based crates and dynamic serialization/deserialization.
homepage
repositoryhttps://github.com/ScottyThePilot/serde_multi
max_upload_size
id392277
size42,259
(ScottyThePilot)

documentation

README

Serde Multi

Crate API

This library exposes a standardized API across a number of file formats, as well as providing traits to make it possible to dynamically choose file serialization/deserialization format at runtime or based on generics.

Each file format is toggled via feature, all of which are disabled by default.

Currently the only supported file formats are:

If you would like to add more file formats, feel free to make a pull request.

Example Usage

use serde_multi::{SerdeText, Error};
use serde_multi::formats::json::Json;
use std::collections::HashMap;

let mut value: HashMap<String, i32> = HashMap::new();
value.insert("foo".to_owned(), -193);
value.insert("bar".to_owned(), 3058);

// `Json` can be swapped out for any value that implements `SerdeText` here.
let s = Json.to_string(&value).expect("failed to serialize");
println!("serialized: {}", s);
Commit count: 15

cargo fmt