Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
impl<T> AreaC<T> {
pub fn contains(&self, p: PosC<T>) -> bool where T: Ord {
(0..2).all(|i| {
- p.0[i] < self.0[0].0[i] ||
- p.0[i] > self.0[1].0[i]
+ p.0[i] >= self.0[0].0[i] &&
+ p.0[i] <= self.0[1].0[i]
})
}
pub fn overlaps(&self, other: &AreaC<T>) -> bool where T: Ord {
- (0..2).all(|i| !(
- other.0[1].0[i] < self.0[0].0[i] ||
- other.0[0].0[i] > self.0[1].0[i]
+ ! (0..2).any(|i| !(
+ other.0[1].0[i] < self .0[0].0[i] ||
+ self .0[1].0[i] < other.0[0].0[i]
))
}
}