diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2019-03-21 21:19:50 +0100 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2019-03-21 21:19:50 +0100 |
commit | ecb92a54a8c2dce5f60765f3dece4223b9ff856a (patch) | |
tree | f9ec6a8d2370727f87b57b5d100368c1d3f44919 /vcalendar/recurrence/internal.scm | |
parent | Add filter-sorted-stream. (diff) | |
download | calp-ecb92a54a8c2dce5f60765f3dece4223b9ff856a.tar.gz calp-ecb92a54a8c2dce5f60765f3dece4223b9ff856a.tar.xz |
Fixed recurrence code.
Diffstat (limited to 'vcalendar/recurrence/internal.scm')
-rw-r--r-- | vcalendar/recurrence/internal.scm | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/vcalendar/recurrence/internal.scm b/vcalendar/recurrence/internal.scm new file mode 100644 index 00000000..b62d75c2 --- /dev/null +++ b/vcalendar/recurrence/internal.scm @@ -0,0 +1,28 @@ +(define-module (vcalendar recurrence internal) + #:use-module (util) + #:use-module (srfi srfi-88) + #:export (make-recur-rule + weekdays intervals)) + +;; (list +;; (build-recur-rules "FREQ=HOURLY") +;; (build-recur-rules "FREQ=HOURLY;COUNT=3") +;; (build-recur-rules "FREQ=ERR;COUNT=3") +;; (build-recur-rules "FREQ=HOURLY;COUNT=err") +;; (build-recur-rules "FREQ=HOURLY;COUNT=-1")) + +;; Immutable, since I easily want to be able to generate the recurence set for +;; the same event multiple times. +(define-quick-record recur-rule + (public: freq until count interval bysecond byminute byhour + byday bymonthday byyearday byweekno bymonth bysetpos + wkst)) + +(define (make-recur-rule interval wkst) + ((record-constructor <recur-rule> '(interval wkst)) interval wkst)) + +(define weekdays + '(SU MO TU WE TH FR SA)) + +(define intervals + '(SECONDLY MINUTELY HOURLY DAILY WEEKLY MONTHLY YEARLY)) |