pub struct ObjSync { /* private fields */ }Expand description
Base class, contains no fields or methods. For Arc-based classes.
Use import and class_unsafe macros
to define a class inherited from ObjSync:
ⓘ
#[class_unsafe(inherits_ObjSync)]
struct Class { }Implementations§
Source§impl ObjSync
impl ObjSync
Sourcepub fn new() -> Arc<dyn IsObjSync>
pub fn new() -> Arc<dyn IsObjSync>
Creates new ObjSync class instance, wrapped in Arc smart pointer.
A rarely used function, since it creates ObjSync itself, not one of its inheritors.
Sourcepub unsafe fn new_raw(vtable: Vtable) -> Self
pub unsafe fn new_raw(vtable: Vtable) -> Self
Creates new ObjSync.
Intended to be called from inheritors constructors to initialize a base type field.
§Safety
Calling this function is safe iff vtable is empty or
generated using the class_unsafe macro on a
direct or indirect ObjSync inheritor.
Trait Implementations§
Source§impl SupportsInterfaces for ObjSync
impl SupportsInterfaces for ObjSync
fn get_interface_metadata( &self, dyn_interface_id: core_any_TypeId, ) -> core_option_Option<BoxedInterfaceMetadata>
impl Send for ObjSync
impl Sync for ObjSync
Auto Trait Implementations§
impl Freeze for ObjSync
impl RefUnwindSafe for ObjSync
impl Unpin for ObjSync
impl UnsafeUnpin for ObjSync
impl UnwindSafe for ObjSync
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.