hang-man/src/GuessCorrector.hpp

24 lines
472 B
C++
Raw Normal View History

2024-08-02 16:47:56 +02:00
#pragma once
#include <optional>
#include <memory>
class GuessCorrector {
const char *m_word;
size_t m_word_length;
std::unique_ptr<std::optional<char>[]> m_parts_guessed;
public:
GuessCorrector(const char *word);
GuessCorrector() = default;
[[nodiscard]] bool has_char(char to_check) const;
void add(char to_add);
[[nodiscard]] bool is_filled_out() const;
[[nodiscard]] std::weak_ptr<std::optional<char>[]> guessed() const;
};