Как стать автором
Обновить

Типы сообщений компилятора Kotlin, которые нужно использовать в Suppress

Время на прочтение1 мин
Количество просмотров6.2K

Типы сообщений ошибок и предупреждений Kotlin


Предупреждения и ошибки, которые генерирует компилятор Kotlin часто нужно замаскировать, либо для того, чтобы они не мозолили глаза, либо просто потому, что логика программы нуждается именно в таком коде, который приводит к сообщению об ошибке или предупреждению.



Маскировка сообщений компилятора как в Java так и Kotlin происходит одинаково:


@Suppress("MESSAGE")

где "MESSAGE" — это тип сообщения.


Проблема в том, что узнать каким-то простым способом какой тип сообщения соответствует конкретному тексту часто оказывается невозможно. Подсказки Lint работают почему-то сильно не всегда, автодополнения нет, а разработчиками Kotlin эта информация почему-то нигде не опубликована.


Для облегчения поиска нужных типов сообщений я свел их вместе с текстом в одну таблицу. В случае возникновения необходимости замаскировать какое-то сообщение его можно легко найти в этой таблице и узнать какой тип нужно указать для ее подавления.


Пример таблицы


Тип Сообщение
Data class inheritance from other classes is forbidden DATA_CLASS_CANNOT_HAVE_CLASS_SUPERTYPES
Data class must have at least one primary constructor parameter DATA_CLASS_WITHOUT_PARAMETERS

В один поста на хабре таблицу сообщений засунуть невозможно, а размазывать ее по нескольким сообщением не имеет смысла т.к. ею будет неудобно пользоваться, поэтому я выложил ее на GitHub.


Ссылка на полный вариант таблицы


Возможно, кому-то эта информация пригодится.

Теги:
Хабы:
+9
Комментарии35

Публикации

Изменить настройки темы

Истории

Ближайшие события

Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн