[package]
edition = "2024"
rust-version = "1.99"
name = "dxbc-reader"
version = "0.11.0"
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "DXBC parser: reads Direct3D 10/11 shader bytecode (Shader Model 4 and 5) into typed declarations and instructions, with RDEF reflection and signatures"
documentation = "https://docs.rs/dxbc-reader"
readme = "README.md"
keywords = [
"dxbc",
"shader",
"bytecode",
"direct3d",
"parser",
]
categories = [
"parser-implementations",
"graphics",
]
license = "GPL-3.0-or-later"
repository = "https://github.com/Kalmarv/dx"
[lib]
name = "dxbc_reader"
path = "src/lib.rs"
[[example]]
name = "inspect_dxbc"
path = "examples/inspect_dxbc.rs"
[[example]]
name = "pairs_dxbc"
path = "examples/pairs_dxbc.rs"
[[example]]
name = "patched_fixtures"
path = "examples/patched_fixtures.rs"
[[test]]
name = "controls"
path = "tests/controls.rs"
[[test]]
name = "corpora"
path = "tests/corpora.rs"
[[test]]
name = "decode"
path = "tests/decode.rs"
[[test]]
name = "disasm"
path = "tests/disasm.rs"
[[test]]
name = "fixtures"
path = "tests/fixtures.rs"
[[test]]
name = "format"
path = "tests/format.rs"
[[test]]
name = "properties"
path = "tests/properties.rs"
[[test]]
name = "real_data_inputs"
path = "tests/real_data_inputs.rs"
[[test]]
name = "reflection"
path = "tests/reflection.rs"
[[test]]
name = "sampling"
path = "tests/sampling.rs"
[[test]]
name = "sm51"
path = "tests/sm51.rs"
[[test]]
name = "spdb"
path = "tests/spdb.rs"
[[test]]
name = "statistics"
path = "tests/statistics.rs"
[[test]]
name = "untrusted"
path = "tests/untrusted.rs"
[dependencies.d3d9-reader]
version = "0.11.0"
[dependencies.dxcontainer]
version = "0.11.0"
[dependencies.thiserror]
version = "=2.0.21"
features = ["std"]
default-features = false
[dev-dependencies.primase-testdata]
version = "0.2.5"
[dev-dependencies.proptest]
version = "1.12.0"
features = ["std"]
default-features = false
[lints.clippy]
dbg_macro = "warn"
disallowed_methods = "allow"
disallowed_types = "allow"
float_cmp = "allow"
iter_over_hash_type = "deny"
todo = "warn"
unwrap_used = "warn"
[lints.rust]
missing_debug_implementations = "warn"
unsafe_code = "deny"
unused_must_use = "deny"