chickadee » record-vector » record-vector-clone

(record-vector-clone R-V-SRC [#:NAME-k #:NEW-VALUE-k ...])procedure
(rv-clone R-V-SRC [#:NAME-k #:NEW-VALUE-k ...])procedure

Create the new record-vector by consing attributes alist of R-V-SRC and copy of R-V-SRC value vector. If every n-th value also record-vector? than recursive clone it inplace of new n-th value. Also apply new values to existing attributes with name #:NAME-k or extends new record-vector with them.

 
> (define r (record-vector #:x 1.0 #:y 3.0))
> (define r2 (record-vector-clone r #:y 2.0 #:z 3.0))
> r2 => (((#:x . 0) (#:y . 1) (#:z . 2)) . #(1.0 2.0 3.0))