luno-client 0.1.0

Luno Api client(wrapper) written in rust
Documentation
use serde_json::Error;
use url::ParseError;

#[derive(Debug)]
pub struct LunoErr {
    pub kind: ErrKind,
    pub message: String,
}

#[allow(clippy::enum_variant_names)]
#[derive(Debug)]
pub enum ErrKind {
    ErrInvalidArguments,
    ErrTravelRule,
    ErrInternal,
}
impl From<Error> for LunoErr {
    fn from(err: Error) -> Self {
        Self {
            kind: ErrKind::ErrInternal,
            message: err.to_string(),
        }
    }
}

impl From<String> for LunoErr {
    fn from(err: String) -> Self {
        Self {
            kind: ErrKind::ErrInvalidArguments,
            message: err,
        }
    }
}

impl From<ParseError> for LunoErr {
    fn from(err: ParseError) -> Self {
        Self {
            kind: ErrKind::ErrInternal,
            message: err.to_string(),
        }
    }
}

#[allow(unused)]
impl LunoErr {
    fn new(kind: ErrKind, message: String) -> Self {
        Self { kind, message }
    }

    fn display_err(&self) -> String {
        format!("Kind: {:?} \n Message: {}", self.kind, self.message)
    }
}