[][src]Trait glib::object::IsClassFor

pub unsafe trait IsClassFor: Sized + 'static {
    type Instance: ObjectType;
    fn get_type(&self) -> Type { ... }
fn upcast_ref<U: IsClassFor>(&self) -> &U
    where
        Self::Instance: IsA<U::Instance>,
        U::Instance: ObjectType
, { ... }
fn upcast_ref_mut<U: IsClassFor>(&mut self) -> &mut U
    where
        Self::Instance: IsA<U::Instance>,
        U::Instance: ObjectType
, { ... }
fn downcast_ref<U: IsClassFor>(&self) -> Option<&U>
    where
        U::Instance: IsA<Self::Instance>,
        Self::Instance: ObjectType
, { ... }
fn downcast_ref_mut<U: IsClassFor>(&mut self) -> Option<&mut U>
    where
        U::Instance: IsA<Self::Instance>,
        Self::Instance: ObjectType
, { ... }
fn from_type(type_: Type) -> Option<ClassRef<Self>> { ... } }
[]

Trait for mapping a class struct type to its corresponding instance type.

Associated Types

type Instance: ObjectType[]

Corresponding Rust instance type for this class.

Provided methods

fn get_type(&self) -> Type[]

Get the type id for this class.

fn upcast_ref<U: IsClassFor>(&self) -> &U where
    Self::Instance: IsA<U::Instance>,
    U::Instance: ObjectType
[]

Casts this class to a reference to a parent type's class.

fn upcast_ref_mut<U: IsClassFor>(&mut self) -> &mut U where
    Self::Instance: IsA<U::Instance>,
    U::Instance: ObjectType
[]

Casts this class to a mutable reference to a parent type's class.

fn downcast_ref<U: IsClassFor>(&self) -> Option<&U> where
    U::Instance: IsA<Self::Instance>,
    Self::Instance: ObjectType
[]

Casts this class to a reference to a child type's class or fails if this class is not implementing the child class.

fn downcast_ref_mut<U: IsClassFor>(&mut self) -> Option<&mut U> where
    U::Instance: IsA<Self::Instance>,
    Self::Instance: ObjectType
[]

Casts this class to a mutable reference to a child type's class or fails if this class is not implementing the child class.

fn from_type(type_: Type) -> Option<ClassRef<Self>>[]

Gets the class struct corresponding to type_.

This will return None if type_ is not a subclass of Self.

Implementors

impl IsClassFor for InitiallyUnownedClass[src]

impl IsClassFor for ObjectClass[src]

impl IsClassFor for BindingClass[src]

impl IsClassFor for AppInfoMonitorClass

impl IsClassFor for AppLaunchContextClass

impl IsClassFor for ApplicationClass

impl IsClassFor for ApplicationCommandLineClass

impl IsClassFor for BufferedInputStreamClass

impl IsClassFor for BufferedOutputStreamClass

impl IsClassFor for BytesIconClass

impl IsClassFor for CancellableClass

impl IsClassFor for CharsetConverterClass

impl IsClassFor for ConverterInputStreamClass

impl IsClassFor for ConverterOutputStreamClass

impl IsClassFor for CredentialsClass

impl IsClassFor for DataInputStreamClass

impl IsClassFor for DataOutputStreamClass

impl IsClassFor for DesktopAppInfoClass

impl IsClassFor for EmblemClass

impl IsClassFor for EmblemedIconClass

impl IsClassFor for FileEnumeratorClass

impl IsClassFor for FileIOStreamClass

impl IsClassFor for FileIconClass

impl IsClassFor for FileInfoClass

impl IsClassFor for FileInputStreamClass

impl IsClassFor for FileMonitorClass

impl IsClassFor for FileOutputStreamClass

impl IsClassFor for FilenameCompleterClass

impl IsClassFor for FilterInputStreamClass

impl IsClassFor for FilterOutputStreamClass

impl IsClassFor for IOStreamClass

impl IsClassFor for InetAddressClass

impl IsClassFor for InetAddressMaskClass

impl IsClassFor for InetSocketAddressClass

impl IsClassFor for InputStreamClass

impl IsClassFor for MemoryInputStreamClass

impl IsClassFor for MemoryOutputStreamClass

impl IsClassFor for MenuClass

impl IsClassFor for MenuAttributeIterClass

impl IsClassFor for MenuItemClass

impl IsClassFor for MenuLinkIterClass

impl IsClassFor for MenuModelClass

impl IsClassFor for MountOperationClass

impl IsClassFor for NetworkAddressClass

impl IsClassFor for NetworkServiceClass

impl IsClassFor for NotificationClass

impl IsClassFor for OutputStreamClass

impl IsClassFor for PermissionClass

impl IsClassFor for PropertyActionClass

impl IsClassFor for ProxyAddressClass

impl IsClassFor for ResolverClass

impl IsClassFor for SettingsClass

impl IsClassFor for SettingsBackendClass

impl IsClassFor for SimpleActionClass

impl IsClassFor for SimpleActionGroupClass

impl IsClassFor for SimplePermissionClass

impl IsClassFor for SocketClass

impl IsClassFor for SocketAddressClass

impl IsClassFor for SocketAddressEnumeratorClass

impl IsClassFor for SocketClientClass

impl IsClassFor for SocketConnectionClass

impl IsClassFor for SocketListenerClass

impl IsClassFor for SocketServiceClass

impl IsClassFor for SubprocessClass

impl IsClassFor for SubprocessLauncherClass

impl IsClassFor for TcpConnectionClass

impl IsClassFor for ThemedIconClass

impl IsClassFor for ThreadedSocketServiceClass

impl IsClassFor for TlsCertificateClass

impl IsClassFor for TlsConnectionClass

impl IsClassFor for TlsDatabaseClass

impl IsClassFor for TlsInteractionClass

impl IsClassFor for TlsPasswordClass

impl IsClassFor for UnixInputStreamClass

impl IsClassFor for UnixOutputStreamClass

impl IsClassFor for UnixSocketAddressClass

impl IsClassFor for VfsClass

impl IsClassFor for VolumeMonitorClass

impl IsClassFor for ZlibCompressorClass

impl IsClassFor for ZlibDecompressorClass