pub struct Matrix {
pub bbmds: Vec<SocketAddrV4>,
pub cells: Vec<Vec<Cell>>,
pub omitted: usize,
pub findings: Vec<Finding>,
}Expand description
The grid and its findings.
Fields§
§bbmds: Vec<SocketAddrV4>The BBMDs, rows and columns alike: those probed in the order the
survey found them, then those only listed, at most GRID_CAP.
cells: Vec<Vec<Cell>>cells[row][column].
omitted: usizeBBMDs left out of the grid past GRID_CAP.
findings: Vec<Finding>Every problem found, in the order the view lists them.
Implementations§
Source§impl Matrix
impl Matrix
Sourcepub fn build(probes: &[(SocketAddrV4, Probe)]) -> Self
pub fn build(probes: &[(SocketAddrV4, Probe)]) -> Self
Build the grid from what a survey read. A BBMD some table lists but the survey has no probe for is added as a row that could not be read.
The work is bounded by what was read, not by what the tables list:
the findings compare the tables read with one another, and the grid
stops at GRID_CAP BBMDs.
Sourcepub fn consistent(&self) -> bool
pub fn consistent(&self) -> bool
True when every table was read, the grid shows every BBMD and nothing disagrees (an empty table is a note, not a disagreement).
Trait Implementations§
impl Eq for Matrix
impl StructuralPartialEq for Matrix
Auto Trait Implementations§
impl Freeze for Matrix
impl RefUnwindSafe for Matrix
impl Send for Matrix
impl Sync for Matrix
impl Unpin for Matrix
impl UnsafeUnpin for Matrix
impl UnwindSafe for Matrix
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more