1
制約付きの形質でメソッドを呼び出すときに、自己型が参照されないのはなぜですか?
trait A { def t : Int }
trait B { this: A => }
を想定すると、なぜそれが、コンパイラは、私がB
にt
を呼び出すことができることを「知らない」ということでしょうか?
def test(b: B): Int = b.t // doesn't work
けど(明らかに重複?)その
def test(b: B with A): Int = b.t
これでいいですか。まあ、自己タイプを少なくとも可視にすることができます: 'trait B {this:A => def a = this}' def test(b:B):int = b.a.t' –