summaryrefslogtreecommitdiff
path: root/glib/glibmm/class.cc
diff options
context:
space:
mode:
authorKjell Ahlstedt <kjell.ahlstedt@bredband.net>2016-11-24 19:13:55 +0100
committerKjell Ahlstedt <kjell.ahlstedt@bredband.net>2016-11-24 19:13:55 +0100
commit3911557cb62ed055f16ece0a7a58cbbabe35ef6b (patch)
treed3028e4d646bc184c35372e840996b5a2222efb0 /glib/glibmm/class.cc
parent722f9c1cf7998baf33d4f9d7110f6ad6c4f1858c (diff)
downloadglibmm-3911557cb62ed055f16ece0a7a58cbbabe35ef6b.tar.gz
Glib::ObjectBase: Replace extra_object_base_data map by instance data
* glib/glibmm/class.[cc|h]: Remove the clone_custom_type() overload without an interface_class_vector_type argument. * glib/glibmm/interface.cc: * glib/glibmm/object.cc: * glib/glibmm/objectbase.[cc|h]: Replace the std::map containing ExtraObjectBaseData with instance data in ObjectBase. The map was just a way of avoiding an ABI break, but now we can break ABI. The new data is a std::unique_ptr<Class::interface_class_vector_type> rather than a Class::interface_class_vector_type. It's a vector which is used only during a short period during object construction, and only for custom objects. With a pointer to the vector, it need not be created for the majority of objects, and if it is created, it can be deleted when it's no longer needed. * gio/src/application.ccg: * glib/glibmm/main.cc: Add #include <mutex> that should have been there before, but now became necessary, when it was removed from objectbase.h.
Diffstat (limited to 'glib/glibmm/class.cc')
-rw-r--r--glib/glibmm/class.cc6
1 files changed, 0 insertions, 6 deletions
diff --git a/glib/glibmm/class.cc b/glib/glibmm/class.cc
index 75b7d131..2f76aba8 100644
--- a/glib/glibmm/class.cc
+++ b/glib/glibmm/class.cc
@@ -85,12 +85,6 @@ Class::register_derived_type(GType base_type, GTypeModule* module)
}
GType
-Class::clone_custom_type(const char* custom_type_name) const
-{
- return clone_custom_type(custom_type_name, interface_class_vector_type());
-}
-
-GType
Class::clone_custom_type(
const char* custom_type_name, const interface_class_vector_type& interface_classes) const
{