basex/
resource.rs

1use std::io::Read;
2
3pub trait AsResource<'a> {
4    type Reader: Read;
5
6    fn into_read(self) -> Self::Reader;
7}
8
9impl<'a, T> AsResource<'a> for &'a mut T
10where
11    T: Read,
12{
13    type Reader = &'a mut T;
14
15    fn into_read(self) -> Self::Reader {
16        self
17    }
18}
19
20impl<'a> AsResource<'a> for &'a str {
21    type Reader = &'a [u8];
22
23    fn into_read(self) -> Self::Reader {
24        self.as_bytes()
25    }
26}