汎用関数を変数として保存したい:
(defvar *gf* (make-instance 'standard-generic-function)
しかし、メソッドを追加するときはcall-next-method
、next-method-p
自分自身を定義する必要があります:
(add-method *gf*
(make-instane 'standard-method
:function (lambda (args next-methods)
(flet ((call-next-method () ...)
(next-method-p () ...))
(apply (lambda () ...) args)))))
定義するメソッドを呼び出すにはどうすればよいcall-next-method
ですか? これを行う簡単な方法はありますか?