diff --git a/Cargo.toml b/Cargo.toml index a544335f8..b01396a26 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,7 +25,7 @@ members = [ "packages/native-core", "packages/native-core-macro", "packages/rsx-rosetta", - "packages/copy", + "packages/generational_box", "packages/signals", "packages/hot-reload", "packages/fullstack", @@ -77,7 +77,7 @@ dioxus-native-core = { path = "packages/native-core", version = "0.4.0" } dioxus-native-core-macro = { path = "packages/native-core-macro", version = "0.4.0" } rsx-rosetta = { path = "packages/rsx-rosetta", version = "0.4.0" } dioxus-signals = { path = "packages/signals" } -dioxus-copy = { path = "packages/copy" } +generational-box = { path = "packages/generational_box" } dioxus-hot-reload = { path = "packages/hot-reload", version = "0.4.0" } dioxus-fullstack = { path = "packages/fullstack", version = "0.4.1" } dioxus_server_macro = { path = "packages/server-macro", version = "0.4.1" } diff --git a/packages/copy/Cargo.toml b/packages/generational_box/Cargo.toml similarity index 92% rename from packages/copy/Cargo.toml rename to packages/generational_box/Cargo.toml index 56964badd..6c5a5a841 100644 --- a/packages/copy/Cargo.toml +++ b/packages/generational_box/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "dioxus-copy" +name = "generational-box" authors = ["Evan Almloff"] version = "0.0.0" edition = "2018" diff --git a/packages/copy/src/lib.rs b/packages/generational_box/src/lib.rs similarity index 93% rename from packages/copy/src/lib.rs rename to packages/generational_box/src/lib.rs index b9b8aec06..d45701e6c 100644 --- a/packages/copy/src/lib.rs +++ b/packages/generational_box/src/lib.rs @@ -106,8 +106,8 @@ fn panics() { fn fuzz() { fn maybe_owner_scope( store: &Store, - valid_keys: &mut Vec>, - invalid_keys: &mut Vec>, + valid_keys: &mut Vec>, + invalid_keys: &mut Vec>, path: &mut Vec, ) { let branch_cutoff = 5; @@ -145,14 +145,14 @@ fn fuzz() { } } -pub struct CopyHandle { +pub struct GenerationalBox { raw: MemoryLocation, #[cfg(any(debug_assertions, feature = "check_generation"))] generation: u32, _marker: PhantomData, } -impl Debug for CopyHandle { +impl Debug for GenerationalBox { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { #[cfg(any(debug_assertions, feature = "check_generation"))] f.write_fmt(format_args!( @@ -166,7 +166,7 @@ impl Debug for CopyHandle { } } -impl CopyHandle { +impl GenerationalBox { #[inline(always)] fn validate(&self) -> bool { #[cfg(any(debug_assertions, feature = "check_generation"))] @@ -227,9 +227,9 @@ impl CopyHandle { } } -impl Copy for CopyHandle {} +impl Copy for GenerationalBox {} -impl Clone for CopyHandle { +impl Clone for GenerationalBox { fn clone(&self) -> Self { *self } @@ -253,13 +253,13 @@ impl MemoryLocation { } } - fn replace(&mut self, value: T) -> CopyHandle { + fn replace(&mut self, value: T) -> GenerationalBox { let mut inner_mut = self.data.borrow_mut(); let raw = Box::new(value); let old = inner_mut.replace(raw); assert!(old.is_none()); - CopyHandle { + GenerationalBox { raw: *self, #[cfg(any(debug_assertions, feature = "check_generation"))] generation: self.generation.get(), @@ -316,7 +316,7 @@ pub struct Owner { } impl Owner { - pub fn insert(&self, value: T) -> CopyHandle { + pub fn insert(&self, value: T) -> GenerationalBox { let mut location = self.store.claim(); let key = location.replace(value); self.owned.borrow_mut().push(location); @@ -324,9 +324,9 @@ impl Owner { } /// Creates an invalid handle. This is useful for creating a handle that will be filled in later. If you use this before the value is filled in, you will get may get a panic or an out of date value. - pub fn invalid(&self) -> CopyHandle { + pub fn invalid(&self) -> GenerationalBox { let location = self.store.claim(); - CopyHandle { + GenerationalBox { raw: location, #[cfg(any(debug_assertions, feature = "check_generation"))] generation: location.generation.get(), diff --git a/packages/signals/Cargo.toml b/packages/signals/Cargo.toml index 19f2039cc..c145b850a 100644 --- a/packages/signals/Cargo.toml +++ b/packages/signals/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" [dependencies] dioxus-core = { workspace = true } -dioxus-copy = { workspace = true } +generational-box = { workspace = true } log.workspace = true simple_logger = "4.2.0" diff --git a/packages/signals/src/rt.rs b/packages/signals/src/rt.rs index db394af5e..f96ff6ab3 100644 --- a/packages/signals/src/rt.rs +++ b/packages/signals/src/rt.rs @@ -8,7 +8,7 @@ use dioxus_core::prelude::{ }; use dioxus_core::ScopeId; -use dioxus_copy::{CopyHandle, Owner, Store}; +use generational_box::{GenerationalBox, Owner, Store}; fn current_store() -> Store { match consume_context() { @@ -41,7 +41,7 @@ fn owner_in_scope(scope: ScopeId) -> Rc { } pub struct CopyValue { - pub(crate) value: CopyHandle, + pub(crate) value: GenerationalBox, origin_scope: ScopeId, }