macro_rules! ItemVTable_static {
($(#[$meta:meta])* $vis:vis static $ident:ident for $ty:ty) => { ... };
}
Expand description
Instantiate a static ItemVTable for a given type and implements vtable::HasStaticVTable<ItemVTable>
for it.
ⓘ
// The preview above is misleading because of rust-lang/rust#45939, so it is reproduced below
macro_rules! ItemVTable_static {
($(#[$meta:meta])* $vis:vis static $ident:ident for $ty:ty) => { ... }
}
Given a type MyType
that implements the trait Item + ItemConsts
,
create a static variable of type ItemVTable,
and implements HasStaticVTable for it.
ⓘ
struct Foo { ... }
impl Item for Foo { ... }
ItemVTable_static!(static FOO_VTABLE for Foo);
// now VBox::new can be called
let vbox = VBox::new(Foo{ ... });
Note: Was generated from the #[vtable]
macro on ItemVTable