2 types derived from ProjectLoadState
Microsoft.CodeAnalysis.LanguageServer (2)
HostWorkspace\LanguageServerProjectLoader.cs (2)
76
public sealed record Primordial(ProjectSystemProjectFactory PrimordialProjectFactory, ProjectId PrimordialProjectId) :
ProjectLoadState
;
85
public sealed record LoadedTargets(ImmutableArray<LoadedProject> LoadedProjectTargets) :
ProjectLoadState
;
10 references to ProjectLoadState
Microsoft.CodeAnalysis.LanguageServer (10)
HostWorkspace\LanguageServerProjectLoader.cs (10)
53
private readonly Dictionary<string,
ProjectLoadState
> _loadedProjects = [];
266
if (!_loadedProjects.TryGetValue(projectPath, out
var
currentLoadState))
272
var previousProjectTargets = currentLoadState is
ProjectLoadState
.LoadedTargets loaded ? loaded.LoadedProjectTargets : [];
302
if (currentLoadState is
ProjectLoadState
.Primordial(var primordialProjectFactory, var projectId))
315
_loadedProjects[projectPath] = new
ProjectLoadState
.LoadedTargets(newProjectTargets);
419
_loadedProjects.Add(projectPath, new
ProjectLoadState
.Primordial(primordialProjectFactory, primordialProjectId));
440
_loadedProjects.Add(projectPath, new
ProjectLoadState
.LoadedTargets(LoadedProjectTargets: []));
451
if (!_loadedProjects.Remove(projectPath, out
var
loadState))
458
if (loadState is
ProjectLoadState
.Primordial(var projectFactory, var projectId))
462
else if (loadState is
ProjectLoadState
.LoadedTargets(var existingProjects))