2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
[mono.git] / mcs / class / corlib / System.Collections / ChangeLog
1 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2
3         * Comparer.cs: ensure culture is set to null , removed
4           static constructor, removed unneccesary checks
5
6 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
7
8         * CaseInsensitiveComparer.cs: Fix the default constructor (needs to
9           set CurrentCulture, ensure culture is set to null for invariant case,
10           construct early
11         * Comparer.cs: Restyle, change lineendings
12
13 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
14
15         * CaseInsensitiveHashCodeProvider.cs
16         * CaseInsensitiveComparer.cs: Change lineendings
17         * CaseInsensitiveComparer.cs: Restyle
18
19 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
20
21         * BitArray.cs: Fix parameter names
22         * CaseInsensitiveHashCodeProvider.cs: Fix signature
23         * DictionaryEntry.cs: Fix parameter names
24         * Hashtable.cs: Fix signatures
25         * SortedList.cs: Fix signatures
26
27 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
28
29         * CaseInsensitiveHashCodeProvider.cs: Fix the default constructor (needs to
30           set CurrentCulture, Add null check to other constructor, Call correct function
31           for invariant case, ensure culture is set to null for invariant case, removed
32           static constructor, made invariant version available as internal in .Net 1.0
33
34 2004-04-21  Lluis Sanchez Gual  <lluis@ximian.com>
35
36         * CaseInsensitiveHashCodeProvider.cs: If the culture is null, don't use
37           Char.ToLower(c,culture), since it does not accept null as culture.
38
39 2004-04-20  Lluis Sanchez Gual  <lluis@ximian.com>
40
41         * Queue.cs: Renamed internal membesr to match MS.NET (to allow serialization
42         interoperability). I also had to make some changes in the implementation:
43         I added a field _tail that points at the first free position in the array, and
44         changed the type of growFactor, which is now an int (its value is the old
45         growFactor * 100).
46
47 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
48
49         * Comparer.cs: Made constructor public.
50
51 2004-03-30  Lluis Sanchez Gual <lluis@ximian.com>
52
53         * CaseInsensitiveHashCodeProvider.cs: Use the CultureInfo of the calling
54         thread, not the one of the thread that created the instance.
55         * Comparer.cs: Added DefaultInvariant property and missing constructor.
56         Use the specified culture info to compare strings.
57
58 2004-03-30  Lluis Sanchez Gual <lluis@ximian.com>
59
60         * CaseInsensitiveHashCodeProvider.cs: Added support for CultureInfo.
61           Implemented property DefaultInvariant.
62
63 2004-03-29  Lluis Sanchez Gual <lluis@ximian.com>
64
65         * CollectionBase.cs: Renamed internal arraylist member to match MS.NET
66           (to allow serialization interoperability).
67
68 2004-03-18  David Sheldon <dave-mono@earth.li>
69
70   * Hashtable.cs: Serialise/Deserialise to two arrays of 
71    keys/values. This will match what MS.NET appears to be
72    doing.
73
74 2004-02-12  Jackson Harper  <jackson@ximian.com>
75
76         * SortedList.cs: Only .et 1.0 sets the capacity to a min of
77         initial size.
78         
79 2004-01-13  Lluis Sanchez Gual <lluis@ximian.com>
80
81         * Hashtable.cs: Added serialization support to SynchedHashtable. This
82         fixes bug #52741.
83
84 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
85
86         * Hashtable.cs: fix Clone. Closes bug #52740. Patch by Benjamin Jemlich
87         (pcgod@gmx.net).
88
89 2003-12-26 Ben Maurer  <bmaurer@users.sourceforge.net>
90
91         * ArrayList.cs: Add class `SimpleEnumerator' this handles the
92         .GetEnumerator We are able to remove fields by doing this, the
93         sizeof the simple version is 75% of that of the complex one, so we
94         get a pretty nice saving.
95
96 2003-12-23  Lluis Sanchez Gual <lluis@ximian.com>
97
98         * ArrayList.cs: Renamed private fields m_Count, m_Data and
99         m_StateChanges to _size, _items and _version, to make it compatible with
100         MS.NET (needed for remoting interoperability). This fixes bug #52438.
101
102 2003-12-01  Dick Porter  <dick@ximian.com>
103
104         * CaseInsensitiveComparer.cs: Construct the default comparers when
105         they're needed, to avoid a dependency loop with CultureInfo's
106         constructor.
107
108 2003-12-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
109
110         * Queue.cs: patch from Carlos Barcenilla.
111         public class Queue
112                 - method: ICollection.Clone()
113                 - Optimized. Removed unneeded instructions.
114                 - method: public static Queue Synchronized (Queue queue)
115                 - ArgumentNullException.ParamName must be "queue", not null.
116                 - method: public virtual void TrimToSize()
117                 - Must increment modCount.
118
119         private class SyncQueue
120                 - method: public override object Clone ()
121                 - Must return a synchronized (SyncStack) instance.
122                 - method: public override void TrimToSize ()
123                 - Not implemented.
124
125 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
126
127         * IEnumerator.cs: Added missing attribute
128
129 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
130
131         * CaseInsensitiveComparer.cs: Add missing method.
132
133 2003-11-10  Zoltan Varga  <vargaz@freemail.hu>
134
135         * Stack.cs: Applied patch from Carlos A. Barcenilla to fix minor
136         bugs (#50755).
137
138 2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>
139
140         * SortedList.cs: Added [Serializable] to Slot class. This fixes bug #50484.
141
142 2003-10-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
143
144         * System.Collections/Hashtable.cs: patch from Carlos A.
145         Barcenilla (barce@frlp.utn.edu.ar) that includes some fixes for
146         Hashtable + NUnit2 tests.
147
148 2003-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
149
150         * Queue.cs: nullify the array in Clear.
151
152 2003-09-26  Zoltan Varga  <vargaz@freemail.hu>
153
154         * Hashtable.cs: Remove empty static constructor since it prevents this
155         class from being beforefieldinit.
156
157 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
158
159         * CaseInsensitiveHashCodeProvider.cs: small speed improvement.
160
161 2003-08-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
162
163         * Stack.cs: patch by JoergR@voelcker.com (Joerg Rosenkranz) that fixes
164         bug #47789.
165
166 2003-08-20  Duncan Mak  <duncan@ximian.com>
167
168         * Hashtable.cs (PutImpl): Fix my previous checkin, see details
169         posted on bug #47692.
170
171         I really hope I don't mess up this time, because, if I do again,
172         it will be really embarrassing.
173
174 2003-08-17  Duncan Mak  <duncan@ximian.com>
175
176         * Hashtable.cs (PutImpl): Patch from Luca Barbieri <lb@lb.ods.org>.
177         Currently Hashtable.PutImpl has an incorrect test which causes the
178         key chain search to terminate as soon as a free slot is found,
179         causing key duplication.
180
181         This fixes bug #47692.
182
183 2003-08-11  Duncan Mak  <duncan@ximian.com>
184
185         * DictionaryBase.cs: Applied patch from Carlos Barcenilla
186         (barce@frlp.utn.edu.ar).
187         
188         (Idictionary.Add): Added OnValidate, and undo the transaction if
189         OnInsertCompleteFails.
190
191         (Indexer set): MS Implementation does not call OnInsert and undoes
192         if OnSetComplete throws an exception
193         (Indexer get): return value is obtained after calling OnGet.
194
195         (IDictionary.Remove): Call to OnValidate added. If key does not
196         exists calls OnValidate, OnRemove and OnRemoveComplete.
197
198         (protected IDictionary Dictionary get): Should return itself, not
199         the inner hashtable.
200
201         This fixes bug #47460.
202
203 2003-08-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
204
205         * CollectionBase.cs: applied patch from Carlos Barcenilla
206         (barce@frlp.utn.edu.ar).
207
208 2003-08-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
209
210         * ArrayList.cs: added / so that gvim syntax highlight doesn't go crazy.
211         * CollectionBase.cs: fixed several bugs reported by Carlos Barcenilla
212         (barce@frlp.utn.edu.ar). Most of the patch is also his.
213
214 2003-07-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
215
216         * ArrayList.cs: fixed EnsureCapacity when m_Data.Length is 0.
217
218 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
219
220         * ArrayList.cs: Deployed ArrayList from Tum;  Fixed iterator to
221         allow nulls, and inline a few calls to make profiling more useful.
222
223 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
224
225         * ArrayList.cs: Removed MonoTODO.
226
227 2003-07-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
228
229         * Hashtable.cs: made SynchedHashtable serializable. Fixes bug #45918.
230         Thanks to JoergR@voelcker.com (Joerg Rosenkranz).
231
232 2003-06-27  Duncan Mak  <duncan@ximian.com>
233
234         * Hashtable.cs: Patch from PAF@design.ru, GetEnumerator should be
235         returning DictionaryEntrys, instead of just the Key of the table.
236
237 2003-06-26  Lluis Sanchez Gual  <lluis@ximian.com>
238
239         * Hashtable.cs: Fixed bug when serializing and deserializing
240           a hashtable from which one element has been deleted. The Object instance
241           used as a removed marker is not detected as a such, since the
242           serializer creates a different instace.
243
244 2003-06-13  Herve Poussineau  <hpoussineau@fr.st>
245
246         * SortedList.cs: Can enumerate on DictionaryEntries, not only on
247         keys on values. Enumerate by default on DictionaryEntries.
248
249 2003-06-12  Duncan Mak  <duncan@ximian.com>
250
251         * Hashtable.cs (constructor):
252         if loadFactor equals Single.NaN, then throw an
253         ArgumentOutOfRangeException.
254
255         if we set capacity to be too big (ie. capacity / loadFactor is
256         greater than Int32.MaxValue), then we throw an ArgumentException.
257
258 2003-06-11  Duncan Mak  <duncan@ximian.com>
259
260         * SortedList.cs: Oi! What a mess.
261
262         If the list was constructed using the null-param constructor, and
263         it tries to set it to a size lower than the default, let it do so.
264
265         If the list was constructed with a specific size, and it tries to
266         set it to a size lower than the specified size, set it to the
267         default size.
268
269         (IndexOfValue): Clean up the code somewhat, make it allow for
270         values to be null.
271
272 2003-06-08  Ben Maurer <bmaurer@users.sourceforge.net>
273         * ArrayList.cs, Hashtable.cs, SortedList.cs: Enumerator fixes, error
274         checking
275
276 2003-06-07  Ben Maurer <bmaurer@users.sourceforge.net>
277         * Stack.cs: Contains (null) works correctly. We never have the
278         array sized less than 16, so that the doubling logic works no
279         matter what. The enumerator is IClonable, like in ms. The
280         Enumerator correctly throws an exception if Current is called
281         before the enumerator is started. We now pass all the Rotor tests
282         for this file!
283
284 2003-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
285
286         * Stack.cs: fixed Clone ().
287
288 2003-06-04  Ben Maurer <bmaurer@users.sourceforge.net>
289         * DictionaryEntry.cs: Throw exception if key == null. Fixes Rotor
290         failures
291
292 2003-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
293
294         * ArrayList.cs: nullify the array in Clear ().
295         * Queue.cs: nullify the array in Dequeue ().
296         * Stack.cs: nullify the array in Pop ().
297
298 2003-06-02  Ben Maurer <bmaurer@users.sourceforge.net>
299         * Queue.cs: Added argument checking in constructors according to
300         specs. Also changed default size to 32 as required by the specs.
301
302 2003-05-31  Ben Maurer <bmaurer@users.sourceforge.net>
303         * BitArray.cs: Rewrote, as it was failing most of the Rotor
304         tests. It now passes them 100%. Also fixes bug #43667.
305
306 2003-05-03 Ben Maurer <bmaurer@users.sourceforge.net>
307 * ArrayList.cs
308         Made ArrayList.GetRange () make a wrapper around the array list, like Microsoft does. Fixes bug #39724.
309
310 2003-05-03 Ben Maurer <bmaurer@users.sourceforge.net>
311 * ArrayList.cs
312         Added methods to support IList wrappers
313
314 2003-04-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
315
316         * ArrayList.cs: patch from bernard@ugsolutions.com (Bernie Solomon)
317         that fixes bug #41684.
318
319 2003-04-15 Eduardo Garcia Cebollero <kiwnix@yahoo.es>
320
321         * CaseInsensitiveComparerTest.cs: Fixed Compare Method (now works
322         like MS.NET) and implemented the
323         CaseInsensitiveComparerTest(culture) constructor.
324
325 2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
326
327         * Queue.cs: fixed bug #39046.
328
329 2003-02-15  Pedro Martínez Juliá  <yoros@wanadoo.es>
330
331         * Hashtable.cs: Make hashtable serializable (at least with binary
332         formatter). This process was started by the Hashtable maintainer.
333
334 2003-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
335
336         * ArrayList.cs: fixed setSize (!).
337
338 2003-01-31  Zoltan Varga  <vargaz@freemail.hu>
339
340         * ArrayList.cs (RemoveAt): duplicated the the code from RemoveRange
341         here, since RemoveAt raises a different exception than RemoveRange
342         when the index is out-of-range. Fixes the ArrayList unit tests.
343
344         * ArrayList.cs (RemoveRange): fixed indentation.
345
346 2003-01-12  Varga Zoltan <vargaz@freemail.hu>
347
348         * ArrayList.cs (RemoveRange): Patch for allowing zero-size
349         removal at the end of a list. It also cleans up the argument
350         checking code so the raised exceptions have the same message as
351         under MS.NET.
352
353 2003-01-10  Duncan Mak  <duncan@ximian.com>
354
355         * ArrayList.cs (Insert): Patch from Zoltan
356         (Zoltan.2.Varga@nokia.com).
357
358 2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
359
360         * Hashtable.cs: add the key to the error message when
361         'key duplication'.
362
363 2002-10-15  Vladimir Vukicevic  <vladimir@pobox.com>
364
365         * Queue.cs: update new capacity in grow(), preventing queue from
366         constantly looping over old elements in Dequeue(). Also use
367         capacity instead of contents.Length in Enqueue().
368
369 2002-09-24  Nick Drochak  <ndrochak@gol.com>
370
371         * ArrayList.cs: Make enumerator throw exception if the ArrayList is
372         mutated (Insert, Delete, etc.). Also, fix bug in InsertRange() when
373         this was passed as parameter.
374
375 2002-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
376
377         * ArrayList.cs: fixed bug #29658.
378
379 2002-08-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
380
381         * ArrayList.cs:
382         * BitArray.cs:
383         * CaseInsensitiveComparer.cs:
384         * CaseInsensitiveHashCodeProvider.cs:
385         * IEnumerable.cs:
386         * Queue.cs: misc. fixes based on class status page.
387
388 2002-07-22  Tim Coleman  <tim@timcoleman.com>
389         * CaseInsensitiveHashCodeProvider.cs: Added missing constructor
390                 which was breaking System.Web build on linux
391
392 2002-07-05  Sergey Chaban <serge@wildwestsoftware.com>
393
394         * SortedList.cs: Implemented thread-safe wrapper. Changed some
395         args to camelCase.
396
397 2002-07-02  Nick Drochak  <ndrochak@gol.com>
398
399         * SortedList.cs: Constructors should use the capacity given regardless 
400         how small. After a Clear() the Capacit should be 16. Since a Dictionary
401         might be used in the constructor, make sure we trap exceptions thrown
402         by the Comparer, like in Add().
403
404 2002-06-30  Nick Drochak  <ndrochak@gol.com>
405
406         * SortedList.cs: Many fixed. A lot of checking for null and throwing
407         exceptions.  A few logic bugs fixed as well
408
409 2002-06-25   Nick Drochak  <ndrochak@gol.com>
410
411         * Queue.cs (CopyTo): Fix logic for copying the circular array.
412         (Enqueue): Use actual length of array to determine when to grow
413         (QueueEnumerator) Fixed Current to use array length, not capacity, and
414         fixed off-by-one errror in MoveNext().
415
416 Tue Jun 4 13:08:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
417
418         * ArrayList.cs: fixed RemoveAt() implementation.
419
420 2002-05-27  Nick Drochak  <ndrochak@gol.com>
421
422         * ArrayList.cs (LastIndexOf): Return -1 if searching for null, also
423         fix check of parameters sent to make sure we don't search beyond the
424         beginning of the list.
425         (ListWrapper): Throw exception if called with null.
426         We now pass all unit tests.
427
428 2002-05-23  Duncan Mak  <duncan@ximian.com>
429
430         * ArrayList.cs (Wrapper): Preliminary implementation of
431         ArrayList.Wrapper (IList).
432
433 2002-05-22  Martin Baulig  <martin@gnome.org>
434
435         * ArrayList.cs: Made count, capacity and dataArray the first three
436         fields in the class.  They're read by the reflection library.
437
438 2002-05-21  Lawrence Pit  <loz@cable.a2000.nl>
439
440         * ArrayList.cs: Fixed bug where a capacity of 0 could be reached, 
441         thereby causing problems when trying to add elements.
442
443 2002-05-06  Duncan Mak  <duncan@ximian.com>
444
445         * Queue.cs (TrimToSize): Implemented.
446         
447 2002-05-05  Nick Drochak  <ndrochak@gol.com>
448
449         * ArrayList.cs: Throw RankException when constructing from a 
450         multi-dimensional array. Confirmed behavior from MS.NET
451
452 Thu May 2 15:18:11 CEST 2002 Paolo Molaro <lupus@ximian.com>
453
454         * ArrayList.cs: make mcs compile again: it's allowed to
455         call arraylist.CopyTo(array, 0) when the length of the array
456         is also 0.
457
458 Wed May 1 17:05:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
459
460         * SortedList.cs: fix RemoveAt () to use the correct length in
461         Array.Copy.
462
463 2002-05-01  Nick Drochak  <ndrochak@gol.com>
464
465         * ArrayList.cs (Add & AddRange) : Throw exceptions where needed.
466
467 2002/05/01  Nick Drochak <ndrochak@gol.com>
468
469         * ArrayList.cs (CopyTo) : Check parameters and throw exceptions
470         where needed.
471
472 2002/04/30  Nick Drochak <ndrochak@gol.com>
473
474         * ArrayList.cs (Clear) : Throw exception if ReadOnly or FixedSize.
475                 (InsertRange) : Implement.
476                 (SetRange) : Implement.
477
478 2002-04-30  Nick Drochak  <ndrochak@gol.com>
479
480         * ArrayList.cs (TrimToSize) : Implement.
481
482 2002-04-28  Duncan Mak  <duncan@ximian.com>
483
484         * ArrayList.cs (InsertRange): 
485         (SetRange):
486         (Remove):
487         (TrimToSize): Throw exceptions where needed.
488
489 2002-04-29  Nick Drochak  <ndrochak@gol.com>
490
491         * Hashtable.cs (CopyTo): Throw exceptions where needed.
492
493 2002-04-28  Duncan Mak  <duncan@ximian.com>
494
495         * ArrayList.cs (ReadOnly):
496         (IList.ReadOnly): Implemented.
497
498         (Synchronized):
499         (IList.Synchronized): Implemented.
500
501         (ixedSize):
502         (IList.FixedSize): Implemented.
503
504 2002-03-24  Duncan Mak  <duncan@ximian.com>
505
506         * SortedList.cs (Synchronized): Stubbed out a missing method
507         pointed out by Jakk Simm's test suite.
508
509 2002-03-14  Nick Drochak  <ndrochak@gol.com>
510
511         * ArrayList.cs (FixedSize(ArrayList)): should return an ArrayList. The
512         other FixedSize() methods returns an IList.
513
514 2002-03-13  Duncan Mak  <duncan@ximian.com>
515
516         * ArrayList.cs (FixedSize): Changed the return type to IList if
517         the argument is an IList.
518         (Synchronized): Ditto here.
519
520 2002-03-08  Sergey Chaban <serge@wildwestsoftware.com>
521
522         * Hashtable.cs: Fixed ToPrime () bug. Removed ALLOC_GRAIN.
523         Removed unused code from static constructor.
524         GetObjectData () - Version is the same as modificationCount.
525
526 2002-02-20  Nick Drochak  <ndrochak@gol.com>
527
528         * ArrayList.cs: Add MonoTODO's where necessary. Fix bugs discovered
529         by Bucky's tests. Implement a couple of things that were left undone.
530
531 Mon Feb 11 19:49:25 CET 2002 Paolo Molaro <lupus@ximian.com>
532
533         * ArrayList.cs: Dick's fix to contructor.
534
535 2002-02-07  Duncan Mak  <duncan@ximian.com>
536
537         * Hashtable.cs: Implemented parts of the ISerializable
538         interface. GetObjectData () is good, but serialization constructor
539         needs some more love.
540
541 Sat Jan 5 15:56:54 CET 2002 Paolo Molaro <lupus@ximian.com>
542
543         * Hashtable.cs: the IDictionaryEnumerator returns DictionaryEntries.
544
545 2002-01-04  Ravi Pratap  <ravi@ximian.com>
546
547         * Correct name to MonoTODO everywhere.
548
549 2002-01-04  Ravi Pratap  <ravi@ximian.com>
550
551         * ArrayList.cs : Setting an index does not implicitly
552         extend the arraylist : remove FIXME.
553
554         Decorate incomplete elements with the TODO attribute.
555
556         * BitArray.cs : Insert TODO attributes where appropriate.
557
558         * CaseInsensitiveHashcodeProvider.cs: Ditto.
559
560         * Hashtable.cs, SortedList.cs : Ditto.
561         
562 Thu Dec 13 20:17:08 CET 2001 Paolo Molaro <lupus@ximian.com>
563
564         * ArrayList.cs: implemented AddRange(), CopyTo().
565
566 2001-11-19  Miguel de Icaza  <miguel@ximian.com>
567
568         * DictionaryBase.cs: Implemented.
569
570 Wed Nov 14 16:45:49 CET 2001 Paolo Molaro <lupus@ximian.com>
571
572         * ArrayList.cs: implement ArrayListEnumerator.
573         * Hashtable.cs: hardcode the prime number table.
574
575 2001-11-06 Nick Drochak <ndrochak@gol.com>
576         * Queue.cs: Fixes from Ricardardo.  QueueTest also updated.
577
578 2001-11-04 Nick Drochak <ndrochak@gol.com>
579         * Queue.cs: Fixed small syntax errors that were preventing the compile.
580         I changed the build file to include Queue.cs as well.
581
582 2001-11-04 Nick Drochak <ndrochak@gol.com>
583         * ArrayList.cs: Fixed "off by one" error when shifting left the array when
584         items are removed.
585
586         * CollectionBase.cs: Added OnValidate(), OnRemove() and OnRemoveComplete()
587         hook methods to the RemoveAt() method.
588
589 2001-11-04 Nick Drochak <ndrochak@gol.com>
590         * ArrayList.cs: Added private enumerator class and make GetEnumerator()
591         methods return an instance of it.
592
593 Tue Sep 25 18:52:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
594
595         * ArrayList.cs: fix Insert () to check capacity, not count.
596
597 Tue Sep 25 16:54:54 CEST 2001 Paolo Molaro <lupus@ximian.com>
598
599         * DictionaryEntry.cs: added.
600
601 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
602
603         * common.src: removed duplicate entries
604
605 2001-08-08 Nick Drochak <ndrochak@gol.com>
606
607          * ReadOnlyCollectionBase.cs: Initialized private member.
608          * CollectionBase.cs: Initialized private member.
609          * common.src : Added ReadOnlyCollectionBase.cs and CollectionBase.cs
610          * /mcs/class/makefile: Used $(SYSTEMROOT) instead of hard coded //c/winnt
611          * /mcs/makefile: Used $(SYSTEMROOT) instead of hard coded //c/winnt
612
613 2001-08-08 Nick Drochak <nick@jobdragon.com>
614
615          * CollectionBase.cs: Add
616          * ReadOnlyCollectionBase.cs: Add
617          * CollectionBaseTest.cs: Add
618          * ReadOnlyCollectionBaseTest.cs: Add
619
620 2001-07-31 Garrett Rooney <rooneg@electricjellyfish.net>
621
622         * StackTest.cs: Add Test case for System.Collections.Stack.  
623         Contributed by Chris Hynes <chrish@assistedsolutions.com>
624
625 2001-07-30 Garrett Rooney <rooneg@electricjellyfish.net>
626
627         * Stack.cs: Clone() doesn't need to check if it's synchronized, since 
628         we override it in SyncStack anyway...  
629
630         * Stack.cs: Pop() now shrinks the array if we drop below 1/4 full, to 
631         avoid using massive amounts of memory that are not necessary.  We only 
632         drop to half the current size, which I hope will avoid the 'ping-pong' 
633         effect.
634
635         * Stack.cs: SyncStack.IsReadOnly should return stack.IsReadOnly 
636         instead of just returning false, since we may have a ReadOnly wrapper 
637         in the future (although i can't imagine why).  Thanks to David 
638         Menestrina <dmenest@yahoo.com> for pointing this out.
639
640 2001-07-23  Sergey Chaban <serge@wildwestsoftware.com>
641
642         *  Hashtable.cs: Fixed bug in Clear(), the Count wasn't zeroed.
643            From now, Clear() increases modification count.
644            Fixed HCP bug in GetHash(object) - hcp.GetHashCode() was used
645            instead of hcp.GetHashCode(key). This was resulted in the
646            insanely long lookup times when HashCodeProvider was used to
647            construct Hashtable. Added thread-safe wrapper.
648
649 2001-07-16  David Menestrina <dmenest@yahoo.com>
650
651          * BitArray.cs: Add
652          * BitArrayTest.cs: Add
653
654 2001-07-18  Miguel de Icaza  <miguel@ximian.com>
655
656         * IDictionary.cs (Collections): IDictionary implements ICollection
657         as well.  Thanks Sergey!
658
659 2001-07-18  Garrett Rooney  <rooneg@electricjellyfish.net>
660
661         * Stack.cs Removed unnecessary locking from many methods of 
662         SyncStack, removed SyncEnumerator because it was unnecessary, 
663         added a modCount member to Stack and Stack.Enumerator, to 
664         ensure that the Stack has not been modified out form under the 
665         Enumerator, and changed the Enumerator to use a reference to the 
666         stack rather than copying over the contents array.
667
668 2001-07-17  David Menestrina  <dmenest@yahoo.com>
669
670         * Added implementation of BitArray.
671
672 2001-07-17  Miguel de Icaza  <miguel@ximian.com>
673
674         * Hashtable.cs: Removed call to d.Count in the Hashtable
675         constructor that takes an IDictionary as IDictionary does not
676         provide a Count field.
677
678 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
679
680         * IDictionary.cs: Clear was clear.
681
682 2001-07-13  Miguel de Icaza  <miguel@ximian.com>
683
684         * All files: Renamespace things to System.
685
686 2001-07-05  Vladimir Vukicevic  <vladimir@ximian.com>
687
688         * ArrayList.cs: initial checkin and implementation
689
690         * ICollection.cs, IComprarer.cs, IDictionary.cs,
691           IDictionaryEnumerator.cs, IEnumerable.cs, IHashCodeProvider.cs,
692           IList.cs: initial checkin