summaryrefslogtreecommitdiff
path: root/src/rrule.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/rrule.rs')
-rw-r--r--src/rrule.rs35
1 files changed, 28 insertions, 7 deletions
diff --git a/src/rrule.rs b/src/rrule.rs
index 4b4e6c5..b7f53ea 100644
--- a/src/rrule.rs
+++ b/src/rrule.rs
@@ -4,24 +4,45 @@ use crate::options::*;
use chrono::prelude::*;
use chrono_tz::{Tz, UTC};
+
+/// A type that produces instances of a given a RFC1241 string representation.
+///
+/// The first element is traditionally the path of the executable, but it can be
+/// set to arbitrary text, and may not even exist. This means this property should
+/// not be relied upon for security purposes.
+///
+/// On Unix systems shell usually expands unquoted arguments with glob patterns
+/// (such as `*` and `?`). On Windows this is not done, and such arguments are
+/// passed as-is.
+///
+/// # Panics
+///
+/// The returned iterator will panic during iteration if any argument to the
+/// process is not valid unicode. If this is not desired,
+/// use the [`args_os`] function instead.
+///
+/// # Examples
+///
+/// ```
+/// use std::env;
+///
+/// // Prints each argument on a separate line
+/// for argument in env::args() {
+/// println!("{}", argument);
+/// }
+/// ```
#[derive(Clone, Debug)]
pub struct RRule {
- cache: bool,
pub options: ParsedOptions,
}
impl RRule {
pub fn new(options: ParsedOptions) -> Self {
Self {
- options,
- cache: true,
+ options
}
}
- pub fn disable_cache(&mut self) {
- self.cache = false;
- }
-
pub fn all(&mut self) -> Vec<DateTime<Tz>> {
let iter_args = IterArgs {
inc: true,