Аннотации

Аннотации

> LeekScript

В настоящее время существует 7 аннотаций. Их можно ставить перед функцией или методом, чтобы указать дополнительную информацию. Они также применяются к локальным переменным, глобальным переменным и классам. В редакторе документация каждой аннотации показывается при наведении.

Как использовать аннотации?

Чтобы использовать аннотацию, можно написать:

или

Аннотации можно также комбинировать:

Существующие аннотации

@deprecated

Функция или метод с аннотацией @deprecated выдаёт предупреждение при компиляции, когда её вызывают. Это означает, что функцию больше не следует использовать и что позже она будет удалена.

Например:

@todo

Функция или метод с аннотацией @todo добавляет при компиляции предупреждение типа todo, указывающее, что она не завершена.

@unused

Функция или метод с аннотацией @unused не будет выдавать предупреждение, если она не используется. Это особенно полезно в строгом режиме, когда функция реализована, но код её не вызывает.

Например:

Обратите внимание: префикс _ в имени (например, var _resultat) уже сам по себе убирает предупреждение «не используется», без аннотации.

@nodiscard

Функция или метод с аннотацией @nodiscard выдаст предупреждение, если её возвращаемое значение не используется.

@pure

В настоящее время @pure действует так же, как @nodiscard. Однако @pure подразумевает больше:

Чистая функция не должна изменять состояние и не должна иметь побочных эффектов. То есть она не должна изменять переменные вне своей области видимости и должна быть детерминированной (никакой случайности).

@override

Метод с аннотацией @override сообщает разработчику, что он изменяет реализацию метода родительского класса.

Например:

@tailrec

Функция или метод с аннотацией @tailrec объявляется хвостово-рекурсивной: это означает, что функция рекурсивна и рекурсивный вызов является последней инструкцией функции.

Эта аннотация может пригодиться компилятору, но в настоящее время нигде не используется.