tasker_lib 0.0.3

A simple crate for time based tasks
Documentation
use chrono::{DateTime, Datelike, Local, Timelike, Weekday};

use crate::structs::CurrentTime;

impl CurrentTime {
    pub fn now() -> Self {
        let full_date_time: DateTime<Local> = Local::now();
        let year: i32 = full_date_time.year().try_into().unwrap();
        let month = full_date_time.month() as i32;
        let day_of_month = full_date_time.day() as i32;
        let week = full_date_time.iso_week().week() as i32;
        let day_of_week = full_date_time.weekday();
        let day_of_week_num: i32 = super::time::CurrentTime::convert_weekday_to_int(day_of_week);
        let hour = full_date_time.hour() as i32;
        let min: i32 = full_date_time.minute() as i32;

        CurrentTime {
            year,
            month,
            day_of_month,
            week,
            day_of_week,
            day_of_week_num,
            hour,
            min,
        }
    }
    #[allow(unused_assignments)]
    fn convert_weekday_to_int(day: Weekday) -> i32 {
        let mut day_int: i32 = 0;
        match &day {
            Weekday::Sun => day_int = 1,
            Weekday::Mon => day_int = 2,
            Weekday::Tue => day_int = 3,
            Weekday::Wed => day_int = 4,
            Weekday::Thu => day_int = 5,
            Weekday::Fri => day_int = 6,
            Weekday::Sat => day_int = 7,
        }
        day_int
    }
}