diff options
author | HampusM <hampus@hampusmat.com> | 2022-06-25 16:19:02 +0200 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2022-06-25 16:19:02 +0200 |
commit | 696b97147c2e399be7a95cc5a983294eebc84ff0 (patch) | |
tree | d49b2da4fc656867f9ea007a43935001078d022e /src/game | |
parent | ca3765ccbbcaee691d71e4f995ff639682d7346f (diff) |
refactor: make cell helper find_neighbour_cells return std::vector
Diffstat (limited to 'src/game')
-rw-r--r-- | src/game/cell_helper.hpp | 3 | ||||
-rw-r--r-- | src/game/cell_helper_impl.hpp | 10 |
2 files changed, 7 insertions, 6 deletions
diff --git a/src/game/cell_helper.hpp b/src/game/cell_helper.hpp index f76497a..ee5ab27 100644 --- a/src/game/cell_helper.hpp +++ b/src/game/cell_helper.hpp @@ -7,6 +7,7 @@ #include <list> #include <memory> +#include <vector> template <typename MatrixElement> class CellHelper : public ICellHelper @@ -22,7 +23,7 @@ public: -> std::list<Vector2> override; [[nodiscard]] auto find_neighbours(const Vector2 &cell_pos) const noexcept - -> std::list<Vector2> override; + -> std::vector<Vector2> override; private: const IMatrix<MatrixElement> &_matrix; diff --git a/src/game/cell_helper_impl.hpp b/src/game/cell_helper_impl.hpp index ebb35aa..b7da413 100644 --- a/src/game/cell_helper_impl.hpp +++ b/src/game/cell_helper_impl.hpp @@ -41,7 +41,7 @@ auto CellHelper<MatrixElement>::get_birth_cell_positions( for (const auto &cell_pos : cell_positions) { - const std::list<Vector2> empty_neighbour_positions = + const std::vector<Vector2> empty_neighbour_positions = container_filter(find_neighbours(cell_pos), has_matrix_value(_matrix, ' ')); all_empty_neighbour_positions.insert( @@ -70,9 +70,9 @@ auto CellHelper<MatrixElement>::get_birth_cell_positions( template <typename MatrixElement> auto CellHelper<MatrixElement>::find_neighbours(const Vector2 &cell_pos) const noexcept - -> std::list<Vector2> + -> std::vector<Vector2> { - std::list<Vector2> cell_positions = {}; + std::vector<Vector2> cell_positions = {}; const auto matrix_size = Bounds({.width = _matrix.get_column_cnt(), .height = _matrix.get_row_cnt()}); @@ -91,8 +91,8 @@ auto CellHelper<MatrixElement>::find_neighbours(const Vector2 &cell_pos) const n } template <typename MatrixElement> -auto CellHelper<MatrixElement>::_get_position_neighbours( - const Vector2 &position) noexcept -> std::list<Vector2> +auto CellHelper<MatrixElement>::_get_position_neighbours(const Vector2 &position) noexcept + -> std::list<Vector2> { return { position + Vector2::up(), |