だから私はキーワードを定義しました:
(def a :hello)
IFn インターフェイスが実装されていることを確認するにはどうすればよいですか?
instance?
一般的なケースでは、次の述語を使用できます。
(instance? <class-or-interface> <object>)
ドキュメントの引用:
(instance? c x)
x を評価し、それがクラス c のインスタンスであるかどうかをテストします。true または false を返します。
例えば:
(instance? java.lang.String "test")
> true
(instance? java.io.Serializable "test")
> true
問題のコードについては、次のようにします。
(instance? package.of.IFn a)
または、コメントで指摘されているように、これが機能するかどうかを尋ねる非常に特殊なケースについてa
は、次のようになります。IFn
(ifn? a)