From fc6e5da915d20861b91daf9f4b29f9b95b9ba4df Mon Sep 17 00:00:00 2001 From: Alex Shinn Date: Thu, 15 Apr 2021 17:02:44 +0900 Subject: [PATCH] make-u1vector takes an optional fill --- lib/srfi/160/base.sld | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/srfi/160/base.sld b/lib/srfi/160/base.sld index bce22d49..fb75093e 100644 --- a/lib/srfi/160/base.sld +++ b/lib/srfi/160/base.sld @@ -119,7 +119,13 @@ (define (f64vector . ls) (list->f64vector ls)) (define (c64vector . ls) (list->c64vector ls)) (define (c128vector . ls) (list->c128vector ls)) - (define (make-u1vector len) (make-uvector SEXP_U1 len)) + (define (make-u1vector len . o) + (let ((res (make-uvector SEXP_U1 len))) + (if (and (pair? o) (not (zero? (car o)))) + (do ((i 0 (+ i 1))) + ((>= i len)) + (u1vector-set! res i 1))) + res)) (define make-u8vector make-bytevector) (define (make-s8vector len . o) (let ((res (make-uvector SEXP_S8 len)))