use core::ops::Add;
use crate::{Stable, Unstable};
#[sealed::sealed]
pub trait LayoutKind {}
pub enum Robust {}
pub enum NonRobust {}
#[sealed::sealed]
impl LayoutKind for Stable {}
#[sealed::sealed]
impl LayoutKind for Unstable {}
impl<K> Add<K> for NonRobust {
type Output = Self;
fn add(self, _: K) -> Self::Output {
unreachable!()
}
}
impl<K> Add<K> for Robust {
type Output = K;
fn add(self, _: K) -> Self::Output {
unreachable!()
}
}
impl<K> Add<K> for Unstable {
type Output = Self;
fn add(self, _: K) -> Self::Output {
unreachable!()
}
}
impl Add<Unstable> for Stable {
type Output = Unstable;
fn add(self, _: Unstable) -> Self::Output {
unreachable!()
}
}
impl Add for Stable {
type Output = Self;
fn add(self, _: Self) -> Self::Output {
unreachable!()
}
}