#json #numbers #macro #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

#447 in Encoding

Download history 5699/week @ 2024-11-21 6532/week @ 2024-11-28 7081/week @ 2024-12-05 7143/week @ 2024-12-12 6076/week @ 2024-12-19 5645/week @ 2024-12-26 6544/week @ 2025-01-02 6908/week @ 2025-01-09 7229/week @ 2025-01-16 7507/week @ 2025-01-23 6879/week @ 2025-01-30 7012/week @ 2025-02-06 6666/week @ 2025-02-13 7275/week @ 2025-02-20 7580/week @ 2025-02-27 7633/week @ 2025-03-06

30,461 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