) -> (R, Authorisation<InstanceName>)
where F: FnMut(
&mut InstanceGuard<'ig>,
- MutexGuard<'ig, InstanceBundles>,
+ BundlesGuard<'ig>,
) -> Result<R, MgmtError>
{
let bundles = gref.lock_bundles();
let (upload, auth) = {
let (ag, gref) = start_modify_game(&game)?;
modify_bundles(
- cs, &ag, &gref, &[TP::UploadBundles],
- &mut |mut ig, mut bundles: MutexGuard<'_, InstanceBundles>| {
+ cs,&ag,&gref, &[TP::UploadBundles],
+ &mut |mut ig, mut bundles: BundlesGuard<'_>| {
bundles.start_upload(&mut ig, kind)
}
)?
MC::ClearBundles { game } => {
let (ag, gref) = start_modify_game(&game)?;
modify_bundles(
- cs, &ag, &gref, &[TP::ClearBundles],
- &mut |mut ig, mut bundles: MutexGuard<'_, InstanceBundles>| {
+ cs,&ag,&gref, &[TP::ClearBundles],
+ &mut |mut ig, mut bundles: BundlesGuard<'_>| {
bundles.clear(&mut ig)
})?;
Fine
pub lastseen: Instant,
}
+pub type BundlesGuard<'b> = MutexGuard<'b, InstanceBundles>;
+
// KINDS OF PERSISTENT STATE
//
// TokenTable TokenTable GameState Instance GameState
})
}
- pub fn lock_bundles<'r>(&'r self) -> Unauthorised<MutexGuard<'r, InstanceBundles>, A> {
+ pub fn lock_bundles<'r>(&'r self) -> Unauthorised<BundlesGuard<'_>, A> {
let must_not_escape = self.by_ref(Authorisation::authorise_any());
Unauthorised::of(must_not_escape.lock_bundles())
}