89 |
(concatenate '(vector * *) '(a b c) '(d e f) #(g h)) |
(concatenate '(vector * *) '(a b c) '(d e f) #(g h)) |
90 |
#(a b c d e f g h)) |
#(a b c d e f g h)) |
91 |
|
|
92 |
|
(deftest concatenate.18a |
93 |
|
(concatenate '(vector *) '(a b c) '(d e f) #(g h)) |
94 |
|
#(a b c d e f g h)) |
95 |
|
|
96 |
|
(deftest concatenate.18b |
97 |
|
(concatenate '(vector) '(a b c) '(d e f) #(g h)) |
98 |
|
#(a b c d e f g h)) |
99 |
|
|
100 |
|
(deftest concatenate.18c |
101 |
|
(concatenate '(simple-vector *) '(a b c) '(d e f) #(g h)) |
102 |
|
#(a b c d e f g h)) |
103 |
|
|
104 |
|
(deftest concatenate.18d |
105 |
|
(concatenate '(simple-vector) '(a b c) '(d e f) #(g h)) |
106 |
|
#(a b c d e f g h)) |
107 |
|
|
108 |
(deftest concatenate.19 |
(deftest concatenate.19 |
109 |
(concatenate '(vector * 8) '(a b c) '(d e f) #(g h)) |
(concatenate '(vector * 8) '(a b c) '(d e f) #(g h)) |
110 |
#(a b c d e f g h)) |
#(a b c d e f g h)) |
189 |
:fill-pointer 5 :element-type 'bit))) |
:fill-pointer 5 :element-type 'bit))) |
190 |
(values |
(values |
191 |
(concatenate 'bit-vector x '(0)) |
(concatenate 'bit-vector x '(0)) |
192 |
(concatenate 'bit-vector '(0) x) |
(concatenate '(bit-vector) '(0) x) |
193 |
(concatenate 'bit-vector x x) |
(concatenate '(bit-vector 10) x x) |
194 |
(concatenate 'bit-vector x) |
(concatenate '(bit-vector *) x) |
195 |
|
(not (simple-bit-vector-p (concatenate 'bit-vector x))) |
196 |
|
)) |
197 |
|
#*011000 |
198 |
|
#*001100 |
199 |
|
#*0110001100 |
200 |
|
#*01100 |
201 |
|
nil) |
202 |
|
|
203 |
|
(deftest concatenate.30a |
204 |
|
(let* ((x (make-array '(10) :initial-contents #*0110010111 |
205 |
|
:fill-pointer 5 :element-type 'bit))) |
206 |
|
(values |
207 |
|
(concatenate 'simple-bit-vector x '(0)) |
208 |
|
(concatenate 'simple-bit-vector '(0) x) |
209 |
|
(concatenate 'simple-bit-vector x x) |
210 |
|
(concatenate 'simple-bit-vector x) |
211 |
(not (simple-bit-vector-p (concatenate 'bit-vector x))) |
(not (simple-bit-vector-p (concatenate 'bit-vector x))) |
212 |
)) |
)) |
213 |
#*011000 |
#*011000 |
236 |
(assert (string= (concatenate 'simple-base-string s "z" s "w" s) "abczabcwabc")) |
(assert (string= (concatenate 'simple-base-string s "z" s "w" s) "abczabcwabc")) |
237 |
(assert (string= (concatenate '(vector character) s "z" s "w" s) "abczabcwabc"))) |
(assert (string= (concatenate '(vector character) s "z" s "w" s) "abczabcwabc"))) |
238 |
nil) |
nil) |
239 |
|
|
240 |
|
(deftest concatenate.34 |
241 |
|
(concatenate 'simple-string "abc" "def") |
242 |
|
"abcdef") |
243 |
|
|
244 |
|
(deftest concatenate.35 |
245 |
|
(concatenate '(simple-string) "abc" "def") |
246 |
|
"abcdef") |
247 |
|
|
248 |
|
(deftest concatenate.36 |
249 |
|
(concatenate '(simple-string *) "abc" "def") |
250 |
|
"abcdef") |
251 |
|
|
252 |
|
(deftest concatenate.37 |
253 |
|
(concatenate '(simple-string 6) "abc" "def") |
254 |
|
"abcdef") |
255 |
|
|
256 |
|
(deftest concatenate.38 |
257 |
|
(concatenate '(string) "abc" "def") |
258 |
|
"abcdef") |
259 |
|
|
260 |
|
(deftest concatenate.39 |
261 |
|
(concatenate '(string *) "abc" "def") |
262 |
|
"abcdef") |
263 |
|
|
264 |
|
(deftest concatenate.40 |
265 |
|
(concatenate '(string 6) "abc" "def") |
266 |
|
"abcdef") |
267 |
|
|
268 |
|
;;; Order of evaluation tests |
269 |
|
|
270 |
(deftest concatenate.order.1 |
(deftest concatenate.order.1 |
271 |
(let ((i 0) w x y z) |
(let ((i 0) w x y z) |
294 |
t) |
t) |
295 |
|
|
296 |
(deftest concatenate.error.2 |
(deftest concatenate.error.2 |
297 |
(signals-error (concatenate 'fixnum '(a b c d e)) error) |
(signals-error-always (concatenate 'fixnum '(a b c d e)) error) |
298 |
t) |
t t) |
299 |
|
|
300 |
(deftest concatenate.error.3 |
(deftest concatenate.error.3 |
301 |
(signals-error (concatenate '(vector * 3) '(a b c d e)) |
(signals-error (concatenate '(vector * 3) '(a b c d e)) |
311 |
type-error) |
type-error) |
312 |
t) |
t) |
313 |
|
|
314 |
|
(deftest concatenate.error.6 |
315 |
|
(let ((type '(or (vector bit) (vector t)))) |
316 |
|
(if (subtypep type 'vector) |
317 |
|
(eval `(signals-error-always (concatenate ',type '(0 1 0) '(1 1 0)) error)) |
318 |
|
(values t t))) |
319 |
|
t t) |
320 |
|
|