KDoc: порядок изменения параметров

У меня есть следующие параметры в сопутствующем объекте на Kotlin

    companion object Constants {
    /**
     * Values for the various type of connection that a device can have.
     */
    const val CONNECTION_KEY = "Connection_type"
    const val CONNECTION_AUX = "AUX"
    const val CONNECTION_BLUETOOTH = "Bluetooth"
    const val CONNECTION_USB = "USB"

    /**
     * Unique IDs respectively for devices and media elements.
     */
    const val DEVICE_ID_KEY = "Device_ID"
    const val MEDIA_ID_KEY = "Media_ID"

    /**
     * Various keys that you can find in [Bundle] returned by [getMediaItems].
     */
    const val MEDIA_NAME_KEY = "Media_name"
    const val SONG_IDS_KEY = "Songs_ids"
    const val GENRE_IDS_KEY = "Genres_ids"
    const val ARTIST_IDS_KEY = "Artists_ids"
}

Проблема в том, что в результатах Kdoc я нахожу их в алфавитном порядке.

ARTIST_IDS_KEY

константное значение ARTIST_IDS_KEY: строка

CONNECTION_AUX

константное значение CONNECTION_AUX: строка

ПОДКЛЮЧЕНИЕ_BLUETOOTH

константное значение CONNECTION_BLUETOOTH: строка

CONNECTION_KEY

Значения для различных типов подключения, которые может иметь устройство.

константное значение CONNECTION_KEY: строка

СОЕДИНЕНИЕ_USB

константное значение CONNECTION_USB: строка

DEVICE_ID_KEY

Уникальные идентификаторы соответственно для устройств и медиа-элементов.

константное значение DEVICE_ID_KEY: строка

GENRE_IDS_KEY

константное значение GENRE_IDS_KEY: строка

МЕДИА_ID_KEY

константное значение MEDIA_ID_KEY: строка

МЕДИА_ИМЯ_КЛЮЧ

Различные ключи, которые вы можете найти в Bundle, возвращаются getMediaItems.

константное значение MEDIA_NAME_KEY: строка

SONG_IDS_KEY

константное значение SONG_IDS_KEY: строка

... есть ли способ сохранить первоначальный порядок?


person Lore    schedule 15.11.2019    source источник


Ответы (1)


Вы можете группировать элементы в kDoc, группируя их по коду:

companion object Constants {
    /**
     * Values for the various type of connection that a device can have.
     */
    object Connection {
        const val KEY = "Connection_type"
        const val AUX = "AUX"
        const val BLUETOOTH = "Bluetooth"
        const val USB = "USB"
    }

    /**
     * Unique IDs respectively for devices and media elements.
     */
    object IDs {
        const val DEVICE = "Device_ID"
        const val MEDIA = "Media_ID"
    }

    /**
     * Various keys that you can find in [Bundle] returned by [getMediaItems].
     */
    object BundleKeys {
        const val MEDIA_NAME = "Media_name"
        const val SONG_IDS = "Songs_ids"
        const val GENRE_IDS = "Genres_ids"
        const val ARTIST_IDS = "Artists_ids"   
    }
}
person Bananon    schedule 16.11.2019
comment
спасибо, вы очень полезны. Знаете ли вы, как я могу получить доступ к этим объектам из Java? - person Lore; 22.11.2019
comment
@Lore Вы можете либо import packagename.OuterClass.Constants; и использовать Constants.Connection.KEY, либо удалить модификатор companion и использовать OuterClass.Constants.Connection.KEY, либо переместить эти вложенные объекты из объекта-компаньона в OuterClass и использовать OuterClass.Connection.KEY. - person Bananon; 22.11.2019