1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use crate::Hook;

use super::IterHook;

/// [`Hook`]s that takes no args.
pub trait AsyncIterableHook: Hook<()> {
    #[inline]
    fn into_iter(self) -> IterHook<Self>
    where
        Self: Sized,
    {
        IterHook::new(self)
    }

    #[inline]
    fn iter_mut(&mut self) -> IterHook<&'_ mut Self> {
        IterHook::new(self)
    }
}

impl<H: Hook<()>> AsyncIterableHook for H {}