#serde-json #json #serde #framing

无std json-lines

一个与 serde 兼容的 no_std 消息库,实现了 JSON Lines 格式。

2 个版本

0.1.1 2023 年 11 月 21 日
0.1.0 2023 年 11 月 20 日

#879 in 编码

Download history 322/week @ 2024-04-08 361/week @ 2024-04-15 119/week @ 2024-04-22 151/week @ 2024-04-29 65/week @ 2024-05-06 119/week @ 2024-05-13 74/week @ 2024-05-20 225/week @ 2024-05-27 77/week @ 2024-06-03 179/week @ 2024-06-10 122/week @ 2024-06-17 91/week @ 2024-06-24 92/week @ 2024-07-01 150/week @ 2024-07-08 156/week @ 2024-07-15 565/week @ 2024-07-22

每月下载量 972

MIT/Apache

16KB
221

json-lines

Crates.io Documentation Crate License Dependency status build

json-lines 是一个 #![no_std] + serde 兼容的消息库,实现了 JSON Lines 格式。

高级概述

该库提供了 Rust 语言的 JSON Lines (JSONL),也称为换行分隔 JSON (NDJSON) 的实现。

维基百科页面 JSON 流jsonlines.org 是描述该格式的良好资源。

此库力求与 postcard 库具有相似的 API。这样,Rust 代码可以根据需要轻松地在 JSONL 和 postcard 格式之间切换。JSONL 是“自描述”的但效率较低,而 postcard 非常紧凑但需要了解消息结构的额外知识。

该库包含一个 #![no_std] 实现,用于在嵌入式上下文中使用。默认启用 std 功能,提供 [Error] 枚举实现 std::error::Error 特性。

启用 codec 功能将提供 crate::codec::JsonLinesCodec,它提供了 tokio_util::codec::Decodertokio_util::codec::Encoder 的实现。

许可协议

根据您的选择,许可协议为

贡献

除非您明确声明,否则根据 Apache-2.0 许可证定义的,任何有意提交以包含在作品中的贡献,都将根据上述方式双重许可,不附加任何其他条款或条件。

依赖关系

~1.1–3MB
~60K SLoC