[][src]Trait gio::subclass::prelude::ClassStruct

pub unsafe trait ClassStruct: 'static {
    type Type: ObjectSubclass;
    fn override_vfuncs(&mut self)
    where
        <<Self::Type as ObjectSubclass>::ParentType as ObjectType>::RustClassType: IsSubclassable<Self::Type>
, { ... } }

Trait implemented by structs that implement a GObject C class struct.

The struct must be #[repr(C)] and have the parent type's class struct as the first field.

See simple::ClassStruct for a basic implementation of this that can be used most of the time and should only not be used if additional fields are required in the class struct, e.g. for declaring new virtual methods.

Associated Types

type Type: ObjectSubclass

Corresponding object subclass type for this class struct.

Loading content...

Provided methods

fn override_vfuncs(&mut self) where
    <<Self::Type as ObjectSubclass>::ParentType as ObjectType>::RustClassType: IsSubclassable<Self::Type>, 

Override the vfuncs of all parent types.

This is automatically called during type initialization.

Loading content...

Implementations on Foreign Types

impl<T> ClassStruct for ClassStruct<T> where
    T: ObjectSubclass
[src]

type Type = T

Loading content...

Implementors

Loading content...