diff options
Diffstat (limited to 'guix/progress.scm')
-rw-r--r-- | guix/progress.scm | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/guix/progress.scm b/guix/progress.scm index 1ee7ec319f..0ca5c08782 100644 --- a/guix/progress.scm +++ b/guix/progress.scm @@ -31,6 +31,10 @@ progress-reporter? call-with-progress-reporter + start-progress-reporter! + stop-progress-reporter! + progress-reporter-report! + progress-reporter/silent progress-reporter/file progress-reporter/bar @@ -60,6 +64,24 @@ stopped." (($ <progress-reporter> start report stop) (dynamic-wind start (lambda () (proc report)) stop)))) +(define (start-progress-reporter! reporter) + "Low-level procedure to start REPORTER." + (match reporter + (($ <progress-reporter> start report stop) + (start)))) + +(define (progress-reporter-report! reporter) + "Low-level procedure to lead REPORTER to emit a report." + (match reporter + (($ <progress-reporter> start report stop) + (report)))) + +(define (stop-progress-reporter! reporter) + "Low-level procedure to stop REPORTER." + (match reporter + (($ <progress-reporter> start report stop) + (stop)))) + (define progress-reporter/silent (make-progress-reporter noop noop noop)) |