1 2004-12-20 Ben Maurer <bmaurer@ximian.com>
3 * Hashtable.cs (Find): Before calling KeyEquals, check to see if k
4 == key (ie, they are the same pointer). In many cases, this will
5 avoid two virtual calls. This gives me 1% on mcs bootstrap (!!!!)
7 * Hashtable.cs (Find): Make `i' a uint rather than an int. This
8 avoids having a long compare.
10 2004-12-16 Lluis Sanchez Gual <lluis@novell.com>
12 * Hashtable.cs: Check for null serialization info in OnDeserialization.
13 A hashtable subclass can fully override the constructor, so
14 serializationInfo would be null in this case. Fixes bug #70698.
16 2004-12-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
18 * ArrayList.cs: don't initialize _items twice. Closes bug #70620.
20 2004-12-16 Lluis Sanchez Gual <lluis@novell.com>
22 * Hashtable.cs: Add deserialized elements in OnDeserialization, since
23 when the serialization constructor is called, some of the elements
24 may not yet be fully deserialized. This fixes bug #70570.
26 2004-10-08 Raja R Harinath <rharinath@novell.com>
28 * CaseInsensitiveHashCodeProvider.cs (GetHashCode): When culture
29 is not invariant, avoid an icall on every character.
31 2004-07-21 Geoff Norton <gnorton@customerdna.com>
33 * Hashtable.cs: lock the SyncRoot when Cloning a Synchronized hashtable to avoid
34 a snapshot out of sync error.
36 2004-07-21 Duncan Mak <duncan@ximian.com>
38 * DictionaryBase.cs: Rename the dictionary field to hashtable,
39 which causes a serialization interop bug. Fixes bug #61721.
41 2004-06-18 Ben Maurer <bmaurer@ximian.com>
43 * IKeyComparer.cs: v2 class
45 2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
47 * CaseInsensitiveComparer.cs: added TODO for serialization
48 * CaseInsensitiveHashCodeProvider.cs: added TODO for serialization
49 * SortedList.cs: added TODO for serialization
50 * Stack.cs: added TODO for serialization
52 2004-06-14 Sebastien Pouliot <sebastien@ximian.com>
54 * Hashtable.cs: Compare index and length in CopyTo only when length > 0.
56 2004-06-14 Lluis Sanchez Gual <lluis@ximian.com>
58 * ArrayList.cs: Avoid endless loop in Insert when the current size is 0.
60 2004-06-08 Lluis Sanchez Gual <lluis@ximian.com>
62 * ReadOnlyCollectionBase.cs: Renamed internal variable to make serialization
63 compatible with MS.NET.
65 2004-06-01 Sebastien Pouliot <sebastien@ximian.com>
67 * SortedList.cs: Fixed case where the initial capacity was set to 0.
69 2004-05-31 Sebastien Pouliot <sebastien@ximian.com>
71 * Hashtable.cs: Added ArgumentNullException in GetObjectData.
73 2004-05-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
76 * Comparer.cs: reverted last 2 patches from Gert Driesen. Totally wrong.
79 2004-05-29 Gert Driesen (drieseng@users.sourceforge.net)
81 * Compare.cs: ISerializable should only be implemented
84 2004-05-29 Gert Driesen (drieseng@users.sourceforge.net)
86 * Compare.cs: Implemented ISerializable, fixes public API
88 2004-05-27 Sebastien Pouliot <sebastien@ximian.com>
90 * Hashtable.cs: Cloned synchronized Hashtables are now synchronized.
91 * Queue.cs: Fixed case where we could still get Current after the last
92 MoveNext. Fixed Count for Queue.Synchronize (Queue.Synchronize (q)).
93 * SortedList.cs: Added missing ICloneable support to internal
94 enumerator. Added Capacity to the synchronized version of SortedList.
95 Setting Capacity to 0 returns it to it's default value (16).
97 2004-05-26 Sebastien Pouliot <sebastien@ximian.com>
99 * ArrayList.cs: Fixed possible integer overflows.
101 2004-05-24 Lluis Sanchez Gual <lluis@ximian.com>
103 * Hashtable.cs: Renamed internal class to make serialization compatible
106 2004-05-10 Gert Driesen (drieseng@users.sourceforge.net)
107 * Hashtable.cs: marked EnumeratorMode private
108 * SortedList.cs: marked EnumeratorMode private
110 2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
112 * Comparer.cs: ensure culture is set to null , removed
113 static constructor, removed unneccesary checks
115 2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
117 * CaseInsensitiveComparer.cs: Fix the default constructor (needs to
118 set CurrentCulture, ensure culture is set to null for invariant case,
120 * Comparer.cs: Restyle, change lineendings
122 2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
124 * CaseInsensitiveHashCodeProvider.cs
125 * CaseInsensitiveComparer.cs: Change lineendings
126 * CaseInsensitiveComparer.cs: Restyle
128 2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
130 * BitArray.cs: Fix parameter names
131 * CaseInsensitiveHashCodeProvider.cs: Fix signature
132 * DictionaryEntry.cs: Fix parameter names
133 * Hashtable.cs: Fix signatures
134 * SortedList.cs: Fix signatures
136 2004-04-25 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
138 * CaseInsensitiveHashCodeProvider.cs: Fix the default constructor (needs to
139 set CurrentCulture, Add null check to other constructor, Call correct function
140 for invariant case, ensure culture is set to null for invariant case, removed
141 static constructor, made invariant version available as internal in .Net 1.0
143 2004-04-21 Lluis Sanchez Gual <lluis@ximian.com>
145 * CaseInsensitiveHashCodeProvider.cs: If the culture is null, don't use
146 Char.ToLower(c,culture), since it does not accept null as culture.
148 2004-04-20 Lluis Sanchez Gual <lluis@ximian.com>
150 * Queue.cs: Renamed internal membesr to match MS.NET (to allow serialization
151 interoperability). I also had to make some changes in the implementation:
152 I added a field _tail that points at the first free position in the array, and
153 changed the type of growFactor, which is now an int (its value is the old
156 2004-04-19 Lluis Sanchez Gual <lluis@ximian.com>
158 * Comparer.cs: Made constructor public.
160 2004-03-30 Lluis Sanchez Gual <lluis@ximian.com>
162 * CaseInsensitiveHashCodeProvider.cs: Use the CultureInfo of the calling
163 thread, not the one of the thread that created the instance.
164 * Comparer.cs: Added DefaultInvariant property and missing constructor.
165 Use the specified culture info to compare strings.
167 2004-03-30 Lluis Sanchez Gual <lluis@ximian.com>
169 * CaseInsensitiveHashCodeProvider.cs: Added support for CultureInfo.
170 Implemented property DefaultInvariant.
172 2004-03-29 Lluis Sanchez Gual <lluis@ximian.com>
174 * CollectionBase.cs: Renamed internal arraylist member to match MS.NET
175 (to allow serialization interoperability).
177 2004-03-18 David Sheldon <dave-mono@earth.li>
179 * Hashtable.cs: Serialise/Deserialise to two arrays of
180 keys/values. This will match what MS.NET appears to be
183 2004-02-12 Jackson Harper <jackson@ximian.com>
185 * SortedList.cs: Only .et 1.0 sets the capacity to a min of
188 2004-01-13 Lluis Sanchez Gual <lluis@ximian.com>
190 * Hashtable.cs: Added serialization support to SynchedHashtable. This
193 2004-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
195 * Hashtable.cs: fix Clone. Closes bug #52740. Patch by Benjamin Jemlich
198 2003-12-26 Ben Maurer <bmaurer@users.sourceforge.net>
200 * ArrayList.cs: Add class `SimpleEnumerator' this handles the
201 .GetEnumerator We are able to remove fields by doing this, the
202 sizeof the simple version is 75% of that of the complex one, so we
203 get a pretty nice saving.
205 2003-12-23 Lluis Sanchez Gual <lluis@ximian.com>
207 * ArrayList.cs: Renamed private fields m_Count, m_Data and
208 m_StateChanges to _size, _items and _version, to make it compatible with
209 MS.NET (needed for remoting interoperability). This fixes bug #52438.
211 2003-12-01 Dick Porter <dick@ximian.com>
213 * CaseInsensitiveComparer.cs: Construct the default comparers when
214 they're needed, to avoid a dependency loop with CultureInfo's
217 2003-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
219 * Queue.cs: patch from Carlos Barcenilla.
221 - method: ICollection.Clone()
222 - Optimized. Removed unneeded instructions.
223 - method: public static Queue Synchronized (Queue queue)
224 - ArgumentNullException.ParamName must be "queue", not null.
225 - method: public virtual void TrimToSize()
226 - Must increment modCount.
228 private class SyncQueue
229 - method: public override object Clone ()
230 - Must return a synchronized (SyncStack) instance.
231 - method: public override void TrimToSize ()
234 2003-11-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
236 * IEnumerator.cs: Added missing attribute
238 2003-11-12 Miguel de Icaza <miguel@ximian.com>
240 * CaseInsensitiveComparer.cs: Add missing method.
242 2003-11-10 Zoltan Varga <vargaz@freemail.hu>
244 * Stack.cs: Applied patch from Carlos A. Barcenilla to fix minor
247 2003-11-03 Lluis Sanchez Gual <lluis@ximian.com>
249 * SortedList.cs: Added [Serializable] to Slot class. This fixes bug #50484.
251 2003-10-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
253 * System.Collections/Hashtable.cs: patch from Carlos A.
254 Barcenilla (barce@frlp.utn.edu.ar) that includes some fixes for
255 Hashtable + NUnit2 tests.
257 2003-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
259 * Queue.cs: nullify the array in Clear.
261 2003-09-26 Zoltan Varga <vargaz@freemail.hu>
263 * Hashtable.cs: Remove empty static constructor since it prevents this
264 class from being beforefieldinit.
266 2003-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
268 * CaseInsensitiveHashCodeProvider.cs: small speed improvement.
270 2003-08-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
272 * Stack.cs: patch by JoergR@voelcker.com (Joerg Rosenkranz) that fixes
275 2003-08-20 Duncan Mak <duncan@ximian.com>
277 * Hashtable.cs (PutImpl): Fix my previous checkin, see details
278 posted on bug #47692.
280 I really hope I don't mess up this time, because, if I do again,
281 it will be really embarrassing.
283 2003-08-17 Duncan Mak <duncan@ximian.com>
285 * Hashtable.cs (PutImpl): Patch from Luca Barbieri <lb@lb.ods.org>.
286 Currently Hashtable.PutImpl has an incorrect test which causes the
287 key chain search to terminate as soon as a free slot is found,
288 causing key duplication.
290 This fixes bug #47692.
292 2003-08-11 Duncan Mak <duncan@ximian.com>
294 * DictionaryBase.cs: Applied patch from Carlos Barcenilla
295 (barce@frlp.utn.edu.ar).
297 (Idictionary.Add): Added OnValidate, and undo the transaction if
298 OnInsertCompleteFails.
300 (Indexer set): MS Implementation does not call OnInsert and undoes
301 if OnSetComplete throws an exception
302 (Indexer get): return value is obtained after calling OnGet.
304 (IDictionary.Remove): Call to OnValidate added. If key does not
305 exists calls OnValidate, OnRemove and OnRemoveComplete.
307 (protected IDictionary Dictionary get): Should return itself, not
310 This fixes bug #47460.
312 2003-08-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
314 * CollectionBase.cs: applied patch from Carlos Barcenilla
315 (barce@frlp.utn.edu.ar).
317 2003-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
319 * ArrayList.cs: added / so that gvim syntax highlight doesn't go crazy.
320 * CollectionBase.cs: fixed several bugs reported by Carlos Barcenilla
321 (barce@frlp.utn.edu.ar). Most of the patch is also his.
323 2003-07-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
325 * ArrayList.cs: fixed EnsureCapacity when m_Data.Length is 0.
327 2003-07-29 Miguel de Icaza <miguel@ximian.com>
329 * ArrayList.cs: Deployed ArrayList from Tum; Fixed iterator to
330 allow nulls, and inline a few calls to make profiling more useful.
332 2003-07-24 Miguel de Icaza <miguel@ximian.com>
334 * ArrayList.cs: Removed MonoTODO.
336 2003-07-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
338 * Hashtable.cs: made SynchedHashtable serializable. Fixes bug #45918.
339 Thanks to JoergR@voelcker.com (Joerg Rosenkranz).
341 2003-06-27 Duncan Mak <duncan@ximian.com>
343 * Hashtable.cs: Patch from PAF@design.ru, GetEnumerator should be
344 returning DictionaryEntrys, instead of just the Key of the table.
346 2003-06-26 Lluis Sanchez Gual <lluis@ximian.com>
348 * Hashtable.cs: Fixed bug when serializing and deserializing
349 a hashtable from which one element has been deleted. The Object instance
350 used as a removed marker is not detected as a such, since the
351 serializer creates a different instace.
353 2003-06-13 Herve Poussineau <hpoussineau@fr.st>
355 * SortedList.cs: Can enumerate on DictionaryEntries, not only on
356 keys on values. Enumerate by default on DictionaryEntries.
358 2003-06-12 Duncan Mak <duncan@ximian.com>
360 * Hashtable.cs (constructor):
361 if loadFactor equals Single.NaN, then throw an
362 ArgumentOutOfRangeException.
364 if we set capacity to be too big (ie. capacity / loadFactor is
365 greater than Int32.MaxValue), then we throw an ArgumentException.
367 2003-06-11 Duncan Mak <duncan@ximian.com>
369 * SortedList.cs: Oi! What a mess.
371 If the list was constructed using the null-param constructor, and
372 it tries to set it to a size lower than the default, let it do so.
374 If the list was constructed with a specific size, and it tries to
375 set it to a size lower than the specified size, set it to the
378 (IndexOfValue): Clean up the code somewhat, make it allow for
381 2003-06-08 Ben Maurer <bmaurer@users.sourceforge.net>
382 * ArrayList.cs, Hashtable.cs, SortedList.cs: Enumerator fixes, error
385 2003-06-07 Ben Maurer <bmaurer@users.sourceforge.net>
386 * Stack.cs: Contains (null) works correctly. We never have the
387 array sized less than 16, so that the doubling logic works no
388 matter what. The enumerator is IClonable, like in ms. The
389 Enumerator correctly throws an exception if Current is called
390 before the enumerator is started. We now pass all the Rotor tests
393 2003-06-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
395 * Stack.cs: fixed Clone ().
397 2003-06-04 Ben Maurer <bmaurer@users.sourceforge.net>
398 * DictionaryEntry.cs: Throw exception if key == null. Fixes Rotor
401 2003-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
403 * ArrayList.cs: nullify the array in Clear ().
404 * Queue.cs: nullify the array in Dequeue ().
405 * Stack.cs: nullify the array in Pop ().
407 2003-06-02 Ben Maurer <bmaurer@users.sourceforge.net>
408 * Queue.cs: Added argument checking in constructors according to
409 specs. Also changed default size to 32 as required by the specs.
411 2003-05-31 Ben Maurer <bmaurer@users.sourceforge.net>
412 * BitArray.cs: Rewrote, as it was failing most of the Rotor
413 tests. It now passes them 100%. Also fixes bug #43667.
415 2003-05-03 Ben Maurer <bmaurer@users.sourceforge.net>
417 Made ArrayList.GetRange () make a wrapper around the array list, like Microsoft does. Fixes bug #39724.
419 2003-05-03 Ben Maurer <bmaurer@users.sourceforge.net>
421 Added methods to support IList wrappers
423 2003-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
425 * ArrayList.cs: patch from bernard@ugsolutions.com (Bernie Solomon)
426 that fixes bug #41684.
428 2003-04-15 Eduardo Garcia Cebollero <kiwnix@yahoo.es>
430 * CaseInsensitiveComparerTest.cs: Fixed Compare Method (now works
431 like MS.NET) and implemented the
432 CaseInsensitiveComparerTest(culture) constructor.
434 2003-03-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
436 * Queue.cs: fixed bug #39046.
438 2003-02-15 Pedro MartÃnez Juliá <yoros@wanadoo.es>
440 * Hashtable.cs: Make hashtable serializable (at least with binary
441 formatter). This process was started by the Hashtable maintainer.
443 2003-02-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
445 * ArrayList.cs: fixed setSize (!).
447 2003-01-31 Zoltan Varga <vargaz@freemail.hu>
449 * ArrayList.cs (RemoveAt): duplicated the the code from RemoveRange
450 here, since RemoveAt raises a different exception than RemoveRange
451 when the index is out-of-range. Fixes the ArrayList unit tests.
453 * ArrayList.cs (RemoveRange): fixed indentation.
455 2003-01-12 Varga Zoltan <vargaz@freemail.hu>
457 * ArrayList.cs (RemoveRange): Patch for allowing zero-size
458 removal at the end of a list. It also cleans up the argument
459 checking code so the raised exceptions have the same message as
462 2003-01-10 Duncan Mak <duncan@ximian.com>
464 * ArrayList.cs (Insert): Patch from Zoltan
465 (Zoltan.2.Varga@nokia.com).
467 2002-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
469 * Hashtable.cs: add the key to the error message when
472 2002-10-15 Vladimir Vukicevic <vladimir@pobox.com>
474 * Queue.cs: update new capacity in grow(), preventing queue from
475 constantly looping over old elements in Dequeue(). Also use
476 capacity instead of contents.Length in Enqueue().
478 2002-09-24 Nick Drochak <ndrochak@gol.com>
480 * ArrayList.cs: Make enumerator throw exception if the ArrayList is
481 mutated (Insert, Delete, etc.). Also, fix bug in InsertRange() when
482 this was passed as parameter.
484 2002-08-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
486 * ArrayList.cs: fixed bug #29658.
488 2002-08-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
492 * CaseInsensitiveComparer.cs:
493 * CaseInsensitiveHashCodeProvider.cs:
495 * Queue.cs: misc. fixes based on class status page.
497 2002-07-22 Tim Coleman <tim@timcoleman.com>
498 * CaseInsensitiveHashCodeProvider.cs: Added missing constructor
499 which was breaking System.Web build on linux
501 2002-07-05 Sergey Chaban <serge@wildwestsoftware.com>
503 * SortedList.cs: Implemented thread-safe wrapper. Changed some
506 2002-07-02 Nick Drochak <ndrochak@gol.com>
508 * SortedList.cs: Constructors should use the capacity given regardless
509 how small. After a Clear() the Capacit should be 16. Since a Dictionary
510 might be used in the constructor, make sure we trap exceptions thrown
511 by the Comparer, like in Add().
513 2002-06-30 Nick Drochak <ndrochak@gol.com>
515 * SortedList.cs: Many fixed. A lot of checking for null and throwing
516 exceptions. A few logic bugs fixed as well
518 2002-06-25 Nick Drochak <ndrochak@gol.com>
520 * Queue.cs (CopyTo): Fix logic for copying the circular array.
521 (Enqueue): Use actual length of array to determine when to grow
522 (QueueEnumerator) Fixed Current to use array length, not capacity, and
523 fixed off-by-one errror in MoveNext().
525 Tue Jun 4 13:08:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
527 * ArrayList.cs: fixed RemoveAt() implementation.
529 2002-05-27 Nick Drochak <ndrochak@gol.com>
531 * ArrayList.cs (LastIndexOf): Return -1 if searching for null, also
532 fix check of parameters sent to make sure we don't search beyond the
533 beginning of the list.
534 (ListWrapper): Throw exception if called with null.
535 We now pass all unit tests.
537 2002-05-23 Duncan Mak <duncan@ximian.com>
539 * ArrayList.cs (Wrapper): Preliminary implementation of
540 ArrayList.Wrapper (IList).
542 2002-05-22 Martin Baulig <martin@gnome.org>
544 * ArrayList.cs: Made count, capacity and dataArray the first three
545 fields in the class. They're read by the reflection library.
547 2002-05-21 Lawrence Pit <loz@cable.a2000.nl>
549 * ArrayList.cs: Fixed bug where a capacity of 0 could be reached,
550 thereby causing problems when trying to add elements.
552 2002-05-06 Duncan Mak <duncan@ximian.com>
554 * Queue.cs (TrimToSize): Implemented.
556 2002-05-05 Nick Drochak <ndrochak@gol.com>
558 * ArrayList.cs: Throw RankException when constructing from a
559 multi-dimensional array. Confirmed behavior from MS.NET
561 Thu May 2 15:18:11 CEST 2002 Paolo Molaro <lupus@ximian.com>
563 * ArrayList.cs: make mcs compile again: it's allowed to
564 call arraylist.CopyTo(array, 0) when the length of the array
567 Wed May 1 17:05:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
569 * SortedList.cs: fix RemoveAt () to use the correct length in
572 2002-05-01 Nick Drochak <ndrochak@gol.com>
574 * ArrayList.cs (Add & AddRange) : Throw exceptions where needed.
576 2002/05/01 Nick Drochak <ndrochak@gol.com>
578 * ArrayList.cs (CopyTo) : Check parameters and throw exceptions
581 2002/04/30 Nick Drochak <ndrochak@gol.com>
583 * ArrayList.cs (Clear) : Throw exception if ReadOnly or FixedSize.
584 (InsertRange) : Implement.
585 (SetRange) : Implement.
587 2002-04-30 Nick Drochak <ndrochak@gol.com>
589 * ArrayList.cs (TrimToSize) : Implement.
591 2002-04-28 Duncan Mak <duncan@ximian.com>
593 * ArrayList.cs (InsertRange):
596 (TrimToSize): Throw exceptions where needed.
598 2002-04-29 Nick Drochak <ndrochak@gol.com>
600 * Hashtable.cs (CopyTo): Throw exceptions where needed.
602 2002-04-28 Duncan Mak <duncan@ximian.com>
604 * ArrayList.cs (ReadOnly):
605 (IList.ReadOnly): Implemented.
608 (IList.Synchronized): Implemented.
611 (IList.FixedSize): Implemented.
613 2002-03-24 Duncan Mak <duncan@ximian.com>
615 * SortedList.cs (Synchronized): Stubbed out a missing method
616 pointed out by Jakk Simm's test suite.
618 2002-03-14 Nick Drochak <ndrochak@gol.com>
620 * ArrayList.cs (FixedSize(ArrayList)): should return an ArrayList. The
621 other FixedSize() methods returns an IList.
623 2002-03-13 Duncan Mak <duncan@ximian.com>
625 * ArrayList.cs (FixedSize): Changed the return type to IList if
626 the argument is an IList.
627 (Synchronized): Ditto here.
629 2002-03-08 Sergey Chaban <serge@wildwestsoftware.com>
631 * Hashtable.cs: Fixed ToPrime () bug. Removed ALLOC_GRAIN.
632 Removed unused code from static constructor.
633 GetObjectData () - Version is the same as modificationCount.
635 2002-02-20 Nick Drochak <ndrochak@gol.com>
637 * ArrayList.cs: Add MonoTODO's where necessary. Fix bugs discovered
638 by Bucky's tests. Implement a couple of things that were left undone.
640 Mon Feb 11 19:49:25 CET 2002 Paolo Molaro <lupus@ximian.com>
642 * ArrayList.cs: Dick's fix to contructor.
644 2002-02-07 Duncan Mak <duncan@ximian.com>
646 * Hashtable.cs: Implemented parts of the ISerializable
647 interface. GetObjectData () is good, but serialization constructor
648 needs some more love.
650 Sat Jan 5 15:56:54 CET 2002 Paolo Molaro <lupus@ximian.com>
652 * Hashtable.cs: the IDictionaryEnumerator returns DictionaryEntries.
654 2002-01-04 Ravi Pratap <ravi@ximian.com>
656 * Correct name to MonoTODO everywhere.
658 2002-01-04 Ravi Pratap <ravi@ximian.com>
660 * ArrayList.cs : Setting an index does not implicitly
661 extend the arraylist : remove FIXME.
663 Decorate incomplete elements with the TODO attribute.
665 * BitArray.cs : Insert TODO attributes where appropriate.
667 * CaseInsensitiveHashcodeProvider.cs: Ditto.
669 * Hashtable.cs, SortedList.cs : Ditto.
671 Thu Dec 13 20:17:08 CET 2001 Paolo Molaro <lupus@ximian.com>
673 * ArrayList.cs: implemented AddRange(), CopyTo().
675 2001-11-19 Miguel de Icaza <miguel@ximian.com>
677 * DictionaryBase.cs: Implemented.
679 Wed Nov 14 16:45:49 CET 2001 Paolo Molaro <lupus@ximian.com>
681 * ArrayList.cs: implement ArrayListEnumerator.
682 * Hashtable.cs: hardcode the prime number table.
684 2001-11-06 Nick Drochak <ndrochak@gol.com>
685 * Queue.cs: Fixes from Ricardardo. QueueTest also updated.
687 2001-11-04 Nick Drochak <ndrochak@gol.com>
688 * Queue.cs: Fixed small syntax errors that were preventing the compile.
689 I changed the build file to include Queue.cs as well.
691 2001-11-04 Nick Drochak <ndrochak@gol.com>
692 * ArrayList.cs: Fixed "off by one" error when shifting left the array when
695 * CollectionBase.cs: Added OnValidate(), OnRemove() and OnRemoveComplete()
696 hook methods to the RemoveAt() method.
698 2001-11-04 Nick Drochak <ndrochak@gol.com>
699 * ArrayList.cs: Added private enumerator class and make GetEnumerator()
700 methods return an instance of it.
702 Tue Sep 25 18:52:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
704 * ArrayList.cs: fix Insert () to check capacity, not count.
706 Tue Sep 25 16:54:54 CEST 2001 Paolo Molaro <lupus@ximian.com>
708 * DictionaryEntry.cs: added.
710 2001-08-10 Dietmar Maurer <dietmar@ximian.com>
712 * common.src: removed duplicate entries
714 2001-08-08 Nick Drochak <ndrochak@gol.com>
716 * ReadOnlyCollectionBase.cs: Initialized private member.
717 * CollectionBase.cs: Initialized private member.
718 * common.src : Added ReadOnlyCollectionBase.cs and CollectionBase.cs
719 * /mcs/class/makefile: Used $(SYSTEMROOT) instead of hard coded //c/winnt
720 * /mcs/makefile: Used $(SYSTEMROOT) instead of hard coded //c/winnt
722 2001-08-08 Nick Drochak <nick@jobdragon.com>
724 * CollectionBase.cs: Add
725 * ReadOnlyCollectionBase.cs: Add
726 * CollectionBaseTest.cs: Add
727 * ReadOnlyCollectionBaseTest.cs: Add
729 2001-07-31 Garrett Rooney <rooneg@electricjellyfish.net>
731 * StackTest.cs: Add Test case for System.Collections.Stack.
732 Contributed by Chris Hynes <chrish@assistedsolutions.com>
734 2001-07-30 Garrett Rooney <rooneg@electricjellyfish.net>
736 * Stack.cs: Clone() doesn't need to check if it's synchronized, since
737 we override it in SyncStack anyway...
739 * Stack.cs: Pop() now shrinks the array if we drop below 1/4 full, to
740 avoid using massive amounts of memory that are not necessary. We only
741 drop to half the current size, which I hope will avoid the 'ping-pong'
744 * Stack.cs: SyncStack.IsReadOnly should return stack.IsReadOnly
745 instead of just returning false, since we may have a ReadOnly wrapper
746 in the future (although i can't imagine why). Thanks to David
747 Menestrina <dmenest@yahoo.com> for pointing this out.
749 2001-07-23 Sergey Chaban <serge@wildwestsoftware.com>
751 * Hashtable.cs: Fixed bug in Clear(), the Count wasn't zeroed.
752 From now, Clear() increases modification count.
753 Fixed HCP bug in GetHash(object) - hcp.GetHashCode() was used
754 instead of hcp.GetHashCode(key). This was resulted in the
755 insanely long lookup times when HashCodeProvider was used to
756 construct Hashtable. Added thread-safe wrapper.
758 2001-07-16 David Menestrina <dmenest@yahoo.com>
761 * BitArrayTest.cs: Add
763 2001-07-18 Miguel de Icaza <miguel@ximian.com>
765 * IDictionary.cs (Collections): IDictionary implements ICollection
766 as well. Thanks Sergey!
768 2001-07-18 Garrett Rooney <rooneg@electricjellyfish.net>
770 * Stack.cs Removed unnecessary locking from many methods of
771 SyncStack, removed SyncEnumerator because it was unnecessary,
772 added a modCount member to Stack and Stack.Enumerator, to
773 ensure that the Stack has not been modified out form under the
774 Enumerator, and changed the Enumerator to use a reference to the
775 stack rather than copying over the contents array.
777 2001-07-17 David Menestrina <dmenest@yahoo.com>
779 * Added implementation of BitArray.
781 2001-07-17 Miguel de Icaza <miguel@ximian.com>
783 * Hashtable.cs: Removed call to d.Count in the Hashtable
784 constructor that takes an IDictionary as IDictionary does not
785 provide a Count field.
787 2001-07-15 Sean MacIsaac <macisaac@ximian.com>
789 * IDictionary.cs: Clear was clear.
791 2001-07-13 Miguel de Icaza <miguel@ximian.com>
793 * All files: Renamespace things to System.
795 2001-07-05 Vladimir Vukicevic <vladimir@ximian.com>
797 * ArrayList.cs: initial checkin and implementation
799 * ICollection.cs, IComprarer.cs, IDictionary.cs,
800 IDictionaryEnumerator.cs, IEnumerable.cs, IHashCodeProvider.cs,
801 IList.cs: initial checkin