This effectively reverts
707b43736d838436777f53b230e64054ecb244c5.
I have checked that this field is not used anywhere, including in any
relevant serialised output eg via the command listener. As for game
save compatibility, we can simply ignore it on read (and, even go
backwards since it's Option).
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
last_released: default(),
rotateable: true,
};
- let PieceSpecLoaded { p, loaded_via_alias, occultable } =
+ let PieceSpecLoaded { p, occultable } =
info.load(piece_i as usize, &mut gpc, ig, SpecDepth::zero())?;
if p.nfaces() <= face.into() {
throw!(SpecError::FaceNotFound);
ilks.create(ilkname, OccultIlkData { p_occ })
});
ig.ipieces.as_mut(modperm).insert(piece, IPiece {
- p, occilk, loaded_via_alias,
+ p, occilk,
});
updates.push((piece, PieceUpdateOp::Insert(())));
})(); // <- no ?, infallible (to avoid leaking ilk)
PieceSpecLoaded {
p: Box::new(clock),
- loaded_via_alias: None,
occultable: None,
}
}
}) as Box<dyn PieceTrait>;
PieceSpecLoaded {
p,
- loaded_via_alias: None,
occultable: None,
}
}
#[derive(Debug)]
pub struct PieceSpecLoaded {
pub p: Box<dyn PieceTrait>,
- pub loaded_via_alias: Option<String>,
pub occultable: PieceSpecLoadedOccultable,
}
pub type PieceSpecLoadedOccultable =
#[derive(Debug,Serialize,Deserialize)]
pub struct IPiece {
pub p: IPieceTraitObj,
- #[serde(default)] pub loaded_via_alias: Option<String>,
pub occilk: Option<OccultIlkOwningId>,
}
deref_to_field!{IPiece, IPieceTraitObj, p}
}) as Box<dyn PieceTrait>;
PieceSpecLoaded {
p,
- loaded_via_alias: None,
occultable: None,
}
}
#[throws(SpecError)]
fn load(&self, i: usize, gpc: &mut GPiece, ig: &Instance, depth: SpecDepth)
-> PieceSpecLoaded {
- let mut r = self.resolve(&ig.pcaliases)?
+ let r = self.resolve(&ig.pcaliases)?
.load(i, gpc, ig, self.new_depth(depth)?)?;
- r.loaded_via_alias = Some(self.target.clone());
r
}
#[throws(SpecError)]
fn load(&self) -> PieceSpecLoaded {
PieceSpecLoaded {
p: Box::new(self.load_raw()?.0),
- loaded_via_alias: None,
occultable: None,
}
}
PieceSpecLoaded {
p,
occultable,
- loaded_via_alias: None,
}
}
}