私は次のおもちゃの機能を持っています:
def test[T](x: Option[List[Option[T]]])
{
for (a <- x; b <- a; c <- b) println(c)
println("----------")
}
Option[Option[Option[T]]]
上記の関数を一般化して、またはList[List[List[T]]]
またはその他のとの組み合わせでOption
も機能するようにするにはどうすればよいList
ですか?
型は型構築子ではないため、次の試みは明らかに機能しません。
def test2[Q,R,S,T](x: Q[R[S[T]]])
C ++では、おそらくこの目的のためにテンプレートテンプレートを使用します。Scalaにはそのようなものがありますか?