mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-19 05:39:18 +02:00
Defining list->u8vector (issue #749).
This commit is contained in:
parent
ead366870b
commit
5207bdfde2
2 changed files with 8 additions and 1 deletions
|
@ -94,7 +94,13 @@
|
|||
(define c64vector-length uvector-length)
|
||||
(define c128vector-length uvector-length)
|
||||
(define (list->u1vector ls) (list->uvector SEXP_U1 ls))
|
||||
(define (list->u8vector ls) (apply u8vector ls))
|
||||
(define (list->u8vector ls)
|
||||
(let* ((len (length ls))
|
||||
(res (make-bytevector len)))
|
||||
(do ((ls ls (cdr ls))
|
||||
(i 0 (+ i 1)))
|
||||
((null? ls) res)
|
||||
(bytevector-u8-set! res i (car ls)))))
|
||||
(define (list->s8vector ls) (list->uvector SEXP_S8 ls))
|
||||
(define (list->u16vector ls) (list->uvector SEXP_U16 ls))
|
||||
(define (list->s16vector ls) (list->uvector SEXP_S16 ls))
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
(test-begin "srfi-160: uniform vectors")
|
||||
(test-group "uvectors/constructors"
|
||||
(define a2i '#u32(0 1 2 3 4 5 6 7 8))
|
||||
(test '#u8(0 1 2 3 4) (u8vector 0 1 2 3 4))
|
||||
(test '#u32(0 1 2 3 4) (u32vector 0 1 2 3 4))
|
||||
(test '#u32(0 1 2 3 4 5 6 7 8 9)
|
||||
(u32vector-unfold (lambda (i x) (values x (+ x 1))) 10 0))
|
||||
|
|
Loading…
Add table
Reference in a new issue