[package]
name = "buffa-reflect"
description = "Runtime reflection for the buffa protobuf implementation."
categories = ["development-tools", "encoding"]
keywords = ["protobuf", "reflection", "buffa", "descriptor"]
version.workspace = true
authors.workspace = true
edition.workspace = true
license.workspace = true
documentation.workspace = true
repository.workspace = true
homepage.workspace = true
readme.workspace = true
[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"]
[dependencies]
buffa.workspace = true
buffa-descriptor.workspace = true
buffa-reflect-derive = { workspace = true, optional = true }
base64 = { workspace = true, optional = true }
chrono = { workspace = true, optional = true }
hashbrown.workspace = true
logos = { workspace = true, optional = true }
serde = { workspace = true, optional = true }
serde-value = { workspace = true, optional = true }
thiserror.workspace = true
[dev-dependencies]
serde_json.workspace = true
[lints.rust]
missing_docs = "warn"
unsafe_code = "forbid"