From: Ian Jackson Date: Fri, 13 May 2022 22:45:21 +0000 (+0100) Subject: shapelib catalogue: Make ItemSpecLoaded and find_load private X-Git-Tag: otter-1.1.0~212 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=6f8b07458f083854b306c4612dafb83a1b7d6aab;p=otter.git shapelib catalogue: Make ItemSpecLoaded and find_load private We're going to make this more complicated. Let's make it private and have otterlib use the trait methods. Signed-off-by: Ian Jackson --- diff --git a/src/bin/otterlib.rs b/src/bin/otterlib.rs index f42f4e64..5258be87 100644 --- a/src/bin/otterlib.rs +++ b/src/bin/otterlib.rs @@ -96,8 +96,14 @@ fn preview(items: Vec) { let spec = ItemSpec::from(&it); let sortkey = it.sortkey; (||{ - let (p, _occultable) = spec.clone() - .find_load(&ig_dummy, SpecDepth::zero()) + let mut gpc = GPiece::dummy(); + let SpecLoaded { p, .. } = spec.clone() + .load(PieceLoadArgs { + ig: &ig_dummy, + gpc: &mut gpc, + depth: SpecDepth::zero(), + i: 0, + }) .context("load")?; // todo show occulted version too let mut uos = vec![]; diff --git a/src/shapelib.rs b/src/shapelib.rs index 349e7cbf..44f12655 100644 --- a/src/shapelib.rs +++ b/src/shapelib.rs @@ -399,7 +399,7 @@ impl InertPieceTrait for Item { //---------- ItemSpec, MultiSpec ---------- -pub type ItemSpecLoaded = (Box, PieceSpecLoadedOccultable); +type ItemSpecLoaded = (Box, PieceSpecLoadedOccultable); impl From for SpecLoaded { fn from((p, occultable): ItemSpecLoaded) -> SpecLoaded { @@ -413,7 +413,7 @@ impl From for SpecLoaded { impl ItemSpec { #[throws(SpecError)] - pub fn find_load(&self, ig: &Instance, depth: SpecDepth) -> ItemSpecLoaded { + fn find_load(&self, ig: &Instance, depth: SpecDepth) -> ItemSpecLoaded { let regs = ig.all_shapelibs(); let libs = regs.lib_name_lookup(&self.lib)?; let (lib, (item, idata)) = libs.iter().rev().find_map(