public void SortedRangeListChangeStampTest() { SortedRangeList <TestRange> list = new SortedRangeList <TestRange>(); int stamp = list.ChangeStamp; list.ForceUpdateChangeStamp(); Assert.AreNotEqual(stamp, list.ChangeStamp); stamp = list.ChangeStamp; list.Clear(); Assert.AreEqual(stamp, list.ChangeStamp); list.Add(new TestRange(5, 1)); list.Add(new TestRange(6, 1)); Assert.AreNotEqual(stamp, list.ChangeStamp); stamp = list.ChangeStamp; list.IndexOf(list[0]); Assert.AreEqual(stamp, list.ChangeStamp); list.Remove(list[0]); Assert.AreNotEqual(stamp, list.ChangeStamp); stamp = list.ChangeStamp; list.Clear(); Assert.AreNotEqual(stamp, list.ChangeStamp); }
private void TreeItemsChanged(object sender, CssItemsChangedEventArgs e) { foreach (ParseItem item in e.DeletedItems) { var matches = _cache.Where(s => s.Start >= item.Start && s.AfterEnd <= item.AfterEnd); foreach (var match in matches.Reverse()) { _cache.Remove(match); } } foreach (ParseItem item in e.InsertedItems) { UpdateCache(item); } }
private void TreeItemsChanged(object sender, CssItemsChangedEventArgs e) { foreach (ParseItem item in e.DeletedItems) { if (Cache.Contains(item)) { Cache.Remove((Declaration)item); } } foreach (ParseItem item in e.InsertedItems) { UpdateDeclarationCache(item); UpdateVendorValues(item); } }