rodo_lib 0.1.2

A Library for a Todo Manager
Documentation
use serde::{Deserialize, Serialize};
use serde_with::serde_as;
use uuid::Uuid;

use crate::utils::RodoStruct;

pub enum FIELDS {
    NAME(String),
}

#[serde_as]
#[derive(Serialize, Deserialize, Clone, Debug)]
/// Struct representing an Assingee
///
/// * `name`: Name of the User
pub struct Assingee {
    name: String,
}

impl Assingee {
    pub fn new(name: &str) -> (Uuid, Self) {
        (
            Uuid::new_v4(),
            Self {
                name: String::from(name),
            },
        )
    }
}

impl RodoStruct<FIELDS> for Assingee {
    fn edit(&mut self, fields: FIELDS) {
        match fields {
            FIELDS::NAME(n) => self.name = n,
        }
    }
}