Remove unsafe from clone

This commit is contained in:
Gwilym Inzani 2023-05-10 16:02:21 +01:00
parent 925baced46
commit 82855ac66b

View file

@ -156,18 +156,12 @@ where
V: Clone, V: Clone,
{ {
fn clone(&self) -> Self { fn clone(&self) -> Self {
if self.has_value() { if let Some((k, v)) = self.key_value_ref() {
Self { Self {
hash: self.hash, hash: self.hash,
distance_to_initial_bucket: self.distance_to_initial_bucket, distance_to_initial_bucket: self.distance_to_initial_bucket,
key: MaybeUninit::new( key: MaybeUninit::new(k.clone()),
// SAFETY: has a value value: MaybeUninit::new(v.clone()),
unsafe { self.key.assume_init_ref() }.clone(),
),
value: MaybeUninit::new(
// SAFETY: has a value
unsafe { self.value.assume_init_ref() }.clone(),
),
} }
} else { } else {
Self { Self {