¿Qué significa la palabra key header / impl en kotlin?

Hace unos momentos, cuando estaba explorando el repository de Github de Kotlin, encontré algo interesante: Kotlin ahora parece tener una palabra key de encabezado.

CollectionsH.kt :

open header class ArrayList<E> : MutableList<E> { //... header inline fun <reified T> Array<out T>?.orEmpty(): Array<out T> 

Qué significa eso? ¿Es alguna característica pública disponible o una característica interna para ayudar al desarrollo de stdlib?


EDITAR: Parece que hay una palabra key impl que funciona junto con el encabezado. ¿Que es eso?

ACTUALIZACIÓN 2:

Soporte de proyectos multiplataforma ha sido lanzado.

  • Enlace al anuncio
  • Aplicación multiplataforma para KotlinConf 2017

ACTUALIZACIÓN 1:

Las palabras key impl y header se han reemplazado por actual y expect en la versión preliminar de proyectos multiplataforma para Kotlin.

La documentation oficial se puede encontrar aquí o en este enlace permanente de GitHub


Se habló de esto en este video a las 14:28.

De las diapositivas : Diapositiva # 14

Básicamente, el header se usará al escribir interfaces para modules que funcionen en múltiples plataforms (JVM, JS y Native). La palabra key impl se usará al escribir una implementación para una plataforma específica.

  • Glide no puede cargar la URL de la image del server
  • Delegación de class parcial en Kotlin
  • ¿Debo usar la class de datos incluso si implemento todo hashCode (), equals () y toString ()?
  • Android Kotlin Gson Slow Json Deserialization
  • ¿Puedo hacer reference a una sobrecarga de function específica?
  • ¿Cómo proporcionar la class kotlin para las configuraciones de ejecución de eclipse?
  • Trabajando con @Qualifier en las funciones de Kotlin
  • Solicitud HTTP en Kotlin
  • Modificar el valor de una variable global de una class interna
  • Imposible download el plugin para eclipse
  • Kotlin: No se pueden aplicar dos condicionales a la vez. Verificar con el estilo de function de "cuerpo de retorno".