次の行は、Scala REPL(2.7.7)で手動で入力すると機能します。
trait myTrait {
override def toString = "something"
}
implicit def myTraitToString(input: myTrait): String = input.toString
object myObject extends myTrait
val s: String = myObject
ただし、それを使用してファイルをコンパイルしようとすると、次のエラーが発生します。
[error] myTrait.scala:37: expected start of definition
[error] implicit def myTraitToString(input: myTrait): String = input.toString
[error] ^
なんで?
ありがとう!