#[non_exhaustive]pub struct View {Show 14 fields
pub rows: u32,
pub cols: u32,
pub cells: Vec<ViewCell>,
pub top: Vec<String>,
pub right: Vec<String>,
pub bottom: Vec<String>,
pub left: Vec<String>,
pub marks: Vec<MarkOption>,
pub links: Vec<ViewLink>,
pub link_marks: Vec<MarkOption>,
pub row_separators: Vec<u32>,
pub col_separators: Vec<u32>,
pub finish_note: String,
pub instructions: String,
}Expand description
A rectangular board with labels outside its four sides and links between cells (I4).
Clients send marks back as the cell values in row-major order followed by the link values in order. Further layers, such as cell borders, can be added when a genre needs them.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.rows: u32Number of rows.
cols: u32Number of columns.
cells: Vec<ViewCell>Cells in row-major order.
top: Vec<String>Column labels above the board.
right: Vec<String>Row clues to the right.
bottom: Vec<String>Column clues below the board.
left: Vec<String>Row labels to the left.
marks: Vec<MarkOption>Available marks in cycling order, unmarked first.
links: Vec<ViewLink>Links between cells, in the genre’s order.
link_marks: Vec<MarkOption>Available link marks in cycling order, unmarked first.
row_separators: Vec<u32>Row indices with a strong boundary before them.
col_separators: Vec<u32>Column indices with a strong boundary before them.
finish_note: StringWhat happens to unmarked cells when checking a finished answer.
instructions: StringShort instructions for the displayed rules, one rule per line.