kotlin-stdlib
Все типы
Предоставляет базовую реализацию интерфейса Collection только для чтения.
Базовый класс для реализаций CoroutineContext.Element.
Базовый класс для CoroutineContext.Key, связанного с полиморфной реализацией CoroutineContext.Element. Полиморфная реализация элемента подразумевает делегирование вызовов get и minusKey методам getPolymorphicElement и minusPolymorphicKey соответственно.
Абстрактный класс для реализации источников времени, возвращающих показания в виде значений Double в указанной единице измерения.
Базовый класс, упрощающий реализацию итераторов: для реализации итератора достаточно реализовать computeNext и вызвать done по завершении итерации.
Предоставляет базовую реализацию интерфейса List только для чтения.
Абстрактный класс для реализации источников времени, возвращающих показания в виде значений Long в указанной единице измерения.
Предоставляет базовую реализацию интерфейса Map только для чтения.
Предоставляет базовую реализацию интерфейса MutableCollection.
Предоставляет базовую реализацию интерфейса MutableList.
Предоставляет базовую реализацию интерфейса MutableMap.
Предоставляет базовую реализацию интерфейса MutableSet.
Предоставляет базовую реализацию интерфейса Set только для чтения.
Класс исключения, используемый при недостаточном уровне доступа для выполнения операции.
Базовый интерфейс, неявно реализуемый всеми интерфейсами аннотаций. Дополнительные сведения об аннотациях см. в документации по языку Kotlin.
Содержит список возможных вариантов хранения аннотаций.
Содержит список элементов кода, которые могут быть целями аннотаций
Корневой класс иерархии классов Kotlin. Каждый класс Kotlin имеет Any в качестве суперкласса.
Объект, к которому можно добавлять последовательности символов и значения.
Обобщённый массив объектов. При компиляции для JVM экземпляры этого класса представляются как T[]. Экземпляры Array можно создавать с помощью стандартных функций библиотеки arrayOf, arrayOfNulls и emptyArray.
Реализация структуры данных двусторонней очереди на основе массива с изменяемым размером.
Реализация MutableList на основе динамического массива.
Делает аннотированный класс аннотации ключом связанного объекта.
Делает аннотированный класс аннотации ключом связанного объекта.
Делает аннотированный класс аннотации ключом связанного объекта.
Делает аннотированный класс аннотации ключом связанного объекта.
Array
Обобщённый массив объектов, элементы которого можно обновлять атомарно.
Значение Boolean, которое можно обновлять атомарно.
Значение Int, которое всегда обновляется атомарно. Дополнительные сведения о гарантиях атомарности при чтении и записи см. в описании kotlin.concurrent.Volatile.
Значение Int, которое всегда обновляется атомарно. Дополнительные сведения о гарантиях атомарности при чтении и записи см. в описании kotlin.concurrent.Volatile.
Значение Int, которое можно обновлять атомарно.
IntArray, элементы которого всегда обновляются атомарно. Дополнительные сведения о гарантиях атомарности при чтении и записи см. в описании kotlin.concurrent.Volatile.
Массив целых чисел, элементы которого можно обновлять атомарно.
Значение Long, которое всегда обновляется атомарно. Дополнительные сведения о гарантиях атомарности при чтении и записи см. в описании kotlin.concurrent.Volatile.
Значение Long, которое всегда обновляется атомарно. Дополнительные сведения о гарантиях атомарности при чтении и записи см. в описании kotlin.concurrent.Volatile.
Значение Long, которое может обновляться атомарно.
LongArray, элементы которого всегда обновляются атомарно. Дополнительные сведения о гарантиях атомарности при чтении и записи см. в kotlin.concurrent.Volatile.
Массив значений типа long, элементы которого могут обновляться атомарно.
Значение kotlinx.cinterop.NativePtr, которое всегда обновляется атомарно. Дополнительные сведения о гарантиях атомарности при чтении и записи см. в kotlin.concurrent.Volatile.
Значение kotlinx.cinterop.NativePtr, которое всегда обновляется атомарно. Дополнительные сведения о гарантиях атомарности при чтении и записи см. в kotlin.concurrent.Volatile.
kotlinx.cinterop.NativePtr, которое может обновляться атомарно.
Ссылка на объект, которая всегда обновляется атомарно.
Ссылка на объект, которая всегда обновляется атомарно.
Ссылка на объект, которая может обновляться атомарно.
Ресурс, который можно закрыть или освободить.
Предоставляет возможности кодирования и декодирования Base64. Кодирование Base64, определённое в RFC 4648 и некоторых других RFC, преобразует произвольные двоичные данные в последовательность печатных символов.
Помечает API взаимодействия с Objective-C и Swift как бета-версию.
Вектор битов, который при необходимости расширяется и позволяет устанавливать, сбрасывать и считывать биты по их индексам.
Представляет значение, которое может быть true или false.
Массив логических значений. При компиляции для JVM экземпляры этого класса представлены как boolean[].
Итератор последовательности значений типа Boolean.
Позволяет выводить аргументы обобщённых типов функции на основе вызовов в параметре аннотированной функции.
Представляет 8-битное целое число со знаком.
Массив байтов. При компиляции для JVM экземпляры этого класса представлены как byte[].
Итератор последовательности значений типа Byte.
Эффект вызова функционального параметра непосредственно в месте вызова.
Выбрасывается отменяемыми приостанавливающими функциями, если сопрограмма отменена во время приостановки. Указывает на обычную отмену сопрограммы.
Обозначает свойство, являющееся псевдонимом элемента перечисления.
Хранит размер экземпляра типа T: CEnumVar.
Функция C.
Указывает, что геттер или сеттер аннотированного свойства обращается к глобальной переменной C с указанным именем связывания.
Представляет 16-битный символ Unicode.
Исключение, выбрасываемое при ошибке кодирования или декодирования символов.
Массив символов. При компиляции для JVM экземпляры этого класса представлены как char[].
Представляет общую категорию символа в спецификации Unicode.
Представляет направление символа Unicode. Направление символов используется для вычисления визуального порядка текста.
Итератор последовательности значений типа Char.
Прогрессия значений типа Char.
Диапазон значений типа Char.
Представляет доступную для чтения последовательность значений Char.
Определения констант для стандартных кодировок. Эти кодировки гарантированно доступны в каждой реализации платформы Java.
Маркерный интерфейс для объектов, с которыми связано действие очистки.
Источник значений Instant.
Представляет диапазон чисел с плавающей точкой. Расширяет интерфейс ClosedRange, предоставляя специальную операцию lessThanOrEquals для сравнения значений типа домена диапазона.
Представляет диапазон значений (например, чисел или символов), в который входят обе границы — нижняя и верхняя. Дополнительные сведения см. в документации по языку Kotlin.
Делает функцию верхнего уровня доступной из кода C/C++ под указанным именем.
Обобщённая коллекция элементов. Интерфейс позволяет перебирать содержащиеся в ней элементы и проверять, содержится ли в коллекции заданный элемент. На основе этой функциональности реализованы сложные операции, предоставляемые в виде функций-расширений из пакета kotlin.collections.
Для классов, реализующих этот интерфейс, задан полный порядок между их экземплярами.
TimeMark, который можно сравнивать с другими отметками времени, полученными от того же источника времени TimeSource.WithComparableMarks.
Предоставляет функцию сравнения для задания полного порядка между экземплярами типа T.
Эта аннотация помечает внутренние API для интеграции с компонентной моделью WebAssembly.
Эта аннотация помечает внутренние API для интеграции с компонентной моделью WebAssembly.
Эффект условия, которое становится истинным после наблюдения другого эффекта функции.
В предыдущих версиях Kotlin сгенерированный метод 'copy' класса данных всегда имел уровень доступа public, даже если первичный конструктор был непубличным. Это делало непубличный конструктор класса данных доступным.
Предоставляет Kotlin доступ к API консоли.
Набор аннотаций, позволяющих хранить константные значения.
Указывает, что аннотированный функциональный тип имеет префикс размера count для контекстных получателей. Таким образом, @ContextFunctionTypeParams(2) @ExtensionFunctionType Function4<String, Int, Double, Byte, Unit> — это нормализованное представление context(String, Int) Double.(Byte) -> Unit.
Интерфейс, представляющий продолжение после точки приостановки, которое возвращает значение типа T.
Помечает элемент контекста корутины, перехватывающий продолжения корутин. Инфраструктура корутин использует ContinuationInterceptor.Key для получения перехватчика и перехватывает все продолжения корутин с помощью вызовов interceptContinuation.
Предоставляет область видимости, в которой можно использовать функции DSL-контрактов, такие как returns, callsInPlace и другие, чтобы описать контракт функции.
CPointed без заданной интерпретации.
Указатель с непрозрачным типом.
Переменная, содержащая COpaquePointer.
Контекст для функции copyAction, передаваемой в Path.copyToRecursively.
Результат функции copyAction, передаваемой в Path.copyToRecursively, который задаёт дальнейшие действия при копировании записи.
Данные или код C.
Указатель C.
Переменная данных C, содержащая указатель на T.
Переменная с примитивным типом C, размещённая в памяти.
Архитектура центрального процессора.
Переменная со структурным типом C, размещённая в памяти.
Одиночное неизменяемое значение C. Оно является самодостаточным и не зависит от нативной памяти.
Последовательность (возможно, пустая) неизменяемых значений C. Она является самодостаточной и не зависит от нативной памяти.
Переменная данных C, размещённая в памяти.
Предоставляет Kotlin доступ к API Date.
Примечание: этот API нестабилен и может измениться в любом выпуске.
Определяет глубоко рекурсивную функцию, которая хранит свой стек в куче, что позволяет выполнять очень глубокие рекурсивные вычисления без использования фактического стека вызовов. Чтобы начать вызов этой глубоко рекурсивной функции, используйте её функцию invoke. Как правило, её следует использовать, если глубина рекурсии превышает тысячу вызовов.
Класс области видимости для объявления функции DeepRecursiveFunction, определяющий методы callRecursive для рекурсивного вызова этой или другой функции DeepRecursiveFunction с размещением кадра активации вызова в куче.
Стандартные делегаты свойств.
Помечает аннотированное объявление как устаревшее.
Помечает аннотированное объявление как устаревшее. В отличие от Deprecated, уровень диагностического сообщения не является постоянным значением, а зависит от версии API, используемой при обращении (значения аргумента -api-version при компиляции модуля, в котором находится обращение). Если версия API не меньше hiddenSince, объявление будет недоступно из кода (как если бы оно было помечено уровнем DeprecationLevel.HIDDEN); в противном случае, если версия API не меньше errorSince, обращение будет помечено как ошибка (как при DeprecationLevel.ERROR); в противном случае, если версия API не меньше warningSince, обращение будет помечено как предупреждение (как при DeprecationLevel.WARNING); иначе аннотация игнорируется.
Возможные уровни устаревания. Уровень определяет, как использование устаревшего элемента отображается в коде.
Отсоединённый граф объектов инкапсулирует передаваемый отсоединённый подграф, к которому нельзя получить доступ извне, пока он не будет присоединён с помощью функции-расширения attach.
Представляет 64-битное число с плавающей точкой двойной точности IEEE 754.
Массив значений типа Double. При компиляции для JVM экземпляры этого класса представлены как double[].
Итератор последовательности значений типа Double.
При применении к классу аннотации X указывает, что X определяет язык DSL.
Представляет промежуток времени между двумя моментами времени.
Список возможных единиц измерения времени, в которых можно выразить длительность.
Представляет универсальный тип для взаимодействия с JS.
Принудительно выполняет раннюю инициализацию свойства верхнего уровня, а не отложенную до первого обращения к файлу и/или свойству.
Принудительно выполняет раннюю инициализацию свойства верхнего уровня, а не отложенную до первого обращения к файлу и/или свойству.
Принудительно выполняет раннюю инициализацию свойства верхнего уровня, а не отложенную до первого обращения к файлу и/или свойству.
Принудительно выполняет раннюю инициализацию свойства верхнего уровня, а не отложенную до первого обращения к файлу и/или свойству. Эту аннотацию можно использовать как временное средство миграции при переходе от прежней схемы инициализации Kotlin/Native «ранняя по умолчанию» к новой схеме «отложенная по умолчанию».
Представляет эффект вызова функции: непосредственно наблюдаемый, например нормальное завершение функции, или побочный, например вызов лямбда-параметра функции на месте.
Пустой контекст корутины.
Общий базовый класс всех классов enum. Подробнее о классах enum см. в документации по языку Kotlin.
Специализированная неизменяемая реализация интерфейса List, содержащая все элементы указанного типа enum E. EnumEntries содержит все элементы enum в том порядке, в котором они объявлены в исходном коде, что соответствует значениям Enum.ordinal.
Помеченное объявление expect уточняет объявление expect из ближайшего транзитивного набора исходных наборов dependsOn. Помеченное объявление называется уточнением. Аннотацию можно ставить только на объявления expect верхнего уровня.
Экспериментальная маркерная аннотация для API связанных объектов.
Экспериментальная маркерная аннотация для API связанных объектов.
Экспериментальная маркерная аннотация для API связанных объектов.
Экспериментальная маркерная аннотация для API связанных объектов.
Эта аннотация помечает экспериментальный API атомарных операций Kotlin.
Помечает API, связанный с экспериментальной возможностью Kotlin контекстных параметров.
Этот маркер обозначает экспериментальный API объявления контрактов и используется для явного включения этой возможности при объявлении контрактов пользовательских функций.
Эта аннотация помечает экспериментальный API для кодирования и декодирования двоичных данных и печатных последовательностей символов ASCII.
Этот маркер обозначает экспериментальный API объявления расширенных контрактов и используется для явного включения этой возможности при объявлении расширенных контрактов пользовательских функций.
Помечает API, связанный с внешними языками, как бета-версию.
Эта аннотация помечает экспериментальный API коллекций JS, позволяющий работать с нативными коллекциями JS. API может быть полностью удалён в любом следующем выпуске.
Помечает экспериментальные аннотации экспорта JS.
Помечает экспериментальную аннотацию JsFileName.
Помечает экспериментальную аннотацию JsNoRuntime.
Эта аннотация помечает экспериментальный API рефлексии Kotlin/JS, позволяющий создать экземпляр заданного KClass. API может быть полностью удалён в любом следующем выпуске.
Помечает экспериментальную аннотацию JsStatic.
Маркер экспериментального API поддержки мультиплатформенной разработки.
Эта аннотация помечает API стандартной библиотеки, доступный только в Kotlin/Native, который считается экспериментальным и на который не распространяются общие гарантии совместимости, предоставляемые для стандартной библиотеки: поведение такого API может измениться или API может быть полностью удалён в любом следующем выпуске.
Эта аннотация помечает экспериментальную аннотацию ObjCEnum, которая считается экспериментальной и на которую не распространяются общие гарантии совместимости, предоставляемые для стандартной библиотеки: поведение такой аннотации может измениться или аннотация может быть полностью удалена в любом следующем выпуске.
Эта аннотация помечает экспериментальную аннотацию ObjCName.
Эта аннотация помечает экспериментальные аннотации уточнения экспорта Objective-C.
Эта аннотация помечает расширения и функции верхнего уровня для работы с java.nio.file.Path, которые считаются экспериментальными.
Эта аннотация помечает API стандартной библиотеки, который считается экспериментальным и на который не распространяются общие гарантии совместимости, предоставляемые для стандартной библиотеки: поведение такого API может измениться или API может быть полностью удалён в любом следующем выпуске.
Эта аннотация помечает экспериментальные дополнения к API стандартной библиотеки, связанные с корутинами.
Эта аннотация помечает экспериментальную предварительную версию языковой возможности SubclassOptInRequired.
Эта аннотация помечает экспериментальную предварительную версию API стандартной библиотеки для измерения времени и работы с длительностями.
Экспериментальный маркер для аннотаций, расширяющих вывод типов.
Помечает API, зависящий от экспериментальных беззнаковых типов, включая сами эти типы.
Эта аннотация помечает экспериментальный API Kotlin Uuid.
Эта аннотация помечает экспериментальный API для перегрузки функций.
Помечает API, связанный с взаимодействием с платформой Wasm, как экспериментальный.
Помечает API, связанный с взаимодействием с платформой Wasm, как экспериментальный.
Помечает API, связанный с взаимодействием с JS, как экспериментальный.
Помечает API, связанный с взаимодействием с JS, как экспериментальный.
Делает подкласс класса Objective-C в Kotlin доступным для поиска во время выполнения после вызова функции Kotlin main.
В предыдущих версиях Kotlin сгенерированный метод 'copy' класса данных всегда имел открытый уровень видимости, даже если первичный конструктор был непубличным. Это делало непубличный конструктор класса данных доступным извне.
Указывает, что аннотированный функциональный тип представляет функцию-расширение.
Класс исключения, используемый, когда файл, который нужно создать или скопировать, уже существует.
Базовый класс исключений файловой системы.
Этот класс предназначен для реализации различных способов обхода файлов. Он позволяет перебирать все файлы в указанном каталоге.
Построитель для реализации FileVisitor, создаваемого функцией fileVisitor.
Перечисление, описывающее возможные направления обхода. Их два: от родительских элементов к дочерним и от дочерних к родительским. В обоих случаях используется поиск в глубину.
Представляет число с плавающей точкой одинарной точности (32 бита) формата IEEE 754.
Массив чисел типа float. При компиляции для JVM экземпляры этого класса представлены как float[].
Итератор последовательности значений типа Float.
Принудительно переключает состояние потока с Runnable на Native вокруг прямого вызова аннотированного @SymbolName external fun.
Этот класс был полезен только при использовании устаревшего менеджера памяти. Вместо него используйте AtomicReference.
Исключение, возникающее, когда заморозка невозможна.
API заморозки объявлен устаревшим начиная с Kotlin 1.7.20, а поддержка устаревшего менеджера памяти была полностью удалена из компилятора в версии 1.9.20.
Представляет значение функционального типа, например лямбду, анонимную функцию или ссылку на функцию.
Класс, представляющий абстрактное вычисление, результат которого может стать доступным в будущем.
Состояние объекта future.
Примечание: этот API нестабилен и может измениться в любом выпуске.
Этот класс представляет статистику одного запуска сборщика мусора. Он предназначен только для тестирования и отладки.
Представляет источник элементов с функцией keyOf, которую можно применить к каждому элементу, чтобы получить его ключ.
Реализация MutableMap на основе хеш-таблицы.
Реализация MutableSet на основе хеш-таблицы.
Представляет параметры шестнадцатеричного формата для форматирования и разбора массивов байтов и целочисленных значений со знаком и без знака.
Указывает компилятору Kotlin удалить этот класс, функцию или свойство из публичного API Objective-C.
Метааннотация, указывающая компилятору Kotlin удалить аннотированный класс, функцию или свойство из публичного API Objective-C.
Описывает ситуацию, в которой предоставленное условие гарантированно истинно в теле функционального параметра.
Указывает, что вызовы аннотированной функции можно игнорировать. Такие вызовы не вызывают предупреждение от анализатора возвращаемых значений Kotlin, даже если их результат не используется.
Неизменяемый массив байтов, создаваемый во время компиляции.
Эта аннотация помечает объявления Kotlin expect, которые неявно получают фактическую реализацию в Java.
Исключение, возникающее при обращении к глобальной переменной из неподходящего контекста выполнения.
Класс данных, представляющий значение из коллекции или последовательности вместе с его индексом в этой коллекции или последовательности.
Момент времени.
Представляет 32-разрядное целое число со знаком.
Массив целых чисел. При использовании JVM экземпляры этого класса представлены как int[].
Итератор последовательности значений типа Int.
Последовательность значений типа Int.
Диапазон значений типа Int.
Указывает компилятору Kotlin создавать перегрузки, задавая версии, в которых были добавлены необязательные параметры после первоначальной публикации библиотеки. Созданные перегрузки скрыты и предназначены для обеспечения бинарной совместимости: они позволяют пользователям библиотеки перейти на более новую версию без повторной компиляции кода.
Исключение, возникающее при попытке изменить замороженные объекты.
Указывает, сколько раз функция вызывает свой функциональный параметр непосредственно.
Классы, реализующие этот интерфейс, можно представить в виде последовательности элементов, по которой можно выполнять итерацию.
Итератор коллекции или другой сущности, которую можно представить в виде последовательности элементов. Позволяет последовательно обращаться к элементам.
Любое значение JavaScript, кроме null и undefined
Любое значение JavaScript, кроме null и undefined
Массив JavaScript
Массив JavaScript
Предоставляет Kotlin доступ к JavaScript Array.
Примитивный тип bigint в JavaScript
Примитивный логический тип в JavaScript
Примитивный логический тип в JavaScript
Представляет конструктор класса. Экземпляры JsClass можно передавать в API JavaScript, ожидающие ссылку на конструктор.
Обёртка для исключения, возникшего в коде JavaScript. Все исключения, возникающие в коде JS, передаются коду Wasm как JsException.
Обёртка для исключения, возникшего в коде JavaScript. Все исключения, возникающие в коде JS, передаются коду Wasm как JsException.
Экспортирует объявление верхнего уровня для платформы JS.
При размещении на параметре функции требует, чтобы тип передаваемого аргумента был внешним.
При размещении на внешнем интерфейсе или классе требует, чтобы все его дочерние интерфейсы, классы и объекты также были внешними.
Задаёт имя скомпилированного файла, созданного из аннотированного исходного файла, вместо имени по умолчанию.
Реализует аннотированную функцию на JavaScript и автоматически импортирует её в Wasm. Строка кода должна содержать выражение JS, результатом вычисления которого является функция JS с сигнатурой, соответствующей аннотированной функции Kotlin.
Реализует аннотированную функцию на JavaScript и автоматически импортирует её в Wasm. Строка кода должна содержать выражение JS, результатом вычисления которого является функция JS с сигнатурой, соответствующей аннотированной функции Kotlin.
Предоставляет Kotlin доступ к JavaScript Map.
Обозначает объявление external, которое необходимо импортировать из собственной библиотеки JavaScript.
Задает объявлению (функции, свойству или классу) определенное имя в JavaScript.
Обозначает объявление external, которое можно использовать без системы модулей.
Помечает интерфейс, который не будет использоваться во время выполнения на платформе JS.
Примитивный тип числа JavaScript
Примитивный тип числа JavaScript
Предоставляет Kotlin доступ к объекту JSON JavaScript.
Добавляет префикс к объявлениям external в исходном файле.
Предоставляет Kotlin доступ к типу TypeScript ReadonlyArray.
Предоставляет Kotlin доступ к типу TypeScript ReadonlyMap.
Предоставляет Kotlin доступ к типу TypeScript ReadonlySet.
Значение JavaScript, которое может служить ссылкой на любое значение Kotlin.
Предоставляет Kotlin доступ к множеству Set JavaScript.
Указывает, что для помеченного элемента объекта-компаньона будет сгенерирован дополнительный статический метод, если элемент является функцией. Если элемент является свойством, будут сгенерированы дополнительные статические методы чтения и записи.
Примитивный тип строки JavaScript
Примитивный тип строки JavaScript
Объявляет доступ к объявлению по общеизвестному символу Symbol в JavaScript.
Заставляет компилятор генерировать методы доступа для обеспечения совместимости с помеченным классом или интерфейсом.
Запрещает компилятору генерировать методы доступа для обеспечения совместимости с помеченным классом или интерфейсом.
Эта аннотация указывает компилятору предоставлять API функций с inline-классами (а также классов, содержащих их, включая сами inline-классы) в упакованном виде для эффективного использования из Java.
Указывает компилятору Kotlin не генерировать геттеры и сеттеры для этого свойства и предоставлять его как поле.
Указывает, что данный класс-значение является inline-классом.
Указывает компилятору Kotlin создать многофайловый класс, одной из частей которого будут объявленные в этом файле функции и свойства верхнего уровня. Имя соответствующего многофайлового класса задается аннотацией JvmName.
Задает имя класса или метода Java, генерируемого на основе этого элемента.
Указывает компилятору Kotlin сгенерировать перегруженные версии этой функции, в которых используются значения параметров по умолчанию.
Указывает компилятору пометить класс как record и сгенерировать соответствующие методы toString/equals/hashCode
Делает класс аннотации повторяемым в Java и Kotlin. Повторяемую аннотацию можно применить к одному и тому же элементу несколько раз.
Заставляет помеченную функцию-лямбду реализовать java.io.Serializable, генерирует красивую реализацию toString и добавляет метаданные рефлексии.
Указывает, что для этого элемента необходимо сгенерировать дополнительный статический метод, если элемент является функцией. Если элемент является свойством, необходимо сгенерировать дополнительные статические методы чтения и записи.
Указывает компилятору генерировать или не генерировать подстановочные знаки для аргументов типа, соответствующих параметрам с вариативностью на месте объявления, например, такой как у Collection<out T>.
Устанавливает флаг ACC_SYNTHETIC для помеченного элемента в байт-коде Java.
Указывает компилятору генерировать подстановочный знак для помеченных аргументов типа, соответствующих параметрам с вариативностью на месте объявления.
Представляет аннотированный элемент и позволяет получать его аннотации. Дополнительные сведения см. в документации по языку Kotlin.
Представляет аннотированный элемент и позволяет получать его аннотации. Дополнительные сведения см. в документации по языку Kotlin.
Представляет вызываемую сущность, например функцию или свойство.
Представляет класс и предоставляет возможности интроспекции. Экземпляры этого класса можно получить с помощью синтаксиса ::class. Дополнительные сведения см. в документации по языку Kotlin.
Классификатором является либо класс, либо параметр типа.
Представляет сущность, которая может содержать объявления других сущностей, например класс или пакет.
Представляет сущность, которая может содержать объявления других сущностей, например класс или пакет.
Представляет функцию и предоставляет возможности интроспекции.
Представляет свойство, объявленное как var.
Представляет свойство var без какого-либо получателя.
Представляет свойство var, операции с которым принимают один получатель в качестве параметра.
Представляет свойство var, операции с которым принимают два получателя в качестве параметров.
Представляет версию стандартной библиотеки Kotlin.
Представляет параметр, переданный функции или геттеру/сеттеру свойства, включая параметры this и получателя расширения.
Представляет свойство, например именованное объявление val или var. Экземпляры этого класса можно получить с помощью оператора ::.
Представляет свойство без получателя. Такое свойство либо изначально объявлено в контексте без получателя, например в пакете, либо его получатель привязан к нему.
Представляет свойство, операции с которым принимают один получатель в качестве параметра.
Представляет свойство, операции с которым принимают два получателя в качестве параметров, например свойство расширения, объявленное в классе.
Представляет тип. Тип обычно является либо классом с необязательными аргументами типа, либо параметром типа некоторого объявления, а также содержит информацию о допустимости null.
Представляет объявление параметра типа класса или вызываемого элемента. Дополнительную информацию см. в документации по языку Kotlin.
Представляет проекцию типа. Проекция типа обычно является аргументом другого типа в использовании типа. Например, в типе Array<out Number>, out Number — ковариантная проекция типа, представленного классом Number.
Представляет вариативность, применяемую к параметру типа в месте объявления (вариативность на месте объявления) или к типу в проекции (вариативность на месте использования).
Видимость — это аспект объявления Kotlin, определяющий, где это объявление доступно в исходном коде. Видимость можно изменить одним из следующих модификаторов: public, protected, internal, private.
Представляет значение с ленивой инициализацией.
Задает способ синхронизации и публикации инициализации экземпляра Lazy между несколькими потоками. На платформах, где понятия синхронизации и потоков отсутствуют (JS и WASM), все режимы считаются эквивалентными реализации по умолчанию.
Реализация MutableMap на основе хеш-таблицы, сохраняющая порядок вставки.
Реализация MutableSet на основе хеш-таблицы, сохраняющая порядок вставки.
Обобщенная упорядоченная коллекция элементов. Интерфейс позволяет перебирать содержащиеся в коллекции элементы, обращаться к элементам по индексу, проверять, содержит ли список определенные элементы, и искать индексы заданных значений. На основе этой функциональности реализованы сложные операции, предоставляемые в виде функций-расширений kotlin.collections.
Итератор коллекции, поддерживающей доступ по индексам.
Представляет 64-разрядное знаковое целое число.
Массив значений типа Long. При компиляции для JVM экземпляры этого класса представлены как long[].
Итератор последовательности значений типа Long.
Прогрессия значений типа Long.
Диапазон значений типа Long.
Коллекция пар объектов (ключей и значений), поддерживающая получение значения, соответствующего каждому ключу, и проверку наличия заданного ключа или значения в коллекции. Map также позволяет перебирать ключи, значения или пары ключ-значение (элементы). На основе этой функциональности реализованы сложные операции, предоставляемые в виде функций-расширений kotlin.collections.
Представляет результаты одной захватывающей группы в MatchResult для Regex.
Представляет коллекцию захваченных групп в одном совпадении регулярного выражения.
Расширяет MatchGroupCollection, добавляя возможность получать найденные группы по имени, если регулярное выражение поддерживает такую возможность.
Представляет результаты одного совпадения с регулярным выражением.
Распределитель линейной памяти WebAssembly.
Распределитель линейной памяти WebAssembly.
Модель памяти.
Этот класс представляет статистику использования памяти в одном пуле памяти.
Эта аннотация присутствует в каждом файле класса, созданном компилятором Kotlin, и считывается компилятором и средствами рефлексии. Параметры намеренно имеют очень короткие имена в JVM: эти имена присутствуют во всех сгенерированных файлах классов, поэтому желательно уменьшить их размер.
Эта метааннотация указывает, что аннотация является частью публичного API и поэтому должна включаться в сгенерированную документацию для элемента, к которому она применяется.
Помечает область видимости (файл или класс), в которой результаты всех функций необходимо использовать. Проверка возвращаемых значений Kotlin выдаст предупреждение, если результат вызова функции, результат которой нельзя игнорировать, не используется.
Обобщенная коллекция элементов, поддерживающая перебор, добавление и удаление элементов, а также проверку наличия определенных элементов в коллекции. На основе этой функциональности реализованы сложные операции, предоставляемые в виде функций-расширений kotlin.collections.
Изменяемый буфер данных, доступный из нескольких потоков. К нему могут одновременно обращаться несколько рабочих потоков.
Классы, наследующие этот интерфейс, можно представить в виде последовательности элементов, по которой можно выполнять итерацию и во время которой поддерживается удаление элементов.
Итератор для изменяемой коллекции. Позволяет удалять элементы во время итерации.
Обобщённая упорядоченная коллекция элементов, которая поддерживает добавление, замену и удаление элементов, а также перебор содержащихся в ней элементов, доступ к ним по индексу и проверку наличия в коллекции определённого значения.
Итератор для изменяемой коллекции с поддержкой доступа по индексу. Позволяет добавлять, изменять и удалять элементы во время итерации.
Коллекция пар объектов (ключей и значений), которая позволяет получать значение, соответствующее каждому ключу, а также добавлять новые пары, удалять или обновлять существующие.
Обобщённая неупорядоченная коллекция уникальных элементов, которая поддерживает добавление и удаление элементов, перебор элементов и проверку наличия в коллекции определённого значения.
Помечает функцию-член внешнего объявления как «оператор invoke» объекта JavaScript. Каждый вызов этой функции преобразуется в вызов самого объекта.
Сущность, которой соответствует указатель на объект в нативном коде. Предполагается, что подтипы представляют интерпретации данных или кода, на которые указывает этот указатель.
Эта аннотация помечает API стандартной библиотеки Kotlin/Native, которое изменяет поведение среды выполнения Kotlin или иным образом обращается к нему.
Запрещает встраивание этой функции/свойства специализированным встраивателем K/N. Примечание: это не связано с ключевым словом inline; речь идёт об отдельном этапе встраивания, предназначенном для оптимизации. При этом LLVM всё ещё может встроить функцию/свойство.
Класс исключения, используемый, если файл, который нужно скопировать, не существует.
У Nothing нет экземпляров. Nothing можно использовать для представления «значения, которое никогда не существует»: например, если функция имеет тип возвращаемого значения Nothing, это означает, что она никогда не возвращает управление (всегда выбрасывает исключение).
Исключение выбрасывается, чтобы указать, что тело метода ещё не реализовано.
Суперкласс для всех платформенных классов, представляющих числовые значения.
Обеспечивает доступ к методу Kotlin в классе Objective-C через диспетчеризацию Objective-C, чтобы его можно было использовать как действие, отправляемое элементом управления в UIKit или AppKit.
Указывает компилятору Kotlin сгенерировать typedef NS_ENUM для аннотированного класса перечисления. Имя сгенерированного типа будет совпадать с именем типа перечисления с добавлением «NSEnum». Его можно переопределить параметром «name», который используется как точное имя. Кроме того, отдельное имя для Swift можно указать с помощью параметра swiftName. В Objective-C литералы перечисления всегда получают префикс с именем типа, а первый символ имени элемента всегда преобразуется в верхний регистр, независимо от того, задано ли имя неявно или явно с помощью ObjCName либо EntryName, поскольку они находятся в глобальном пространстве имён. В Swift такие префиксы для устранения неоднозначности не добавляются. Значения NSEnum доступны через свойство «nsEnum».
Указывает компилятору Kotlin использовать пользовательское имя в Objective-C и/или Swift для этого класса, свойства, параметра или функции.
Обеспечивает возможность задавать значение свойства Kotlin в классе Objective-C через диспетчеризацию Objective-C, чтобы использовать его как выходной разъём IB.
Помечает функции, для определения конфликта между которыми следует использовать правила Objective-C.
Реализует основную логику делегата свойства для свойства, доступного для чтения и записи, вызывая функции обратного вызова при его изменении.
Эта аннотация помечает API стандартной библиотеки Kotlin/Native, который считается устаревшим и постепенно выводится из эксплуатации.
Помечает весь API, связанный с Worker, как устаревший.
Помечает все API, связанные с Worker, как устаревшие.
Помечает все API, связанные с Worker, как устаревшие.
Перечисление, которое можно использовать для задания поведения функции copyRecursively() в случае исключительных ситуаций.
Результат функции onError, передаваемый в Path.copyToRecursively и задающий дальнейшие действия при возникновении исключения.
Представляет диапазон значений (например, чисел или символов), в который не входит верхняя граница. Дополнительные сведения см. в документации по языку Kotlin.
Позволяет использовать API, обозначенный заданными маркерами, в аннотированном файле, объявлении или выражении. Если объявление аннотировано с помощью OptIn, для его использования не требуется явно разрешать использование этого API.
Помечает ожидаемый класс аннотации, для которого не обязательно иметь фактические аналоги на всех платформах.
Семейство операционных систем.
Включает выбор перегрузки на основе типа значения, возвращаемого аргументом-лямбдой.
Представляет обобщённую пару из двух значений.
Аннотирует аргументы типа функционального типа и хранит соответствующее имя параметра, указанное пользователем в объявлении типа (если оно есть).
Перечисление параметров обхода для функции Path.walk. Параметры можно объединять, чтобы задать нужный порядок и поведение обхода.
Объект, описывающий платформу, на которой выполняется программа.
Тип указателя на линейную память. Соответствует типу i32 в 32-разрядной архитектуре Wasm.
Тип указателя на линейную память. Соответствует типу i32 в 32-разрядной архитектуре Wasm.
Предоставляет Kotlin доступ к объекту Promise JavaScript.
Базовый интерфейс, который можно использовать для реализации поставщиков делегатов свойств.
При применении к классу или члену с внутренней видимостью позволяет использовать его из общедоступных встроенных функций и фактически делает его общедоступным.
Указывает компилятору Kotlin рассматривать аннотированный класс Java как чистую реализацию заданного интерфейса Kotlin. Здесь «чистая» означает, что каждый параметр типа класса становится аргументом типа, не относящегося к платформенному, в этом интерфейсе.
Абстрактный класс, реализуемый алгоритмами генерации случайных чисел.
Маркерный интерфейс, указывающий, что реализация List поддерживает быстрый доступ по индексу.
Базовый интерфейс, который можно использовать для реализации делегатов свойств только для чтения.
Базовый интерфейс, который можно использовать для реализации делегатов свойств для чтения и записи.
Мета-аннотация, указывающая компилятору Kotlin пометить аннотированную функцию или свойство как swift_private в сгенерированном API Objective-C.
Представляет скомпилированное регулярное выражение. Предоставляет функции для поиска соответствий шаблону в строках, замены найденных вхождений и разделения текста по совпадениям.
Предоставляет значения перечисления для настройки параметров регулярного выражения.
Предоставляет Kotlin доступ к объекту RegExp JavaScript.
Представляет возвращаемое значение RegExp.exec.
Эта мета-аннотация определяет, что аннотацию можно применить к одному элементу кода два или более раз.
Задаёт фрагмент кода, которым можно заменить устаревшую функцию, свойство или класс. Такие инструменты, как IDE, могут автоматически применять замены, указанные с помощью этой аннотации.
Псевдоним типа, описывающий пользовательский обработчик сообщений об исключениях.
Указывает, что аннотированный класс аннотации является маркером API, для использования которого требуется явное разрешение.
Классы и интерфейсы, помеченные этой аннотацией, ограничивают возможности при использовании в качестве получателей функций-расширений suspend. Такие расширения suspend могут вызывать только другие функции-члены или функции-расширения suspend для этого конкретного получателя и не могут вызывать произвольные приостанавливающие функции.
Эта мета-аннотация определяет, сохраняется ли аннотация в двоичном выводе и доступна ли она для рефлексии. По умолчанию оба значения равны true.
Описывает ситуацию, когда функция нормально завершается с заданным возвращаемым значением.
Описывает ситуацию, когда функция нормально завершается с любым ненулевым возвращаемым значением.
Этот класс представляет статистику корневого набора для запуска сборщика мусора, разделённую по пулам корневого набора. Предполагается, что эти узлы используются, даже если на них нет ссылок.
Последовательность, возвращающая значения через свой итератор. Значения вычисляются лениво, и последовательность может быть бесконечной.
Обобщённая неупорядоченная коллекция уникальных элементов. Интерфейс позволяет проверять, содержится ли в ней элемент, и перебирать все элементы. На основе этой функциональности реализованы сложные операции, предоставляемые в виде функций-расширений в kotlin.collections.
Эта аннотация не оказывает никакого эффекта, поэтому её использования можно безопасно удалить.
Представляет 16-битное целое число со знаком.
Массив значений типа Short. При компиляции для JVM экземпляры этого класса представлены как short[].
Итератор для последовательности значений типа Short.
Указывает компилятору Kotlin пометить эту функцию или свойство как swift_private в сгенерированном API Objective-C.
Эффект, который можно наблюдать после вызова функции.
Указывает первую версию Kotlin, в которой появилось объявление. Использование объявления с указанием более старой версии API (с помощью параметра командной строки -api-version) приведёт к ошибке.
Этот класс позволяет создать стабильную ссылку на любой объект Kotlin. После преобразования в CPointer её можно безопасно передать в нативный код, например, чтобы получить её в обратном вызове Kotlin.
Throwable, поддерживающий восстановление трассировки стека и явно предоставляющий процедуру для её копирования.
Помечает метод JVM, сгенерированный из аннотированной функции, как strictfp. Это означает, что для повышения переносимости точность операций с плавающей точкой, выполняемых внутри метода, должна быть ограничена.
Класс String представляет строки символов. Все строковые литералы в программах Kotlin, например "abc", реализованы как экземпляры этого класса.
Изменяемая последовательность символов.
Аннотация, помечающая открытые для наследования классы и интерфейсы и указывающая, что для реализации или расширения таких объявлений требуется явное согласие на использование.
Подавляет указанные предупреждения компиляции для аннотированного элемента.
Представляет значение функционального типа, например лямбду, анонимную функцию или ссылку на функцию.
Этот класс представляет статистику сборки мусора в одном пуле памяти.
Это опасная устаревшая внутренняя аннотация. Пожалуйста, не используйте её.
Помечает метод JVM, сгенерированный из аннотированной функции, как synchronized. Это означает, что монитор экземпляра (или класса для статических методов), в котором определён метод, защищает его от одновременного выполнения несколькими потоками.
Эта метааннотация указывает, какие элементы кода могут быть целями аннотации.
Источник времени с программно обновляемыми показаниями. Он полезен в тестах как предсказуемый источник времени.
Помечает свойство верхнего уровня с полем хранения или объект как локальный для потока. Объект остаётся изменяемым, и его состояние можно менять, но у каждого потока будет собственная копия этого объекта, поэтому изменения в одном потоке не отражаются в другом.
Базовый класс для всех ошибок и исключений. Выбрасывать или перехватывать можно только экземпляры этого класса.
Эта аннотация указывает, какие исключения должны быть объявлены функцией при компиляции в метод платформы Kotlin/JVM и Kotlin/Native.
Эта аннотация указывает, какие исключения должны быть объявлены функцией при компиляции в метод JVM.
Класс данных, представляющий результат выполнения действия вместе с продолжительностью прошедшего временного интервала.
Представляет момент времени, отмеченный на конкретном TimeSource. Остаётся связанным с источником времени, из которого был получен, и позволяет узнать продолжительность времени, прошедшего с этого момента (см. функцию elapsedNow).
Источник времени для измерения временных интервалов.
Примечание: современный диспетчер памяти Kotlin/Native позволяет совместно использовать объекты между потоками без дополнительных действий, поэтому TransferMode действует только в устаревшем диспетчере памяти.
Помечает поле хранения аннотированного свойства модификатором transient на платформе JVM. Это означает, что при сериализации с помощью механизма java.io.Serializable оно не включается в сериализованное представление объекта.
Представляет тройку значений
Определяет названия символов Unicode, используемых в типографике.
Прогрессия значений типа UInt.
Диапазон значений типа UInt.
Прогрессия значений типа ULong.
Диапазон значений типа ULong.
Тип с единственным значением: объект Unit. Этот тип соответствует типу void в Java.
Маркер для объявлений, которые зависят от числовых типов с разной разрядностью как минимум на двух платформах.
Подавляет ошибки конфликта вариантности
Эта аннотация помечает API для работы с неуправляемой линейной памятью WebAssembly.
Эта аннотация помечает API для работы с неуправляемой линейной памятью WebAssembly.
Представляет универсальный уникальный идентификатор (UUID), также известный как глобальный уникальный идентификатор (GUID).
Помечает резервное поле JVM аннотированного свойства var как volatile, то есть чтение и запись этого поля выполняются атомарно, а результаты записи всегда становятся видны другим потокам. Если другой поток считывает значение этого поля (например, через его аксессор), он видит не только это значение, но и все побочные эффекты, приведшие к его записи.
Помечает резервное поле аннотированного свойства var как volatile, то есть чтение и запись этого поля выполняются атомарно, а результаты записи всегда становятся видны другим потокам. Если другой поток считывает значение этого поля (например, через его аксессор), он видит не только это значение, но и все побочные эффекты, приведшие к его записи.
Класс WeakReference инкапсулирует слабую ссылку на объект. С её помощью можно получить сильную ссылку на объект или вернуть null, если объект уже был уничтожен менеджером памяти.
Представляет объект WebAssembly, который служит пространством имён для всех функций, связанных с WebAssembly.
Класс, представляющий рабочий поток.
Общая ссылка на объект Kotlin, которая не замораживает объект, на который ссылается, когда сама ссылка замораживается.
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/all-types.html