cycle_ptr 0.1.0

Smart pointers, with cycles
[package]
name = "cycle_ptr"
version = "0.1.0"
edition = "2024"
description = "Smart pointers, with cycles"
repository = "https://codeberg.org/nahratzah/cycle_ptr"
license = "BSD-2-Clause"
keywords = ["smart-pointer", "garbage-collector", "gc", "pointer"]
categories = ["memory-management"]

[dependencies]

[dev-dependencies]
# Used in example for pretty printing.
indent_write = { version = "2.2.0" }
criterion = { version = "0.8", features = ["html_reports"] }

[features]
multi_thread = []
weak_pointer = []
single_generation = []
single_generation_mt = []
linked_list_reachability_assert = []

[lints.rust]
missing_debug_implementations = "warn"
missing_docs = "warn"

[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"

[[example]]
name = "cycle"
path = "examples/cycle.rs"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

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

[[bench]]
name = "multi_thread"
harness = false
required-features = ["multi_thread"]

[[test]]
name = "multi_thread_trash_test"
harness = false
required-features = ["multi_thread", "weak_pointer"]

[[test]]
name = "multi_thread_trash_test_with_gc_thread"
harness = false
required-features = ["multi_thread", "weak_pointer"]