#json #serialization #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

#404 in Encoding

Download history 6470/week @ 2024-10-17 6260/week @ 2024-10-24 5795/week @ 2024-10-31 5743/week @ 2024-11-07 5455/week @ 2024-11-14 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 5880/week @ 2025-01-30

28,575 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