Разрыв строки, новая строка в KDoc
Предполагая, что у нас есть такая задокументированная строка
/** retrieve a state of the service
* <br/> HTTP code 200 - normal state
* <br/> HTTP code 403 - some recoverable state:
const val SERVICE_STATE = "servicestate" */
Есть несколько <br/>
здесь, который я использовал, чтобы разбить строку, как я делаю в Java, но вывод AndroidStudio (кажется, то же самое в InteliJIdea)
с Java это анализируется и отображается правильно:
/** retrieve a state of the service
* <br/> HTTP code 200 - normal state
* <br/> HTTP code 403 - some recoverable state */
public static final String SERVICE_STATE = "servicestate";
Могу ли я так или иначе добиться того же с kotlin & IntelijIdea, может быть, у kotlin есть еще один вариант, чтобы разорвать линию в KDoc?
3 ответа
Формат KDoc использует синтаксис Markdown вместо HTML, а базовый Markdown не позволяет разбить строку без начала нового абзаца.
Я не уверен, почему плагин Kotlin IntellIJ не поддерживает <br/>
или двойной взломать пространство.
Если начало нового абзаца в порядке, просто пропустите пустую строку:
/**
* retrieve a state of the service
*
* HTTP code 200 - normal state
*
* HTTP code 403 - some recoverable state:
*/
Результат:
Чтобы добавить к ответу @hotkey, вы также можете использовать тройные обратные кавычки, поскольку поддерживается Markdown:
/**
* Returns masked complement, i.e. expected value in the [maskBits] bits instead of a negative number because of
* 2's complement representation
*
* For example, for 9:
* ```
* Binary representation: 00...01001
* Complement: 11...10110 which is -10
* Masking with 4 bits: and with 00...01111
* So we get: 00...00110 which is the expected bitwise complement
* ```
* @param maskBits Number of bits to mask the complement to
* @return Decimal representation of the masked complement
*/
fun Int.inv(maskBits: Int) = inv() and 2.pow(maskBits) - 1
Результат: