diff options
author | Claudius "keldu" Holeksa <mail@keldu.de> | 2023-12-04 12:20:01 +0100 |
---|---|---|
committer | Claudius "keldu" Holeksa <mail@keldu.de> | 2023-12-04 12:20:01 +0100 |
commit | fb7ed24d557c9f9ac5eaa60dbf22cba509953c1a (patch) | |
tree | fd9da3393972d07bef6aafaaafe7e3c7b27184e0 /modules/core/array.h | |
parent | a14896f9ed209dd3f9597722e5a5697bd7dbf531 (diff) |
core: Moving structure around
Diffstat (limited to 'modules/core/array.h')
-rw-r--r-- | modules/core/array.h | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/modules/core/array.h b/modules/core/array.h deleted file mode 100644 index f82b8d6..0000000 --- a/modules/core/array.h +++ /dev/null @@ -1,96 +0,0 @@ -#pragma once - -#include <vector> - -namespace saw { -/** - * Array container avoiding exceptions - */ -template<typename T> -class array { -private: - std::vector<T> data_; -public: - array() = default; - - SAW_FORBID_COPY(array); - - T& at(size_t i) noexcept { - return data_.at(i); - } - - const T& at(size_t i) noexcept const { - return data_.at(i); - } - - size_t size() noexcept const { - return data_.size(); - } - - T& front() noexcept { - return data_.front(); - } - - const T& front() noexcept const { - return data_.front(); - } - - T& back() noexcept { - return data_.back(); - } - - const T& back() noexcept const { - return data_.back(); - } - - error_or<void> push(T val) noexcept { - try{ - data_.push_back(std::move(val)); - }catch(std::exception& e){ - return make_error<err::out_of_memory>(); - } - - return void_t{}; - } - - error_or<void> pop() noexcept { - try{ - data_.pop_back(); - }catch(std::exception& e){ - return make_error<err::out_of_memory>(); - } - - return void_t{}; - } - - error_or<void> resize(size_t i) noexcept { - try{ - data_.resize(i); - }catch(std::exception& e){ - return make_error<err::out_of_memory>(); - } - - return void_t{}; - } - - error_or<void> reserve(size_t i) noexcept { - try{ - data_.reserve(i); - }catch(std::exception& e){ - return make_error<err::out_of_memory>(); - } - - return void_t{}; - } - - error_or<void> shrink_to_fit() noexcept { - try{ - data_.shrink_to_fit(); - }catch(std::exception& e){ - return make_error<err::out_of_memory>(); - } - - return void_t{}; - } -}; -} |