Skip to main content

maybenot/
error.rs

1use std::fmt;
2
3/// Specific error types Maybenot.
4#[derive(Debug, Clone)]
5pub enum Error {
6    /// Invalid padding limit.
7    PaddingLimit,
8
9    /// Invalid blocking limit.
10    BlockingLimit,
11
12    /// Invalid machine. The string describes why in detail.
13    Machine(String),
14}
15
16impl fmt::Display for Error {
17    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
18        match *self {
19            Error::PaddingLimit => write!(f, "max_padding_frac has to be between [0.0, 1.0]"),
20            Error::BlockingLimit => write!(f, "max_blocking_frac has to be between [0.0, 1.0]"),
21            Error::Machine(ref msg) => write!(f, "invalid machine: {msg}"),
22        }
23    }
24}
25
26impl std::error::Error for Error {}