[package]
edition = "2021"
rust-version = "1.70.0"
name = "light_clone"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Compile-time enforcement for O(1) clone operations"
documentation = "https://docs.rs/light_clone"
readme = "README.md"
keywords = [
"clone",
"arc",
"rc",
"derive",
"zero-cost",
]
categories = [
"rust-patterns",
"memory-management",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/SIRHAMY/light-clone"
[features]
default = []
full = [
"im",
"imbl",
"rpds",
]
im = ["dep:im"]
imbl = ["dep:imbl"]
rpds = ["dep:rpds"]
[lib]
name = "light_clone"
path = "src/lib.rs"
[[test]]
name = "aliases"
path = "tests/aliases.rs"
[[test]]
name = "containers"
path = "tests/containers.rs"
[[test]]
name = "conversions"
path = "tests/conversions.rs"
[[test]]
name = "derive_basic"
path = "tests/derive_basic.rs"
[[test]]
name = "derive_compile_fail"
path = "tests/derive_compile_fail.rs"
[[test]]
name = "derive_enum"
path = "tests/derive_enum.rs"
[[test]]
name = "derive_nested"
path = "tests/derive_nested.rs"
[[test]]
name = "derive_tuple_unit"
path = "tests/derive_tuple_unit.rs"
[[test]]
name = "im_integration"
path = "tests/im_integration.rs"
[[test]]
name = "imbl_integration"
path = "tests/imbl_integration.rs"
[[test]]
name = "primitives"
path = "tests/primitives.rs"
[[test]]
name = "references"
path = "tests/references.rs"
[[test]]
name = "rpds_integration"
path = "tests/rpds_integration.rs"
[[test]]
name = "smart_pointers"
path = "tests/smart_pointers.rs"
[[test]]
name = "tuples"
path = "tests/tuples.rs"
[[bench]]
name = "clone_comparison"
path = "benches/clone_comparison.rs"
harness = false
[dependencies.im]
version = "15"
optional = true
[dependencies.imbl]
version = "3"
optional = true
[dependencies.light_clone_derive]
version = "0.2.0"
[dependencies.rpds]
version = "1"
optional = true
[dev-dependencies.criterion]
version = "0.6"
[dev-dependencies.trybuild]
version = "1"