656 |
(funcall fn 1 2) |
(funcall fn 1 2) |
657 |
(funcall fn "1" "2"))) |
(funcall fn "1" "2"))) |
658 |
3 "12") |
3 "12") |
659 |
|
|
660 |
|
(deftest defgeneric.28 |
661 |
|
(let ((fn (eval '(defgeneric defgeneric.fun.28 (x &key) |
662 |
|
(:method ((x integer) &key foo) (list x foo)) |
663 |
|
(:method ((x number) &key bar) (list x bar)) |
664 |
|
(:method ((x t) &key baz) (list x baz)))))) |
665 |
|
(values |
666 |
|
|
667 |
|
(funcall fn 1) |
668 |
|
(funcall fn 1 :foo 'a) |
669 |
|
(funcall fn 1 :bar 'b) |
670 |
|
(funcall fn 1 :baz 'c) |
671 |
|
(funcall fn 1 :bar 'b :baz 'c) |
672 |
|
(funcall fn 1 :foo 'a :bar 'b) |
673 |
|
(funcall fn 1 :foo 'a :baz 'c) |
674 |
|
(funcall fn 1 :foo 'a :bar 'b :baz 'c) |
675 |
|
|
676 |
|
(funcall fn 5/3) |
677 |
|
(funcall fn 5/3 :bar 'b) |
678 |
|
(funcall fn 5/3 :baz 'c) |
679 |
|
(funcall fn 5/3 :bar 'b :baz 'c) |
680 |
|
|
681 |
|
(funcall fn 'x) |
682 |
|
(funcall fn 'x :baz 'c) |
683 |
|
|
684 |
|
)) |
685 |
|
|
686 |
|
(1 nil) (1 a) (1 nil) (1 nil) |
687 |
|
(1 nil) (1 a) (1 a) (1 a) |
688 |
|
|
689 |
|
(5/3 nil) (5/3 b) (5/3 nil) (5/3 b) |
690 |
|
|
691 |
|
(x nil) (x c)) |
692 |
|
|