rut-lib 0.1.2

A Rust Library for validate/generate an Chilean ID (RUT)
Documentation
use crate::Range;
use core::fmt;
use std::error;

#[derive(Debug)]
pub enum Error {
    InvalidDV { must_be: char, instead: char },
    InvalidFormat,
    OutOfRange,
}

impl error::Error for Error {}

impl fmt::Display for Error {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        match self {
            Error::InvalidFormat => write!(f, "The input format is invalid"),
            Error::InvalidDV { must_be, instead } => {
                write!(f, "Invalid DV, must be {}, instead {}.", must_be, instead)
            }
            Error::OutOfRange => write!(
                f,
                "The input number must be between {} to {}",
                Range::MIN.to_string(),
                Range::MAX.to_string()
            ),
        }
    }
}