VTableMetaDrop

Trait VTableMetaDrop 

Source
pub unsafe trait VTableMetaDrop: VTableMeta {
    // Required methods
    unsafe fn drop(ptr: *mut Self::Target);
    fn new_box<X: HasStaticVTable<Self>>(value: X) -> VBox<Self>;
}
Expand description

This trait is implemented by the #[vtable] macro.

It is implemented if the macro has a “drop” function.

§Safety

Only the #[vtable] macro should implement this trait.

Required Methods§

Source

unsafe fn drop(ptr: *mut Self::Target)

§Safety

ptr needs to be pointing to a valid allocated pointer

Source

fn new_box<X: HasStaticVTable<Self>>(value: X) -> VBox<Self>

allocate a new VBox

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§