1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2024-11-08 08:47:17 +01:00

Update sqratArray.h

This commit is contained in:
Sandu Liviu Catalin 2021-03-20 11:49:13 +02:00
parent 814a871b5a
commit dd780dbd02

View File

@ -32,6 +32,7 @@
#include <cstring> #include <cstring>
#include "sqratObject.h" #include "sqratObject.h"
#include "sqratLightObj.h"
#include "sqratFunction.h" #include "sqratFunction.h"
#include "sqratGlobalMethods.h" #include "sqratGlobalMethods.h"
@ -67,7 +68,25 @@ public:
/// \param obj An Object that should already represent a Squirrel array /// \param obj An Object that should already represent a Squirrel array
/// ///
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
explicit ArrayBase(Object&& obj) noexcept : Object(std::forward< Object >(obj)) { explicit ArrayBase(Object&& obj) noexcept : Object(std::move(obj)) {
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// Construct the ArrayBase from an LightObj that already exists
///
/// \param obj An LightObj that should already represent a Squirrel array
///
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
explicit ArrayBase(const LightObj& obj) : Object(obj) {
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// Construct the ArrayBase from an LightObj that already exists
///
/// \param obj An LightObj that should already represent a Squirrel array
///
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
explicit ArrayBase(LightObj&& obj) noexcept : Object(std::move(obj)) {
} }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@ -84,7 +103,7 @@ public:
/// \param sa ArrayBase to move /// \param sa ArrayBase to move
/// ///
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
ArrayBase(ArrayBase&& sa) noexcept : Object(std::forward< ArrayBase >(sa)) { ArrayBase(ArrayBase&& sa) noexcept : Object(std::move(sa)) {
} }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@ -116,7 +135,7 @@ public:
/// ///
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
ArrayBase& operator=(ArrayBase&& sa) noexcept { ArrayBase& operator=(ArrayBase&& sa) noexcept {
Object::operator = (std::forward< ArrayBase >(sa)); Object::operator = (std::move(sa));
return *this; return *this;
} }
@ -638,7 +657,25 @@ public:
/// \param obj An Object that should already represent a Squirrel array /// \param obj An Object that should already represent a Squirrel array
/// ///
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Array(Object&& obj) noexcept : ArrayBase(std::forward< Object >(obj)) { Array(Object&& obj) noexcept : ArrayBase(std::move(obj)) {
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// Construct the Array from an LightObj that already exists
///
/// \param obj An LightObj that should already represent a Squirrel array
///
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Array(const LightObj& obj) : ArrayBase(obj) {
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// Construct the Array from an LightObj that already exists
///
/// \param obj An LightObj that should already represent a Squirrel array
///
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Array(LightObj&& obj) noexcept : ArrayBase(std::move(obj)) {
} }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@ -666,7 +703,7 @@ public:
/// \param sa Array to move /// \param sa Array to move
/// ///
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Array(Array&& sa) noexcept : ArrayBase(std::forward< Array >(sa)) { Array(Array&& sa) noexcept : ArrayBase(std::move(sa)) {
} }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@ -691,7 +728,7 @@ public:
/// ///
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Array& operator=(Array&& sa) noexcept { Array& operator=(Array&& sa) noexcept {
ArrayBase::operator = (std::forward< Array >(sa)); ArrayBase::operator = (std::move(sa));
return *this; return *this;
} }