pub struct CronSchedule { /* private fields */ }Expand description
A validated cron expression.
Internally wraps a croner::Cron, guaranteeing that the expression
has been parsed and validated at construction time.
as_str returns the original expression
as provided by the user, not the normalized form.
§Examples
use ironflow_engine::schedule::CronSchedule;
let sched = CronSchedule::new("0 0 * * * *").unwrap();
assert_eq!(sched.as_str(), "0 0 * * * *");
let bad = CronSchedule::new("not a cron");
assert!(bad.is_err());Implementations§
Source§impl CronSchedule
impl CronSchedule
Sourcepub fn new(expression: &str) -> Result<Self, String>
pub fn new(expression: &str) -> Result<Self, String>
Parse and validate a cron expression.
Accepts 5-field (standard) or 6-field (with seconds) expressions,
as supported by croner.
§Errors
Returns an error string if the expression is syntactically invalid.
§Examples
use ironflow_engine::schedule::CronSchedule;
assert!(CronSchedule::new("0 */5 * * * *").is_ok());
assert!(CronSchedule::new("garbage").is_err());Trait Implementations§
Source§impl Clone for CronSchedule
impl Clone for CronSchedule
Source§fn clone(&self) -> CronSchedule
fn clone(&self) -> CronSchedule
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CronSchedule
impl Debug for CronSchedule
Source§impl<'de> Deserialize<'de> for CronSchedule
impl<'de> Deserialize<'de> for CronSchedule
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for CronSchedule
impl Display for CronSchedule
Source§impl PartialEq for CronSchedule
impl PartialEq for CronSchedule
Source§impl Serialize for CronSchedule
impl Serialize for CronSchedule
impl Eq for CronSchedule
Auto Trait Implementations§
impl Freeze for CronSchedule
impl RefUnwindSafe for CronSchedule
impl Send for CronSchedule
impl Sync for CronSchedule
impl Unpin for CronSchedule
impl UnsafeUnpin for CronSchedule
impl UnwindSafe for CronSchedule
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.