using System.Collections.Generic; namespace NcProgramManager.Cnc.Models { public sealed class ValidationResult { public bool Success { get; } public IReadOnlyList Errors { get; } private ValidationResult(bool success, IReadOnlyList errors) { Success = success; Errors = errors ?? new ValidationError[0]; } public static ValidationResult Ok() { return new ValidationResult(true, new ValidationError[0]); } public static ValidationResult Fail(IReadOnlyList errors) { return new ValidationResult(false, errors); } /// Success result that still carries warning-level entries. public static ValidationResult OkWithWarnings(IReadOnlyList warnings) { return new ValidationResult(true, warnings); } } }