poot 0.1.1

API wrapper for Photop.
Documentation
use serde::Deserialize;

#[derive(Debug)]
pub enum Status {
    Offline,
    Online,
    InGroup,
}

impl<'de> Deserialize<'de> for Status {
    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
    where
        D: serde::Deserializer<'de>,
    {
        let s = u32::deserialize(deserializer)?;
        match s {
            0 => Ok(Status::Offline),
            1 => Ok(Status::Online),
            2 => Ok(Status::InGroup),
            _ => Err(serde::de::Error::custom("invalid status")),
        }
    }
}