[package]
edition = "2024"
name = "cycle_ptr"
version = "0.1.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Smart pointers, with cycles"
readme = false
keywords = [
"smart-pointer",
"garbage-collector",
"gc",
"pointer",
]
categories = ["memory-management"]
license = "BSD-2-Clause"
repository = "https://codeberg.org/nahratzah/cycle_ptr"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
linked_list_reachability_assert = []
multi_thread = []
single_generation = []
single_generation_mt = []
weak_pointer = []
[lib]
name = "cycle_ptr"
path = "src/lib.rs"
[[example]]
name = "cycle"
path = "examples/cycle.rs"
[[test]]
name = "multi_thread_trash_test"
path = "tests/multi_thread_trash_test.rs"
harness = false
required-features = [
"multi_thread",
"weak_pointer",
]
[[test]]
name = "multi_thread_trash_test_with_gc_thread"
path = "tests/multi_thread_trash_test_with_gc_thread.rs"
harness = false
required-features = [
"multi_thread",
"weak_pointer",
]
[[bench]]
name = "bench"
path = "benches/bench.rs"
harness = false
[[bench]]
name = "multi_thread"
path = "benches/multi_thread.rs"
harness = false
required-features = ["multi_thread"]
[dependencies]
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.indent_write]
version = "2.2.0"
[lints.clippy]
allow_attributes_without_reason = "warn"
missing_const_for_fn = "warn"
missing_docs_in_private_items = "warn"
missing_errors_doc = "warn"
missing_inline_in_public_items = "warn"
missing_panics_doc = "warn"
missing_safety_doc = "warn"
return_self_not_must_use = "warn"
[lints.rust]
missing_debug_implementations = "warn"
missing_docs = "warn"