Core library for mines. More...
Classes | |
| class | Arguments |
| Parsed commandline arguments. More... | |
| class | UnknownOption |
| Unknown option argument. More... | |
| class | RepeatedOption |
| Option repeated too many times. More... | |
| class | LeftoverPositionalArgument |
| Too many positional arguments. More... | |
| class | InvalidSaveData |
| Save data that was attempted to be deserialized is invalid. More... | |
| class | TooManyMines |
| The number of mines is more than what is possible given the size of the minefield. More... | |
| class | NoMinefield |
| The board has no associated minefield. More... | |
| class | Minefield |
| Field of cells, each being either a mine or a blank space. More... | |
| class | Board |
| Game board, including the minefield, placed flags and uncovered cells. More... | |
| class | Game |
| Game. More... | |
| class | Interface |
| User interface. More... | |
| class | GameView |
| Text user interface view of a Game. More... | |
| class | Move |
| Move made during a play. More... | |
| class | Play |
| Finished play of the game. More... | |
| class | Console |
| Terminal input/output handle. More... | |
| class | MenuOption< T > |
| class | Menu< T > |
Enumerations | |
| enum class | CellType { Empty , Mine } |
| Type of a cell in a minefield. More... | |
| enum class | CellState { Hidden , Flag , Mark , Uncovered } |
| State of a cell on a game board. More... | |
| enum class | MoveType { Uncover , UncoverNear , Flag , Mark , Unflag } |
| Type of a move. More... | |
Functions | |
| Arguments | parse_arguments (const std::vector< std::string > &arguments) |
| Parse commandline arguments. | |
| std::vector< Play > | deserialize_save (std::span< const std::uint8_t > bytes) |
| Deserialize save data from bytes. | |
| std::vector< std::uint8_t > | serialize_save (const std::vector< Play > &plays) |
| Serialize save data to bytes. | |
| const std::vector< std::tuple< std::int32_t, std::int32_t > > | solve (const Minefield &minefield, const std::vector< std::tuple< std::int32_t, std::int32_t > > &moves) |
| Solve a minefield. | |
Core library for mines.
Files | |
| file | src/mines.cpp |
| file | src/cli.cpp |
| file | src/console.cpp |
| file | src/game.cpp |
| file | src/menu.cpp |
| file | src/model.cpp |
| file | src/play.cpp |
| file | src/save.cpp |
| file | src/view.cpp |