[package]
name = "bufjson"
version = "0.7.0"
edition = "2024"
license = "MIT OR Apache-2.0"
authors = ["Victor Schappert <victor.schappert@protonmail.com>"]
repository = "https://github.com/vcschapp/bufjson"
description = "No frills, low-alloc, low-copy JSON lexer/parser for fast stream-oriented parsing"
keywords = ["json", "parser", "low-allocation", "zero-copy", "performance"]
categories = ["parsing", "encoding", "network-programming", "web-programming"]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[profile.profiling]
inherits = "release"
debug = true
[features]
ignore_case = ["dep:caseless"]
pointer = ["dep:smallvec"]
read = []
pipe = ["dep:bytes", "read"]
[dependencies]
bitvec = { version = "^1.0.1", default-features = false, features = ["alloc"] }
bytes = { version = "^1.11.1", optional = true }
caseless = { version = "^0.2.2", optional = true }
smallvec = { version = "^1.15.1", optional = true }
[dev-dependencies]
criterion = "0.5"
doc-comment = "^0.3.3"
rand = "^0.10.0"
rand_distr = "^0.6.0"
rstest = "^0.26.1"
serde_json = "^1.0.49"
smallvec = "^1.15.1"
tempfile = "^3.25.0"
tokio = { version = "^1.50.0", features = ["macros", "rt", "sync"] }
[dev-dependencies.bufjson]
path = "."
features = ["read"]
[[bench]]
name = "throughput"
harness = false