20 lines
568 B
C#
20 lines
568 B
C#
namespace syntax.Diagnostics;
|
|
|
|
public class DiagnosticsResult(List<Diagnostic> diagnostics)
|
|
{
|
|
public bool HasErrors => diagnostics.Any(d => d.Severity == DiagnosticSeverity.Error);
|
|
|
|
public void PrintAllDiagnostics()
|
|
{
|
|
foreach (var diagnostic in diagnostics)
|
|
{
|
|
Console.Error.WriteLine(diagnostic.Format());
|
|
Console.Error.WriteLine();
|
|
}
|
|
}
|
|
}
|
|
|
|
public class DiagnosticsResult<TResult>(List<Diagnostic> diagnostics, TResult value) : DiagnosticsResult(diagnostics)
|
|
{
|
|
public TResult Value { get; } = value;
|
|
} |