Каковы возможные значения, которые могут быть даны `@Suppress` в Котлин?
Компилятор Kotlin дал мне следующее предупреждение:
Предупреждение: (399, 1) Котлин: Ожидаемое влияние на производительность "..." может быть незначительным. Инкрустация работает лучше всего для функций с лямбда-параметрами
В этом случае я хотел бы подавить это предупреждение. Однако я не знаю, какое значение следует предоставить для @Suppress
, и я не могу найти документацию о том, какие значения принимают @Suppress
.
Каковы возможные значения, которые могут быть заданы для @Suppress
, и что они означают?
Ответы
Ответ 1
IntelliJ дает вам приятную помощь здесь:
![введите описание изображения здесь]()
Что добавляет @Suppress("NOTHING_TO_INLINE")
для разрешения предупреждения.
Некоторые из возможных имен диагностики компилятора для подавления можно найти в Errors.java и DefaultErrorMessages.java, т.е.:
REDUNDANT_MODIFIER, "Modifier ''{0}'' is redundant because ''{1}'' is present"
Ответ 2
В моем случае IntelliJ не предлагал мне скрыть предупреждение.
@Suppress
список ошибок вместе с кодом для передачи в @Suppress
объявлен в статической переменной MAP
в DefaultErrorMessages
.
Вы можете искать предупреждение вашего компилятора (например, The expression is unused
), и имя для передачи в @Suppress
является ключом для этой записи, в данном случае UNUSED_EXPRESSION
: @Suppress("UNUSED_EXPRESSION")