Struct PanicGuard
pub(in ::thread::functions) struct PanicGuard;
Used to ensure that park and park_timeout do not unwind, as that can
cause undefined behavior if not handled correctly (see #102398 for context).
Trait Implementations
impl Drop for PanicGuard
fn drop(&mut self)
Auto Trait Implementations
impl Freeze for PanicGuard
impl RefUnwindSafe for PanicGuard
impl Send for PanicGuard
impl Sync for PanicGuard
impl Unpin for PanicGuard
impl UnsafeUnpin for PanicGuard
impl UnwindSafe for PanicGuard
Blanket Implementations
impl<T> Any for PanicGuard
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for PanicGuard
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for PanicGuard
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> From<T> for PanicGuard
fn from(t: T) -> TReturns the argument unchanged.
impl<T> SizeHint for PanicGuard
where
T: ?Sized,
fn lower_bound(&self) -> usizefn upper_bound(&self) -> Option<usize>
impl<T> SizedTypeProperties for PanicGuard
impl<T, U> Into<U> for PanicGuard
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for PanicGuard
where
U: Into<T>,
type Error = Infallible;fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto<U> for PanicGuard
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>