namespace RobotNet10.CANOpen.Models; /// /// Validation result container /// public class ValidationResult { public bool IsValid { get; } public IReadOnlyList Errors { get; } public ValidationResult(bool isValid, IEnumerable errors) { IsValid = isValid; Errors = errors.ToList().AsReadOnly(); } public static ValidationResult Success() => new(true, Array.Empty()); public static ValidationResult Failure(params string[] errors) => new(false, errors); public static ValidationResult Failure(IEnumerable errors) => new(false, errors); public override string ToString() { if (IsValid) return "Valid"; return $"Invalid: {string.Join(", ", Errors)}"; } }