Función que genéricamente toma un tipo y devuelve el mismo tipo.
Me cuesta entender por qué el compilador de Scala no está contento con esta definición de función:
<code>def trimNonWordCharacters[T <: Iterable[String]](items: T): T = items map { _.replaceAll("\\W", "") } </code>
Aquí está elREPL salida:
<code>scala> def trimNonWordCharacters[T <: Iterable[String]](items: T): T = items map { _.replaceAll("\\W", "") } <console>:5: error: type mismatch; found : Iterable[java.lang.String] required: T def trimNonWordCharacters[T <: Iterable[String]](items: T): T = items map { _.replaceAll("\\W", "") } </code>
El objetivo es pasar en cualquier implementación de un Iterable y obtener el mismo tipo de devolución. es posible?