1use super::*;
2impl<T> Deref for AutoVec<T> {
3 type Target = RawAutoVec<T>;
4 #[inline]
5 fn deref(&self) -> &Self::Target {
6 &self.raw
7 }
8}
9impl<T> DerefMut for AutoVec<T> {
10 #[inline]
11 fn deref_mut(&mut self) -> &mut Self::Target {
12 &mut self.raw
13 }
14}
15impl<T> Deref for AutoChild<T> {
16 type Target = Pin<Box<RawAutoChild<T>>>;
17 #[inline]
18 fn deref(&self) -> &Self::Target {
19 &self.raw
20 }
21}
22impl<T> DerefMut for AutoChild<T> {
23 #[inline]
24 fn deref_mut(&mut self) -> &mut Self::Target {
25 &mut self.raw
26 }
27}
28impl<T> Deref for RawAutoChild<T> {
29 type Target = T;
30 fn deref(&self) -> &Self::Target {
31 &self.child
32 }
33}
34impl<T> DerefMut for RawAutoChild<T> {
35 fn deref_mut(&mut self) -> &mut Self::Target {
36 &mut self.child
37 }
38}