2017-05-06 9 views
1

KFunctionを指定すると、それが拡張機能であるかどうかを確認できますか?機能が拡張機能であることを確認する

私が知る唯一の方法は、function.extensionReceiverParameternullを返すかどうかをチェックすることです。他のまたは推奨される方法はありますか?

+1

私は確かにわかりませんが、それが唯一の方法だと思います。 Kotlinリフレクションライブラリは多くの面で扱いにくいです。例えばKClassで表される型がコンストラクタを持っているかどうか、これがインタフェースかクラスかを知るためにテストする必要があります。それは、学習と使用を容易にするためのいくつかの拡張プロパティが欠けています。 – glee8e

答えて

0

現在のところ、これをチェックする唯一の方法は、 function.extensionReceiverParameterです。

nullを返す場合は、拡張機能ではありません。関数が拡張関数であるnull以外の値を返す場合

関連する問題