X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fclass%2FSystem%2FSystem.Collections.Generic%2FChangeLog;h=75074d15d433ad68b2f4100661a5991680c22b21;hb=1113782115f43dae2d4a3bb705a30cf3e8e0cbdb;hp=d08ea6c660e6e2d7bbd010f7542bbb00bd4fa1f6;hpb=ceab7587101d736be56e6ac15ca9343708f3656c;p=mono.git diff --git a/mcs/class/System/System.Collections.Generic/ChangeLog b/mcs/class/System/System.Collections.Generic/ChangeLog index d08ea6c660e..75074d15d43 100644 --- a/mcs/class/System/System.Collections.Generic/ChangeLog +++ b/mcs/class/System/System.Collections.Generic/ChangeLog @@ -1,3 +1,195 @@ +2010-04-09 Raja R Harinath + + Don't maintain state in the view + * SortedSet.cs (SortedSubSet.count): Remove. + (SortedSubSet..ctor): Move counting loop ... + (SortedSubSet.Count): ... here. + (SortedSubSet.TryAdd, SortedSubSet.TryRemove): Update to changes. + (SortedSubSet.GetMin, SortedSubSet.GetMax): Likewise. Use bounds + to determine if the view is empty, rather than the count. + +2010-04-07 Raja R Harinath + + Enable set comparision operations on views, and improve performance + * RBTree.cs (Bound): New. Returns the greatest lower bound and + least upper bound of the given key. + (GetSuffixEnumerator): New. Returns an enumerator that starts at + the given key. + (NodeEnumerator): Provide suffix enumerator functionality. + * SortedSet.cs (GetEnumerator): Delegate to ... + (TryGetEnumerator): ... this. New virtual function. + (Enumerator): Provide subset enumeration using RBTree's suffix enumerators. + (SortedSubSet.count): New. + (SortedSubSet.GetCount): Use it. + (SortedSubSet.TryAdd, SortedSubSet.TryRemove): Update count. + (SortedSubSet.GetMin, SortedSubSet.GetMax): Use RBTree.Bound(). + (SortedSubSet.GetEnumerator): Remove. + (SortedSubSet.TryGetEnumerator): New. Use ranged enumerators. + +2010-04-06 Jb Evain + + * SortedSet.cs: implement Count for SortedSubSet. + +2010-04-05 Raja R Harinath + + * SortedSet.cs (IsProperSubsetOf, IsSubsetOf): Implement using ... + (is_subset_of): ... new helper. + (IsProperSupersetOf, IsSupersetOf): Implement using ... + (is_superset_of): ... new helper. + (covers, nodups, overlaps): New helpers. + (SetEquals): Implement. + (Overlaps): Implement using overlaps(). + (SymmetricExceptWith): Use nodups() helper. + +2010-04-04 Raja R Harinath + + * SortedSet.cs (CheckArgumentNotNull): New helper. + (IntersectWith, UnionWith): Implement. + (ExceptWith, SymmetricExceptWith): Likewise. + (SortedSubSet.IntersectWith): Implement override. + + * RBTree.cs (do_remove): Ensure the node returned is suitable for + re-insertion. + +2010-04-02 Jb Evain + + * SortedSet.cs: implement Mix and Max for subsets. + +2010-04-02 Jb Evain + + * SortedSet.cs: implement GetViewBetween. + +2010-04-02 Jb Evain + + * SortedSet.cs: optimize Reverse. Add a virtual TryAdd and TryRemove + to override in sub trees. + +2010-04-02 Jb Evain + + * SortedSet.cs: implement Min and Max. + +2010-04-02 Jb Evain + + * SortedSet.cs: implement RemoveWhere. + +2010-04-02 Jb Evain + + * SortedSet.cs: implement Reverse. + +2010-04-01 Jb Evain + + * SortedSet.cs: fix API. + +2010-04-01 Jb Evain + + * SortedSet.cs: add new SortedSet type in .net 4.0 + +2010-03-03 Miguel de Icaza + + * RBTree.cs: Make these serializable, should fix the serialization + across appdomains of SortedDictionaries + +2010-03-11 Sebastien Pouliot + + * ISet.cs: Add NET_2_1 since this is part of SL4 + +2009-12-01 Jb Evain + + * Stack.cs (Enumerator.Dispose): tag the enumerator as finished + upon Dispose. + +2009-11-26 Marek Safar + + * LinkedList.cs: Allocate less. + +2009-11-25 Jb Evain + + * Queue.cs (Enqueue): deal with the case where the tail + is off the array when deciding to enlarge the capacity. + +2009-11-25 Jb Evain + + * Queue.cs (ICollection.CopyTo): fix typo, remove code duplication. + +2009-11-02 Miguel de Icaza + + * ISet.cs: Added new interface. + +2009-10-20 Marek Safar + + * SortedList.cs, LinkedList.cs, Queue.cs, Stack.cs, + SortedDictionary.cs: Improve debugging experience. + +2009-07-31 Raja R Harinath + + * RBTree.cs (NodeEnumerator.check_current): New helper. + (NodeEnumerator.Current): Don't check invariants. + * SortedDictionary.cs (Enumerator.Current): Likewise. + (ValueCollection.Enumerator.Current): Likewise. + (KeyCollection.Enumerator.Current): Likewise. + +2009-07-26 Miguel de Icaza + + * Stack.cs: Check arguments. + +2009-07-14 Gonzalo Paniagua Javier + + * SortedList.cs: the IComparar.Compare arguments were reversed. + Fixes bug #521750. Patch by Kevin Fitzgerald. + +2009-05-10 Andy Hume + + * LinkedList.cs: Add null check. Fixes #481621. + +2009-03-11 Zoltan Varga + + * SortedList.cs: Add version checking to the Key/Value enumerators + + implement support for Reset (). Fixes #483985. + +2009-05-06 Pia Eriksson + + * SortedList.cs: Handle Count == 0 in CopyTo correcly + * SortedDictionary.cs: Handle Count == 0 in CopyTo correcly + +2007-11-15 Roei Erez + + * Stack.cs: Performance improvement in the case where the stack is popped + until empty. Changed the condition for resizing the array, and instead of + check for zero size, check if the inner array is null. + +2007-11-15 Jb Evain + + * LinkedList.cs: ifdef out manually the Serialization part of the + LinkedList.Enumerator. As it is a struct, the field SerializationInfo + have to be assigned in the default constructor, and the tuner cannot + remove that. Fixes #341938 for real. + +2007-10-09 Raja R Harinath + + * RBTree.cs (get_Item, do_remove): Remove redundant code. + +2007-08-20 Jb Evain + + * SortedList.cs: don't crash in ListKeys and ListValues + when CopyTo targets an empty array, and that the + sorted list is empty. Fixes #82492. + +2007-05-08 Raja R Harinath + + Avoid unnecessary allocation on indexer access + * SortedDictionary.cs (NodeHelper): Rename from NodeComparer. + (NodeHelper.CreateNode): New. + (Item.set): Move responsibility of creating new nodes to + RBTree.Intern. + * RBTree.cs (INodeHelper): Rename from INodeComparer. + (INodeHelper.CreateNode): New. + (Intern): Use it to create a new node if no node is passed in. + +2007-05-08 Igor Zelmanovich + + * RBTree.cs: for TARGET_JVM used Thread Local Storage + istead Thread-Relative Static Fields + 2007-05-02 Raja R Harinath * RBTree.cs (Enumerator.Current): Remove nullref.