paramdef 0.2.0

Type-safe parameter definition system
Documentation
[[bench]]
harness = false
name = "containers"
path = "benches/containers.rs"

[[bench]]
harness = false
name = "core_types"
path = "benches/core_types.rs"

[[bench]]
harness = false
name = "parameters"
path = "benches/parameters.rs"

[[bench]]
harness = false
name = "runtime"
path = "benches/runtime.rs"

[[bench]]
harness = false
name = "schema_context"
path = "benches/schema_context.rs"

[[bench]]
harness = false
name = "value"
path = "benches/value.rs"

[dependencies.base64]
optional = true
version = "0.22"

[dependencies.bitflags]
version = "2.10"

[dependencies.chrono]
default-features = false
features = ["std"]
optional = true
version = "0.4"

[dependencies.fluent]
optional = true
version = "0.17"

[dependencies.indexmap]
version = "2.7"

[dependencies.regex]
optional = true
version = "1.11"

[dependencies.rustc-hash]
version = "2.1"

[dependencies.serde]
features = ["derive"]
optional = true
version = "1.0"

[dependencies.serde_json]
optional = true
version = "1.0"

[dependencies.smallvec]
version = "1.13"

[dependencies.smartstring]
version = "1.0.1"

[dependencies.thiserror]
version = "2.0"

[dependencies.tokio]
features = ["sync"]
optional = true
version = "1.43"

[dev-dependencies.codspeed-criterion-compat]
version = "2.8"

[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.7"

[dev-dependencies.tokio]
features = ["rt-multi-thread", "macros"]
version = "1.43"

[features]
chrono = ["dep:chrono"]
default = []
events = ["dep:tokio"]
full = ["visibility", "validation", "serde", "events", "i18n", "chrono"]
i18n = ["dep:fluent"]
serde = ["dep:serde", "dep:serde_json", "dep:base64", "smartstring/serde", "indexmap/serde"]
validation = ["dep:regex"]
visibility = []

[lib]
name = "paramdef"
path = "src/lib.rs"

[lints.rust.unexpected_cfgs]
check-cfg = ["cfg(codspeed)"]
level = "warn"
priority = 0

[package]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["data-structures", "gui", "config"]
description = "Type-safe parameter definition system"
documentation = "https://vanyastaff.github.io/paramdef"
edition = "2024"
keywords = ["parameters", "schema", "forms", "validation", "ui"]
license = "MIT OR Apache-2.0"
name = "paramdef"
readme = "README.md"
repository = "https://github.com/vanyastaff/paramdef"
rust-version = "1.85"
version = "0.2.0"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[[test]]
name = "leaf_parameters"
path = "tests/leaf_parameters.rs"

[[test]]
name = "subtypes"
path = "tests/subtypes.rs"

[[test]]
name = "value_system"
path = "tests/value_system.rs"