amanda.hinchman-dominguez
04/18/2019, 3:51 PMgattacus
04/19/2019, 9:26 AMinline fun <reified T: Mammal> printAnimalResultFiltered(
list: List<Mammal>,
factCheck: Mammal.() -> Int
): List<Mammal> {
if (list.isNotEmpty()) {
list.forEach {
if (clazz.isInstance(it)) println("${it.javaClass.name} - ${it.factCheck()}")
}
}
return list
}
doesn't workamanda.hinchman-dominguez
04/22/2019, 10:52 PMclazz.isInstance
will not apply anymore - I will fix this!inline fun <reified T: Mammal> printAnimalResultFiltered(
list: List<Mammal>,
factCheck: Mammal.() -> Int
): List<Mammal> {
if (list.isNotEmpty()) {
list.filterIsInstance<T>()
.forEach {
println("${it.javaClass.name} - ${it.factCheck()}")
}
}
return list
}
fun main() {
println("\nSpecies count with list as param:")
printAnimalResultFiltered<Sloth>(crewCrewCrew, Mammal::knownSpeciesCount)
}