Type Provider Memo
TypeProvider実装のための記憶保管のためにメモとして残す
FSharp.Data.dllを拾ってくる
- Nugetで取って来れる
- TypeProviderのための骨格抽象実装が用意されているので、ありがたくご相伴
open Microsoft.FSharp.Core.CompilerServices
- TypeProviderAttibuteが定義されている
open ProviderImplementation.ProvidedTypes
- TypeProviderForNamespacesクラス
- TypeProviderの親クラスとして使用する
- ProvidedTypeDefinitionクラス
- TypeProvider内部で使用する型を定義するためのクラス
- Typeクラスから派生
- TypeProviderForNamespacesクラス
TypeProviderメタクラスのdo束縛にて
- Providerの型定義
- ProvidedTypeDefinitionをインスタンス化
- ProvidedTypeDefinition#AddXmlDoc呼ぶ
- ヘルプメッセージ追加のため
- たぶん必須ではないとは思う
- ProvidedTypeDefinition#DefineStaticParametersを呼ぶ
- TypeProviderの引数定義
- 第一引数はList
- 第二引数は引数型をインスタンス化するための高階関数
- string -> obj[] -> ProvidedTypeDefinition
- 必須
- TypeProviderメタクラスのAddNamespaceメソッド呼ぶ
- これでF# コンパイラに登録される?
- Providerの型定義