Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'main/external/fsharpbinding/MonoDevelop.FSharpBinding/FSharpProject.fs')
-rw-r--r--main/external/fsharpbinding/MonoDevelop.FSharpBinding/FSharpProject.fs34
1 files changed, 10 insertions, 24 deletions
diff --git a/main/external/fsharpbinding/MonoDevelop.FSharpBinding/FSharpProject.fs b/main/external/fsharpbinding/MonoDevelop.FSharpBinding/FSharpProject.fs
index f920269642..ec99923dc8 100644
--- a/main/external/fsharpbinding/MonoDevelop.FSharpBinding/FSharpProject.fs
+++ b/main/external/fsharpbinding/MonoDevelop.FSharpBinding/FSharpProject.fs
@@ -41,7 +41,6 @@ type FSharpProject() as self =
"Profile259", ("3.259.3.1", true) ]
let mutable initialisedAsPortable = false
- let mutable referencedAssemblies = None
let isPortable (project:MSBuildProject) =
project.EvaluatedProperties.Properties
@@ -244,8 +243,10 @@ type FSharpProject() as self =
currentGuids.SetValue(newProjectTypeGuids))
with exn -> LoggingService.LogWarning("Failed to remove old F# guid", exn)
+ [<Obsolete>]
override x.OnCompileSources(items, config, configSel, monitor) =
- CompilerService.Compile(items, config, x.ReferencedAssemblies, configSel, monitor)
+ let asms = (x.GetReferences configSel).Result
+ CompilerService.Compile(items, config, asms, configSel, monitor)
override x.OnCreateCompilationParameters(config, kind) =
let pars = new FSharpCompilerParameters()
@@ -307,19 +308,12 @@ type FSharpProject() as self =
base.OnModified(e)
if not self.Loading && not self.IsReevaluating then MDLanguageService.invalidateProjectFile self.FileName
- member x.ReferencedAssemblies
- with get() =
- match referencedAssemblies with
- | Some assemblies -> assemblies
- | None ->
- let assemblies = (x.GetReferencedAssemblies (CompilerArguments.getConfig())).Result
- referencedAssemblies <- Some assemblies
- assemblies
-
- member x.GetOrderedReferences() =
- let references =
- let args =
- CompilerArguments.getReferencesFromProject x x.ReferencedAssemblies
+ member x.GetOrderedReferences(config:ConfigurationSelector) =
+ async {
+ let orderAssemblyReferences = MonoDevelop.FSharp.OrderAssemblyReferences()
+ let! asms = x.GetReferences config
+ let references =
+ CompilerArguments.getReferencesFromProject (x, config, asms)
|> Seq.choose (fun ref -> if (ref.Contains "mscorlib.dll" || ref.Contains "FSharp.Core.dll")
then None
else
@@ -328,15 +322,7 @@ type FSharpProject() as self =
else None )
|> Seq.distinct
|> Seq.toArray
- args
-
- let orderAssemblyReferences = MonoDevelop.FSharp.OrderAssemblyReferences()
- orderAssemblyReferences.Order references
-
- member x.GetReferences() =
- async {
- let! refs = x.GetReferencedAssemblies (CompilerArguments.getConfig()) |> Async.AwaitTask
- referencedAssemblies <- Some refs
+ return orderAssemblyReferences.Order references
}
member x.ReevaluateProject(e) =