Skip to main content

dope_core/driver/storage/
never.rs

1use std::convert;
2
3use crate::driver::storage;
4
5pub trait Never: storage::Impossible {
6    fn never<T>(self) -> T;
7}
8
9impl Never for convert::Infallible {
10    fn never<T>(self) -> T {
11        match self {}
12    }
13}
14
15impl<A: Never, B: Never> Never for storage::PairError<A, B> {
16    fn never<T>(self) -> T {
17        match self {
18            Self::First(error) => error.never(),
19            Self::Second(error) => error.never(),
20        }
21    }
22}