0
object A {
type URLT = String
}
case class A(url : URLT)
class ForeignStreamWriter {
def writeString(str: String) {}
}
trait WriterA {
val writer : ForeignStreamWriter
def write(src: A) {
writer.write(src.url)
}
}
我怎麼能告訴我與字符串工作的編譯器 - 不URLT - 在writer.write(src.url)?我無法修改ForeignStreamWriter的簽名。
UPD
至於現在,我發現唯一的解決辦法
def write(src: A) {
writer.write(src.url.asInstanceOf[String])
}
,但我真的不喜歡它。
不確定我關注。你的編譯錯誤究竟是什麼?你的意思是'writeString(src.url)'? – Faiz