From 73a4bfc3d8e9bb5365e33a11a6ad3b8340d5195b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Sun, 12 Jun 2022 21:09:35 +0200 Subject: Remove custom let*. While it was nice, the most important part was the multi-valued let from srfi-71 (which is implemented in srfi-71)). The minor pattern matching structures could often be replaced with car+cdr, or a propper match. --- module/vcomponent/formats/common/types.scm | 3 ++- module/vcomponent/formats/ical/parse.scm | 7 ++++--- module/vcomponent/formats/vdir/save-delete.scm | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) (limited to 'module/vcomponent/formats') diff --git a/module/vcomponent/formats/common/types.scm b/module/vcomponent/formats/common/types.scm index 9e18f1eb..1a7ec0da 100644 --- a/module/vcomponent/formats/common/types.scm +++ b/module/vcomponent/formats/common/types.scm @@ -4,6 +4,7 @@ :use-module (base64) :use-module (datetime) :use-module (srfi srfi-9 gnu) + :use-module (srfi srfi-71) :use-module (datetime timespec) :use-module (calp translation) ) @@ -62,7 +63,7 @@ ;; PERIOD (define (parse-period props value) - (let* (((left right) (string-split value #\/))) + (let ((left right (apply values (string-split value #\/)))) ;; TODO timezones? VALUE=DATE? (cons (parse-ics-datetime left) ((if (memv (string-ref right 0) diff --git a/module/vcomponent/formats/ical/parse.scm b/module/vcomponent/formats/ical/parse.scm index 4bb2487f..cca306c5 100644 --- a/module/vcomponent/formats/ical/parse.scm +++ b/module/vcomponent/formats/ical/parse.scm @@ -6,6 +6,7 @@ :use-module (datetime) :use-module (srfi srfi-1) :use-module (srfi srfi-26) + :use-module (srfi srfi-71) :use-module (srfi srfi-9 gnu) :use-module (vcomponent base) :use-module (vcomponent geo) @@ -218,7 +219,7 @@ [(memv key '(GEO)) ;; two semicolon sepparated floats (lambda (params value) - (let* (((left right) (string-split value #\;))) + (let ((left right (apply values (string-split value #\;)))) (make-geo ((get-parser 'FLOAT) params left) ((get-parser 'FLOAT) params right))))] @@ -305,7 +306,7 @@ (begin (add-child! (cadr stack) (car stack)) (cdr stack))))] [else - (let* ((key value params (parse-itemline head))) + (let ((key value params (parse-itemline head))) (call-with-values (lambda () (build-vline key value params)) (lambda vlines (for vline in vlines @@ -349,7 +350,7 @@ (get-line linedata) (get-file linedata)) (current-error-port)) - (let* ((key value params (parse-itemline head))) + (let ((key value params (parse-itemline head))) (set! (prop* (car stack) key) (make-vline key value params)) (loop (cdr lst) stack))))))))) diff --git a/module/vcomponent/formats/vdir/save-delete.scm b/module/vcomponent/formats/vdir/save-delete.scm index e020a211..fb84d59c 100644 --- a/module/vcomponent/formats/vdir/save-delete.scm +++ b/module/vcomponent/formats/vdir/save-delete.scm @@ -38,7 +38,7 @@ (list (prop calendar '-X-HNH-SOURCETYPE)) #f)) - (let* ((uid (or (prop event 'UID) (uuid)))) + (let ((uid (or (prop event 'UID) (uuid)))) (set! (prop event 'UID) uid) (unless (prop event 'X-HNH-FILENAME) (set! (prop event '-X-HNH-FILENAME) -- cgit v1.2.3