[package]
edition = "2024"
rust-version = "1.91"
name = "ptab"
version = "0.1.7"
authors = ["l1h3r <5410284+l1h3r@users.noreply.github.com>"]
build = false
exclude = [
".github",
"bin",
"release.toml",
"rustfmt.toml",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Lock-free concurrent table optimized for read-heavy workloads"
homepage = "https://github.com/l1h3r/ptab"
documentation = "https://docs.rs/ptab"
readme = "README.md"
keywords = [
"atomic",
"concurrent",
"lock-free",
]
categories = [
"concurrency",
"data-structures",
"memory-management",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/l1h3r/ptab"
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
all-features = true
rustdoc-args = [
"--generate-link-to-definition",
"--generate-macro-expansion",
"--extern-html-root-url=core=https://doc.rust-lang.org",
"--extern-html-root-url=alloc=https://doc.rust-lang.org",
"--extern-html-root-url=std=https://doc.rust-lang.org",
]
[features]
alloc = []
default = ["sdd"]
loom = ["dep:loom"]
sdd = [
"dep:sdd",
"std",
]
shuttle = ["dep:shuttle"]
slow = []
std = []
[lib]
name = "ptab"
path = "src/lib.rs"
[[test]]
name = "model"
path = "tests/model.rs"
[dependencies.sdd]
version = "4.6"
optional = true
default-features = false
[target."cfg(loom)".dependencies.loom]
version = "0.7"
optional = true
default-features = false
[target."cfg(loom)".dev-dependencies.loom]
version = "0.7"
default-features = false
[target."cfg(shuttle)".dependencies.shuttle]
version = "0.8"
optional = true
default-features = false
[target."cfg(shuttle)".dev-dependencies.shuttle]
version = "0.8"
default-features = false
[lints.clippy]
cast_possible_truncation = "allow"
doc_markdown = "allow"
manual_map = "allow"
must_use_candidate = "allow"
unused_self = "allow"
[lints.clippy.cargo]
level = "deny"
priority = -1
[lints.clippy.complexity]
level = "deny"
priority = -1
[lints.clippy.correctness]
level = "deny"
priority = -1
[lints.clippy.nursery]
level = "allow"
priority = -1
[lints.clippy.pedantic]
level = "deny"
priority = -1
[lints.clippy.perf]
level = "deny"
priority = -1
[lints.clippy.restriction]
level = "allow"
priority = -1
[lints.clippy.style]
level = "deny"
priority = -1
[lints.clippy.suspicious]
level = "deny"
priority = -1
[lints.rust.deprecated-safe]
level = "deny"
priority = -1
[lints.rust.future-incompatible]
level = "deny"
priority = -1
[lints.rust.keyword-idents]
level = "deny"
priority = -1
[lints.rust.let-underscore]
level = "deny"
priority = -1
[lints.rust.nonstandard-style]
level = "deny"
priority = -1
[lints.rust.refining-impl-trait]
level = "deny"
priority = -1
[lints.rust.rust-2018-compatibility]
level = "deny"
priority = -1
[lints.rust.rust-2018-idioms]
level = "deny"
priority = -1
[lints.rust.rust-2021-compatibility]
level = "deny"
priority = -1
[lints.rust.rust-2024-compatibility]
level = "deny"
priority = -1
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(coverage,coverage_nightly,loom,shuttle)"]
[lints.rust.unused]
level = "deny"
priority = -1
[lints.rust.warnings]
level = "deny"
priority = -1
[lints.rustdoc]
bare_urls = "deny"
broken_intra_doc_links = "deny"
invalid_codeblock_attributes = "deny"
invalid_html_tags = "deny"
invalid_rust_codeblocks = "deny"
missing_crate_level_docs = "deny"
private_doc_tests = "deny"
private_intra_doc_links = "deny"
redundant_explicit_links = "deny"
unescaped_backticks = "deny"