system still crashes

This commit is contained in:
Dynamitos
2025-02-02 09:39:01 +01:00
parent 3357af747a
commit 52cbdd8470
15 changed files with 69 additions and 59 deletions
+6 -7
View File
@@ -111,7 +111,6 @@ template <typename T, typename Allocator = std::pmr::polymorphic_allocator<T>> s
}
}
}
template <typename = std::enable_if_t<std::is_copy_constructible_v<T>>>
constexpr Array(std::initializer_list<T> init, const allocator_type& alloc = allocator_type())
: arraySize(init.size()), allocated(init.size()), allocator(alloc) {
_data = allocateArray(init.size());
@@ -125,7 +124,7 @@ template <typename T, typename Allocator = std::pmr::polymorphic_allocator<T>> s
arraySize = std::ranges::size(rg);
allocated = arraySize;
_data = allocateArray(allocated);
std::ranges::uninitialized_copy(rg.begin(), rg.end(), begin(), end());
std::uninitialized_copy(rg.begin(), rg.end(), begin());
} else {
for (auto it = std::ranges::begin(rg); it != std::ranges::end(rg); it++) {
add(*it);
@@ -296,10 +295,10 @@ template <typename T, typename Allocator = std::pmr::polymorphic_allocator<T>> s
constexpr void remove_if(Pred pred, bool keepOrder = true) {
remove(find(pred), keepOrder);
}
constexpr void remove(const value_type& element, bool keepOrder = true) { remove(find(element), keepOrder); }
constexpr void remove(value_type&& element, bool keepOrder = true) { remove(find(element), keepOrder); }
constexpr void remove(iterator it, bool keepOrder = true) { removeAt(it - begin(), keepOrder); }
constexpr void remove(const_iterator it, bool keepOrder = true) { removeAt(it - cbegin(), keepOrder); }
constexpr void remove(const value_type& element, bool keepOrder = true) { erase(find(element), keepOrder); }
constexpr void remove(value_type&& element, bool keepOrder = true) { erase(find(element), keepOrder); }
constexpr void erase(iterator it, bool keepOrder = true) { removeAt(it - begin(), keepOrder); }
constexpr void erase(const_iterator it, bool keepOrder = true) { removeAt(it - cbegin(), keepOrder); }
constexpr void removeAt(size_type index, bool keepOrder = true) {
if (keepOrder) {
for (size_type i = index; i < arraySize - 1; ++i) {
@@ -558,4 +557,4 @@ template <typename T, size_t N> struct StaticArray {
iterator beginIt;
iterator endIt;
};
} // namespace Seele
} // namespace Seele