tipos de nulos anulables de comprobación de reflexión

¿Cómo puedo probar si una variable KType contiene un valor de tipo kotlin anulable (por ejemplo, Int.)?

yo tengo

var type: KType 

variable procedente de unKProperty<*>.returnType y necesito detectar si es igual a ciertos tipos de kotlin (Int, Long, etc.). Esto funciona con:

when (type) {
    Int::class.defaultType -> ...
    Long::class.defaultType -> ...
    else -> ...
}

pero esto solo funciona para tipos no anulables, por lo que la primera rama no coincide con Int? Sin embargo, aún no pude descubrir cómo pude detectar si el tipo es Int. aparte de obvio pero no tan agradable

type.toString().equals("kotlin.Int?")

Respuestas a la pregunta(1)

Su respuesta a la pregunta