escriboConversión implícita, ¿importación requerida o no?
object MyString {
implicit def stringToMyString(s: String) = new MyString(s)
}
class MyString(str: String) {
def camelize = str.split("_").map(_.capitalize).mkString
override def toString = str
}
object Parse {
def main(args: Array[String]) {
val x = "active_record".camelize
// ...
}
}
en mi programa. Esto causa un error de compilación. Después de insertar
import MyString.stringToMyString
Entonces funciona.
De Odersky Programación en Scala Obtuve esa conversión implícita en el objeto complementario de la fuente o los tipos de destino esperados no necesitan ser importados.
IIRC puede poner la importación en el objeto del paquete, por lo que es al menos un poco "global" :-) – Landei