merge -r 58784:58785
[mono.git] / mcs / class / System / System.Collections.Specialized / ChangeLog
1 2005-10-26  Raja R Harinath  <rharinath@novell.com>
2
3         * HybridDictionary.cs (is_list): Remove.
4         (inner): Remove 'set' accessor.
5         (HybridDictionary, Switch): Initialize 'list' and 'hashtable' directly.
6
7 2005-10-26  Svetlana Zholkovsky  <svetlanaz@mainsoft.com>
8
9         * NameObjectCollectionBase.cs
10       ListDictionary.cs
11       HybridDictionary.cs
12       Fix serialization compatibility with .NET
13
14 2005-09-01  Raja R Harinath  <rharinath@novell.com>
15
16         * NameValueCollection.cs (Add): Add a key from the other
17         collection even if its associated value list is empty.
18         Fix regression introduced by last change.
19
20 2005-08-30  Jackson Harper  <jackson@ximian.com>
21
22         * NameValueCollection.cs: Don't crash when we have empty
23         collections.
24
25 2005-08-19  Jb Evain  <jbevain@gmail.com>
26
27         * NameObjectCollectionBase (GetEnumerator):
28                 Use the virtual modifier only in 2.0 profile.
29
30 2005-08-03  Raja R Harinath  <rharinath@novell.com>
31
32         * ListDictionary.cs: Rewrite to reduce key comparison overhead.
33         Unify all list traversals into FindEntry.
34         (AreEqual): Remove.
35         (FindEntry): Split into two duplicate loops, one when comparer ==
36         null, the other when it isn't.  Add new out parameter that points
37         to the entry preceding the result.
38         (Add, AddImpl, this []): Update.
39         (Remove): Use FindEntry for traversal.
40         (CopyTo): Add more tests.
41         (ListEntryEnumerator): Simplify.
42         (ListEntryCollection, ListEntryCollectionEnumerator): Likewise.
43
44         * HybridDictionary.cs: Rewrite to avoid a test on each operation.
45         (list, hashtable): Remove.
46         (inner): New IDictionary field that can hold either a list
47         dictionary or a hashtable.
48         (is_list): New.  Notes whether 'inner' holds a list dictionary or not.
49         (Clear): Don't change a hashtable to a list dictionary.
50
51 2005-07-25  Lluis Sanchez Gual <lluis@novell.com>
52
53         * NameObjectCollectionBase.cs: Don't throw an exception in
54         OnDeserialization if infoCopy has not been set, which means that
55         the serialization constructor has not been called, because
56         a subclass may completely override that constructor.
57         This fixes bug #75607.
58
59 2005-05-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
60
61         * ProcessStringDictionary.cs: PlatformID for 2.0.
62
63 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
64
65         * NameObjectCollectionBase.cs: after 1.0, this uses DefaultInvariant for
66         the hash code provider and comparer, as Ben said.
67
68 2005-05-05  Lluis Sanchez Gual <lluis@novell.com>
69
70         * OrderedDictionary.cs: Don't crash when removing an item
71         that is not in the dictionary.
72
73 2005-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
74
75         * ProcessStringDictionary.cs: on non-windows system, don't make the
76         hashtable case-insensitive. Fixes bug #74796.
77
78 2005-03-23  Lluis Sanchez Gual <lluis@novell.com>
79
80         * OrderedDictionary.cs: Fix bug in item setter.
81
82 2005-03-04  Lluis Sanchez Gual <lluis@novell.com>
83
84         * OrderedDictionary.cs: Implemented.
85
86 2004-08-16  Duncan Mak  <duncan@ximian.com>
87
88         * NameObjectCollectionBase.cs: Fix line endings. It's mostly in
89         DOS endings, so I left it at that.
90         (GetEnumerator): Made virtual.
91
92 2004-06-14  Sebastien Pouliot  <sebastien@ximian.com>
93
94         * HybridDictionary.cs: Fixed Contains for null argument (again). Return
95         false when dictionary is empty or else throw an ArgumentNullException.
96         * NameObjectCollectionBase.cs: Now use IComparer to compare keys. This
97         completes a TODO and fix Remove in NameValueCollection.
98         * NameValueCollection.cs: Added missing Rank check in CopyTo (Array,
99         int).
100
101 2004-06-05  Sebastien Pouliot  <sebastien@ximian.com>
102
103         * HybridDictionary.cs: Fixed Contains for null argument.
104         * NameValueCollection.cs: Fixed Set to remove existing values. Fixed
105         Add(NVC) to throw same exception as MS implementation.
106
107 2004-05-24  Lluis Sanchez Gual  <lluis@ximian.com>
108
109         * StringCollection.cs: Renamed internal variable to make serialization
110           compatible with MS.NET.
111
112 2004-03-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
113
114         * ListDictionary.cs: mark ListEntry as serializable. Thanks to Jan
115         Jaros.
116
117 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
118
119         * ProcessStringDictionary.cs: the same as StringDictionary, but
120         doesn't turn keys into lowercase.
121
122 2003-11-18  Todd Berman <tberman@gentoo.org>
123
124         * IOrderedDictionary.cs: new v2 interface
125
126 2003-10-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
127
128         * NameObjectCollectionBase.cs: added serialization support.
129
130 2003-09-04  Duncan Mak  <duncan@ximian.com>
131
132         Patches from Alon Gazit <along@mainsoft.com>.
133
134         * BitVector32.cs (CreateSection): Check that the new
135         calculated offset isn't more than 32 and not that the sum of the
136         new offset and the number of set bits is more than 32.
137         (this): Perform bitwise and with the complement of the mask
138         shifted version (~(section.Mask << section.Offset)) and not with
139         the shifted version of the mask's complement (~section.Mask <<
140         section.Offset).
141         (this): Currently doesn't return the correct value when the data
142         in the BitVector32 instance is negative.
143         
144         * ListDictionary.cs (CopyTo): If the array is null, it should
145         throw ArgumentNullException. If the index is less than 0, it
146         should throw ArgumentOutOfRangeException.
147         (Remove): Throw ArgumentNullException when the parameter is null.
148
149 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
150
151         * StringDictionary.cs: Reworked attributes based on the new Consts scheme
152
153 2003-07-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
154
155         * NameObjectCollectionBase.cs: Implemented a few missing methods, fixed public signatures
156
157 2003-07-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
158
159         * NameObjectCollectionBase.cs: Fixed signature to be CLSCompliant, changed/corrected header
160         * StringCollection.cs: Improved implementation (should perform better)
161
162 2003-07-02  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
163
164         * BitVector32.cs: Implemented missing method
165         * NameValueCollection.cs: Fixed public signature, Styleguidelined header
166         * StringDictionary.cs: Added missing attribute, fixed visibilities
167
168 2003-06-08  Ben Maurer <bmaurer@users.sourceforge.net>
169         * StringCollection.cs: Rewrote. Now uses ArrayList. Fixes up quite
170         a few Rotor bugs.
171
172 2003-03-03  Miguel de Icaza  <miguel@ximian.com>
173
174         * NameValueCollection.cs: Uncoment constructor, an old MCS bug
175         prevented this from working.  Removed test for nullitude of col,
176         as it would have aborted anyways on the dereference in the base
177         constructor call. 
178
179 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
180
181         * StringCollection.cs: fixed range checks in CopyTo.
182
183 2002-11-06  Daniel Stodden <stodden@in.tum.de>
184
185         * ListDictionary.cs:
186                 - Filled in missing CopyTo()s.
187                 - No, overwriting an entry should not change the Count <:)
188
189 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
190
191         * NameValueCollection.cs: fixed Add (NameValueCollection).
192
193 2002-09-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
194
195         * StringCollection.cs: fixes bug #29791. Thanks to Marcus Urban
196         (mathpup@mylinuxisp.com).
197
198 2002-07-22  Tim Coleman <tim@timcoleman.com>
199         * NameObjectCollectionBase.cs: added iterator stubb to 
200                 NameObjectCollectionBase.KeysCollection
201
202 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
203
204         * HybridDictionary.cs:
205         (Remove): fixed. The value is either in the list or in the hash.
206
207 2002-06-24  Andrew Birkett <adb@tardis.ed.ac.uk>
208
209         * BitVector32.cs: Implemented 'set' section indexer.  Check for
210         overly large sections.  Factored out some helper methods. 
211
212 2002-05-11  Lawrence Pit <loz@cable.a2000.nl>
213
214         * NameValueCollection.AsStringArray: fixed ArgumentNullException bug.
215
216 2002-05-10  Lawrence Pit <loz@cable.a2000.nl>
217
218         * HybridDictionary.cs: implemented
219         * CollectionsUtil.cs: implemented
220         * BitVector32.cs: implemeneted
221         * Modified signature of method ListDictionary.GetEnumerator 
222
223 Fri Feb 8 18:02:50 CET 2002 Paolo Molaro <lupus@ximian.com>
224
225         * NameObjectCollectionBase.cs, NameValueCollection.cs: tweaks to make
226         it compile and provide the constructor needed by nunitcore.
227
228 2002-01-05  Ravi Pratap  <ravi@ximian.com>
229
230         * BitVector32.cs, ListDictionary.cs : MonoTODO everywhere!
231
232         * NameObjectCollectionBase.cs, NameValueCollection.cs : Ditto.
233
234 2001-08-24  Nick Drochak  <ndrochak@gol.com>
235         * NameObjectCollectionBase.cs: Add stub implementation
236         * common.src: Add NameObjectCollectionBase to the build
237         * NameValueCollection.cs: add 'override' to CopyTo().  Maybe
238                 this code actually belongs in the superclass.
239
240 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
241
242         * common.src: Add NameValueCollection.cs to the build
243
244 2001-08-22      John Barnette   <jbarn@httcb.net>
245         * StringDictionary.cs:
246                 Initial working implementation.
247         * ListDictionary.cs:
248                 Initial working implementation.
249
250 2001-07-17      John Barnette   <jbarn@httcb.net>
251         * StringCollection.cs:
252                 Implemented and working according to spec.
253         * StringIterator.cs:
254                 (ADDED) Implemented and working according to spec.
255         * StringCollectionTest.cs:
256                 (ADDED) Initial revision contains 17 tests; all of 'em
257                 run correctly.  More complicated tests to follow.
258
259 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
260
261         * StringCollection.cs: Added so that CodeDom.* would compile.
262