summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorMurray Cumming <murrayc@murrayc.com>2015-08-21 21:12:23 +0200
committerMurray Cumming <murrayc@murrayc.com>2015-08-22 12:10:16 +0200
commit01df3aebb0762e27427a51675a10656a16fd6ab6 (patch)
tree1c827b41e6fc535712a4f3ca2e71fb00c631c09e /tools
parent3261c1dea29cad27e4303b7a4d212b5351762f39 (diff)
downloadglibmm-01df3aebb0762e27427a51675a10656a16fd6ab6.tar.gz
gmmproc: _CLASS_GOBJECT(): Generate move operations.
Generate move constructor and move assignment operator. These might never be used, but it seems generally wise to have them.
Diffstat (limited to 'tools')
-rw-r--r--tools/m4/class_gobject.m414
1 files changed, 14 insertions, 0 deletions
diff --git a/tools/m4/class_gobject.m4 b/tools/m4/class_gobject.m4
index edd0c5b5..b769c294 100644
--- a/tools/m4/class_gobject.m4
+++ b/tools/m4/class_gobject.m4
@@ -211,6 +211,16 @@ __CPPNAME__::__CPPNAME__`'(__CNAME__* castitem)
')dnl
+__CPPNAME__::__CPPNAME__`'(__CPPNAME__&& src)
+: __CPPPARENT__`'(std::move(src))
+{}
+
+__CPPNAME__& __CPPNAME__::operator=(__CPPNAME__&& src)
+{
+ __CPPPARENT__::operator=`'(std::move(src));
+ return *this;
+}
+
ifdef(`__BOOL_CUSTOM_DTOR__',`dnl
',`dnl
__CPPNAME__::~__CPPNAME__`'()
@@ -259,6 +269,10 @@ protected:
#endif /* DOXYGEN_SHOULD_SKIP_THIS */
public:
+
+ __CPPNAME__`'(__CPPNAME__&& src);
+ __CPPNAME__& operator=(__CPPNAME__&& src);
+
_IMPORT(SECTION_DTOR_DOCUMENTATION)
virtual ~__CPPNAME__`'();