A pure MoonBit parser and next-trigger calculator for five-field Cron expressions.
moon add lijunjie860/moonbit_crongit clone https://github.com/lijunjie860/MoonBit-Cron.git
cd MoonBit-Cron
moon check --target all --warn-list +73 --deny-warn
moon test --target all --warn-list +73 --deny-warn
moon run cmd/mainimport {
"lijunjie860/moonbit_cron" @cron,
}
fn next_workday_trigger() -> Result[@cron.Time, String] {
let expression = @cron.parse("*/15 9-17 * * 1-5")
match expression {
Err(message) => Err(message)
Ok(expr) => expr.next(@cron.Time::{
year: 2026,
month: 10,
day: 15,
hour: 9,
minute: 7,
weekday: 4,
})
}
}moon run cmd/mainExpression: */15 9-17 * * 1-5
Matches now: false
Next trigger: 2026-10-15 9:15 (weekday 4)moon fmt --check
moon check --target all --warn-list +73 --deny-warn
moon build --target all --warn-list +73 --deny-warn
moon test --target all --warn-list +73 --deny-warn
moon infoA pure MoonBit parser and next-trigger calculator for five-field Cron expressions.