Skip to content

Commit 71f42a1

Browse files
committed
refactor: put HeaderVecWeak into its own module
Things becoming bigger ;)
1 parent 9775e59 commit 71f42a1

2 files changed

Lines changed: 36 additions & 24 deletions

File tree

src/lib.rs

Lines changed: 3 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ use core::{
1111
slice::SliceIndex,
1212
};
1313

14+
15+
mod weak;
16+
pub use weak::HeaderVecWeak;
1417
#[cfg(feature = "atomic_append")]
1518
use core::sync::atomic::{AtomicUsize, Ordering};
1619

@@ -753,27 +756,3 @@ where
753756
.finish()
754757
}
755758
}
756-
757-
pub struct HeaderVecWeak<H, T> {
758-
header_vec: ManuallyDrop<HeaderVec<H, T>>,
759-
}
760-
761-
impl<H, T> Deref for HeaderVecWeak<H, T> {
762-
type Target = HeaderVec<H, T>;
763-
764-
fn deref(&self) -> &Self::Target {
765-
&self.header_vec
766-
}
767-
}
768-
769-
impl<H, T> DerefMut for HeaderVecWeak<H, T> {
770-
fn deref_mut(&mut self) -> &mut Self::Target {
771-
&mut self.header_vec
772-
}
773-
}
774-
775-
impl<H, T> Debug for HeaderVecWeak<H, T> {
776-
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
777-
f.debug_struct("HeaderVecWeak").finish()
778-
}
779-
}

src/weak.rs

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
//! Weak reference to a `HeaderVec`.
2+
3+
use core::{
4+
fmt::Debug,
5+
mem::ManuallyDrop,
6+
ops::{Deref, DerefMut},
7+
};
8+
9+
use crate::HeaderVec;
10+
11+
pub struct HeaderVecWeak<H, T> {
12+
pub(crate) header_vec: ManuallyDrop<HeaderVec<H, T>>,
13+
}
14+
15+
impl<H, T> Deref for HeaderVecWeak<H, T> {
16+
type Target = HeaderVec<H, T>;
17+
18+
fn deref(&self) -> &Self::Target {
19+
&self.header_vec
20+
}
21+
}
22+
23+
impl<H, T> DerefMut for HeaderVecWeak<H, T> {
24+
fn deref_mut(&mut self) -> &mut Self::Target {
25+
&mut self.header_vec
26+
}
27+
}
28+
29+
impl<H, T> Debug for HeaderVecWeak<H, T> {
30+
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
31+
f.debug_struct("HeaderVecWeak").finish()
32+
}
33+
}

0 commit comments

Comments
 (0)