diff options
| author | Mica White <botahamec@outlook.com> | 2026-08-26 20:46:31 -0400 |
|---|---|---|
| committer | Mica White <botahamec@outlook.com> | 2026-08-26 20:46:31 -0400 |
| commit | 55b3a2425b242fbc5c6e471f220eeb8b949e8751 (patch) | |
| tree | 5ceb7910b60cc7331024b7ce1d49ec259e0302a8 /src/iterator/context.rs | |
| parent | 6f6e030ea7edb9d155ebf21b5d42936c20801b50 (diff) | |
Add tests
Diffstat (limited to 'src/iterator/context.rs')
| -rw-r--r-- | src/iterator/context.rs | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/src/iterator/context.rs b/src/iterator/context.rs deleted file mode 100644 index a5c9123..0000000 --- a/src/iterator/context.rs +++ /dev/null @@ -1,52 +0,0 @@ -use std::marker::PhantomData; - -use crate::{ - iterator::{LockContext, LockingIterator, LockingTuple}, - lockable::Lockable, - ThreadKey, -}; - -impl<'l, L> LockContext<'l, L> { - pub(crate) const fn new(lockable: &'l L) -> Self { - Self { - key: None, - lockable, - } - } -} - -impl<L: Lockable> LockContext<'_, L> { - pub fn tuple(&mut self, key: ThreadKey) -> LockingTuple<'_, L, L> { - unsafe { - self.key = Some(key); - - LockingTuple { - _lockable: PhantomData, - // safety: we just inserted a key - key: self.key.as_ref().unwrap_unchecked(), - tuple: self.lockable, - } - } - } -} - -impl<'l, L> LockContext<'l, L> -where - &'l L: IntoIterator, -{ - #[expect(clippy::iter_not_returning_iterator)] - pub fn iter( - &mut self, - key: ThreadKey, - ) -> LockingIterator<'_, <&'l L as IntoIterator>::IntoIter> { - unsafe { - self.key = Some(key); - - LockingIterator { - // safety: we just inserted a key - key: self.key.as_ref().unwrap_unchecked(), - iterator: self.lockable.into_iter(), - } - } - } -} |
