public void FetchAndResetChange( DateSetType addedDates, DateSetType removedDates) { #if DEBUG //{ // // currently there is no case could cause addedDates and removedDates overlap. // // just for sure to double check // foreach (var it in m_addedDates) // { // global::System.Diagnostics.Debug.Assert(!m_removedDates.Any(d => m_lessThanComparer(it, d))); // TODO UNO d, it ? // } //} #endif foreach (var date in m_addedDates) { addedDates.Add(date); } m_addedDates.Clear(); foreach (var date in m_removedDates) { removedDates.Add(date); } m_removedDates.Clear(); }
public TrackableDateCollection() { m_dateComparer = new DateComparer(); m_lessThanComparer = (m_dateComparer.LessThanComparer); m_areEquivalentComparer = (m_dateComparer.AreEquivalentComparer); m_addedDates = new DateSetType(m_lessThanComparer); m_removedDates = new DateSetType(m_lessThanComparer); }