Die folgenden Zeilen arbeiten, wenn ich sie mit der Hand auf dem Scala REPL eingeben (2.7.7):Scala Züge und implizite Konvertierung Verwirrung
trait myTrait {
override def toString = "something"
}
implicit def myTraitToString(input: myTrait): String = input.toString
object myObject extends myTrait
val s: String = myObject
Allerdings, wenn ich versuche, Datei zu kompilieren damit ich die folgenden Fehler:
[error] myTrait.scala:37: expected start of definition
[error] implicit def myTraitToString(input: myTrait): String = input.toString
[error] ^
Warum?
Danke!
wie ich in REPL Definitionen festgestellt habe, sind implizit innerhalb einer Klasse. – Alexey