protected InitiallyUnowned ();
}
[CCode (cheader_filename = "glib-object.h", get_value_function = "g_value_get_object", marshaller_type_name = "OBJECT", param_spec_function = "g_param_spec_object", ref_function = "g_object_ref", set_value_function = "g_value_set_object", take_value_function = "g_value_take_object", type_id = "g_object_get_type ()", unref_function = "g_object_unref")]
- public class Object {
+ public class Object : GLib.TypeInstance {
public GLib.TypeInstance g_type_instance;
public GLib.Datalist qdata;
public uint ref_count;
public ParamSpecVariant (string name, string nick, string blurb, GLib.VariantType type, owned GLib.Variant? default_value, GLib.ParamFlags flags);
}
[CCode (cheader_filename = "glib-object.h", has_type_id = false)]
- [Compact]
- public class TypeClass {
+ public abstract class TypeClass {
public GLib.Type g_type;
+ [CCode (has_construct_function = false)]
+ protected TypeClass ();
[CCode (cname = "g_type_class_add_private")]
[Version (deprecated = true, deprecated_since = "2.58", since = "2.4")]
public void add_private (size_t private_size);
[CCode (cname = "g_type_class_unref_uncached")]
public void unref_uncached ();
}
+ [CCode (cheader_filename = "glib-object.h", has_type_id = false)]
+ public abstract class TypeInstance {
+ public GLib.TypeClass g_class;
+ [CCode (has_construct_function = false)]
+ protected TypeInstance ();
+ [CCode (cname = "g_type_instance_get_private")]
+ public void* get_private (GLib.Type private_type);
+ }
[CCode (cheader_filename = "glib-object.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "g_value_array_get_type ()")]
[Compact]
public class ValueArray {
public static unowned GLib.TypeClass check_class_cast (GLib.TypeClass g_class, GLib.Type is_a_type);
public static bool check_class_is_a (GLib.TypeClass g_class, GLib.Type is_a_type);
public static bool check_instance (GLib.TypeInstance instance);
- public static unowned GLib.TypeInstance? check_instance_cast (GLib.TypeInstance instance, GLib.Type iface_type);
+ public static unowned GLib.TypeInstance check_instance_cast (GLib.TypeInstance instance, GLib.Type iface_type);
public static bool check_instance_is_a (GLib.TypeInstance instance, GLib.Type iface_type);
public static bool check_instance_is_fundamentally_a (GLib.TypeInstance instance, GLib.Type fundamental_type);
public static bool check_is_value_type (GLib.Type type);
[Version (since = "2.4")]
public static unowned GLib.TypeClass class_peek_static (GLib.Type type);
public static unowned GLib.TypeClass class_ref (GLib.Type type);
- public static unowned GLib.TypeInstance? create_instance (GLib.Type type);
+ public static unowned GLib.TypeInstance create_instance (GLib.Type type);
[Version (since = "2.4")]
public static unowned GLib.TypeInterface? default_interface_peek (GLib.Type g_type);
[Version (since = "2.4")]
public GLib.TypeValueTable value_table;
}
[CCode (cheader_filename = "glib-object.h", has_type_id = false)]
- public struct TypeInstance {
- public weak GLib.TypeClass g_class;
- [CCode (cname = "g_type_instance_get_private")]
- public void* get_private (GLib.Type private_type);
- }
- [CCode (cheader_filename = "glib-object.h", has_type_id = false)]
public struct TypeInterface {
public GLib.Type g_type;
public GLib.Type g_instance_type;
namespace GLib {
[CCode (cheader_filename = "glib-object.h", get_value_function = "g_value_get_object", marshaller_type_name = "OBJECT", param_spec_function = "g_param_spec_object", ref_function = "g_object_ref", set_value_function = "g_value_set_object", take_value_function = "g_value_take_object", unref_function = "g_object_unref")]
- public class Object {
+ public class Object : TypeInstance {
}
[CCode (get_value_function = "g_value_get_param", param_spec_function = "g_param_spec_param", ref_function = "g_param_spec_ref", set_value_function = "g_value_set_param", take_value_function = "g_value_take_param", type_id = "G_TYPE_PARAM", unref_function = "g_param_spec_unref")]
public weak GLib.EnumClass enum_class;
}
+ [CCode (cheader_filename = "glib-object.h", has_type_id = false)]
+ public abstract class TypeClass {
+ }
+
+ [CCode (cheader_filename = "glib-object.h", has_type_id = false)]
+ public abstract class TypeInstance {
+ }
+
[CCode (cheader_filename = "glib-object.h", cname = "guint")]
public struct Signal : uint {
}