1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use thiserror::Error;

#[derive(Error, Debug)]
pub enum DemesForwardError {
    #[error("{0:?}")]
    DemesError(demes::DemesError),
    #[error("{0:?}")]
    TimeError(String),
    #[error("{0:?}")]
    InvalidDemeSize(demes::DemeSize),
    #[error("{0:?}")]
    InternalError(String),
}

impl From<demes::DemesError> for DemesForwardError {
    fn from(error: demes::DemesError) -> Self {
        Self::DemesError(error)
    }
}