X-Git-Url: https://jxself.org/git/?p=8sync.git;a=blobdiff_plain;f=eightsync%2Fagenda.scm;h=ede753fee409eb4a3f88b6728876fc77b079e74d;hp=2a431351af99b08ca06efed0c0afc03f28375f73;hb=2cf0efca6f8abb4938cec1cc4d00bb96dcc4de87;hpb=bab788cecd849975fc10e39b193dad304b186fe4 diff --git a/eightsync/agenda.scm b/eightsync/agenda.scm index 2a43135..ede753f 100644 --- a/eightsync/agenda.scm +++ b/eightsync/agenda.scm @@ -30,6 +30,8 @@ make-async-prompt-tag + list->q make-q* + make-time-segment time-segment? time-segment-time time-segment-queue @@ -146,6 +148,19 @@ Generally done automatically for the user through (make-agenda)." "Can't get current agenda prompt if there's no current agenda!") (agenda-prompt-tag current-agenda)))) +;; helper for making queues for an agenda +(define (list->q lst) + "Makes a queue composed of LST items" + (let ((q (make-q))) + (for-each + (lambda (x) + (enq! q x)) + lst) + q)) + +(define (make-q* . args) + "Makes a queue and populates it with this invocation's ARGS" + (list->q args)) ;;; Schedule @@ -442,12 +457,6 @@ Will produce (0 . 0) instead of a negative number, if needed." ;;; Asynchronous escape to run things ;;; ================================= -(define (agenda-on-error agenda) - (const #f)) - -(define (agenda-on-fail agenda) - (const #f)) - (define-syntax-rule (%8sync async-request) "Run BODY asynchronously at a prompt, passing args to make-future.