aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@hornquist.se>2019-04-21 20:04:08 +0200
committerHugo Hörnquist <hugo@hornquist.se>2019-04-21 20:04:08 +0200
commitd3c8ab9a9bf8b511bce22096fc22d9a232020277 (patch)
tree7c37c504bcf26683a80881d8b31da0c932d8ff7d
parentRename (vcalendar {recur => recurrence}). (diff)
downloadcalp-d3c8ab9a9bf8b511bce22096fc22d9a232020277.tar.gz
calp-d3c8ab9a9bf8b511bce22096fc22d9a232020277.tar.xz
Move where streams are merged.
-rwxr-xr-xmodule/main.scm30
1 files changed, 12 insertions, 18 deletions
diff --git a/module/main.scm b/module/main.scm
index 49d9994b..aef7fa8b 100755
--- a/module/main.scm
+++ b/module/main.scm
@@ -50,23 +50,15 @@
(define (summary-filter _ str) str)
-(define (main-loop regular-events repeating-events)
+(define (main-loop event-stream)
(define time (now))
(define cur-event 0)
(while #t
(let ((events
- ;; TODO change back to filter-sorted once it's fixed
- (merge (filter ;-sorted
- (cut event-in? <> time)
- regular-events)
-
- (stream->list
- (filter-sorted-stream
- (cut event-in? <> time)
- repeating-events))
-
- ev-time<?)))
-
+ (stream->list
+ (filter-sorted-stream
+ (cut event-in? <> time)
+ event-stream))))
(cls)
(display-calendar-header! (time-utc->date time))
@@ -153,11 +145,13 @@
(set! repeating (sort*! repeating time<? (extract 'DTSTART))
regular (sort*! regular time<? (extract 'DTSTART)))
- (let ((repeating (interleave-streams ev-time<?
- (map generate-recurrence-set repeating))))
- (proc regular repeating))))
+ (proc
+ (interleave-streams
+ ev-time<?
+ (cons (list->stream regular)
+ (map generate-recurrence-set repeating))))))
(define (main args)
- (init (lambda (regular repeating)
+ (init (lambda (events)
(with-vulgar
- (lambda () (main-loop regular repeating))))))
+ (lambda () (main-loop events))))))