|
1 | | -This folder contains projects and tests related to Visual Studio tooling and IDE independant language service |
| 1 | +This folder contains projects and tests related to Visual Studio tooling. |
2 | 2 |
|
3 | 3 | #src/FSharp.Editor |
4 | 4 |
|
5 | | -main project for Visual F# tooling |
| 5 | +Top-level project for the Visual F# IDE tools. This project contains the following |
| 6 | + |
| 7 | +* Interfaces which implement Roslyn workspace APIs |
| 8 | +* Top-level interactions with the F# Compiler Service |
| 9 | +* Logic for handling data in the F# Compiler Service |
| 10 | +* Helpers for interacting with Roslyn APIs |
| 11 | +* Various utilities |
| 12 | + |
| 13 | +In general, if something is implemented here and the logic becomes rather lengthy, it may be a good idea to push that logic down into the F# Compiler Service so that other editors can benefit. |
6 | 14 |
|
7 | 15 | #src/FSharp.UIResources |
8 | 16 |
|
9 | | -GUI controls and resources for Visual F# tooling |
| 17 | +GUI controls and resources for Visual F# tooling. |
10 | 18 |
|
11 | 19 | #src/FSharp.LanguageService |
12 | 20 |
|
13 | | -legacy bits (before roslyn workspace) |
| 21 | +Legacy bindings to the F# Compiler Service. Most of the code paths here are dead, and exist mainly to allow our test suite to extensively test the F# Compiler Service. |
14 | 22 |
|
15 | 23 | #src/FSharp.LanguageService.Base |
16 | 24 |
|
17 | | -legacy bits(before roslyn workspace) |
| 25 | +Legacy bitsfor a base-level, editor-agnostic language service. This code isn't used anywhere else, though. |
18 | 26 |
|
19 | 27 | #src/FSharp.ProjectSystem.Base |
20 | 28 |
|
21 | | -to bedocumented |
| 29 | +Legacy bindingstothe legacy (and unsupported) MPF project system type in Visual Studio. This code will eventuallybedeprecated. |
22 | 30 |
|
23 | 31 | #src/FSharp.ProjectSystem.FSharp |
24 | 32 |
|
25 | | -to bedocumented |
| 33 | +Legacy project systemtohandle F# projects targeting the .NET Framework, with some code paths also handling .NET Core. The latter will eventuallybefactored out, as this code will eventually be deprecated. |
26 | 34 |
|
27 | 35 | #src/FSharp.ProjectSystem.PropertyPages |
28 | 36 |
|
29 | | -GUI for F# project properties |
| 37 | +GUI for F# project properties. |
30 | 38 |
|
31 | 39 | #tests/Salsa |
32 | 40 |
|
33 | | -Toolingfor IDE unit tests |
| 41 | +Legacy toolingfor IDE unit tests. Used extensively in tests, hence it still exists. |
34 | 42 |
|
35 | 43 | #tests/unittests |
36 | 44 |
|
37 | | -IDE unit tests |
| 45 | +IDE unit tests. Some code paths go through bits which aren't ever executed when_using_ F# in Visual Studio, but they do extensively test the F# Compiler Service. |
38 | 46 |
|
39 | 47 | #utils/LanguageServiceProfiling |
40 | 48 |
|
41 | | -A skeleton command line tool which exerciseslanguage service |
| 49 | +A skeleton command line tool which exercisesthe F# Compiler Service. |
42 | 50 |
|
43 | 51 | #ItemTemplates |
44 | 52 |
|
45 | | -Visual Studio item templates for F# projects |
| 53 | +Visual Studio item templates for F# projects. |
46 | 54 |
|
47 | 55 | #ProjectTemplates |
48 | 56 |
|
49 | | -Visual Studio project templates |
| 57 | +Visual Studio project templates for .NET Framework projects. |