2.7.2 でのimplicit def (三たび)
http://d.hatena.ne.jp/ryugate/20081115#p1に関して、
lingrでmizusimaさんにもご協力いただいて調べたところ、
結局は、
にあるように、
# > An implicit conversion without explicit result type is visible only in the text following its own definition.
# 10:47pm 26x26mizushima
# ¶ 明示的な戻り値型無しのimplicit conversionは、テキスト上で定義よりも後でのみ有効だよ、ということですね。
ということで、こうすればよい
class SomeClass { def strPlusHoge(str:String) = str.plushoge } class ExString(val str:String) { def plushoge = str + "-hoge" } implicit def str2exstr(str:String):ExString = new ExString(str) val obj = new SomeClass println(obj.strPlusHoge("piyo"))