Struct bitflags::__core::ptr::Shared
[−]
[src]
pub struct Shared<T> where T: ?Sized {
// some fields omitted
}
Unstable (
shared
): needs an RFC to flesh out design
A wrapper around a raw non-null *mut T
that indicates that the possessor
of this wrapper has shared ownership of the referent. Useful for
building abstractions like Rc<T>
or Arc<T>
, which internally
use raw pointers to manage the memory that they own.
Methods
impl<T> Shared<T> where T: ?Sized
Trait Implementations
impl<T> !Send for Shared<T> where T: ?Sized
Shared
pointers are not Send
because the data they reference may be aliased.
impl<T> !Sync for Shared<T> where T: ?Sized
Shared
pointers are not Sync
because the data they reference may be aliased.
impl<T> Clone for Shared<T> where T: ?Sized
fn clone(&self) -> Shared<T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<T> Copy for Shared<T> where T: ?Sized
impl<T, U> CoerceUnsized<Shared<U>> for Shared<T> where T: Unsize<U> + ?Sized, U: ?Sized
impl<T> Deref for Shared<T> where T: ?Sized
type Target = *mut T
The resulting type after dereferencing
fn deref(&self) -> &*mut T
The method called to dereference a value