2003-01-12 Varga Zoltan * ArrayList.cs (RemoveRange): Patch for allowing zero-size removal at the end of a list. It also cleans up the argument checking code so the raised exceptions have the same message as under MS.NET. 2003-01-10 Duncan Mak * ArrayList.cs (Insert): Patch from Zoltan (Zoltan.2.Varga@nokia.com). 2002-10-27 Gonzalo Paniagua Javier * Hashtable.cs: add the key to the error message when 'key duplication'. 2002-10-15 Vladimir Vukicevic * Queue.cs: update new capacity in grow(), preventing queue from constantly looping over old elements in Dequeue(). Also use capacity instead of contents.Length in Enqueue(). 2002-09-24 Nick Drochak * ArrayList.cs: Make enumerator throw exception if the ArrayList is mutated (Insert, Delete, etc.). Also, fix bug in InsertRange() when this was passed as parameter. 2002-08-29 Gonzalo Paniagua Javier * ArrayList.cs: fixed bug #29658. 2002-08-24 Gonzalo Paniagua Javier * ArrayList.cs: * BitArray.cs: * CaseInsensitiveComparer.cs: * CaseInsensitiveHashCodeProvider.cs: * IEnumerable.cs: * Queue.cs: misc. fixes based on class status page. 2002-07-22 Tim Coleman * CaseInsensitiveHashCodeProvider.cs: Added missing constructor which was breaking System.Web build on linux 2002-07-05 Sergey Chaban * SortedList.cs: Implemented thread-safe wrapper. Changed some args to camelCase. 2002-07-02 Nick Drochak * SortedList.cs: Constructors should use the capacity given regardless how small. After a Clear() the Capacit should be 16. Since a Dictionary might be used in the constructor, make sure we trap exceptions thrown by the Comparer, like in Add(). 2002-06-30 Nick Drochak * SortedList.cs: Many fixed. A lot of checking for null and throwing exceptions. A few logic bugs fixed as well 2002-06-25 Nick Drochak * Queue.cs (CopyTo): Fix logic for copying the circular array. (Enqueue): Use actual length of array to determine when to grow (QueueEnumerator) Fixed Current to use array length, not capacity, and fixed off-by-one errror in MoveNext(). Tue Jun 4 13:08:43 CEST 2002 Paolo Molaro * ArrayList.cs: fixed RemoveAt() implementation. 2002-05-27 Nick Drochak * ArrayList.cs (LastIndexOf): Return -1 if searching for null, also fix check of parameters sent to make sure we don't search beyond the beginning of the list. (ListWrapper): Throw exception if called with null. We now pass all unit tests. 2002-05-23 Duncan Mak * ArrayList.cs (Wrapper): Preliminary implementation of ArrayList.Wrapper (IList). 2002-05-22 Martin Baulig * ArrayList.cs: Made count, capacity and dataArray the first three fields in the class. They're read by the reflection library. 2002-05-21 Lawrence Pit * ArrayList.cs: Fixed bug where a capacity of 0 could be reached, thereby causing problems when trying to add elements. 2002-05-06 Duncan Mak * Queue.cs (TrimToSize): Implemented. 2002-05-05 Nick Drochak * ArrayList.cs: Throw RankException when constructing from a multi-dimensional array. Confirmed behavior from MS.NET Thu May 2 15:18:11 CEST 2002 Paolo Molaro * ArrayList.cs: make mcs compile again: it's allowed to call arraylist.CopyTo(array, 0) when the length of the array is also 0. Wed May 1 17:05:40 CEST 2002 Paolo Molaro * SortedList.cs: fix RemoveAt () to use the correct length in Array.Copy. 2002-05-01 Nick Drochak * ArrayList.cs (Add & AddRange) : Throw exceptions where needed. 2002/05/01 Nick Drochak * ArrayList.cs (CopyTo) : Check parameters and throw exceptions where needed. 2002/04/30 Nick Drochak * ArrayList.cs (Clear) : Throw exception if ReadOnly or FixedSize. (InsertRange) : Implement. (SetRange) : Implement. 2002-04-30 Nick Drochak * ArrayList.cs (TrimToSize) : Implement. 2002-04-28 Duncan Mak * ArrayList.cs (InsertRange): (SetRange): (Remove): (TrimToSize): Throw exceptions where needed. 2002-04-29 Nick Drochak * Hashtable.cs (CopyTo): Throw exceptions where needed. 2002-04-28 Duncan Mak * ArrayList.cs (ReadOnly): (IList.ReadOnly): Implemented. (Synchronized): (IList.Synchronized): Implemented. (ixedSize): (IList.FixedSize): Implemented. 2002-03-24 Duncan Mak * SortedList.cs (Synchronized): Stubbed out a missing method pointed out by Jakk Simm's test suite. 2002-03-14 Nick Drochak * ArrayList.cs (FixedSize(ArrayList)): should return an ArrayList. The other FixedSize() methods returns an IList. 2002-03-13 Duncan Mak * ArrayList.cs (FixedSize): Changed the return type to IList if the argument is an IList. (Synchronized): Ditto here. 2002-03-08 Sergey Chaban * Hashtable.cs: Fixed ToPrime () bug. Removed ALLOC_GRAIN. Removed unused code from static constructor. GetObjectData () - Version is the same as modificationCount. 2002-02-20 Nick Drochak * ArrayList.cs: Add MonoTODO's where necessary. Fix bugs discovered by Bucky's tests. Implement a couple of things that were left undone. Mon Feb 11 19:49:25 CET 2002 Paolo Molaro * ArrayList.cs: Dick's fix to contructor. 2002-02-07 Duncan Mak * Hashtable.cs: Implemented parts of the ISerializable interface. GetObjectData () is good, but serialization constructor needs some more love. Sat Jan 5 15:56:54 CET 2002 Paolo Molaro * Hashtable.cs: the IDictionaryEnumerator returns DictionaryEntries. 2002-01-04 Ravi Pratap * Correct name to MonoTODO everywhere. 2002-01-04 Ravi Pratap * ArrayList.cs : Setting an index does not implicitly extend the arraylist : remove FIXME. Decorate incomplete elements with the TODO attribute. * BitArray.cs : Insert TODO attributes where appropriate. * CaseInsensitiveHashcodeProvider.cs: Ditto. * Hashtable.cs, SortedList.cs : Ditto. Thu Dec 13 20:17:08 CET 2001 Paolo Molaro * ArrayList.cs: implemented AddRange(), CopyTo(). 2001-11-19 Miguel de Icaza * DictionaryBase.cs: Implemented. Wed Nov 14 16:45:49 CET 2001 Paolo Molaro * ArrayList.cs: implement ArrayListEnumerator. * Hashtable.cs: hardcode the prime number table. 2001-11-06 Nick Drochak * Queue.cs: Fixes from Ricardardo. QueueTest also updated. 2001-11-04 Nick Drochak * Queue.cs: Fixed small syntax errors that were preventing the compile. I changed the build file to include Queue.cs as well. 2001-11-04 Nick Drochak * ArrayList.cs: Fixed "off by one" error when shifting left the array when items are removed. * CollectionBase.cs: Added OnValidate(), OnRemove() and OnRemoveComplete() hook methods to the RemoveAt() method. 2001-11-04 Nick Drochak * ArrayList.cs: Added private enumerator class and make GetEnumerator() methods return an instance of it. Tue Sep 25 18:52:48 CEST 2001 Paolo Molaro * ArrayList.cs: fix Insert () to check capacity, not count. Tue Sep 25 16:54:54 CEST 2001 Paolo Molaro * DictionaryEntry.cs: added. 2001-08-10 Dietmar Maurer * common.src: removed duplicate entries 2001-08-08 Nick Drochak * ReadOnlyCollectionBase.cs: Initialized private member. * CollectionBase.cs: Initialized private member. * common.src : Added ReadOnlyCollectionBase.cs and CollectionBase.cs * /mcs/class/makefile: Used $(SYSTEMROOT) instead of hard coded //c/winnt * /mcs/makefile: Used $(SYSTEMROOT) instead of hard coded //c/winnt 2001-08-08 Nick Drochak * CollectionBase.cs: Add * ReadOnlyCollectionBase.cs: Add * CollectionBaseTest.cs: Add * ReadOnlyCollectionBaseTest.cs: Add 2001-07-31 Garrett Rooney * StackTest.cs: Add Test case for System.Collections.Stack. Contributed by Chris Hynes 2001-07-30 Garrett Rooney * Stack.cs: Clone() doesn't need to check if it's synchronized, since we override it in SyncStack anyway... * Stack.cs: Pop() now shrinks the array if we drop below 1/4 full, to avoid using massive amounts of memory that are not necessary. We only drop to half the current size, which I hope will avoid the 'ping-pong' effect. * Stack.cs: SyncStack.IsReadOnly should return stack.IsReadOnly instead of just returning false, since we may have a ReadOnly wrapper in the future (although i can't imagine why). Thanks to David Menestrina for pointing this out. 2001-07-23 Sergey Chaban * Hashtable.cs: Fixed bug in Clear(), the Count wasn't zeroed. From now, Clear() increases modification count. Fixed HCP bug in GetHash(object) - hcp.GetHashCode() was used instead of hcp.GetHashCode(key). This was resulted in the insanely long lookup times when HashCodeProvider was used to construct Hashtable. Added thread-safe wrapper. 2001-07-16 David Menestrina * BitArray.cs: Add * BitArrayTest.cs: Add 2001-07-18 Miguel de Icaza * IDictionary.cs (Collections): IDictionary implements ICollection as well. Thanks Sergey! 2001-07-18 Garrett Rooney * Stack.cs Removed unnecessary locking from many methods of SyncStack, removed SyncEnumerator because it was unnecessary, added a modCount member to Stack and Stack.Enumerator, to ensure that the Stack has not been modified out form under the Enumerator, and changed the Enumerator to use a reference to the stack rather than copying over the contents array. 2001-07-17 David Menestrina * Added implementation of BitArray. 2001-07-17 Miguel de Icaza * Hashtable.cs: Removed call to d.Count in the Hashtable constructor that takes an IDictionary as IDictionary does not provide a Count field. 2001-07-15 Sean MacIsaac * IDictionary.cs: Clear was clear. 2001-07-13 Miguel de Icaza * All files: Renamespace things to System. 2001-07-05 Vladimir Vukicevic * ArrayList.cs: initial checkin and implementation * ICollection.cs, IComprarer.cs, IDictionary.cs, IDictionaryEnumerator.cs, IEnumerable.cs, IHashCodeProvider.cs, IList.cs: initial checkin