From: Christophe R. <cs...@ca...> - 2008-10-31 14:32:40
|
"Nikodemus Siivola" <nik...@ra...> writes: > Incidentally, does anyone know why do our fast functions have traps > for arg-count and type errors for specializers? Surely they should > never happen? The method function can be retrieved and called using (sb-mop:method-function <method>), and dispatches to the fast function. While internally to method dispatch and calling no mismatches should occur, the user can provide arbitrary input to the method function, so something needs to perform checks. Example: (let ((d-o-package-t (find-method #'describe-object nil (mapcar 'find-class '(package t))))) (funcall (sb-mop:method-function d-o-package-t) (list 1 2) nil)) Cheers, Christophe |