mirror of
https://github.com/thunderbrewhq/squall.git
synced 2026-02-03 16:39:08 +00:00
feat(array): add TSFixedArray copy ctor
This commit is contained in:
parent
8c2439277c
commit
32a1b30ae8
2 changed files with 22 additions and 0 deletions
|
|
@ -9,6 +9,7 @@ template <class T>
|
||||||
class TSFixedArray : public TSBaseArray<T> {
|
class TSFixedArray : public TSBaseArray<T> {
|
||||||
public:
|
public:
|
||||||
TSFixedArray();
|
TSFixedArray();
|
||||||
|
TSFixedArray(const TSFixedArray<T>& source);
|
||||||
~TSFixedArray();
|
~TSFixedArray();
|
||||||
TSFixedArray<T>& operator=(const TSFixedArray<T>& source);
|
TSFixedArray<T>& operator=(const TSFixedArray<T>& source);
|
||||||
void Clear();
|
void Clear();
|
||||||
|
|
@ -23,6 +24,12 @@ TSFixedArray<T>::TSFixedArray() {
|
||||||
this->Constructor();
|
this->Constructor();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <class T>
|
||||||
|
TSFixedArray<T>::TSFixedArray(const TSFixedArray<T>& source) {
|
||||||
|
this->Constructor();
|
||||||
|
this->Set(source.Count(), source.Ptr());
|
||||||
|
}
|
||||||
|
|
||||||
template <class T>
|
template <class T>
|
||||||
TSFixedArray<T>::~TSFixedArray() {
|
TSFixedArray<T>::~TSFixedArray() {
|
||||||
for (uint32_t i = 0; i < this->Count(); i++) {
|
for (uint32_t i = 0; i < this->Count(); i++) {
|
||||||
|
|
|
||||||
|
|
@ -33,6 +33,21 @@ TEST_CASE("TSFixedArray", "[array]") {
|
||||||
REQUIRE(array.Count() == 0);
|
REQUIRE(array.Count() == 0);
|
||||||
REQUIRE(array.Ptr() == nullptr);
|
REQUIRE(array.Ptr() == nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SECTION("constructs copy correctly") {
|
||||||
|
TSFixedArray<uint32_t> array;
|
||||||
|
array.SetCount(3);
|
||||||
|
array[0] = 1;
|
||||||
|
array[1] = 2;
|
||||||
|
array[2] = 3;
|
||||||
|
|
||||||
|
TSFixedArray<uint32_t> arrayCopy(array);
|
||||||
|
|
||||||
|
CHECK(arrayCopy.Count() == 3);
|
||||||
|
CHECK(arrayCopy[0] == 1);
|
||||||
|
CHECK(arrayCopy[1] == 2);
|
||||||
|
CHECK(arrayCopy[2] == 3);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_CASE("TSFixedArray::Clear", "[array]") {
|
TEST_CASE("TSFixedArray::Clear", "[array]") {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue