#[derive(Clone, Copy, Debug, Default, PartialEq, Eq, Hash)]
#[cfg_attr(
feature = "serde",
derive(serde::Deserialize, serde::Serialize),
serde(default)
)]
pub struct SurfaceIndex(pub usize);
impl From<usize> for SurfaceIndex {
#[inline(always)]
fn from(index: usize) -> Self {
SurfaceIndex(index)
}
}
impl SurfaceIndex {
#[inline(always)]
pub const fn main() -> Self {
Self(0)
}
#[inline(always)]
pub const fn is_main(self) -> bool {
self.0 == Self::main().0
}
}