Wie erhalte ich die Klasse eines generischen Parameters in Kotlin? (reified, inline und TypeReference)
Hallo zusammen! Ich schreibe seit kurzem in Kotlin und bin auf ein Problem gestoßen, das in Java einfach zu lösen war, mir aber in Kotlin Schwierigkeiten bereitet. Ich muss innerhalb einer Funktion herausfinden, mit welchem Parametertyp sie aufgerufen wurde. Zum Beispiel habe ich diesen Code:\n\n```kotlin\nfun processList(items: List) {\n // Wie finde ich hier heraus, ob T ein String, Int oder etwas anderes ist?\n // Ich möchte den Typ im Log ausgeben\n println("Processing items of type: ${T::class}") // Fehler!\n}\n```\n\nIn Java würde ich Class verwenden und es explizit übergeben. Aber in Kotlin möchte ich das vermeiden und die API sauberer halten. Ich habe versucht, T::class zu verwenden, aber der Compiler sagt: "Cannot use 'T' as reified type parameter. Use a class instead." Ich habe über reified gelesen, aber nicht ganz verstanden, wie es funktioniert. Außerdem muss die Funktion universell sein.