#[repr(C)]pub struct SharedPtr<T: Shared>(_);
Expand description
Wrapper around a C++ shared_ptr. A shared_ptr may be be null.
Implementations
sourceimpl<T: Shared> SharedPtr<T>
impl<T: Shared> SharedPtr<T>
sourcepub fn assert_use_count_eq(&self, expected: usize)
pub fn assert_use_count_eq(&self, expected: usize)
Asserts that the number of references to the shared inner value is equal
to the expected
count.
This function relies on the C++ method std::shared_ptr::use_count()
,
which usually performs a relaxed load. This function will repeatedly call
use_count()
until it returns the expected value, for up to one second.
Therefore it should probably not be used in performance critical code.
pub fn is_null(&self) -> bool
pub fn take(&mut self) -> Option<SharedRef<T>>
pub fn unwrap(self) -> SharedRef<T>
Trait Implementations
Auto Trait Implementations
impl<T> RefUnwindSafe for SharedPtr<T> where
T: RefUnwindSafe,
impl<T> Send for SharedPtr<T> where
T: Sync,
impl<T> Sync for SharedPtr<T> where
T: Sync,
impl<T> Unpin for SharedPtr<T> where
T: Unpin,
impl<T> UnwindSafe for SharedPtr<T> where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more