Как документировать типизацию функций Kotlin?

В Kotlin v1.1+ есть возможность объявления псевдонимов типов, которые предоставляют альтернативные имена для существующих типов. Это особенно полезно для типов функций - например:

typealias OnItemClick = (view: View, position: Int) -> Boolean

И они могут быть задокументированы с комментариями KDoc, как и другие участники:

/**
 * Type definition for an action to be preformed when a view in the list has been clicked.
 */
typealias OnItemClick = (view: View, position: Int) -> Boolean

Но есть ли конкретный способ документирования параметров и типа возврата типа функции?

Веб-сайт Kotlin предоставляет информацию о документировании кода Kotlin, но не упоминает typealiases.

Как и сами функции, было бы хорошо, если бы типы функций могли быть документированы следующим образом:

/**
 * @param view       the view that was clicked
 * @param position   the layout position from the ViewHolder (see
                     [ViewHolder.getLayoutPosition])
 * @return whether the click was successful
 */
typealias OnItemClick = (view: View, position: Int) -> Boolean

Но теги не распознаются в KDoc.

Итак, как должны документироваться параметры и возвращаемые типы?

1 ответ

Решение

К сожалению, в настоящее время в KDoc нет специальной поддержки для документирования параметров и возвращаемых значений для typealiases для типов функций, поэтому вам просто нужно описать их как часть документации. Я отправил запрос на добавление поддержки.

Другие вопросы по тегам