forked from fsharp/fsharp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathReferenceResolution.fsi
More file actions
94 lines (81 loc) · 3.62 KB
/
Copy pathReferenceResolution.fsi
File metadata and controls
94 lines (81 loc) · 3.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
namespace Viz
/// This type exists to have a concrete 'Target' type for a DebuggerVisualizerAttribute.
/// Ideally it would be out in its own assembly, but then the compiler would need to take a dependency on that assembly, so instead we
/// pragmatically just shove this into the compiler assembly itself.
type internal Visualizable =
new : obj -> Visualizable
member Data : obj
/// assuming this assembly is already in the debuggee process, then Viz.Visualiable.Make(foo) in the Watch window will make a visualizer for foo
static member Make : obj -> Visualizable
namespace Microsoft.FSharp.Compiler
module internal MSBuildResolver =
exception ResolutionFailure
/// Describes the location where the reference was found.
type ResolvedFrom =
| AssemblyFolders
| AssemblyFoldersEx
| TargetFrameworkDirectory
| RawFileName
| GlobalAssemblyCache
| Path of string
| Unknown
/// Whether the resolve should follow compile-time rules or runtime rules.
type ResolutionEnvironment =
| CompileTimeLike
| RuntimeLike // Don't allow stubbed-out reference assemblies
| DesigntimeLike
#if SILVERLIGHT
#else
val DotNetFrameworkReferenceAssembliesRootDirectory : string
/// Information about a resolved file.
type ResolvedFile = {
/// Item specification
itemSpec:string
/// Location that the assembly was resolved from
resolvedFrom:ResolvedFrom
/// The long fusion name of the assembly
fusionName:string
/// The version of the assembly (like 4.0.0.0)
version:string
/// The name of the redist the assembly was found in
redist:string
/// Round-tripped baggage string
baggage:string
}
/// Reference resolution results. All paths are fully qualified.
type ResolutionResults = {
/// Paths to primary references
resolvedFiles:ResolvedFile array
/// Paths to dependencies
referenceDependencyPaths:string array
/// Paths to related files (like .xml and .pdb)
relatedPaths:string array
/// Paths to satellite assemblies used for localization.
referenceSatellitePaths:string array
/// Additional files required to support multi-file assemblies.
referenceScatterPaths:string array
/// Paths to files that reference resolution recommend be copied to the local directory
referenceCopyLocalPaths:string array
/// Binding redirects that reference resolution recommends for the app.config file.
suggestedBindingRedirects:string array
}
/// Callback for errors and warnings.
type ErrorWarningCallbackSig =
((*code:*)string->(*message*)string->unit)
val Resolve :
resolutionEnvironment: ResolutionEnvironment *
references:(string*(*baggage*)string)[] *
targetFrameworkVersion:string *
targetFrameworkDirectories:string list *
targetProcessorArchitecture:string *
outputDirectory:string *
fsharpBinariesDir:string *
explicitIncludeDirs:string list *
implicitIncludeDir:string *
frameworkRegistryBase:string *
assemblyFoldersSuffix:string *
assemblyFoldersConditions:string *
logmessage:(string->unit) *
logwarning:ErrorWarningCallbackSig *
logerror:ErrorWarningCallbackSig -> ResolutionResults
#endif