using Core.Entities; namespace Core.Models; /// /// Result of parsing event occurrence text data. /// Contains parsed occurrences, errors, and warnings. /// public class EventOccurrenceParseResult { /// /// Dictionary of parsed event occurrences, keyed by EventDefinition. /// For special events (GeneralSchedule, MeetTheCandidates, ChapterOfficerMeeting, VotingDelegateMeeting, SocialGathering), /// the EventDefinition key will be the static instance. /// public IDictionary> Occurrences { get; set; } = new Dictionary>(); /// /// List of parsing errors (critical issues that prevented parsing). /// public List Errors { get; set; } = new(); /// /// List of parsing warnings (non-critical issues that occurred during parsing). /// public List Warnings { get; set; } = new(); /// /// Total number of event occurrences successfully parsed. /// public int TotalParsed => Occurrences.Values.Sum(list => list.Count); /// /// Indicates whether parsing was successful (no errors). /// public bool IsSuccess => Errors.Count == 0; }