[package]
edition = "2024"
rust-version = "1.85"
name = "panproto-parse"
version = "0.18.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Tree-sitter full-AST parsers and emitters for panproto language protocols"
readme = "README.md"
license = "MIT"
repository = "https://github.com/panproto/panproto"
[features]
default = ["grammars"]
grammars = [
"dep:panproto-grammars",
"panproto-grammars/default",
]
group-all = [
"grammars",
"panproto-grammars/group-all",
]
group-core = [
"grammars",
"panproto-grammars/group-core",
]
group-data = [
"grammars",
"panproto-grammars/group-data",
]
group-devops = [
"grammars",
"panproto-grammars/group-devops",
]
group-functional = [
"grammars",
"panproto-grammars/group-functional",
]
group-jvm = [
"grammars",
"panproto-grammars/group-jvm",
]
group-mobile = [
"grammars",
"panproto-grammars/group-mobile",
]
group-scripting = [
"grammars",
"panproto-grammars/group-scripting",
]
group-systems = [
"grammars",
"panproto-grammars/group-systems",
]
group-web = [
"grammars",
"panproto-grammars/group-web",
]
[lib]
name = "panproto_parse"
path = "src/lib.rs"
[dependencies.memchr]
version = "2.7"
[dependencies.miette]
version = "7.6.0"
features = ["fancy"]
[dependencies.panproto-gat]
version = "0.18.0"
[dependencies.panproto-grammars]
version = "0.18.0"
optional = true
[dependencies.panproto-protocols]
version = "0.18.0"
[dependencies.panproto-schema]
version = "0.18.0"
[dependencies.rustc-hash]
version = "2.1.1"
[dependencies.serde]
version = "1.0.228"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "1.0.149"
[dependencies.smallvec]
version = "2.0.0-alpha.12"
features = ["serde"]
[dependencies.thiserror]
version = "2.0.18"
[dependencies.tree-sitter]
version = "0.25"
[dev-dependencies.proptest]
version = "1.10.0"
[lints.clippy]
expect_used = "warn"
unwrap_used = "deny"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_docs = "warn"
unsafe_code = "deny"