json 0.3.3

JSON implementation in Rust
Documentation
use parser::Token;

#[derive(Debug)]
pub enum JsonError {
    UnexpectedToken(String),
    UnexpectedEndOfJson,
    ArrayIndexOutOfBounds,
    WrongType(String),
    UndefinedField(String),
}

impl JsonError {
    pub fn unexpected_token(token: Token) -> Self {
        JsonError::UnexpectedToken(format!("{:?}", token))
    }

    pub fn wrong_type(expected: &str) -> Self {
        JsonError::WrongType(expected.into())
    }

    pub fn undefined(field: &str) -> Self {
        JsonError::UndefinedField(field.into())
    }
}