Spec-Zone.ru › Kotlin 1.7

CValuesRef

kotlin-stdlib / kotlinx.cinterop / CValuesRef
Требования к платформе и версии: Native (1.3)
abstract class CValuesRef<T : CPointed>

Представляет ссылку на (возможно пустую) последовательность значений C. Она может быть либо стабильным указателем CPointer, либо последовательностью неизменяемых значений CValues.

CValuesRef предназначена для использования в качестве представления в Kotlin для параметров с типом указателя функций C. При передаче CPointer в качестве CValuesRef методу Kotlin-связки, функция C получает именно этот указатель. Передача CValues имеет почти такую же семантику, как передача по значению: функция C получает указатель на временную копию этих значений, и вызывающий код не может наблюдать изменения в этой копии. Копия действительна до возврата функции C. Также существуют другие реализации CValuesRef, которые предоставляют временный указатель, например, специфичные для Kotlin Native функции refTo для прямой передачи массивов примитивных типов в нативное окружение.

Конструкторы

Требования к платформе и версии: Native (1.3)

<init>

Представляет ссылку на (возможно пустую) последовательность значений C. Она может быть либо стабильным указателем CPointer, либо последовательностью неизменяемых значений CValues.

CValuesRef()

Функции

Требования к платформе и версии: Native (1.3)

getPointer

Если эта ссылка является CPointer, возвращает этот указатель, иначе выделяет хранилище для значения в области видимости и возвращает его.

abstract fun getPointer(scope: AutofreeScope): CPointer<T>

Наследники

Требования к платформе и версии: Native (1.3)

CPointer

Указатель C.

class CPointer<T : CPointed> : CValuesRef<T>
Требования к платформе и версии: Native (1.3)

CValues

Последовательность (возможно пустая) неизменяемых значений C. Она самодостаточна и не зависит от нативной памяти.

abstract class CValues<T : CVariable> : CValuesRef<T>

© 2010–2020 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlinx.cinterop/-c-values-ref/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API