シナリオを単純化するために、Some[String] または Some[Int] または None である Type オブジェクトがあります。その Type オブジェクトを取得して、どうにかして Type パラメータを別のオブジェクトに取得できますか?
例えば
scala> import scala.reflect.runtime.universe._
import scala.reflect.runtime.universe._
scala> val tt = typeTag[Some[String]]
tt: reflect.runtime.universe.TypeTag[Some[String]] = TypeTag[scala.Some[String]]
scala> val tpe = tt.tpe
tpe: reflect.runtime.universe.Type = scala.Some[String]
したがって、あなたの Type of Some[String] があります。そこからパラメータの型を Type オブジェクトに取得するにはどうすればよいですか?