#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub enum Either<L, R> {
Left(L),
Right(R),
}
impl<T> Either<T, T> {
pub fn unify(self) -> T {
match self {
Either::Left(left) => left,
Either::Right(right) => right,
}
}
}