1 2010-04-02 Jb Evain <jbevain@novell.com>
3 * SortedSet.cs: implement Mix and Max for subsets.
5 2010-04-02 Jb Evain <jbevain@novell.com>
7 * SortedSet.cs: implement GetViewBetween.
9 2010-04-02 Jb Evain <jbevain@novell.com>
11 * SortedSet.cs: optimize Reverse. Add a virtual TryAdd and TryRemove
12 to override in sub trees.
14 2010-04-02 Jb Evain <jbevain@novell.com>
16 * SortedSet.cs: implement Min and Max.
18 2010-04-02 Jb Evain <jbevain@novell.com>
20 * SortedSet.cs: implement RemoveWhere.
22 2010-04-02 Jb Evain <jbevain@novell.com>
24 * SortedSet.cs: implement Reverse.
26 2010-04-01 Jb Evain <jbevain@novell.com>
28 * SortedSet.cs: fix API.
30 2010-04-01 Jb Evain <jbevain@novell.com>
32 * SortedSet.cs: add new SortedSet type in .net 4.0
34 2010-03-03 Miguel de Icaza <miguel@novell.com>
36 * RBTree.cs: Make these serializable, should fix the serialization
37 across appdomains of SortedDictionaries
39 2010-03-11 Sebastien Pouliot <sebastien@ximian.com>
41 * ISet.cs: Add NET_2_1 since this is part of SL4
43 2009-12-01 Jb Evain <jbevain@novell.com>
45 * Stack.cs (Enumerator.Dispose): tag the enumerator as finished
48 2009-11-26 Marek Safar <marek.safar@gmail.com>
50 * LinkedList.cs: Allocate less.
52 2009-11-25 Jb Evain <jbevain@novell.com>
54 * Queue.cs (Enqueue): deal with the case where the tail
55 is off the array when deciding to enlarge the capacity.
57 2009-11-25 Jb Evain <jbevain@novell.com>
59 * Queue.cs (ICollection.CopyTo): fix typo, remove code duplication.
61 2009-11-02 Miguel de Icaza <miguel@novell.com>
63 * ISet.cs: Added new interface.
65 2009-10-20 Marek Safar <marek.safar@gmail.com>
67 * SortedList.cs, LinkedList.cs, Queue.cs, Stack.cs,
68 SortedDictionary.cs: Improve debugging experience.
70 2009-07-31 Raja R Harinath <harinath@hurrynot.org>
72 * RBTree.cs (NodeEnumerator.check_current): New helper.
73 (NodeEnumerator.Current): Don't check invariants.
74 * SortedDictionary.cs (Enumerator.Current): Likewise.
75 (ValueCollection.Enumerator.Current): Likewise.
76 (KeyCollection.Enumerator.Current): Likewise.
78 2009-07-26 Miguel de Icaza <miguel@novell.com>
80 * Stack.cs: Check arguments.
82 2009-07-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
84 * SortedList.cs: the IComparar.Compare arguments were reversed.
85 Fixes bug #521750. Patch by Kevin Fitzgerald.
87 2009-05-10 Andy Hume <andyhume32@yahoo.co.uk>
89 * LinkedList.cs: Add null check. Fixes #481621.
91 2009-03-11 Zoltan Varga <vargaz@gmail.com>
93 * SortedList.cs: Add version checking to the Key/Value enumerators +
94 implement support for Reset (). Fixes #483985.
96 2009-05-06 Pia Eriksson <pe@hallerud.se>
98 * SortedList.cs: Handle Count == 0 in CopyTo correcly
99 * SortedDictionary.cs: Handle Count == 0 in CopyTo correcly
101 2007-11-15 Roei Erez <roeie@mainsoft.com>
103 * Stack.cs: Performance improvement in the case where the stack is popped
104 until empty. Changed the condition for resizing the array, and instead of
105 check for zero size, check if the inner array is null.
107 2007-11-15 Jb Evain <jbevain@novell.com>
109 * LinkedList.cs: ifdef out manually the Serialization part of the
110 LinkedList.Enumerator. As it is a struct, the field SerializationInfo
111 have to be assigned in the default constructor, and the tuner cannot
112 remove that. Fixes #341938 for real.
114 2007-10-09 Raja R Harinath <rharinath@novell.com>
116 * RBTree.cs (get_Item, do_remove): Remove redundant code.
118 2007-08-20 Jb Evain <jbevain@novell.com>
120 * SortedList.cs: don't crash in ListKeys and ListValues
121 when CopyTo targets an empty array, and that the
122 sorted list is empty. Fixes #82492.
124 2007-05-08 Raja R Harinath <rharinath@novell.com>
126 Avoid unnecessary allocation on indexer access
127 * SortedDictionary.cs (NodeHelper): Rename from NodeComparer.
128 (NodeHelper.CreateNode): New.
129 (Item.set): Move responsibility of creating new nodes to
131 * RBTree.cs (INodeHelper): Rename from INodeComparer.
132 (INodeHelper.CreateNode): New.
133 (Intern): Use it to create a new node if no node is passed in.
135 2007-05-08 Igor Zelmanovich <igorz@mainsoft.com>
137 * RBTree.cs: for TARGET_JVM used Thread Local Storage
138 istead Thread-Relative Static Fields
140 2007-05-02 Raja R Harinath <rharinath@novell.com>
142 * RBTree.cs (Enumerator.Current): Remove nullref.
144 * SortedDictionary.cs (ICollection.Contains): Use EqualityComparer
145 for comparing the value field.
147 * RBTree.cs (do_remove): Remove some redundant assignments/checks.
148 (NodeEnumerator): Simplify. Keep track of a list of
149 right-pennants that need to be traversed next, rather than
150 comparing parent pointers.
152 2007-05-02 Raja R Harinath <harinath@gmail.com>
154 Make add and remove operations O(log n).
155 * SortedDictionary.cs: Rewrite to use the red-black tree
156 implementation from RBTree.cs.
157 * RBTree.cs: Some more refactoring. Rename Insert() to Intern(),
158 and modify semantics slightly. Replace Contains() with Lookup().
160 2007-04-30 Raja R Harinath <rharinath@novell.com>
162 * RBTree.cs: Refactor to reduce generics code.
164 2007-04-30 Raja R Harinath <harinath@gmail.com>
166 * RBTree.cs: New red-black tree implementation for use with
169 2007-04-19 Gert Driesen <drieseng@users.sourceforge.net>
171 * Queue.cs: Fixed binary serialization, based on patch provided by
172 Lionel Cuir. Fixes TrimExcess to use SetCapacity, before it was not
173 updating _head which could lead to IndexOutOfRangeException.
174 * Stack.cs: Fixed binary serialization, based on patch provided by
175 Lionel Cuir. In Pop, clear entry from array to help GC.
177 2007-03-27 Alan McGovern <alan.mcgovern@gmail.com>
179 * Queue.cs: Removed wrong call to version++
180 * Stack.cs: Removed wrong call to version++
182 2006-09-30 Gert Driesen <drieseng@users.sourceforge.net>
184 * SortedList.cs: Count property, indexer and Clear method should not
185 be virtual. Removed unnecessary explicit interface implementation of
186 Add (TKey, TValue) and Remove (TKey, TValue).
187 * Queue.cs: Marked Enumerator as Serializable.
188 * Stack.cs: Marked Stack <T> and Enumerator as serializable.
190 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
192 * Stack.cs: TARGET_JVM
194 2006-04-05 Atsushi Enomoto <atsushi@ximian.com>
196 * SortedDictionary.cs : new file. The original code is mostly
199 2006-03-11 Miguel de Icaza <miguel@novell.com>
201 * Queue.cs: Flag as serializable.
203 * LinkedList.cs (OnDeserialization): Fix signature.
205 * SortedList.cs: Implement explicitly a few methods that were
206 flagged by corcompare.
208 2005-11-10 Zoltan Varga <vargaz@gmail.com>
210 * SortedList.cs Queue.cs Stack.cs: Implement TrimExcess methods.
212 * SortedList.cs: Fix build.
214 * Stack.cs SortedList.cs LinkedList.cs: Update to net 2.0 RTM.
216 2005-11-09 Zoltan Varga <vargaz@gmail.com>
218 * SortedList.cs: New file.
220 2005-09-04 David Waite <mass@akuma.org>
222 * LinkedList.cs, LinkedListNode.cs: added implementation of LinkedList<T>
224 2005-08-08 Kamil Skalski <nazgul@nemerle.org>
226 * Queue.cs, Stack.cs: remove implementation of ICollection<T>,
227 since it is no longer in b2 API
229 2005-06-20 David Waite <mass@akuma.org>
231 * Collection.cs, ReadOnlyCollection.cs: removed as they are no longer in the b2 API
233 2005-05-13 Atsushi Enomoto <atsushi@ximian.com>
235 * Queue.cs, Stack.cs: moved from mscorlib.dll
237 2005-02-35 Carlos Alberto Cortez <calberto.cortez@gmail.com>
239 * Collections.cs: Changed the code inside IndexOf, for
240 the use of Array.IndexOf<>, to keep clean the code.
242 2004-11-17 Carlos Alberto Cortez Guevara <carlos@unixmexico.org>
244 * Collections.cs: Avoid the call to Array.Clear () in RemoveItem (),
245 now we only assign the last element (the deleted one) to its default
248 2004-09-20 Gert Driesen <drieseng@users.sourceforge.net>
250 * ReadOnlyCollection.cs: Moved over from corlib
251 * Collection.cs: Moved over from corlib