[package]
name = "aam-rs"
version = "2.8.1"
edition.workspace = true
rust-version = "1.89.0"
license.workspace = true
repository.workspace = true
authors.workspace = true
description = "A Rust implementation of the Abstract Alias Mapping (AAM) framework for aliasing and maping aam files."
readme = "README.md"
categories = [
    "data-structures",
    "parsing",
    "config",
]
keywords = ["aam", "alias", "mapping", "config", "parser"]
include = [
    "src/**/*",
    "Cargo.toml",
    "README.md",
    "LICENSE-APACHE",
    "LICENSE-MIT",
    "examples/**/*",
    "tests/**/*",
    "build.rs",
    "CHANGELOG.md",
    "PUBLIC_API.md",
    "cbindgen.toml",
]

[dependencies]
aam-core.workspace = true
aam-derive.workspace = true

[features]
default = ["aam-core/default", "aot"]
serde = ["aam-core/serde"]
hash-std = ["aam-core/hash-std"]
hash-fx = ["aam-core/hash-fx"]
hash-ahash = ["aam-core/hash-ahash"]
hash-rapidhash = ["aam-core/hash-rapidhash"]
hash-ripemd = ["aam-core/hash-ripemd"]
perf-hash = ["aam-core/perf-hash"]
aot = ["aam-core/aot"]
dev = ["aam-core/dev"]
release = ["aam-core/release"]
unsafe_fast_path = ["aam-core/unsafe_fast_path"]
ffi = ["aam-core/ffi"]
python = ["aam-core/python"]
jni = ["aam-core/jni"]
csharp = ["aam-core/ffi", "dep:csbindgen"]
legacy = ["aam-core/legacy"]
parallel = ["aam-core/parallel"]
64bit = ["aam-core/64bit"]
translator = ["aam-core/translator"]
splitter = ["aam-core/splitter"]
builder-extras = ["aam-core/builder-extras"]
reconstructer = ["aam-core/reconstructer"]
rust-only = ["aam-core/rust-only"]

[[example]]
name = "standard"

[[example]]
name = "standard_stress"

[[bench]]
name = "stress"
harness = false

[[example]]
name = "derive"
required-features = ["serde"]

[[example]]
name = "custom_types"

[[example]]
name = "advanced"

[[example]]
name = "schema_in_schema"

[[example]]
name = "config_inheritance"

[[example]]
name = "builder"

[[example]]
name = "translator"
required-features = ["aam-core/translator"]

[[example]]
name = "from_aam"

[[example]]
name = "derive_debug"

[[example]]
name = "package_schema"

[dev-dependencies]
serde_json = "1.0.149"
tempfile = "3.27.0"
criterion = { version = "0.8.2", features = ["html_reports"] }
anyhow = "1.0"

[build-dependencies]
csbindgen = { version = "1.9.7", optional = true }

[lib]
name = "aam_rs"
crate-type = ["cdylib", "rlib", "staticlib"]
