af91fe8fb5a3110abd45fed652cc9aa0e895a7a5
[mono.git] / mcs / class / System / System.Collections.Generic / ChangeLog
1 2010-04-02  Jb Evain  <jbevain@novell.com>
2
3         * SortedSet.cs: implement Mix and Max for subsets.
4
5 2010-04-02  Jb Evain  <jbevain@novell.com>
6
7         * SortedSet.cs: implement GetViewBetween.
8
9 2010-04-02  Jb Evain  <jbevain@novell.com>
10
11         * SortedSet.cs: optimize Reverse. Add a virtual TryAdd and TryRemove
12         to override in sub trees.
13
14 2010-04-02  Jb Evain  <jbevain@novell.com>
15
16         * SortedSet.cs: implement Min and Max.
17
18 2010-04-02  Jb Evain  <jbevain@novell.com>
19
20         * SortedSet.cs: implement RemoveWhere.
21
22 2010-04-02  Jb Evain  <jbevain@novell.com>
23
24         * SortedSet.cs: implement Reverse.
25
26 2010-04-01  Jb Evain  <jbevain@novell.com>
27
28         * SortedSet.cs: fix API.
29
30 2010-04-01  Jb Evain  <jbevain@novell.com>
31
32         * SortedSet.cs: add new SortedSet type in .net 4.0
33
34 2010-03-03  Miguel de Icaza  <miguel@novell.com>
35
36         * RBTree.cs: Make these serializable, should fix the serialization
37         across appdomains of SortedDictionaries
38
39 2010-03-11  Sebastien Pouliot  <sebastien@ximian.com>
40
41         * ISet.cs: Add NET_2_1 since this is part of SL4
42
43 2009-12-01  Jb Evain  <jbevain@novell.com>
44
45         * Stack.cs (Enumerator.Dispose): tag the enumerator as finished
46         upon Dispose.
47
48 2009-11-26  Marek Safar <marek.safar@gmail.com>
49
50         * LinkedList.cs: Allocate less.
51
52 2009-11-25  Jb Evain  <jbevain@novell.com>
53
54         * Queue.cs (Enqueue): deal with the case where the tail
55         is off the array when deciding to enlarge the capacity.
56
57 2009-11-25  Jb Evain  <jbevain@novell.com>
58
59         * Queue.cs (ICollection.CopyTo): fix typo, remove code duplication.
60
61 2009-11-02  Miguel de Icaza  <miguel@novell.com>
62
63         * ISet.cs: Added new interface.
64
65 2009-10-20  Marek Safar <marek.safar@gmail.com>
66
67         * SortedList.cs, LinkedList.cs, Queue.cs, Stack.cs,
68         SortedDictionary.cs: Improve debugging experience.
69
70 2009-07-31  Raja R Harinath  <harinath@hurrynot.org>
71
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.
77
78 2009-07-26  Miguel de Icaza  <miguel@novell.com>
79
80         * Stack.cs: Check arguments.
81
82 2009-07-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
83
84         * SortedList.cs: the IComparar.Compare arguments were reversed.
85         Fixes bug #521750. Patch by Kevin Fitzgerald.
86
87 2009-05-10  Andy Hume  <andyhume32@yahoo.co.uk>
88
89         * LinkedList.cs: Add null check. Fixes #481621.
90
91 2009-03-11  Zoltan Varga  <vargaz@gmail.com>
92
93         * SortedList.cs: Add version checking to the Key/Value enumerators +
94         implement support for Reset (). Fixes #483985.
95
96 2009-05-06  Pia Eriksson  <pe@hallerud.se>
97
98         * SortedList.cs: Handle Count == 0 in CopyTo correcly
99         * SortedDictionary.cs: Handle Count == 0 in CopyTo correcly
100
101 2007-11-15  Roei Erez  <roeie@mainsoft.com>
102
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.
106
107 2007-11-15  Jb Evain  <jbevain@novell.com>
108
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.
113
114 2007-10-09  Raja R Harinath  <rharinath@novell.com>
115
116         * RBTree.cs (get_Item, do_remove): Remove redundant code.
117
118 2007-08-20  Jb Evain  <jbevain@novell.com>
119
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.
123
124 2007-05-08  Raja R Harinath  <rharinath@novell.com>
125
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
130         RBTree.Intern.
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.
134
135 2007-05-08 Igor Zelmanovich <igorz@mainsoft.com>
136
137         * RBTree.cs: for TARGET_JVM used Thread Local Storage 
138         istead Thread-Relative Static Fields 
139
140 2007-05-02  Raja R Harinath  <rharinath@novell.com>
141
142         * RBTree.cs (Enumerator.Current): Remove nullref.
143
144         * SortedDictionary.cs (ICollection.Contains): Use EqualityComparer
145         for comparing the value field.
146
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.
151
152 2007-05-02  Raja R Harinath  <harinath@gmail.com>
153
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().
159
160 2007-04-30  Raja R Harinath  <rharinath@novell.com>
161
162         * RBTree.cs: Refactor to reduce generics code.
163
164 2007-04-30  Raja R Harinath  <harinath@gmail.com>
165
166         * RBTree.cs: New red-black tree implementation for use with
167         SortedDictionary.
168
169 2007-04-19  Gert Driesen  <drieseng@users.sourceforge.net>
170
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.
176
177 2007-03-27  Alan McGovern <alan.mcgovern@gmail.com>
178
179         * Queue.cs: Removed wrong call to version++
180         * Stack.cs: Removed wrong call to version++
181
182 2006-09-30  Gert Driesen  <drieseng@users.sourceforge.net>
183
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.
189
190 2006-09-28  Andrew Skiba  <andrews@mainsoft.com>
191
192         * Stack.cs: TARGET_JVM
193
194 2006-04-05  Atsushi Enomoto  <atsushi@ximian.com>
195
196         * SortedDictionary.cs : new file. The original code is mostly
197           from Kazuki Oikawa.
198
199 2006-03-11  Miguel de Icaza  <miguel@novell.com>
200
201         * Queue.cs: Flag as serializable.
202
203         * LinkedList.cs (OnDeserialization): Fix signature. 
204
205         * SortedList.cs: Implement explicitly a few methods that were
206         flagged by corcompare. 
207
208 2005-11-10  Zoltan Varga  <vargaz@gmail.com>
209
210         * SortedList.cs Queue.cs Stack.cs: Implement TrimExcess methods.
211         
212         * SortedList.cs: Fix build.
213
214         * Stack.cs SortedList.cs LinkedList.cs: Update to net 2.0 RTM.
215
216 2005-11-09  Zoltan Varga  <vargaz@gmail.com>
217
218         * SortedList.cs: New file.
219
220 2005-09-04  David Waite  <mass@akuma.org>
221
222         * LinkedList.cs, LinkedListNode.cs: added implementation of LinkedList<T>
223
224 2005-08-08  Kamil Skalski  <nazgul@nemerle.org>
225
226         * Queue.cs, Stack.cs: remove implementation of ICollection<T>,
227         since it is no longer in b2 API
228
229 2005-06-20  David Waite  <mass@akuma.org>
230
231         * Collection.cs, ReadOnlyCollection.cs: removed as they are no longer in the b2 API
232
233 2005-05-13  Atsushi Enomoto  <atsushi@ximian.com>
234
235         * Queue.cs, Stack.cs: moved from mscorlib.dll
236
237 2005-02-35  Carlos Alberto Cortez <calberto.cortez@gmail.com>
238
239         * Collections.cs: Changed the code inside IndexOf, for
240         the use of Array.IndexOf<>, to keep clean the code.
241         
242 2004-11-17  Carlos Alberto Cortez Guevara <carlos@unixmexico.org>
243
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
246         value.
247         
248 2004-09-20  Gert Driesen <drieseng@users.sourceforge.net>
249
250         * ReadOnlyCollection.cs: Moved over from corlib
251         * Collection.cs: Moved over from corlib