[−][src]Struct vptr::VPtr
Represent a pointer to a virtual table to the trait Trait
that is to be embedded in
a structure T
One should not need to use this structure directly, it is going to be created by the vptr
procedural macro.
Methods
impl<T, Trait: ?Sized> VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
pub fn new() -> Self
[src]
Creates a new VPtr initialized to a pointer of the vtable of the Trait
for the type T
.
Same as VPtr::default()
Trait Implementations
impl<T: Eq, Trait: Eq + ?Sized> Eq for VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
impl<T, Trait: ?Sized> Default for VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
impl<T: Clone, Trait: Clone + ?Sized> Clone for VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
impl<T: PartialOrd, Trait: PartialOrd + ?Sized> PartialOrd<VPtr<T, Trait>> for VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
fn partial_cmp(&self, other: &VPtr<T, Trait>) -> Option<Ordering>
[src]
fn lt(&self, other: &VPtr<T, Trait>) -> bool
[src]
fn le(&self, other: &VPtr<T, Trait>) -> bool
[src]
fn gt(&self, other: &VPtr<T, Trait>) -> bool
[src]
fn ge(&self, other: &VPtr<T, Trait>) -> bool
[src]
impl<T: PartialEq, Trait: PartialEq + ?Sized> PartialEq<VPtr<T, Trait>> for VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
impl<T: Copy, Trait: Copy + ?Sized> Copy for VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
impl<T: Hash, Trait: Hash + ?Sized> Hash for VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl<T, Trait: ?Sized> Debug for VPtr<T, Trait> where
T: HasVPtr<Trait>,
[src]
T: HasVPtr<Trait>,
Auto Trait Implementations
impl<T, Trait> !Send for VPtr<T, Trait>
impl<T, Trait: ?Sized> Unpin for VPtr<T, Trait>
impl<T, Trait> !Sync for VPtr<T, Trait>
impl<T, Trait: ?Sized> UnwindSafe for VPtr<T, Trait> where
T: RefUnwindSafe,
Trait: RefUnwindSafe,
T: RefUnwindSafe,
Trait: RefUnwindSafe,
impl<T, Trait: ?Sized> RefUnwindSafe for VPtr<T, Trait> where
T: RefUnwindSafe,
Trait: RefUnwindSafe,
T: RefUnwindSafe,
Trait: RefUnwindSafe,
Blanket Implementations
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> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for 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>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,