/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/Compilers/Server/VBCSCompiler/CompletionData.cs
53 строки
2 KB
Jared Parsons
Fix the project layout (#61547)
09 июн 2022, 20:42
Не верифицирован
09 июн 2022, 20:42
b6d630f
Код
Авторство
О чём код?
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using Roslyn.Utilities; using System; using System.Diagnostics; using System.Globalization; using System.IO; using System.Threading; using System.Threading.Tasks; using Microsoft.CodeAnalysis.CommandLine; using System.IO.Pipes; namespace Microsoft.CodeAnalysis.CompilerServer { internal enum CompletionReason { /// <summary> /// The request completed and results were provided to the client. This value is used even for such /// actions as a failed compilation because it was successfully executed and returned to the client. /// </summary> RequestCompleted, /// <summary> /// The request contained an error that should cause the server to shutdown. This can happen for cases /// like: /// - server state is invalid because of a collision between analyzer assemblies /// - client disconnected during build which is a treated as Ctrl-C event that should bring down /// the server. /// </summary> RequestError, } internal readonly struct CompletionData { internal CompletionReason Reason { get; } internal TimeSpan? NewKeepAlive { get; } internal bool ShutdownRequest { get; } internal CompletionData(CompletionReason reason, TimeSpan? newKeepAlive = null, bool shutdownRequested = false) { Reason = reason; NewKeepAlive = newKeepAlive; ShutdownRequest = shutdownRequested; } internal static CompletionData RequestCompleted { get; } = new CompletionData(CompletionReason.RequestCompleted); internal static CompletionData RequestError { get; } = new CompletionData(CompletionReason.RequestError); public override string ToString() => $"{Reason} KeepAlive:{NewKeepAlive} ShutdownRequest:{ShutdownRequest}"; } }