Send the complete board when joining a room

This commit is contained in:
2023-03-07 11:48:47 +01:00
parent 091aa81e70
commit 60e4713f7f
4 changed files with 100 additions and 20 deletions

View File

@@ -134,6 +134,20 @@ impl Board {
Self::is_aligned(positions, Alignment::Horizontal)
|| Self::is_aligned(positions, Alignment::Vertical)
}
/// Gets a linear iterator over the tiles, row by row.
///
/// # Example:
/// ```
/// use board_shared::board::Board;
///
/// let board = Board::default();
/// let placed_tiles = board.iter().filter(Option::is_some).count();
/// assert_eq!(placed_tiles, 0);
/// ```
pub fn iter(&self) -> impl Iterator<Item = Option<Tile>> + '_ {
self.tiles.iter().copied()
}
}
impl Grid2d for Board {