#json #macro #numbers #string #obj

write-json

Simple {dependency,trait,macro}-less JSON serialization

4 releases

0.1.4 Dec 31, 2023
0.1.2 Aug 1, 2020
0.1.1 Aug 1, 2020
0.1.0 Aug 1, 2020

#514 in Encoding

Download history 5713/week @ 2024-11-17 5729/week @ 2024-11-24 7025/week @ 2024-12-01 7265/week @ 2024-12-08 6818/week @ 2024-12-15 5512/week @ 2024-12-22 5948/week @ 2024-12-29 6860/week @ 2025-01-05 6987/week @ 2025-01-12 7449/week @ 2025-01-19 7204/week @ 2025-01-26 6740/week @ 2025-02-02 7075/week @ 2025-02-09 6936/week @ 2025-02-16 7219/week @ 2025-02-23 6769/week @ 2025-03-02

28,829 downloads per month
Used in ungrammar2json

MIT/Apache

8KB
197 lines

write-json

Simple {dependency,trait,macro}-less JSON serialization

let mut buf = String::new();

{
    let mut obj = write_json::object(&mut buf);
    obj.string("name", "Peter").number("favorite number", 92.0);
    obj.array("films")
        .string("Drowning By Numbers")
        .string("A Zed & Two Noughts");
    obj.null("suitcase");
}

assert_eq!(
    buf,
    r#"{"name":"Peter","favorite number":92,"films":["Drowning By Numbers","A Zed & Two Noughts"],"suitcase":null}"#
)

lib.rs:

Simple dependency-less macro-less trait-less JSON serialization.

Example

let mut buf = String::new();

{
    let mut obj = write_json::object(&mut buf);
    obj.string("name", "Peter").number("favorite number", 92.0);
    obj.array("films")
        .string("Drowning By Numbers")
        .string("A Zed & Two Noughts");
    obj.null("suitcase");
}

assert_eq!(
    buf,
    r#"{"name":"Peter","favorite number":92,"films":["Drowning By Numbers","A Zed & Two Noughts"],"suitcase":null}"#
)

No runtime deps