2 types derived from ProjectLoadState
Microsoft.CodeAnalysis.LanguageServer (2)
16 references to ProjectLoadState
Microsoft.CodeAnalysis.LanguageServer (16)
HostWorkspace\LanguageServerProjectLoader.cs (11)
53private readonly Dictionary<string, ProjectLoadState> _loadedProjects = [];
288if (!_loadedProjects.TryGetValue(projectPath, out var currentLoadState))
294var previousProjectTargets = currentLoadState is ProjectLoadState.LoadedTargets loaded ? loaded.LoadedProjectTargets : [];
332if (currentLoadState is ProjectLoadState.Primordial(var primordialProjectFactory, var projectId))
342_loadedProjects[projectPath] = new ProjectLoadState.LoadedTargets(newProjectTargets);
432protected async ValueTask<T> ExecuteUnderGateAsync<T>(Func<Dictionary<string, ProjectLoadState>, ValueTask<T>> action, CancellationToken cancellationToken)
466_loadedProjects.Add(projectPath, new ProjectLoadState.Primordial(primordialProjectFactory, primordialProjectId));
486_loadedProjects.Add(projectPath, new ProjectLoadState.LoadedTargets(LoadedProjectTargets: []));
497if (!_loadedProjects.Remove(projectPath, out var loadState))
504if (loadState is ProjectLoadState.Primordial(var projectFactory, var projectId))
508else if (loadState is ProjectLoadState.LoadedTargets(var existingProjects))