Struct chronos_parser_rs::Environment
source · pub struct Environment { /* private fields */ }Implementations§
source§impl Environment
impl Environment
sourcepub fn new(now: u8, max: u8) -> Self
pub fn new(now: u8, max: u8) -> Self
Examples found in repository?
src/cron_evaluator.rs (line 54)
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
pub fn eval(&self, ast: &Expr) -> bool {
match ast {
Expr::CronExpr {
box mins,
box hours,
box months,
box days,
box day_of_weeks,
} => {
let last_day =
get_days_from_month(self.instant.date_naive().year(), self.instant.date_naive().month()).unwrap();
let fmins = self.visit0(&Environment::new(self.instant.time().minute() as u8, 59), mins);
let fhours = self.visit0(&Environment::new(self.instant.time().hour() as u8, 23), hours);
let fdays = self.visit0(
&Environment::new(self.instant.date_naive().day() as u8, last_day as u8),
days,
);
let fmonths = self.visit0(&Environment::new(self.instant.date_naive().month() as u8, 12), months);
let fday_of_weeks = self.visit0(&Environment::new(self.instant.time().minute() as u8, 7), day_of_weeks);
fmins && fhours && fdays && fmonths && fday_of_weeks
}
_ => false,
}
}