[DEV-7084] TAMER: From<B, &I> for XmloReader

This serves as a constructor for the time being, decoupling from POC.  We
may do something better once we have a better idea of how the various
abstractions around this will evolve.
master
Mike Gerwitz 2020-04-06 13:39:13 -04:00
parent 3ba587c9f9
commit 90ed4e9bd6
2 changed files with 11 additions and 1 deletions

View File

@ -140,7 +140,7 @@ fn load_xmlo<'a, 'i, I: Interner<'i>>(
let file = fs::File::open(&path)?;
let reader = BufReader::new(file);
let mut xmlo = XmloReader::new(reader, interner);
let mut xmlo: XmloReader<'_, _, _> = (reader, interner).into();
let mut elig = None;
let mut name: Option<&'i Symbol<'i>> = None;

View File

@ -684,6 +684,16 @@ impl<'i, B: BufRead, I: Interner<'i>> XmloReader<'i, B, I> {
}
}
impl<'i, B, I> From<(B, &'i I)> for XmloReader<'i, B, I>
where
B: BufRead,
I: Interner<'i>,
{
fn from(args: (B, &'i I)) -> Self {
Self::new(args.0, args.1)
}
}
/// `xmlo` reader events.
///
/// All data are parsed rather than being returned as [`u8`] slices,