[−][src]Struct dropcheck::DropToken
A drop-checking token.
Created by DropCheck
.
Trait Implementations
impl Clone for DropToken
[src]
Cloning a DropToken
creates a fresh state, that's still tied to the DropCheck
set that
created the token. This means that leaking the cloned token is detected:
let dropcheck = DropCheck::new(); let token = dropcheck.token(); let cloned_token = token.clone(); std::mem::forget(cloned_token); // panics when dropcheck is dropped
Since the new token is part of the set it came from, it affects none_dropped
/all_dropped
:
let dropcheck = DropCheck::new(); let token = dropcheck.token(); let cloned_token = token.clone(); assert!(dropcheck.none_dropped()); drop(cloned_token); assert!(!dropcheck.none_dropped());
fn clone(&self) -> Self
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for DropToken
[src]
impl Drop for DropToken
[src]
Auto Trait Implementations
impl RefUnwindSafe for DropToken
impl Send for DropToken
impl Sync for DropToken
impl Unpin for DropToken
impl UnwindSafe for DropToken
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,