Kotlin: Comment travailler avec la Liste des conversions: Décoché Cast: kotlin.les collections.Liste<Kotlin.Tout?> de kotlin.colletions.Liste<Waypoint>

Je veux écrire une fonction qui retourne chaque élément dans un List qui n'est pas le premier ou le dernier élément (d'un point). La fonction reçoit un générique List<*> comme entrée. Un résultat ne peut être renvoyé que si les éléments de la liste sont du type Waypoint:

fun getViaPoints(list: List<*>): List<Waypoint>? {

    list.forEach { if(it !is Waypoint ) return null }

    val waypointList = list as? List<Waypoint> ?: return null

    return waypointList.filter{ waypointList.indexOf(it) != 0 && waypointList.indexOf(it) != waypointList.lastIndex}
}

Lors de la coulée de la List<*> à List<Waypoint>, je reçois l'avertissement:

Décoché Cast: kotlin.les collections.Liste
de kotlin.colletions.Liste

Je ne peux pas trouver un moyen de la mettre en œuvre autrement. Quelle est la bonne façon de mettre en œuvre cette fonction sans cet avertissement?

InformationsquelleAutor lukle | 2016-04-12