handwritten_json/
error.rs

1use core::result::Result as StdResult;
2
3use thiserror::Error;
4
5#[derive(Error, Debug)]
6pub enum Error {
7    #[error("missing a right brace")]
8    MissingRightBrace,
9    #[error("missing a right bracket")]
10    MissingRightBracket,
11    #[error("missing a double quote")]
12    MissingDoubleQuote,
13
14    #[error("missing a colon")]
15    MissingColon,
16    #[error("missing a key without double quotes")]
17    MissingKey,
18    #[error("missing a value")]
19    MissingValue,
20    #[error("missing a non-string value")]
21    MissingNonString,
22
23    #[error("expect {expected:?} but actual is {actual:?}")]
24    ShouldBe { actual: char, expected: char },
25}
26
27pub type Result<T> = StdResult<T, Error>;