fn borrow_limiter<'a>(
    limiter: &'a mut Option<&mut dyn ResourceLimiter>,
) -> Option<&'a mut dyn ResourceLimiter> {
    match limiter {
        Some(limiter) => Some(&mut **limiter),
        None => None,
    }
}
// rustc is quite strict with the lifetimes when dealing with mutable borrows,
// so this is a little helper to get a shorter lifetime on `Option<&mut T>`
rustc is quite strict with the lifetimes when dealing with mutable borrows,
so this is a little helper to get a shorter lifetime on `Option<&mut T>`
rustc is quite strict with the lifetimes when dealing with mutable borrows so this is a little helper to get a shorter lifetime on ` Option<&mut T > `
fn borrow_limiter<'a>(
    limiter: &'a mut Option<&mut dyn ResourceLimiter>,
) -> Option<&'a mut dyn ResourceLimiter> {
    match limiter {
        Some(limiter) => Some(&mut **limiter),
        None => None,
    }
}
fn borrow_limiter < ' a > ( limiter : & ' a mut Option < & mut dyn ResourceLimiter > , ) -> Option < & ' a mut dyn ResourceLimiter > { match limiter { Some ( limiter ) => Some ( & mut * * limiter ) , None => None , } }
rustc is quite strict with the lifetimes when dealing with mutable borrows,
so this is a little helper to get a shorter lifetime on `Option<&mut T>`
rustc is quite strict with the lifetimes when dealing with mutable borrows so this is a little helper to get a shorter lifetime on ` Option<&mut T > `
limiter
&'a mut Option<&mut dyn ResourceLimiter>
limiter
&'a mut Option<&mut dyn ResourceLimiter>