明らかに単純な問題に悩まされ、その問題については多くの情報があります(現在の状況が一体何であるかを知るにはあまりにも多くの情報があります)。
とにかく、ここに行きます。
trait _Foo
class Foo Extends _Foo with WhoAmI
trait WhoAmI {
def who = {
getClass match {
case x: _Foo => "should be Foo instance, which extends _Foo"
case _ => "why?"
}
}
}
val foo = new Foo
foo.who
classOfとisAssignableFromを使用してガードを試し、x.getInterfacesをループしました(少なくともそこには_Fooがあります)が、直接の「リーン」マッチに関しては運がありません。
この消去は「機能中」ですか、それとも明らかな1ライナーが欠落していますか?
これが他の多くのスレッドと重複している場合は、閉じることができますが、正しい方向に向けてください。;-)
ありがとう