slime-who-specializes
に目を通して、設定する方法を見つけることができます。
は定義に続いて、私はこれまでのように、ここで(SBCL用)得た:
#+#.(swank-backend::sbcl-with-xref-p)
(progn
(defmacro defxref (name &optional fn-name)
`(defimplementation ,name (what)
(sanitize-xrefs
(mapcar #'source-location-for-xref-data
(,(find-symbol (symbol-name (if fn-name
fn-name
name))
"SB-INTROSPECT")
what)))))
(defxref who-calls)
(defxref who-binds)
(defxref who-sets)
(defxref who-references)
(defxref who-macroexpands)
#+#.(swank-backend:with-symbol 'who-specializes-directly 'sb-introspect)
(defxref who-specializes who-specializes-directly))
この機能は、異なるのLispのために別々に実装されているので、あなたは、特定の詳細が必要な場合は、あなたがに調べる必要があります:swank-<your lisp>.lisp
ファイルとwho-specializes
汎用関数の実装を検索します。
MOPにはそれほど必要なものはありません。 CLOSは、COMPUTE-APPLICABLE-METHODSを使用します。 –
@wvxvw私の目的のために十分に近い、ありがとう、答えとして投稿してください。私はそれを受け入れるでしょう – tjb