[package]
name = "rusty-capability-attr"
version = "0.1.3"
edition.workspace = true
rust-version.workspace = true
description = "Layer 2 (side-effect / capability safety) #[capability(...)] proc-macro attribute for Rust: declares and enforces a function's allocation/IO/raw-pointer scope at compile time, orthogonal to unsafe. Phase 1 (stable Rust, no rustc changes) of docs/aisecurity/capability-rfc-updated.md, scoped to userspace (git.git) needs — see this crate's own module docs for what was dropped from the RFC's embedded-oriented vocabulary and why."
license.workspace = true
repository.workspace = true
readme = "README.md"
[lints.clippy]
all = "deny"
pedantic = "deny"
nursery = "deny"
cargo = "deny"
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin)'] }
[lib]
name = "capability_attr"
path = "src/lib.rs"
proc-macro = true
[dependencies]
syn = { version = "2", features = ["full"] }
quote = "1"
proc-macro2 = "1"
rusty-capability-core = { path = "../capability-core", version = "0.1.0" }
[dev-dependencies]
trybuild = "1"