304 |
(format nil "~:{~v,1,v^~A~}" '((#\a nil 0))) |
(format nil "~:{~v,1,v^~A~}" '((#\a nil 0))) |
305 |
"0") |
"0") |
306 |
|
|
307 |
|
;;; Tests of ~^ inside ~@{ ... ~} |
308 |
|
|
309 |
|
(deftest format.^.@{.1 |
310 |
|
(format nil "~@{X ~A~^ Y ~A~^ ~}" 1 2 3 4 5) |
311 |
|
"X 1 Y 2 X 3 Y 4 X 5") |
312 |
|
|
313 |
|
(deftest format.^.@{.2 |
314 |
|
(format nil "~@{X ~A~^ Y ~A~^ ~}" 1 2 3 4) |
315 |
|
"X 1 Y 2 X 3 Y 4") |
316 |
|
|
317 |
|
(deftest format.^.@{.3 |
318 |
|
(format nil "~1@{~A~^~A~}" 1) |
319 |
|
"1") |
320 |
|
|
321 |
|
(deftest format.^.@{.4 |
322 |
|
(format nil "~0@{~A~^~A~}" 1) |
323 |
|
"") |
324 |
|
|
325 |
|
(deftest format.^.@{.5 |
326 |
|
(format nil "~1@{~A~^~A~}" 1 2 3) |
327 |
|
"12") |
328 |
|
|
329 |
|
(deftest format.^.@{.6 |
330 |
|
(format nil "~@{~A~A~0^~A~}" 1 2 3 4 5 6) |
331 |
|
"12") |
332 |
|
|
333 |
|
(deftest format.^.@{.7 |
334 |
|
(format nil "~@{~A~A~v^~A~}" 1 2 3 4 5 6 0 7 8 9 10 11 12) |
335 |
|
"12456") |
336 |
|
|
337 |
|
(deftest format.^.@{.8 |
338 |
|
(format nil "~@{~#,3^~A~}" 1 2 3 4 5 6 7 8 9 10) |
339 |
|
"1234567") |
340 |
|
|
341 |
|
(deftest format.^.@{.9 |
342 |
|
(format nil "~@{~2,#^~A~}X~A" 1 2 3 4 5 6 7 8 9 10) |
343 |
|
"12345678X9") |
344 |
|
|
345 |
|
(deftest format.^.@{.10 |
346 |
|
(format nil "~@{~#,#^~A~}" 1 2 3 4 5 6 7 8 9 10) |
347 |
|
"") |
348 |
|
|
349 |
|
(deftest format.^.@{.11 |
350 |
|
(format nil "~@{~#,#,#^~A~}" 1 2 3 4 5 6 7 8 9 10) |
351 |
|
"") |
352 |
|
|
353 |
|
(deftest format.^.@{.12 |
354 |
|
(format nil "~@{~#,1,2^~A~}" 1 2 3 4 5 6 7 8 9 10) |
355 |
|
"123456789") |
356 |
|
|
357 |
|
(deftest format.^.@{.13 |
358 |
|
(format nil "~@{~#,#,v^~A~}" 1 2 3 4 5 6 7 8 9 10) |
359 |
|
"246") |
360 |
|
|
361 |
|
(deftest format.^.@{.14 |
362 |
|
(format nil "~@{~#,#,v^~A~}" 1 2 3 4 5 6 7 8 9 10 11) |
363 |
|
"246") |
364 |
|
|
365 |
|
(deftest format.^.@{.15 |
366 |
|
(format nil "~@{~#,#,v^~A~}" 1 2 3 4 5 6 7 8 9 10 11 12) |
367 |
|
"246") |
368 |
|
|
369 |
|
(deftest format.^.@{.16 |
370 |
|
(format nil "~@{~#,#,v^~A~}" 1 2 3 4 5 6 7 8 9 10 11 12 13) |
371 |
|
"246") |
372 |
|
|
373 |
|
(deftest format.^.@{.17 |
374 |
|
(format nil "~@{~#,#,v^~A~}" 1 2 3 4 5 6 7 8 9 10 11 12 13 14) |
375 |
|
"2468") |
376 |
|
|
377 |
|
(deftest format.^.@{.18 |
378 |
|
(format nil "~@{~v,v^~A~}" |
379 |
|
(1+ most-positive-fixnum) |
380 |
|
(1+ most-positive-fixnum) |
381 |
|
1) |
382 |
|
"") |
383 |
|
|
384 |
|
(deftest format.^.@{.19 |
385 |
|
(format nil "~@{~0,v,v^~A~}" |
386 |
|
(1+ most-positive-fixnum) |
387 |
|
(1+ most-positive-fixnum) |
388 |
|
1) |
389 |
|
"") |
390 |
|
|
391 |
|
(deftest format.^.@{.20 |
392 |
|
(format nil "~@{~0,v,v^~A~}" |
393 |
|
(1+ most-positive-fixnum) |
394 |
|
most-positive-fixnum |
395 |
|
1) |
396 |
|
"1") |
397 |
|
|
398 |
|
(deftest format.^.@{.21 |
399 |
|
(format nil "~@{~1,v^~A~}" nil 8 nil 7 0 6 1 5) |
400 |
|
"876") |
401 |
|
|
402 |
|
(deftest format.^.@{.22 |
403 |
|
(format nil "~@{~0,v^~A~}" 3 8 1 7 3 6 nil 5) |
404 |
|
"876") |
405 |
|
|
406 |
|
(deftest format.^.@{.23 |
407 |
|
(format nil "~@{~1,2,v^~A~}" 0 1 0 2 0 3 3 4) |
408 |
|
"123") |
409 |
|
|
410 |
|
(deftest format.^.@{.24 |
411 |
|
(format nil "~@{~1,2,v^~A~}" 0 1 0 2 0 3 nil 4) |
412 |
|
"1234") |
413 |
|
|
414 |
|
(deftest format.^.@{.25 |
415 |
|
(format nil "~@{~1,1,v^~A~}" 0 1 0 2 0 3 nil 4) |
416 |
|
"123") |
417 |
|
|
418 |
|
(deftest format.^.@{.26 |
419 |
|
(format nil "~@{~'X^~A~}" 1 2 3) |
420 |
|
"123") |
421 |
|
|
422 |
|
(deftest format.^.@{.27 |
423 |
|
(format nil "~@{~v,'X^~A~}" 0 1 #\x 2 nil 3 #\X 4 0 5) |
424 |
|
"123") |
425 |
|
|
426 |
|
(deftest format.^.@{.28 |
427 |
|
(format nil "~@{~'X,v^~A~}" 0 1 #\x 2 nil 3 #\X 4 0 5) |
428 |
|
"123") |
429 |
|
|
430 |
|
(deftest format.^.@{.29 |
431 |
|
(format nil "~@{~v,v^~A~}" 0 2 1 #\x #\X 2 5 #\X 3 #\y #\y 4 1 2 5) |
432 |
|
"123") |
433 |
|
|
434 |
|
(deftest format.^.@{.30 |
435 |
|
(format nil "~@{~',,',^~A~}" 1 2 3) |
436 |
|
"") |
437 |
|
|
438 |
|
(deftest format.^.@{.31 |
439 |
|
(format nil "~@{~1,v,v^~A~}" #\a nil 0) |
440 |
|
"0") |
441 |
|
|
442 |
|
(deftest format.^.@{.32 |
443 |
|
(format nil "~@{~v,1,v^~A~}" #\a nil 0) |
444 |
|
"0") |
445 |
|
|
446 |
|
(deftest format.^.@{.33 |
447 |
|
(format nil "~@{~v,v,v^~A~}" #\a #\a nil 0) |
448 |
|
"") |
449 |
|
|
450 |
|
;;; Inside ~:@{ |
451 |
|
|
452 |
|
(deftest format.^.\:@{.1 |
453 |
|
(format nil "~:@{~A~^~A~A~}" '(1) '(2 3 4) '(5 6 7 8)) |
454 |
|
"1234567") |
455 |
|
|
456 |
|
(deftest format.^.\:@{.2 |
457 |
|
(format nil "~@:{~A~0^~A~A~}" '(1) '(2 3 4) '(5 6 7 8)) |
458 |
|
"125") |
459 |
|
|
460 |
|
(deftest format.^.\:@{.3 |
461 |
|
(format nil "~:@{~#^~A~}" '(1) '(2 3 4) () '(5 6 7 8) ()) |
462 |
|
"125") |
463 |
|
|
464 |
|
(deftest format.^.\:@{.4 |
465 |
|
(format nil "~@:{~#^~A~#^~A~#^~A~#^~A~}" '(1) '(2 3 4) () '(5 6 7 8) ()) |
466 |
|
"12345678") |
467 |
|
|
468 |
|
(deftest format.^.\:@{.5 |
469 |
|
(format nil "~:@{~v^~A~}" '(1 2 3) '(0) '(2 4) '(0 5) '(1 6 7 8)) |
470 |
|
"246") |
471 |
|
|
472 |
|
(deftest format.^.\:@{.6 |
473 |
|
(format nil "~:@{~v^~A~}" '(nil) '(nil 1) '(1 2)) |
474 |
|
"12") |
475 |
|
|
476 |
|
(deftest format.^.\:@{.7 |
477 |
|
(format nil "~:@{~v^~A~}" '(#\x 1) '(#\y 2) '(0 3) '(1 4)) |
478 |
|
"124") |
479 |
|
|
480 |
|
(deftest format.^.\:@{.8 |
481 |
|
(format nil "~:@{~v,3^~A~}" '(1 1) '(2 0) '(3 4) '(5 6)) |
482 |
|
"106") |
483 |
|
|
484 |
|
(deftest format.^.\:@{.9 |
485 |
|
(format nil "~@:{~3,v^~A~}" '(1 1) '(2 0) '(3 4) '(5 6)) |
486 |
|
"106") |
487 |
|
|
488 |
|
(deftest format.^.\:@{.10 |
489 |
|
(format nil "~:@{~v,3^~A~}" '(#\x 1)) |
490 |
|
"1") |
491 |
|
|
492 |
|
(deftest format.^.\:@{.11 |
493 |
|
(format nil "~:@{~2,v^~A~}" '(#\x 1)) |
494 |
|
"1") |
495 |
|
|
496 |
|
(deftest format.^.\:@{.12 |
497 |
|
(format nil "~:@{~v,v^~A~}" '(1 2 0) '(0 1 1) '(1 0 2) '(3 3 5) '(4 5 6)) |
498 |
|
"0126") |
499 |
|
|
500 |
|
(deftest format.^.\:@{.13 |
501 |
|
(format nil "~:@{~v,v^~A~}" '(1 2 0) '(#\a #\A 1) '(#\A #\A 2) '(1 2 3)) |
502 |
|
"03") |
503 |
|
|
504 |
|
(deftest format.^.\:@{.14 |
505 |
|
(format nil "~:@{~'x,3^~A~}" '(1)) |
506 |
|
"1") |
507 |
|
|
508 |
|
(deftest format.^.\:@{.15 |
509 |
|
(format nil "~:@{~3,'x^~A~}" '(1)) |
510 |
|
"1") |
511 |
|
|
512 |
|
(deftest format.^.\:@{.16 |
513 |
|
(format nil "~:@{~'x,'x^~A~}" '(1)) |
514 |
|
"") |
515 |
|
|
516 |
|
(deftest format.^.\:@{.17 |
517 |
|
(format nil "~:@{~#,1^~A~}" '(1) '(2 10) '(3 a b) '(4) '(5 x) '(6) '(7 8)) |
518 |
|
"2357") |
519 |
|
|
520 |
|
(deftest format.^.\:@{.18 |
521 |
|
(format nil "~:@{~1,#^~A~}" '(1) '(2 10) '(3 a b) '(4) '(5 x) '(6) '(7 8)) |
522 |
|
"2357") |
523 |
|
|
524 |
|
(deftest format.^.\:@{.19 |
525 |
|
(format nil "~:@{~#,#^~A~}" '(1) '() '(2 10) '(3 a b) '(4) '(5 x) '(6) '(7 8)) |
526 |
|
"") |
527 |
|
|
528 |
|
(deftest format.^.\:@{.20 |
529 |
|
(format nil "~:@{~0,v^~A~}" '(0 1) '(1 2) '(nil 3) '(2 4)) |
530 |
|
"24") |
531 |
|
|
532 |
|
(deftest format.^.\:@{.21 |
533 |
|
(format nil "~:@{~1,v^~A~}" '(0 1) '(1 2) '(nil 3) '(2 4)) |
534 |
|
"134") |
535 |
|
|
536 |
|
(deftest format.^.\:@{.22 |
537 |
|
(format nil "~:@{~1,1,1^~A~}" '(1) '(2 3) '(4 5 6) '(7 8 9 0)) |
538 |
|
"") |
539 |
|
|
540 |
|
(deftest format.^.\:@{.23 |
541 |
|
(format nil "~:@{~1,2,3^~A~}" '(1) '(2 3) '(4 5 6) '(7 8 9 0)) |
542 |
|
"") |
543 |
|
|
544 |
|
(deftest format.^.\:@{.24 |
545 |
|
(format nil "~:@{~1,2,1^~A~}" '(1) '(2 3) '(4 5 6) '(7 8 9 0)) |
546 |
|
"1247") |
547 |
|
|
548 |
|
(deftest format.^.\:@{.25 |
549 |
|
(format nil "~:@{~1,0,1^~A~}" '(1) '(2 3) '(4 5 6) '(7 8 9 0)) |
550 |
|
"1247") |
551 |
|
|
552 |
|
(deftest format.^.\:@{.26 |
553 |
|
(format nil "~:@{~3,2,1^~A~}" '(1) '(2 3) '(4 5 6) '(7 8 9 0)) |
554 |
|
"1247") |
555 |
|
|
556 |
|
(deftest format.^.\:@{.27 |
557 |
|
(format nil "~:@{~v,2,3^~A~}" '(1 10) '(2 20) '(3 30) '(4 40)) |
558 |
|
"3040") |
559 |
|
|
560 |
|
(deftest format.^.\:@{.28 |
561 |
|
(format nil "~:@{~1,v,3^~A~}" '(0 7) '(1 10) '(2 20) '(3 30) '(4 40)) |
562 |
|
"740") |
563 |
|
|
564 |
|
(deftest format.^.\:@{.29 |
565 |
|
(format nil "~:@{~1,2,v^~A~}" '(0 0) '(1 10) '(2 20) '(3 30) '(4 40) '(0 50)) |
566 |
|
"01050") |
567 |
|
|
568 |
|
(deftest format.^.\:@{.30 |
569 |
|
(format nil "~:@{~1,2,v^~A~}" '(nil 0)) |
570 |
|
"") |
571 |
|
|
572 |
|
(deftest format.^.\:@{.31 |
573 |
|
(format nil "~:@{~#,3,3^~A~}" '(1) '(2 1) '(3 2 1) '(4 3 2 1) '(5 4 3 2 1)) |
574 |
|
"45") |
575 |
|
|
576 |
|
(deftest format.^.\:@{.32 |
577 |
|
(format nil "~:@{~2,#,3^~A~}" '(1) '(2 1) '(3 2 1) '(4 3 2 1) '(5 4 3 2 1)) |
578 |
|
"145") |
579 |
|
|
580 |
|
(deftest format.^.\:@{.33 |
581 |
|
(format nil "~:@{~0,3,#^~A~}" '(1) '(2 1) '(3 2 1) '(4 3 2 1) '(5 4 3 2 1)) |
582 |
|
"12") |
583 |
|
|
584 |
|
(deftest format.^.\:@{.34 |
585 |
|
(format nil "~:@{~#,#,3^~A~}" '(1) '(2 1) '(3 2 1) '(4 3 2 1) '(5 4 3 2 1)) |
586 |
|
"45") |
587 |
|
|
588 |
|
(deftest format.^.\:@{.35 |
589 |
|
(format nil "~:@{~3,#,#^~A~}" '(1) '(2 1) '(3 2 1) '(4 3 2 1) '(5 4 3 2 1)) |
590 |
|
"12") |
591 |
|
|
592 |
|
(deftest format.^.\:@{.36 |
593 |
|
(format nil "~:@{~#,3,#^~A~}" '(1) '(2 1) '(3 2 1) '(4 3 2 1) '(5 4 3 2 1)) |
594 |
|
"1245") |
595 |
|
|
596 |
|
(deftest format.^.\:@{.37 |
597 |
|
(format nil "~:@{~#,#,#^~A~}" '(1) '(2 1) '(3 2 1) '(4 3 2 1) '(5 4 3 2 1)) |
598 |
|
"") |
599 |
|
|
600 |
|
(deftest format.^.\:@{.38 |
601 |
|
(format nil "~:@{~1,v,v^~A~}" '(#\a nil 0)) |
602 |
|
"0") |
603 |
|
|
604 |
|
(deftest format.^.\:@{.39 |
605 |
|
(format nil "~:@{~v,1,v^~A~}" '(#\a nil 0)) |
606 |
|
"0") |