私はかなり長い間この問題に苦しんでいて、解決策を見つけることができないようです。簡単にしましょう。
呼び出したいジェネリック関数がありますが、インスタンスとしてのみ呼び出したいtype引数があります。例
let foo_a<'a> () = typeof<'a>
let foo_b (t : System.Type) = foo_a<t>() // of course this does not work
私は次のステートメントが真実であることを望みます
foo_a<int>() = foo_b(typeof<int>)
C#ではfoo_aのMethodInfoを反映してMakeGenericMethod(t)を実行しますが、F#でこれを行うにはどうすればよいですか?
明確にするために、依存関係を反転し、代わりにfoo_aがfoo_bを呼び出すようにすることは、私にとってオプションではありません。