#[derive(Clone,Debug,Serialize,Deserialize)]
pub enum RegionC<T:Copy> {
- Rectangle(RectC<T>),
+ Rect(RectC<T>),
}
pub type Region = RegionC<Coord>;
pub fn contains(&self, pos: PosC<T>) -> bool where T: PartialOrd {
use RegionC::*;
match &self {
- Rectangle(a) => a.contains(pos),
+ Rect(a) => a.contains(pos),
}
}
pub fn overlaps(&self, other: &RegionC<T>) -> bool where T: PartialOrd {
use RegionC::*;
match (self, other) {
- (Rectangle(a), Rectangle(b)) => a.overlaps(b)
+ (Rect(a), Rect(b)) => a.overlaps(b)
}
}
pub fn empty() -> Self where T: Copy + num_traits::Zero + num_traits::One {
- RegionC::Rectangle(RectC::empty())
+ RegionC::Rect(RectC::empty())
}
}
#[throws(CoordinateOverflow)]
pub fn region(&self, centre: Pos) -> Region {
- Region::Rectangle(self.rect(centre)?)
+ Region::Rect(self.rect(centre)?)
}
}