KTypeProjection
data class KTypeProjection
Представляет проекцию типа. Проекция типа обычно является аргументом для другого типа в использовании типа. Например, в типе Array<out Number>, out Number является ковариантной проекцией типа, представленного классом Number.
Проекция типа может быть проекцией звёздочкой или сущностью, состоящей из определённого типа и необязательной вариативности.
Дополнительную информацию можно найти в документации языка Kotlin.
Конструкторы
<init>
Представляет проекцию типа. Проекция типа обычно является аргументом для другого типа в использовании типа. Например, в типе Array<out Number>, out Number является ковариантной проекцией типа, представленного классом Number.
KTypeProjection(variance: KVariance?, type: KType?)
Свойства
type
Тип, указанный в проекции, или null , если это проекция звёздочкой.
val type: KType?
variance
Вариативность места использования, указанная в проекции, или null , если это проекция звёздочкой.
val variance: KVariance?
Функции
toString
Возвращает строковое представление объекта.
fun toString(): String
Свойства объекта-компаньона
STAR
Проекция звёздочкой, обозначается символом *. Например, в типе KClass<*>, * является проекцией звёздочкой. Дополнительную информацию можно найти в документации языка Kotlin.
val STAR: KTypeProjection
Функции объекта-компаньона
contravariant
Создаёт контравариантную проекцию заданного типа, обозначаемого модификатором in , применённым к типу. Например, в типе MutableList<in Number>, in Number является контравариантной проекцией типа класса Number.
fun contravariant(type: KType): KTypeProjection
covariant
Создаёт ковариантную проекцию заданного типа, обозначаемого модификатором out , применённым к типу. Например, в типе Array<out Number>, out Number является ковариантной проекцией типа класса Number.
fun covariant(type: KType): KTypeProjection
invariant
Создаёт инвариантную проекцию заданного типа. Инвариантная проекция — это сам тип без каких-либо модификаторов вариативности места использования. Например, в типе Set<String>, String является инвариантной проекцией типа, представленного классом String.
fun invariant(type: KType): KTypeProjection
© 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/kotlin.reflect/-k-type-projection/index.html