Struct dync::CopyValueRef
source · [−]Expand description
A generic value reference to a Copy
type.
Implementations
sourceimpl<'a, V> CopyValueRef<'a, V>
impl<'a, V> CopyValueRef<'a, V>
sourceimpl<'a, V: ?Sized> CopyValueRef<'a, V>
impl<'a, V: ?Sized> CopyValueRef<'a, V>
sourcepub fn value_type_id(&self) -> TypeId
pub fn value_type_id(&self) -> TypeId
Get the TypeId
of the referenced value.
sourcepub fn value_alignment(&self) -> usize
pub fn value_alignment(&self) -> usize
Get the alignment of the referenced value.
sourcepub fn is<T: 'static>(&self) -> bool
pub fn is<T: 'static>(&self) -> bool
Returns true
if this referenced value’s type is the same as T
.
sourcepub fn downcast<T: CopyElem>(self) -> Option<&'a T>
pub fn downcast<T: CopyElem>(self) -> Option<&'a T>
Downcast this value reference into a borrowed T
type. Return None
if the downcast fails.
pub fn upcast<U: ?Sized + From<V>>(self) -> CopyValueRef<'a, U> where
V: Clone,
pub fn upcast_ref<U: ?Sized + From<V>>(&self) -> CopyValueRef<'_, U> where
V: Clone,
Trait Implementations
sourceimpl<'a, V: Clone> Clone for CopyValueRef<'a, V> where
V: ?Sized,
impl<'a, V: Clone> Clone for CopyValueRef<'a, V> where
V: ?Sized,
sourcefn clone(&self) -> CopyValueRef<'a, V>
fn clone(&self) -> CopyValueRef<'a, V>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<'a, V: ?Sized + HasDebug> Debug for CopyValueRef<'a, V>
impl<'a, V: ?Sized + HasDebug> Debug for CopyValueRef<'a, V>
sourceimpl<'a, V: ?Sized + 'a> Extend<CopyValueRef<'a, V>> for VecCopy<V>
impl<'a, V: ?Sized + 'a> Extend<CopyValueRef<'a, V>> for VecCopy<V>
sourcefn extend<T: IntoIterator<Item = CopyValueRef<'a, V>>>(&mut self, iter: T)
fn extend<T: IntoIterator<Item = CopyValueRef<'a, V>>>(&mut self, iter: T)
Extends a collection with the contents of an iterator. Read more
sourcefn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)Extends a collection with exactly one element.
sourcefn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)Reserves capacity in a collection for the given number of additional elements. Read more
sourceimpl<'a, V> From<CopyValueMut<'a, V>> for CopyValueRef<'a, V>
impl<'a, V> From<CopyValueMut<'a, V>> for CopyValueRef<'a, V>
sourcefn from(v: CopyValueMut<'a, V>) -> CopyValueRef<'a, V>
fn from(v: CopyValueMut<'a, V>) -> CopyValueRef<'a, V>
Converts to this type from the input type.
sourceimpl<'a, V> From<CopyValueRef<'a, V>> for Meta<VTableRef<'a, V>>
impl<'a, V> From<CopyValueRef<'a, V>> for Meta<VTableRef<'a, V>>
sourcefn from(val: CopyValueRef<'a, V>) -> Meta<VTableRef<'a, V>>
fn from(val: CopyValueRef<'a, V>) -> Meta<VTableRef<'a, V>>
Converts to this type from the input type.
sourceimpl<'a, V: Clone + ?Sized + 'a> FromIterator<CopyValueRef<'a, V>> for VecCopy<V>
impl<'a, V: Clone + ?Sized + 'a> FromIterator<CopyValueRef<'a, V>> for VecCopy<V>
sourcefn from_iter<T: IntoIterator<Item = CopyValueRef<'a, V>>>(iter: T) -> Self
fn from_iter<T: IntoIterator<Item = CopyValueRef<'a, V>>>(iter: T) -> Self
Construct a VecCopy
type from a non-empty iterator.
Panics
This function will panic if the given iterator is empty.
This is because we don’t know the element types until we see one since
the types are erased in both CopyValueRef
and VecCopy
.
sourceimpl<'a, V: ?Sized + HasHash> Hash for CopyValueRef<'a, V>
impl<'a, V: ?Sized + HasHash> Hash for CopyValueRef<'a, V>
sourceimpl<'a, V: ?Sized + HasPartialEq> PartialEq<CopyValueRef<'a, V>> for CopyValueRef<'a, V>
impl<'a, V: ?Sized + HasPartialEq> PartialEq<CopyValueRef<'a, V>> for CopyValueRef<'a, V>
impl<'a, V: ?Sized + HasEq> Eq for CopyValueRef<'a, V>
impl<'a, V: ?Sized + HasSend> Send for CopyValueRef<'a, V>
impl<'a, V: ?Sized + HasSync> Sync for CopyValueRef<'a, V>
Auto Trait Implementations
impl<'a, V: ?Sized> RefUnwindSafe for CopyValueRef<'a, V> where
V: RefUnwindSafe,
impl<'a, V: ?Sized> Unpin for CopyValueRef<'a, V>
impl<'a, V: ?Sized> UnwindSafe for CopyValueRef<'a, V> where
V: UnwindSafe + RefUnwindSafe,
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
sourceimpl<T> CloneBytes for T where
T: 'static + Clone,
impl<T> CloneBytes for T where
T: 'static + Clone,
unsafe fn clone_bytes(src: &[MaybeUninit<u8>]) -> Box<[MaybeUninit<u8>], Global>
unsafe fn clone_from_bytes(dst: &mut [MaybeUninit<u8>], src: &[MaybeUninit<u8>])
unsafe fn clone_into_raw_bytes(
src: &[MaybeUninit<u8>],
dst: &mut [MaybeUninit<u8>]
)
sourceimpl<T> DebugBytes for T where
T: 'static + Debug,
impl<T> DebugBytes for T where
T: 'static + Debug,
sourceimpl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
sourcefn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
sourcefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
sourcefn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
sourcefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
sourceimpl<T> DowncastSync for T where
T: Any + Send + Sync,
impl<T> DowncastSync for T where
T: Any + Send + Sync,
sourceimpl<T> DropBytes for T where
T: 'static,
impl<T> DropBytes for T where
T: 'static,
unsafe fn drop_bytes(bytes: &mut [MaybeUninit<u8>])
sourceimpl<T> HashBytes for T where
T: 'static + Hash,
impl<T> HashBytes for T where
T: 'static + Hash,
unsafe fn hash_bytes(bytes: &[MaybeUninit<u8>], state: &mut dyn Hasher)
sourceimpl<T> PartialEqBytes for T where
T: 'static + PartialEq<T>,
impl<T> PartialEqBytes for T where
T: 'static + PartialEq<T>,
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more