[package]
edition = "2024"
name = "buffa-reflect"
version = "0.1.0"
authors = ["Tyr Chen <tyr.chen@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Runtime reflection for the buffa protobuf implementation."
homepage = "https://github.com/tyrchen/buffa-reflect"
documentation = "https://docs.rs/buffa-reflect"
readme = "README.md"
keywords = [
"protobuf",
"reflection",
"buffa",
"descriptor",
]
categories = [
"development-tools",
"encoding",
]
license = "MIT"
repository = "https://github.com/tyrchen/buffa-reflect"
[features]
default = [
"derive",
"dynamic",
]
derive = ["dep:buffa-reflect-derive"]
dynamic = []
serde = [
"dynamic",
"dep:serde",
"dep:base64",
"dep:serde-value",
"dep:chrono",
]
text-format = [
"dynamic",
"dep:logos",
]
[lib]
name = "buffa_reflect"
path = "src/lib.rs"
[[test]]
name = "derive"
path = "tests/derive.rs"
[[test]]
name = "dynamic"
path = "tests/dynamic.rs"
[[test]]
name = "json"
path = "tests/json.rs"
[[test]]
name = "runtime"
path = "tests/runtime.rs"
[[test]]
name = "service"
path = "tests/service.rs"
[[test]]
name = "text_format"
path = "tests/text_format.rs"
[dependencies.base64]
version = "0.22"
optional = true
[dependencies.buffa]
version = "0.4"
features = ["std"]
default-features = false
[dependencies.buffa-descriptor]
version = "0.4"
[dependencies.buffa-reflect-derive]
version = "0.1.0"
optional = true
[dependencies.chrono]
version = "0.4"
features = ["alloc"]
optional = true
default-features = false
[dependencies.hashbrown]
version = "0.17"
features = ["default-hasher"]
default-features = false
[dependencies.logos]
version = "0.16"
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.serde-value]
version = "0.7"
optional = true
[dependencies.thiserror]
version = "2.0.12"
[dev-dependencies.serde_json]
version = "1"
[lints.rust]
missing_docs = "warn"
unsafe_code = "forbid"