このような注釈付きタイプに対してKotlin拡張機能を定義することはできますか?注釈付きタイプの拡張機能
@ColorInt
fun @ColorInt Int.darken(): Int {
return ColorUtils.blendARGB(this, Color.BLACK, 0.2f)
}
代替形式:
@ColorInt
fun (@ColorInt Int).darken(): Int {
return ColorUtils.blendARGB(this, Color.BLACK, 0.2f)
}
次の静的目的球に対応するであろう:
@ColorInt
fun darken(@ColorInt color: Int): Int {
return ColorUtils.blendARGB(color, Color.BLACK, 0.2f)
}
私はKotlinを使用して、まだ可能性はないと思うが、それはすることは可能であろう後でKotlinのバージョンでその機能を追加しますか?
サイドノート: 同じ質問が@IntDef
,@StringDef
、@[resource type]Res
にも適用されます。
zsmb13 http://kotlinlang.org/docs/reference/annotations.html#annotation-use-site-targetsが、これは同じシグネチャを持つ倍増した方法でいくつかの問題を引き起こす可能性があることを説明する良い点を持っていた:注釈の使用サイトのターゲットに関する
詳細:次の構文を使用します。とにかく、その関数の別のJVMメソッド名に注釈を付けることで解決できます。 – Heinrich