diff --git a/module/Sqrat/sqratTable.h b/module/Sqrat/sqratTable.h index 2c7849a4..6d14d8e1 100644 --- a/module/Sqrat/sqratTable.h +++ b/module/Sqrat/sqratTable.h @@ -67,7 +67,7 @@ public: /// \param obj An Object that should already represent a Squirrel table /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - TableBase(Object&& obj) noexcept : Object(std::forward< Object >(obj)) { + TableBase(Object&& obj) noexcept : Object(std::move(obj)) { } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -85,7 +85,7 @@ public: /// \param obj An Object that should already represent a Squirrel table /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - TableBase(LightObj&& obj) : Object(std::forward< LightObj >(obj)) { + TableBase(LightObj&& obj) : Object(std::move(obj)) { } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -113,7 +113,7 @@ public: /// \param st TableBase to move /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - TableBase(TableBase&& st) noexcept : Object(std::forward< TableBase >(st)) { + TableBase(TableBase&& st) noexcept : Object(std::move(st)) { } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -138,7 +138,7 @@ public: /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// TableBase& operator=(TableBase&& st) noexcept { - Object::operator = (std::forward< TableBase >(st)); + Object::operator = (std::move(st)); return *this; } @@ -567,7 +567,25 @@ public: /// \param obj An Object that should already represent a Squirrel table /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - Table(Object&& obj) noexcept : TableBase(std::forward< Table >(obj)) { + Table(Object&& obj) noexcept : TableBase(std::move(obj)) { + } + + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /// Construct the Table from an LightObj that already exists + /// + /// \param obj An LightObj that should already represent a Squirrel table + /// + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + Table(const LightObj& obj) : TableBase(obj) { + } + + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /// Construct the Table from an LightObj that already exists + /// + /// \param obj An LightObj that should already represent a Squirrel table + /// + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + Table(LightObj&& obj) noexcept : TableBase(std::move(obj)) { } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -609,7 +627,7 @@ public: /// \param st Table to move /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - Table(Table&& st) noexcept : TableBase(std::forward< Table >(st)) { + Table(Table&& st) noexcept : TableBase(std::move(st)) { } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -634,7 +652,7 @@ public: /// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Table& operator=(Table&& st) noexcept { - TableBase::operator = (std::forward< Table >(st)); + TableBase::operator = (std::move(st)); return *this; }