如何在 Kotlin 中抑制单行警告
How to suppress warnings for a single line in Kotlin
我有 Android 个用 Kotlin 编写的应用程序。我的代码中有一个警告,我想将它抑制为单行 ,而不是整个函数。
Kotlin 有可能吗?类似的东西
fun largeFun(canvas: Canvas) {
...
if (BuildConfig.DEBUG) {
// Suppress allocation warning
canvas.drawText(Date().toString, x, y, p)
}
}
PS 我知道我可以将该代码提取到一个单独的函数中并抑制该函数的警告,但我仍然想知道是否可以抑制单行警告
EDIT 编辑了问题代码。解决方案是提取对 val 的分配,@Suppress 按预期工作
没有任何问题。只需将注释 Suppress
放在要抑制警告的范围之前。例如:
fun main() {
@Deprecated(level = WARNING)
fun deprecatedFun() {}
if (BuildConfig.DEBUG) {
@Suppress("DEPRECATION") val f = deprecatedFun()
}
}
此外,Android Studio 提供了很好的可能性来抑制特定范围的警告 - alt + enter
;)
我有 Android 个用 Kotlin 编写的应用程序。我的代码中有一个警告,我想将它抑制为单行 ,而不是整个函数。
Kotlin 有可能吗?类似的东西
fun largeFun(canvas: Canvas) {
...
if (BuildConfig.DEBUG) {
// Suppress allocation warning
canvas.drawText(Date().toString, x, y, p)
}
}
PS 我知道我可以将该代码提取到一个单独的函数中并抑制该函数的警告,但我仍然想知道是否可以抑制单行警告
EDIT 编辑了问题代码。解决方案是提取对 val 的分配,@Suppress 按预期工作
没有任何问题。只需将注释 Suppress
放在要抑制警告的范围之前。例如:
fun main() {
@Deprecated(level = WARNING)
fun deprecatedFun() {}
if (BuildConfig.DEBUG) {
@Suppress("DEPRECATION") val f = deprecatedFun()
}
}
此外,Android Studio 提供了很好的可能性来抑制特定范围的警告 - alt + enter
;)