From c93e3204ba3118e464fd901f354b822606cf56f1 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Mon, 10 May 2021 01:06:15 +0100 Subject: [PATCH] bundles: Static type for fn which is monomorphised anyway Signed-off-by: Ian Jackson --- src/bundles.rs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/bundles.rs b/src/bundles.rs index 3e84ffb6..596550cb 100644 --- a/src/bundles.rs +++ b/src/bundles.rs @@ -282,9 +282,6 @@ impl ZipArchive where R: Read + io::Seek { } } -pub trait ReadSeek: Read + io::Seek { } -impl ReadSeek for T where T: Read + io::Seek { } - trait BundleParseError: Sized { fn required(bpath: &str, f:F) -> Result where XE: Into, @@ -360,8 +357,9 @@ impl BundleParseError for LoadError { } #[throws(EH)] -fn parse_bundle(id: Id, file: &mut dyn ReadSeek, bpath: &str) -> Parsed - where EH: BundleParseError +fn parse_bundle(id: Id, file: &mut F, bpath: &str) -> Parsed +where EH: BundleParseError, + F: Read + io::Seek { let file = BufReader::new(file); match id.kind { Kind::Zip => () } @@ -475,7 +473,7 @@ impl InstanceBundles { ib.bundles.resize_with(iu+1, default); } - let parsed = match parse_bundle::(id, &mut file, fpath) { + let parsed = match parse_bundle::(id, &mut file, fpath) { Ok(y) => y, Err(e) => { debug!("bundle file {:?} reload failed {}", &fpath, e); @@ -550,7 +548,7 @@ impl Uploading { file.rewind().context("rewind"). map_err(IE::from)?; let mut file = BufReader::new(file); - let parsed = parse_bundle::(id, &mut file, &tmp)?; + let parsed = parse_bundle::(id, &mut file, &tmp)?; Uploaded { id, parsed } } -- 2.30.2