2017-04-11 8 views
3

f#プロジェクト内のすべてのソースファイルに対して型付き抽象構文木にアクセスするには、"analysing a whole project"のようにします。ですから、私が必要とするのは、プロジェクト内のすべてのファイルの特定のMicrosoft.FSharp.Compiler.Tastです。F#コンパイラサービスから型付き抽象構文木を取得する方法

タイプ指定されていない構文ツリーへのアクセスは、walking an untyped astで説明されているように、非常に簡単です。だから、私はそこに、それに対応するインターフェースがあると期待しています。

目的は、コードをF#から別の型付き言語(この場合は型の注釈を必要とするscala)に翻訳することです。プロジェクト全体を一度に翻訳する必要があります。

+0

ただ好奇心から、なぜですか? – s952163

+0

目的は、小さなコードをF#から別の型付き言語(この場合はスカラー)に翻訳することです。 – Michael

答えて

2

リンク先の最初のURLはFSharpAssemblySignatureの取得方法を示していますが、そのような値をどうするかについてはあまり説明していません。そのタイプとそれに含まれる即値タイプはFSharpEntity & FSharpMemberOrFunctionOrValueで、Symbols.fsで定義されています。型付きAST自体はtast.fsで定義されています。私はこれらの2つのファイルのコメントを除いて、さまざまなタイプを説明するドキュメントは知らない。

関連する問題