Skip to main content

drcp_format/reader/
error.rs

1use std::io;
2use std::num::NonZero;
3
4#[cfg(doc)]
5use super::ProofReader;
6
7/// The errors that can be encountered by the [`ProofReader`].
8#[derive(Debug, thiserror::Error)]
9pub enum Error {
10    #[error("failed to read from source: {0}")]
11    IoError(#[from] io::Error),
12
13    #[error("failed to parse proof line {line_nr} {span:?}: {reason}")]
14    ParseError {
15        line_nr: usize,
16        reason: String,
17        span: (usize, usize),
18    },
19
20    #[error("undefined atomic {code} on line {line}")]
21    UndefinedAtomic { line: usize, code: NonZero<i32> },
22}