The only call site was in impl_PieceSpec_for_SimplePieceSpec.
Hoisting it there makes little codegen difference but seems more
natural.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
#[typetag::serde(tag="type")]
pub trait SimplePieceSpec: Debug {
fn load_raw(&self) -> Result<(SimpleShape, &SimpleCommon), SpecError>;
- #[throws(SpecError)]
- fn load(&self) -> PieceSpecLoaded {
- PieceSpecLoaded {
- p: Box::new(self.load_raw()?.0),
- occultable: None,
- }
- }
}
#[typetag::serde]
#[throws(SpecError)]
fn load(&self, _: usize, _: &mut GPiece, _ig: &Instance, _:SpecDepth)
-> PieceSpecLoaded {
- SimplePieceSpec::load(self)?
+ PieceSpecLoaded {
+ p: Box::new(self.load_raw()?.0),
+ occultable: None,
+ }
}
}
} }