pub struct Position {
pub row: usize,
pub col: usize,
}
Expand description
Position is a (row, col) position on a Grid.
For example such table has 4 cells. Which indexes are (0, 0), (0, 1), (1, 0), (1, 1).
┌───┬───┐
│ 0 │ 1 │
├───┼───┤
│ 1 │ 2 │
└───┴───┘
Fields§
§row: usize
Row.
col: usize
Column.
Implementations§
Source§impl Position
impl Position
Sourcepub const fn has_intersection(&self, point: Position) -> bool
pub const fn has_intersection(&self, point: Position) -> bool
A check whether a given cell has intersection with any other cell.
§Example
let p = Position::new(3, 3);
assert!(p.has_intersection(p));
assert!(p.has_intersection(Position::new(1, 1)));
assert!(p.has_intersection(Position::new(3, 10)));
assert!(p.has_intersection(Position::new(10, 3)));
assert!(!p.has_intersection(Position::new(4, 4)));
Sourcepub const fn has_coverage(&self, point: Position) -> bool
pub const fn has_coverage(&self, point: Position) -> bool
A check whether a given cell has intersection with any other cell.
§Example
let p = Position::new(3, 3);
assert!(p.has_coverage(Position::new(1, 1)));
assert!(!p.has_coverage(Position::new(3, 3)));
assert!(!p.has_coverage(Position::new(1, 10)));
assert!(!p.has_coverage(p));
Trait Implementations§
Source§impl AddAssign for Position
impl AddAssign for Position
Source§fn add_assign(&mut self, rhs: Position)
fn add_assign(&mut self, rhs: Position)
Performs the
+=
operation. Read moreSource§impl Ord for Position
impl Ord for Position
Source§impl PartialOrd for Position
impl PartialOrd for Position
Source§impl SubAssign for Position
impl SubAssign for Position
Source§fn sub_assign(&mut self, rhs: Position)
fn sub_assign(&mut self, rhs: Position)
Performs the
-=
operation. Read moreimpl Copy for Position
impl Eq for Position
impl StructuralPartialEq for Position
Auto Trait Implementations§
impl Freeze for Position
impl RefUnwindSafe for Position
impl Send for Position
impl Sync for Position
impl Unpin for Position
impl UnwindSafe for Position
Blanket Implementations§
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