From e4b41df44abad660f3bbbcf28abcd5838068c14b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Wed, 1 Nov 2023 03:14:05 +0100 Subject: Fix API for each-string. --- module/text/numbers.scm | 14 +++----------- module/text/numbers/sv.scm | 2 +- 2 files changed, 4 insertions(+), 12 deletions(-) (limited to 'module/text') diff --git a/module/text/numbers.scm b/module/text/numbers.scm index debd7f17..ad859a16 100644 --- a/module/text/numbers.scm +++ b/module/text/numbers.scm @@ -27,16 +27,8 @@ rest: extra-kvs) (apply (get language 'number->string-ordinal) n extra-kvs)) -;; TODO change API to allow language, and stop having random extra -;; arguments for implementations. -(define* (each-string count . args) - (define language (resolve-language)) +(define* (each-string count + optional: (language (resolve-language)) + rest: extra-kvs) (apply (get language 'each-string) count args)) - -;; scheme@(guile-user)> (number->string-cardinal 123) -;; $10 = "hundratjugotre" -;; scheme@(guile-user)> (number->string-ordinal 123) -;; $11 = "hundratjugotredje" -;; scheme@(guile-user)> (each-string 10) -;; $12 = "var tionde" diff --git a/module/text/numbers/sv.scm b/module/text/numbers/sv.scm index 317a0fa4..5d6e8952 100644 --- a/module/text/numbers/sv.scm +++ b/module/text/numbers/sv.scm @@ -181,7 +181,7 @@ ;; (each-string 2) ; => "varannan" ;; (each-string 3) ; => "var tredje" ;; (each-string 3 #t) ; => "vart tredje" -(define* (each-string count optional: neutrum) +(define* (each-string count key: neutrum allow-other-keys:) (string-flatten (cons "var" -- cgit v1.2.3