Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

1144 lines
36 KiB
Plaintext

2010-04-15 Jérémie Laval <jeremie.laval@gmail.com>
* IStructuralComparable.cs:
* IStructuralEquatable.cs: Add BOOTSTRAP_NET_4_0 define
2010-03-19 Sebastien Pouliot <sebastien@ximian.com>
* CollectionDebuggerView.cs: Change to internal so we can avoid
a duplicating the type in assemblies that have [InternalsVisibleTo]
2010-03-16 Jb Evain <jbevain@novell.com>
* IStructuralComparable.cs, IStructuralEquatable.cs: use
MOONLIGHT symbol to disambiguate MonoTouch and Moonlight code.
2010-03-12 Sebastien Pouliot <sebastien@ximian.com>
* IStructuralComparable.cs, IStructuralEquatable.cs: Add them to
NET_2_1 since they are parts of SL4
2009-11-26 Marek Safar <marek.safar@gmail.com>
* CollectionDebuggerView.cs: Removed limit restriction.
2009-10-22 Marek Safar <marek.safar@gmail.com>
* StructuralComparisons.cs: Implemented.
* SortedList.cs Add nicer debug view for tools which support it.
2009-10-16 Miguel de Icaza <miguel@novell.com>
* Jumbo patch to elimiante more dead code now that we have dropped
pre-2.0 profiles.
2009-09-30 Gonzalo Paniagua Javier <gonzalo@novell.com>
* Hashtable.cs: MS (at least latest and greatest) does not always
serialized the HashCodeProvider. Ignoring the error when the field
is not found.
2009-09-24 Marek Safar <marek.safar@gmail.com>
* Queue.cs, DictionaryEntry.cs, Hashtable.cs,
CollectionDebuggerView.cs, Stack.cs, ArrayList.cs: Add nicer debug
view for tools which support it.
2009-09-22 Marek Safar <marek.safar@gmail.com>
* Queue.cs, Hashtable.cs, SortedList.cs, Stack.cs, ArrayList.cs:
Add DebuggerDisplay attribute.
2009-07-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
* SortedList.cs: same issue as bug #521750 in System.
2009-05-22 Zoltan Varga <vargaz@gmail.com>
* IStructuralComparable.cs IStructuralEquatable.cs: New files.
2008-08-31 Zoltan Varga <vargaz@gmail.com>
* BitArray.cs (CopyTo): Allow an index equal to the array length if
the bit array has no elements. Fixes #421803.
2008-08-05 Jb Evain <jbevain@novell.com>
* CaseInsensitiveHashCodeProvider.cs: refactor CultureInfo
comparison to also work for SL2.
2008-08-04 Jb Evain <jbevain@novell.com>
* Hashtable.cs: cleanup internal KeyMarker type for NET_2_1.
2008-08-04 Jb Evain <jbevain@novell.com>
* ArrayList.cs: introduce a helper method to throw
ArgumentOutOfRangeExceptions correctly as SL miss some
constructors.
2008-05-29 Juraj Skripsky <js@hotfeet.ch>
* ArrayList.cs: Create the empty array only once and reuse it.
2008-05-23 Miguel de Icaza <miguel@novell.com>
* Hashtable.cs: Implement a faster clone that does not use an
enumerator to iterate over the values, this doubles the speed of
Clone.
The use of an internal constructor that builds from a Hashtable is
done to avoid populating a Hashtable and then updating every field
and structure with new data.
2008-05-08 Robert Jordan <robertj@gmx.net>
* DictionaryEntry.cs: Rename fields for serialization
compatibility with MS. Accept null keys on 2.0 profile.
Fixes #381922.
2008-04-13 Jb Evain <jbevain@novell.com>
* ArrayList.cs, BitArray.cs, CaseInsensitiveComparer.cs
CaseInsensitiveHashCodeProvider.cs, CollectionBase.cs,
Comparer.cs, IHashCodeProvider.cs, Hashtable.cs,
Queue.cs, Stack.cs: use the INSIDE_CORLIB pattern to
internalize code that is used outside the corlib.
Merged from the Moonlight 2 branch.
2008-04-02 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
* ArrayList.cs
* DictionaryBase.cs
* IEqualityComparer.cs
* Queue.cs
* SortedList.cs
* Stack.cs: Fix parameter names
2008-03-24 Gert Driesen <drieseng@users.sourceforge.net>
* DictionaryBase.cs: Restore previous behavior of indexer for the
1.0 profile. On 2.0 profile, do nothing in IDictionary.Remove if
the key is not present in the hashtable. On 2.0 profile, we also need
to add entry back to hashtable when an exception is thrown in
OnRemoveComplete.
2008-03-21 Sebastien Pouliot <sebastien@ximian.com>
* DictionaryBase.cs: Fix getter on IDictionary.this to avoid two
access to the hashtable and to behave more closely to MS
implementation (see new unit tests).
2007-11-06 Jb Evain <jbevain@novell.com>
* Hashtable.cs: Don't compare user keys against the special removed
key. Fix #324761.
2007-11-05 Sebastien Pouliot <sebastien@ximian.com>
* Queue.cs: Avoid IndexOutOfRangeException after TrimToSize. Patch by
Benjamin Lutz. Fix #321657.
2007-10-25 Zoltan Varga <vargaz@gmail.com>
* Hashtable.cs: Put the hash values into a separate array to help the GC. Fixes
#336069.
2007-10-23 Robert Jordan <robertj@gmx.net>
* SortedList.cs: Mark List|{Values|Keys} as serializable.
Fixes #335703.
2007-08-25 Zoltan Varga <vargaz@gmail.com>
* ArrayList.cs: Fix overflows in BinarySearch and qsort.
2007-08-08 Atsushi Enomoto <atsushi@ximian.com>
* ReadOnlyCollectionBase.cs CollectionBase.cs :
cosmetic 2.0 API fixes.
2007-07-19 Juraj Skripsky <js@hotfeet.ch>
* ArrayList.cs (ArrayList.Adapter): If the given list already is an
ArrayList, just return it directly.
2007-07-05 Gert Driesen <drieseng@users.sourceforge.net>
* CaseInsensitiveHashCodeProvider.cs: Lazy init Default instance and
reconstruct it if CurrentCulture changes.
2007-07-05 Gert Driesen <drieseng@users.sourceforge.net>
* CaseInsensitiveHashCodeProvider.cs: In default ctor, do not save
TextInfo if current culture is invariant. Remoted private ctor.
In Default, always construct new instance since the current culture
may change.
2007-06-08 Ankit Jain <jankit@novell.com>
* ArrayList.cs (Shift): Clear the unused part of the array when
removing elements.
2006-12-29 Marek Safar <marek.safar@gmail.com>
* BitArray.cs: Performance improvements.
2006-11-16 Miguel de Icaza <miguel@novell.com>
* Hashtable.cs: Serialize EqualityComparer.
2006-08-16 Miguel de Icaza <miguel@novell.com>
* Hashtable.cs (PutImpl): Do not access the table twice, only
once.
(TestPrime): optimize, take the sqrt out of the loop.
2006-08-08 Duncan Mak <duncan@novell.com>
* ReadOnlyCollectionBase.cs (Count): Mark as virtual in
NET_2_0. Fixes #79033.
2006-04-26 Atsushi Enomoto <atsushi@ximian.com>
* Comparer.cs : changed internal field from CultureInfo to
CompareInfo. This cosmetic change should fix bug #77701.
2006-03-28 Marek Safar <marek.safar@seznam.cz>
* Stack.cs: Changed ctor to allocate only requested memory.
Tue Feb 28 14:16:25 CET 2006 Paolo Molaro <lupus@ximian.com>
* BitArray.cs: reintroduce optimization carelessly removed by
Robitaille.
2006-02-03 Sebastien Robitaille <sebastien.robitaille@croesus.com>
* BitArray.cs: Renamed members for interoperability with MS.
Tue Jan 24 18:24:00 CET 2006 Paolo Molaro <lupus@ximian.com>
* BitArray.cs: optimize bit access by removing expensive
div/rem ops.
2006-01-04 Sebastien Pouliot <sebastien@ximian.com>
* Hashtable.cs: Mark all inner classes as [Serializable] to match MS
behaviour. Fix bug #76300.
2005-12-19 Sebastien Pouliot <sebastien@ximian.com>
* ArrayList.cs: Fix default capacity under 2.0 (and unit tests under
MS 2.0).
2005-12-07 Sebastien Pouliot <sebastien@ximian.com>
* SortedList.cs: Removed check for IComparable in ctor (fixed bug
#76750). Removed unused private method. Added more useful info (the
duplicate key) to an exception.
2005-12-06 Sebastien Pouliot <sebastien@ximian.com>
* CaseInsensitiveHashCodeProvider: Serialization is now compatible
with MS. Removes the last TODO for 1.1 in this namespace :-)
2005-12-05 Sebastien Pouliot <sebastien@ximian.com>
* Comparer.cs: Added GetObjectData method to implement ISerializable.
2005-09-29 Miguel de Icaza <miguel@novell.com>
* Add ComVisible(true) to all the classes that needed it.
* Removed documentation from DictionaryBase.cs and moved it to
Monodoc.
* ArrayList.cs: Fixed signature for constructor, parameter names
are normative.
* CollectionBase.cs: Add a couple of missing methods.
2005-09-01 Atsushi Enomoto <atsushi@ximian.com>
* Hashtable.cs : SyncHashtable.GetEnumerator() returned keys instead
of entries (DictionaryEntry). Fixed bug #75790.
2005-09-01 Atsushi Enomoto <atsushi@ximian.com>
* SortedList.cs : Even though the key/value pair being set are
identical to the existing one, it causes snapshot out of sync.
Fixed bug #59694.
2005-07-21 Lluis Sanchez Gual <lluis@novell.com>
* CollectionBase.cs: Lazily create the inner list. MS.NET does
it and we need to do the same for the sake of serialization
interoperability. Fixes bug #75575.
2005-07-17 Florian Gross <flgr@ccan.de>
* ArrayList.cs: pass along index offset in RangedArrayList:ToArray.
Fixes bug #75545
2005-06-23 Ben Maurer <bmaurer@ximian.com>
* Queue.cs: Use the enumerator rather than copy to in the
ctor. This makes us more compat with msft, for example, when
passing a bit array
* Stack.cs: ditto
2005-06-23 Martin Baulig <martin@ximian.com>
* IKeyComparer.cs: Removed.
2005-06-12 David Waite <dwaite@gmail.com>
* Hashtable.cs: make prime-related functions internal so generic
Dictionary can use them.
* IEqualityComparer.cs: add non-generic IEqualityComparer interface
2005-06-06 Zoltan Varga <vargaz@freemail.hu>
* Hashtable.cs: Add some missing 2.0 attributes.
2005-05-26 Ben Maurer <bmaurer@ximian.com>
* Queue.cs (grow): fix 61919.
2005-05-09 Atsushi Enomoto <atsushi@ximian.com>
* Stack.cs : empty_stack.CopyTo(empty_array, 0) should be allowed.
2005-02-21 Zoltan Varga <vargaz@freemail.hu>
* Hashtable.cs: Add net 2.0 ReliabilityContractAttributes.
2005-02-19 Kazuki Oikawa <kazuki@panicode.com>
* SortedList.cs, Stack.cs: Reverse the order in the Equals calls.
2004-12-21 Ben Maurer <bmaurer@ximian.com>
* Hashtable.cs (get_Item): duplicate Find here, as we can
specialize a few things. This gives me 7% back.
(Find) Use break rather than return -1. Saves a bit of code.
* Hashtable.cs (GetHash): Avoid a method call. Also, don't store
the this.hcpRef in a variable. This will create another register
which must be pushed on the stack. It is better to just reference
the variable again. hcpRef.GetHashCode (key) is the slow path
anyways, so an extra variable reference here doesn't hurt
(KeyEquals): ditto.
This gives me a few % back in a raw benchmark.
2004-12-20 Ben Maurer <bmaurer@ximian.com>
* Hashtable.cs (Find): Some minor optimizations here.
* Hashtable.cs: Remove GetImpl and inline it.
* Hashtable.cs (Find): Before calling KeyEquals, check to see if k
== key (ie, they are the same pointer). In many cases, this will
avoid two virtual calls. This gives me 1% on mcs bootstrap (!!!!)
* Hashtable.cs (Find): Make `i' a uint rather than an int. This
avoids having a long compare.
2004-12-16 Lluis Sanchez Gual <lluis@novell.com>
* Hashtable.cs: Check for null serialization info in OnDeserialization.
A hashtable subclass can fully override the constructor, so
serializationInfo would be null in this case. Fixes bug #70698.
2004-12-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ArrayList.cs: don't initialize _items twice. Closes bug #70620.
2004-12-16 Lluis Sanchez Gual <lluis@novell.com>
* Hashtable.cs: Add deserialized elements in OnDeserialization, since
when the serialization constructor is called, some of the elements
may not yet be fully deserialized. This fixes bug #70570.
2004-10-08 Raja R Harinath <rharinath@novell.com>
* CaseInsensitiveHashCodeProvider.cs (GetHashCode): When culture
is not invariant, avoid an icall on every character.
2004-07-21 Geoff Norton <gnorton@customerdna.com>
* Hashtable.cs: lock the SyncRoot when Cloning a Synchronized hashtable to avoid
a snapshot out of sync error.
2004-07-21 Duncan Mak <duncan@ximian.com>
* DictionaryBase.cs: Rename the dictionary field to hashtable,
which causes a serialization interop bug. Fixes bug #61721.
2004-06-18 Ben Maurer <bmaurer@ximian.com>
* IKeyComparer.cs: v2 class
2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
* CaseInsensitiveComparer.cs: added TODO for serialization
* CaseInsensitiveHashCodeProvider.cs: added TODO for serialization
* SortedList.cs: added TODO for serialization
* Stack.cs: added TODO for serialization
2004-06-14 Sebastien Pouliot <sebastien@ximian.com>
* Hashtable.cs: Compare index and length in CopyTo only when length > 0.
2004-06-14 Lluis Sanchez Gual <lluis@ximian.com>
* ArrayList.cs: Avoid endless loop in Insert when the current size is 0.
2004-06-08 Lluis Sanchez Gual <lluis@ximian.com>
* ReadOnlyCollectionBase.cs: Renamed internal variable to make serialization
compatible with MS.NET.
2004-06-01 Sebastien Pouliot <sebastien@ximian.com>
* SortedList.cs: Fixed case where the initial capacity was set to 0.
2004-05-31 Sebastien Pouliot <sebastien@ximian.com>
* Hashtable.cs: Added ArgumentNullException in GetObjectData.
2004-05-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ChangeLog:
* Comparer.cs: reverted last 2 patches from Gert Driesen. Totally wrong.
I wonder why.
2004-05-29 Gert Driesen (drieseng@users.sourceforge.net)
* Compare.cs: ISerializable should only be implemented
for NET_1_1 profile
2004-05-29 Gert Driesen (drieseng@users.sourceforge.net)
* Compare.cs: Implemented ISerializable, fixes public API
2004-05-27 Sebastien Pouliot <sebastien@ximian.com>
* Hashtable.cs: Cloned synchronized Hashtables are now synchronized.
* Queue.cs: Fixed case where we could still get Current after the last
MoveNext. Fixed Count for Queue.Synchronize (Queue.Synchronize (q)).
* SortedList.cs: Added missing ICloneable support to internal
enumerator. Added Capacity to the synchronized version of SortedList.
Setting Capacity to 0 returns it to it's default value (16).
2004-05-26 Sebastien Pouliot <sebastien@ximian.com>
* ArrayList.cs: Fixed possible integer overflows.
2004-05-24 Lluis Sanchez Gual <lluis@ximian.com>
* Hashtable.cs: Renamed internal class to make serialization compatible
with MS.NET.
2004-05-10 Gert Driesen (drieseng@users.sourceforge.net)
* Hashtable.cs: marked EnumeratorMode private
* SortedList.cs: marked EnumeratorMode private
2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
* Comparer.cs: ensure culture is set to null , removed
static constructor, removed unneccesary checks
2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
* CaseInsensitiveComparer.cs: Fix the default constructor (needs to
set CurrentCulture, ensure culture is set to null for invariant case,
construct early
* Comparer.cs: Restyle, change lineendings
2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
* CaseInsensitiveHashCodeProvider.cs
* CaseInsensitiveComparer.cs: Change lineendings
* CaseInsensitiveComparer.cs: Restyle
2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
* BitArray.cs: Fix parameter names
* CaseInsensitiveHashCodeProvider.cs: Fix signature
* DictionaryEntry.cs: Fix parameter names
* Hashtable.cs: Fix signatures
* SortedList.cs: Fix signatures
2004-04-25 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
* CaseInsensitiveHashCodeProvider.cs: Fix the default constructor (needs to
set CurrentCulture, Add null check to other constructor, Call correct function
for invariant case, ensure culture is set to null for invariant case, removed
static constructor, made invariant version available as internal in .Net 1.0
2004-04-21 Lluis Sanchez Gual <lluis@ximian.com>
* CaseInsensitiveHashCodeProvider.cs: If the culture is null, don't use
Char.ToLower(c,culture), since it does not accept null as culture.
2004-04-20 Lluis Sanchez Gual <lluis@ximian.com>
* Queue.cs: Renamed internal membesr to match MS.NET (to allow serialization
interoperability). I also had to make some changes in the implementation:
I added a field _tail that points at the first free position in the array, and
changed the type of growFactor, which is now an int (its value is the old
growFactor * 100).
2004-04-19 Lluis Sanchez Gual <lluis@ximian.com>
* Comparer.cs: Made constructor public.
2004-03-30 Lluis Sanchez Gual <lluis@ximian.com>
* CaseInsensitiveHashCodeProvider.cs: Use the CultureInfo of the calling
thread, not the one of the thread that created the instance.
* Comparer.cs: Added DefaultInvariant property and missing constructor.
Use the specified culture info to compare strings.
2004-03-30 Lluis Sanchez Gual <lluis@ximian.com>
* CaseInsensitiveHashCodeProvider.cs: Added support for CultureInfo.
Implemented property DefaultInvariant.
2004-03-29 Lluis Sanchez Gual <lluis@ximian.com>
* CollectionBase.cs: Renamed internal arraylist member to match MS.NET
(to allow serialization interoperability).
2004-03-18 David Sheldon <dave-mono@earth.li>
* Hashtable.cs: Serialise/Deserialise to two arrays of
keys/values. This will match what MS.NET appears to be
doing.
2004-02-12 Jackson Harper <jackson@ximian.com>
* SortedList.cs: Only .et 1.0 sets the capacity to a min of
initial size.
2004-01-13 Lluis Sanchez Gual <lluis@ximian.com>
* Hashtable.cs: Added serialization support to SynchedHashtable. This
fixes bug #52741.
2004-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* Hashtable.cs: fix Clone. Closes bug #52740. Patch by Benjamin Jemlich
(pcgod@gmx.net).
2003-12-26 Ben Maurer <bmaurer@users.sourceforge.net>
* ArrayList.cs: Add class `SimpleEnumerator' this handles the
.GetEnumerator We are able to remove fields by doing this, the
sizeof the simple version is 75% of that of the complex one, so we
get a pretty nice saving.
2003-12-23 Lluis Sanchez Gual <lluis@ximian.com>
* ArrayList.cs: Renamed private fields m_Count, m_Data and
m_StateChanges to _size, _items and _version, to make it compatible with
MS.NET (needed for remoting interoperability). This fixes bug #52438.
2003-12-01 Dick Porter <dick@ximian.com>
* CaseInsensitiveComparer.cs: Construct the default comparers when
they're needed, to avoid a dependency loop with CultureInfo's
constructor.
2003-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* Queue.cs: patch from Carlos Barcenilla.
public class Queue
- method: ICollection.Clone()
- Optimized. Removed unneeded instructions.
- method: public static Queue Synchronized (Queue queue)
- ArgumentNullException.ParamName must be "queue", not null.
- method: public virtual void TrimToSize()
- Must increment modCount.
private class SyncQueue
- method: public override object Clone ()
- Must return a synchronized (SyncStack) instance.
- method: public override void TrimToSize ()
- Not implemented.
2003-11-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
* IEnumerator.cs: Added missing attribute
2003-11-12 Miguel de Icaza <miguel@ximian.com>
* CaseInsensitiveComparer.cs: Add missing method.
2003-11-10 Zoltan Varga <vargaz@freemail.hu>
* Stack.cs: Applied patch from Carlos A. Barcenilla to fix minor
bugs (#50755).
2003-11-03 Lluis Sanchez Gual <lluis@ximian.com>
* SortedList.cs: Added [Serializable] to Slot class. This fixes bug #50484.
2003-10-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* System.Collections/Hashtable.cs: patch from Carlos A.
Barcenilla (barce@frlp.utn.edu.ar) that includes some fixes for
Hashtable + NUnit2 tests.
2003-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* Queue.cs: nullify the array in Clear.
2003-09-26 Zoltan Varga <vargaz@freemail.hu>
* Hashtable.cs: Remove empty static constructor since it prevents this
class from being beforefieldinit.
2003-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* CaseInsensitiveHashCodeProvider.cs: small speed improvement.
2003-08-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* Stack.cs: patch by JoergR@voelcker.com (Joerg Rosenkranz) that fixes
bug #47789.
2003-08-20 Duncan Mak <duncan@ximian.com>
* Hashtable.cs (PutImpl): Fix my previous checkin, see details
posted on bug #47692.
I really hope I don't mess up this time, because, if I do again,
it will be really embarrassing.
2003-08-17 Duncan Mak <duncan@ximian.com>
* Hashtable.cs (PutImpl): Patch from Luca Barbieri <lb@lb.ods.org>.
Currently Hashtable.PutImpl has an incorrect test which causes the
key chain search to terminate as soon as a free slot is found,
causing key duplication.
This fixes bug #47692.
2003-08-11 Duncan Mak <duncan@ximian.com>
* DictionaryBase.cs: Applied patch from Carlos Barcenilla
(barce@frlp.utn.edu.ar).
(Idictionary.Add): Added OnValidate, and undo the transaction if
OnInsertCompleteFails.
(Indexer set): MS Implementation does not call OnInsert and undoes
if OnSetComplete throws an exception
(Indexer get): return value is obtained after calling OnGet.
(IDictionary.Remove): Call to OnValidate added. If key does not
exists calls OnValidate, OnRemove and OnRemoveComplete.
(protected IDictionary Dictionary get): Should return itself, not
the inner hashtable.
This fixes bug #47460.
2003-08-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* CollectionBase.cs: applied patch from Carlos Barcenilla
(barce@frlp.utn.edu.ar).
2003-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ArrayList.cs: added / so that gvim syntax highlight doesn't go crazy.
* CollectionBase.cs: fixed several bugs reported by Carlos Barcenilla
(barce@frlp.utn.edu.ar). Most of the patch is also his.
2003-07-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ArrayList.cs: fixed EnsureCapacity when m_Data.Length is 0.
2003-07-29 Miguel de Icaza <miguel@ximian.com>
* ArrayList.cs: Deployed ArrayList from Tum; Fixed iterator to
allow nulls, and inline a few calls to make profiling more useful.
2003-07-24 Miguel de Icaza <miguel@ximian.com>
* ArrayList.cs: Removed MonoTODO.
2003-07-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* Hashtable.cs: made SynchedHashtable serializable. Fixes bug #45918.
Thanks to JoergR@voelcker.com (Joerg Rosenkranz).
2003-06-27 Duncan Mak <duncan@ximian.com>
* Hashtable.cs: Patch from PAF@design.ru, GetEnumerator should be
returning DictionaryEntrys, instead of just the Key of the table.
2003-06-26 Lluis Sanchez Gual <lluis@ximian.com>
* Hashtable.cs: Fixed bug when serializing and deserializing
a hashtable from which one element has been deleted. The Object instance
used as a removed marker is not detected as a such, since the
serializer creates a different instace.
2003-06-13 Herve Poussineau <hpoussineau@fr.st>
* SortedList.cs: Can enumerate on DictionaryEntries, not only on
keys on values. Enumerate by default on DictionaryEntries.
2003-06-12 Duncan Mak <duncan@ximian.com>
* Hashtable.cs (constructor):
if loadFactor equals Single.NaN, then throw an
ArgumentOutOfRangeException.
if we set capacity to be too big (ie. capacity / loadFactor is
greater than Int32.MaxValue), then we throw an ArgumentException.
2003-06-11 Duncan Mak <duncan@ximian.com>
* SortedList.cs: Oi! What a mess.
If the list was constructed using the null-param constructor, and
it tries to set it to a size lower than the default, let it do so.
If the list was constructed with a specific size, and it tries to
set it to a size lower than the specified size, set it to the
default size.
(IndexOfValue): Clean up the code somewhat, make it allow for
values to be null.
2003-06-08 Ben Maurer <bmaurer@users.sourceforge.net>
* ArrayList.cs, Hashtable.cs, SortedList.cs: Enumerator fixes, error
checking
2003-06-07 Ben Maurer <bmaurer@users.sourceforge.net>
* Stack.cs: Contains (null) works correctly. We never have the
array sized less than 16, so that the doubling logic works no
matter what. The enumerator is IClonable, like in ms. The
Enumerator correctly throws an exception if Current is called
before the enumerator is started. We now pass all the Rotor tests
for this file!
2003-06-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* Stack.cs: fixed Clone ().
2003-06-04 Ben Maurer <bmaurer@users.sourceforge.net>
* DictionaryEntry.cs: Throw exception if key == null. Fixes Rotor
failures
2003-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ArrayList.cs: nullify the array in Clear ().
* Queue.cs: nullify the array in Dequeue ().
* Stack.cs: nullify the array in Pop ().
2003-06-02 Ben Maurer <bmaurer@users.sourceforge.net>
* Queue.cs: Added argument checking in constructors according to
specs. Also changed default size to 32 as required by the specs.
2003-05-31 Ben Maurer <bmaurer@users.sourceforge.net>
* BitArray.cs: Rewrote, as it was failing most of the Rotor
tests. It now passes them 100%. Also fixes bug #43667.
2003-05-03 Ben Maurer <bmaurer@users.sourceforge.net>
* ArrayList.cs
Made ArrayList.GetRange () make a wrapper around the array list, like Microsoft does. Fixes bug #39724.
2003-05-03 Ben Maurer <bmaurer@users.sourceforge.net>
* ArrayList.cs
Added methods to support IList wrappers
2003-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ArrayList.cs: patch from bernard@ugsolutions.com (Bernie Solomon)
that fixes bug #41684.
2003-04-15 Eduardo Garcia Cebollero <kiwnix@yahoo.es>
* CaseInsensitiveComparerTest.cs: Fixed Compare Method (now works
like MS.NET) and implemented the
CaseInsensitiveComparerTest(culture) constructor.
2003-03-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* Queue.cs: fixed bug #39046.
2003-02-15 Pedro Martnez Juli <yoros@wanadoo.es>
* Hashtable.cs: Make hashtable serializable (at least with binary
formatter). This process was started by the Hashtable maintainer.
2003-02-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ArrayList.cs: fixed setSize (!).
2003-01-31 Zoltan Varga <vargaz@freemail.hu>
* ArrayList.cs (RemoveAt): duplicated the the code from RemoveRange
here, since RemoveAt raises a different exception than RemoveRange
when the index is out-of-range. Fixes the ArrayList unit tests.
* ArrayList.cs (RemoveRange): fixed indentation.
2003-01-12 Varga Zoltan <vargaz@freemail.hu>
* 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 <duncan@ximian.com>
* ArrayList.cs (Insert): Patch from Zoltan
(Zoltan.2.Varga@nokia.com).
2002-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* Hashtable.cs: add the key to the error message when
'key duplication'.
2002-10-15 Vladimir Vukicevic <vladimir@pobox.com>
* 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 <ndrochak@gol.com>
* 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 <gonzalo@ximian.com>
* ArrayList.cs: fixed bug #29658.
2002-08-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ArrayList.cs:
* BitArray.cs:
* CaseInsensitiveComparer.cs:
* CaseInsensitiveHashCodeProvider.cs:
* IEnumerable.cs:
* Queue.cs: misc. fixes based on class status page.
2002-07-22 Tim Coleman <tim@timcoleman.com>
* CaseInsensitiveHashCodeProvider.cs: Added missing constructor
which was breaking System.Web build on linux
2002-07-05 Sergey Chaban <serge@wildwestsoftware.com>
* SortedList.cs: Implemented thread-safe wrapper. Changed some
args to camelCase.
2002-07-02 Nick Drochak <ndrochak@gol.com>
* 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 <ndrochak@gol.com>
* 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 <ndrochak@gol.com>
* 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 <lupus@ximian.com>
* ArrayList.cs: fixed RemoveAt() implementation.
2002-05-27 Nick Drochak <ndrochak@gol.com>
* 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 <duncan@ximian.com>
* ArrayList.cs (Wrapper): Preliminary implementation of
ArrayList.Wrapper (IList).
2002-05-22 Martin Baulig <martin@gnome.org>
* 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 <loz@cable.a2000.nl>
* 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 <duncan@ximian.com>
* Queue.cs (TrimToSize): Implemented.
2002-05-05 Nick Drochak <ndrochak@gol.com>
* 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 <lupus@ximian.com>
* 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 <lupus@ximian.com>
* SortedList.cs: fix RemoveAt () to use the correct length in
Array.Copy.
2002-05-01 Nick Drochak <ndrochak@gol.com>
* ArrayList.cs (Add & AddRange) : Throw exceptions where needed.
2002/05/01 Nick Drochak <ndrochak@gol.com>
* ArrayList.cs (CopyTo) : Check parameters and throw exceptions
where needed.
2002/04/30 Nick Drochak <ndrochak@gol.com>
* ArrayList.cs (Clear) : Throw exception if ReadOnly or FixedSize.
(InsertRange) : Implement.
(SetRange) : Implement.
2002-04-30 Nick Drochak <ndrochak@gol.com>
* ArrayList.cs (TrimToSize) : Implement.
2002-04-28 Duncan Mak <duncan@ximian.com>
* ArrayList.cs (InsertRange):
(SetRange):
(Remove):
(TrimToSize): Throw exceptions where needed.
2002-04-29 Nick Drochak <ndrochak@gol.com>
* Hashtable.cs (CopyTo): Throw exceptions where needed.
2002-04-28 Duncan Mak <duncan@ximian.com>
* ArrayList.cs (ReadOnly):
(IList.ReadOnly): Implemented.
(Synchronized):
(IList.Synchronized): Implemented.
(ixedSize):
(IList.FixedSize): Implemented.
2002-03-24 Duncan Mak <duncan@ximian.com>
* SortedList.cs (Synchronized): Stubbed out a missing method
pointed out by Jakk Simm's test suite.
2002-03-14 Nick Drochak <ndrochak@gol.com>
* ArrayList.cs (FixedSize(ArrayList)): should return an ArrayList. The
other FixedSize() methods returns an IList.
2002-03-13 Duncan Mak <duncan@ximian.com>
* ArrayList.cs (FixedSize): Changed the return type to IList if
the argument is an IList.
(Synchronized): Ditto here.
2002-03-08 Sergey Chaban <serge@wildwestsoftware.com>
* 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 <ndrochak@gol.com>
* 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 <lupus@ximian.com>
* ArrayList.cs: Dick's fix to contructor.
2002-02-07 Duncan Mak <duncan@ximian.com>
* 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 <lupus@ximian.com>
* Hashtable.cs: the IDictionaryEnumerator returns DictionaryEntries.
2002-01-04 Ravi Pratap <ravi@ximian.com>
* Correct name to MonoTODO everywhere.
2002-01-04 Ravi Pratap <ravi@ximian.com>
* 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 <lupus@ximian.com>
* ArrayList.cs: implemented AddRange(), CopyTo().
2001-11-19 Miguel de Icaza <miguel@ximian.com>
* DictionaryBase.cs: Implemented.
Wed Nov 14 16:45:49 CET 2001 Paolo Molaro <lupus@ximian.com>
* ArrayList.cs: implement ArrayListEnumerator.
* Hashtable.cs: hardcode the prime number table.
2001-11-06 Nick Drochak <ndrochak@gol.com>
* Queue.cs: Fixes from Ricardardo. QueueTest also updated.
2001-11-04 Nick Drochak <ndrochak@gol.com>
* 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 <ndrochak@gol.com>
* 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 <ndrochak@gol.com>
* 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 <lupus@ximian.com>
* ArrayList.cs: fix Insert () to check capacity, not count.
Tue Sep 25 16:54:54 CEST 2001 Paolo Molaro <lupus@ximian.com>
* DictionaryEntry.cs: added.
2001-08-10 Dietmar Maurer <dietmar@ximian.com>
* common.src: removed duplicate entries
2001-08-08 Nick Drochak <ndrochak@gol.com>
* 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 <nick@jobdragon.com>
* CollectionBase.cs: Add
* ReadOnlyCollectionBase.cs: Add
* CollectionBaseTest.cs: Add
* ReadOnlyCollectionBaseTest.cs: Add
2001-07-31 Garrett Rooney <rooneg@electricjellyfish.net>
* StackTest.cs: Add Test case for System.Collections.Stack.
Contributed by Chris Hynes <chrish@assistedsolutions.com>
2001-07-30 Garrett Rooney <rooneg@electricjellyfish.net>
* 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 <dmenest@yahoo.com> for pointing this out.
2001-07-23 Sergey Chaban <serge@wildwestsoftware.com>
* 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 <dmenest@yahoo.com>
* BitArray.cs: Add
* BitArrayTest.cs: Add
2001-07-18 Miguel de Icaza <miguel@ximian.com>
* IDictionary.cs (Collections): IDictionary implements ICollection
as well. Thanks Sergey!
2001-07-18 Garrett Rooney <rooneg@electricjellyfish.net>
* 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 <dmenest@yahoo.com>
* Added implementation of BitArray.
2001-07-17 Miguel de Icaza <miguel@ximian.com>
* 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 <macisaac@ximian.com>
* IDictionary.cs: Clear was clear.
2001-07-13 Miguel de Icaza <miguel@ximian.com>
* All files: Renamespace things to System.
2001-07-05 Vladimir Vukicevic <vladimir@ximian.com>
* ArrayList.cs: initial checkin and implementation
* ICollection.cs, IComprarer.cs, IDictionary.cs,
IDictionaryEnumerator.cs, IEnumerable.cs, IHashCodeProvider.cs,
IList.cs: initial checkin