gpieces: &mut GPieces,
goccults: &mut GameOccults,
ipieces: &IPieces,
- to_recompute: &mut ToPermute,
+ to_permute: &mut ToPermute,
piece: PieceId,
// if no change, we return ret_vanilla(log_visible)
log_visible: LD,
= &mut |goccults, occid|
// rust-lang/rust/issues/58525
{
- to_recompute.mark_dirty(occid);
+ to_permute.mark_dirty(occid);
&mut goccults.occults.get_mut(occid).unwrap().notches
};
if let Some((occid, old_notch)) = occulteds.old {
)
-> PieceUpdate
{
- ToPermute::with(|mut to_recompute| (
+ ToPermute::with(|mut to_permute| (
recalculate_occultation_general(
&mut gs.gen.unique_gen(),
- &gs.players, &mut gs.pieces, &mut gs.occults, ipieces, &mut to_recompute,
+ &gs.players, &mut gs.pieces, &mut gs.occults, ipieces, &mut to_permute,
piece, vanilla_log,
|log| (vanilla_wrc, vanilla_op, log).into(),
|old, new, show| vec![ LogEntry { html: Html(format!(
log
}
),
- to_recompute.implement(&mut gs.players,
+ to_permute.implement(&mut gs.players,
&mut gs.pieces, &mut gs.occults,
ipieces),
))?
gpieces: &mut GPieces,
goccults: &mut GameOccults,
ipieces: &IPieces,
- to_recompute: &mut ToPermute,
+ to_permute: &mut ToPermute,
ppiece: PieceId,
updates: &mut Vec<(PieceId, PieceUpdateOps)>,
){
recalculate_occultation_general(
- gen, gplayers, gpieces, goccults, ipieces, to_recompute,
+ gen, gplayers, gpieces, goccults, ipieces, to_permute,
ppiece,
(), |_|(),
|_,_,_|(), |puo_pp, ()|{
impl ToPermute {
pub fn with<R, F: FnOnce(Self) -> (R, Implemented)>(f: F) -> R {
- let to_recompute = ToPermute { outdated: default() };
- let (r, Implemented { }) = f(to_recompute);
+ let to_permute = ToPermute { outdated: default() };
+ let (r, Implemented { }) = f(to_permute);
r
}
pub fn mark_dirty(&mut self, occid: OccId) { self.outdated.insert(occid); }
let occid = goccults.occults.insert(occultation);
let mut updates = vec![];
- ToPermute::with(|mut to_recompute| (
+ ToPermute::with(|mut to_permute| (
(||{
let ogpc = gpieces.get_mut(occulter).ok_or_else(
||internal_logic_error("occulter vanished"))?;
for &ppiece in &recalc {
recalculate_occultation_ofmany(gen,
gplayers, gpieces, goccults, ipieces,
- &mut to_recompute,
+ &mut to_permute,
ppiece, &mut updates)?;
}
goccults.occults.remove(occid).expect("inserted this earlier");
e
}),
- to_recompute.implement(gplayers, gpieces, goccults, ipieces),
+ to_permute.implement(gplayers, gpieces, goccults, ipieces),
))?;
dbgc!(&updates);
let mut updates = vec![];
- ToPermute::with(|mut to_recompute| ({
+ ToPermute::with(|mut to_permute| ({
let pieces: Vec<PieceId> = if let Some(o) = &occultation {
o.notches.iter().collect()
} else {
for &ppiece in pieces.iter() {
recalculate_occultation_ofmany(gen,
gplayers, gpieces, goccults, ipieces,
- &mut to_recompute,
+ &mut to_permute,
ppiece, &mut updates)
.unwrap_or_else(|e| {
aggerr.record(e);
aggerr.record(internal_logic_error("removing occultation of non-piece"));
}
},
- to_recompute.implement(gplayers, gpieces, goccults, ipieces),
+ to_permute.implement(gplayers, gpieces, goccults, ipieces),
));
aggerr.ok()?;