#pragma once #include "card.hpp" #include #include namespace solitaire { class Goal { std::array, 3> goal{}; auto getEmptyId() -> std::optional; public: [[nodiscard]] auto getId(CardType suit) const noexcept -> std::optional; [[nodiscard]] auto get(CardType suit) const noexcept -> std::optional; void set(CardType suit, int value) noexcept; void inc(CardType suit) noexcept; }; } // namespace solitaire