/[gcl]/gcl/ansi-tests/defgeneric-method-combination-progn.lsp
ViewVC logotype

Diff of /gcl/ansi-tests/defgeneric-method-combination-progn.lsp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by pfdietz, Wed Jun 4 01:04:49 2003 UTC revision 1.3 by pfdietz, Tue Jul 1 12:16:10 2003 UTC
# Line 16  Line 16 
16                    (:method progn ((x rational)) (push 3 *x*) nil)                    (:method progn ((x rational)) (push 3 *x*) nil)
17                    (:method progn ((x number)) (push 2 *x*) nil)                    (:method progn ((x number)) (push 2 *x*) nil)
18                    (:method progn ((x t)) (push 1 *x*) 'a)))))                    (:method progn ((x t)) (push 1 *x*) 'a)))))
19        (declare (type generic-function fn))
20      (flet ((%f (y)      (flet ((%f (y)
21                 (let ((*x* nil))                 (let ((*x* nil))
22                   (list (funcall fn y) *x*))))                   (list (funcall fn y) *x*))))
# Line 34  Line 35 
35                    (:method progn ((x rational)) (push 3 *x*) 'b)                    (:method progn ((x rational)) (push 3 *x*) 'b)
36                    (:method progn ((x number)) (push 2 *x*) 'c)                    (:method progn ((x number)) (push 2 *x*) 'c)
37                    (:method progn ((x t)) (push 1 *x*) 'd)))))                    (:method progn ((x t)) (push 1 *x*) 'd)))))
38        (declare (type generic-function fn))
39      (flet ((%f (y)      (flet ((%f (y)
40                 (let ((*x* nil))                 (let ((*x* nil))
41                   (list (funcall fn y) *x*))))                   (list (funcall fn y) *x*))))
# Line 52  Line 54 
54                    (:method progn ((x rational)) (push 3 *x*) 'b)                    (:method progn ((x rational)) (push 3 *x*) 'b)
55                    (:method progn ((x number)) (push 2 *x*) 'c)                    (:method progn ((x number)) (push 2 *x*) 'c)
56                    (:method progn ((x t)) (push 1 *x*) 'd)))))                    (:method progn ((x t)) (push 1 *x*) 'd)))))
57        (declare (type generic-function fn))
58      (flet ((%f (y)      (flet ((%f (y)
59                 (let ((*x* nil))                 (let ((*x* nil))
60                   (list (funcall fn y) *x*))))                   (list (funcall fn y) *x*))))
# Line 70  Line 73 
73                    (:method progn ((x number)) 'b)                    (:method progn ((x number)) 'b)
74                    (:method progn ((x symbol)) 'c)                    (:method progn ((x symbol)) 'c)
75                    (:method progn ((x t)) 'a)))))                    (:method progn ((x t)) 'a)))))
76        (declare (type generic-function fn))
77      (values      (values
78       (funcall fn 0)       (funcall fn 0)
79       (funcall fn 4/3)       (funcall fn 4/3)
# Line 87  Line 91 
91                    (:method progn ((x number)) 'b)                    (:method progn ((x number)) 'b)
92                    (:method progn ((x symbol)) 'c)                    (:method progn ((x symbol)) 'c)
93                    (:method progn ((x t)) 'a)))))                    (:method progn ((x t)) 'a)))))
94        (declare (type generic-function fn))
95      (values      (values
96       (funcall fn 0)       (funcall fn 0)
97       (funcall fn 4/3)       (funcall fn 4/3)
# Line 105  Line 110 
110                    (:method progn ((x number)) nil)                    (:method progn ((x number)) nil)
111                    (:method progn ((x symbol)) 'b)                    (:method progn ((x symbol)) 'b)
112                    (:method progn ((x t)) 'c)))))                    (:method progn ((x t)) 'c)))))
113        (declare (type generic-function fn))
114      (values      (values
115       (funcall fn 0)       (funcall fn 0)
116       (funcall fn 4/3)       (funcall fn 4/3)
# Line 123  Line 129 
129                    (:method progn ((x number)) 'e)                    (:method progn ((x number)) 'e)
130                    (:method progn ((x symbol)) 'b)                    (:method progn ((x symbol)) 'b)
131                    (:method progn ((x t)) 'c)))))                    (:method progn ((x t)) 'c)))))
132        (declare (type generic-function fn))
133      (values      (values
134       (funcall fn 0)       (funcall fn 0)
135       (funcall fn 4/3)       (funcall fn 4/3)
# Line 144  Line 151 
151                    (:method progn ((x number)) 'b)                    (:method progn ((x number)) 'b)
152                    (:method progn ((x symbol)) 'c)                    (:method progn ((x symbol)) 'c)
153                    (:method progn ((x t)) 'd)))))                    (:method progn ((x t)) 'd)))))
154        (declare (type generic-function fn))
155      (values      (values
156       (funcall fn 0)       (funcall fn 0)
157       (funcall fn 4/3)       (funcall fn 4/3)
# Line 165  Line 173 
173                    (:method progn ((x number)) 'b)                    (:method progn ((x number)) 'b)
174                    (:method progn ((x symbol)) 'c)                    (:method progn ((x symbol)) 'c)
175                    (:method progn ((x t)) 'd)))))                    (:method progn ((x t)) 'd)))))
176        (declare (type generic-function fn))
177      (values      (values
178       (funcall fn 0)       (funcall fn 0)
179       (funcall fn 4/3)       (funcall fn 4/3)
# Line 183  Line 192 
192                    (:method progn ((x dgmc-class-03)) 'b)                    (:method progn ((x dgmc-class-03)) 'b)
193                    (:method progn ((x dgmc-class-02)) 'c)                    (:method progn ((x dgmc-class-02)) 'c)
194                    (:method progn ((x dgmc-class-01)) 'd)))))                    (:method progn ((x dgmc-class-01)) 'd)))))
195        (declare (type generic-function fn))
196      (values      (values
197       (funcall fn (make-instance 'dgmc-class-01))       (funcall fn (make-instance 'dgmc-class-01))
198       (funcall fn (make-instance 'dgmc-class-02))       (funcall fn (make-instance 'dgmc-class-02))
# Line 198  Line 208 
208                    (:method progn ((x dgmc-class-03)) 'b)                    (:method progn ((x dgmc-class-03)) 'b)
209                    (:method progn ((x dgmc-class-02)) 'c)                    (:method progn ((x dgmc-class-02)) 'c)
210                    (:method progn ((x dgmc-class-01)) 'd)))))                    (:method progn ((x dgmc-class-01)) 'd)))))
211        (declare (type generic-function fn))
212      (values      (values
213       (funcall fn (make-instance 'dgmc-class-01))       (funcall fn (make-instance 'dgmc-class-01))
214       (funcall fn (make-instance 'dgmc-class-02))       (funcall fn (make-instance 'dgmc-class-02))
# Line 215  Line 226 
226                    (:method :around ((x complex)) (call-next-method))                    (:method :around ((x complex)) (call-next-method))
227                    (:method :around ((x number)) (values 1 2 3 4 5 6))                    (:method :around ((x number)) (values 1 2 3 4 5 6))
228                    (:method progn ((x t)) 'b)))))                    (:method progn ((x t)) 'b)))))
229        (declare (type generic-function fn))
230      (values      (values
231       (multiple-value-list (funcall fn 'a))       (multiple-value-list (funcall fn 'a))
232       (multiple-value-list (funcall fn 10))       (multiple-value-list (funcall fn 10))
# Line 226  Line 238 
238    (handler-case    (handler-case
239     (let ((fn (eval '(defgeneric dg-mc.progn.9 (x)     (let ((fn (eval '(defgeneric dg-mc.progn.9 (x)
240                        (:method-combination progn)))))                        (:method-combination progn)))))
241         (declare (type generic-function fn))
242       (funcall fn (list 'a)))       (funcall fn (list 'a)))
243     (error () :error))     (error () :error))
244    :error)    :error)
# Line 251  Line 264 
264                       (:method-combination progn)                       (:method-combination progn)
265                       (:method :around ((x t)) 'a)                       (:method :around ((x t)) 'a)
266                       (:method progn ((x integer)) x)))))                       (:method progn ((x integer)) x)))))
267        (declare (type generic-function fn))
268      (handler-case (funcall fn 'b)      (handler-case (funcall fn 'b)
269                    (error () :error)))                    (error () :error)))
270    :error)    :error)

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26