4个稳定版本
1.0.7 | 2023年10月9日 |
---|---|
1.0.6 | 2023年10月7日 |
0.1.23 |
|
0.1.22 |
|
0.1.15 |
|
#169 in #dom
130 monthly downloads
用于 chiselj
11MB
2.5K SLoC
chisel-json
另一个JSON解析器吗?
Chisel JSON解析器旨在成为一个相对简单的DOM和SAX解析器,它不包括在Rust中从结构体/枚举显式序列化和反序列化所需的全部机制。
这是一个简单的解析器,旨在允许你选择如何解析一大块“诅咒”JSON,然后构建/转换DOM为更丰富的AST结构,或者选择通过在响应SAX解析事件时调用的闭包来挑选有用的有效负载部分。
(因为说实话,JSON有效负载通常负担着大量你永远不会使用的无用之物)。
包特性标志
包内目前定义的特性如下
特性 | 描述 | 默认特性? |
---|---|---|
mixed_numerics |
数字是否应分别解析为 i64 和 f64 ? |
yerp |
示例
源代码中提供了几个示例
示例 | 描述 |
---|---|
distinct_pointers | 使用SAX解析器提取所有不同的JSON指针 |
distinct_object_pointers | 使用SAX解析器提取所有对象的JSON指针 |
构建 & 测试
要本地构建,您可以使用标准的 cargo build
命令及其变体,但如果您更喜欢使用 cargo-make
,则源代码中也包含了一个补充的 Makefile.toml。
要构建时重新生成README.md文件 - 您应该使用
cargo make
或者,
cargo readme > README.md
源代码中包含了一些基于 极其出色 的 criterion 的基准测试,可以使用提供的 benchmark.sh 脚本或相关的 cargo make
目标来运行。