次の場合に型消去を回避する方法があるかどうかを確認しています。
私には特徴があります
trait IHandle[T <: ICommand] {
def handle(command: T) : Unit
}
そして、リフレクションを使用して、sayの具体的な実装を見つけたいと思います
IHandle[MyCommand]
これは次のように見えるかもしれません
class MyCommandHandler(dependency:Dependency) extends IHandle[MyCommand] {
def handle(command:MyCommand): Unit = ...
}
(私はCQRSモデルでコマンドディスパッチャーを作成することで遊んでいます。これがScalaを採用するための完全に間違ったアプローチであり、提案を受け入れるかどうかを聞いてうれしく思います)