305 lines
9.6 KiB
Plaintext
305 lines
9.6 KiB
Plaintext
2010-04-09 Raja R Harinath <harinath@hurrynot.org>
|
|
|
|
Don't maintain state in the view
|
|
* SortedSet.cs (SortedSubSet.count): Remove.
|
|
(SortedSubSet..ctor): Move counting loop ...
|
|
(SortedSubSet.Count): ... here.
|
|
(SortedSubSet.TryAdd, SortedSubSet.TryRemove): Update to changes.
|
|
(SortedSubSet.GetMin, SortedSubSet.GetMax): Likewise. Use bounds
|
|
to determine if the view is empty, rather than the count.
|
|
|
|
2010-04-07 Raja R Harinath <harinath@hurrynot.org>
|
|
|
|
Enable set comparision operations on views, and improve performance
|
|
* RBTree.cs (Bound): New. Returns the greatest lower bound and
|
|
least upper bound of the given key.
|
|
(GetSuffixEnumerator): New. Returns an enumerator that starts at
|
|
the given key.
|
|
(NodeEnumerator): Provide suffix enumerator functionality.
|
|
* SortedSet.cs (GetEnumerator): Delegate to ...
|
|
(TryGetEnumerator): ... this. New virtual function.
|
|
(Enumerator): Provide subset enumeration using RBTree's suffix enumerators.
|
|
(SortedSubSet.count): New.
|
|
(SortedSubSet.GetCount): Use it.
|
|
(SortedSubSet.TryAdd, SortedSubSet.TryRemove): Update count.
|
|
(SortedSubSet.GetMin, SortedSubSet.GetMax): Use RBTree.Bound().
|
|
(SortedSubSet.GetEnumerator): Remove.
|
|
(SortedSubSet.TryGetEnumerator): New. Use ranged enumerators.
|
|
|
|
2010-04-06 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: implement Count for SortedSubSet.
|
|
|
|
2010-04-05 Raja R Harinath <harinath@hurrynot.org>
|
|
|
|
* SortedSet.cs (IsProperSubsetOf, IsSubsetOf): Implement using ...
|
|
(is_subset_of): ... new helper.
|
|
(IsProperSupersetOf, IsSupersetOf): Implement using ...
|
|
(is_superset_of): ... new helper.
|
|
(covers, nodups, overlaps): New helpers.
|
|
(SetEquals): Implement.
|
|
(Overlaps): Implement using overlaps().
|
|
(SymmetricExceptWith): Use nodups() helper.
|
|
|
|
2010-04-04 Raja R Harinath <harinath@hurrynot.org>
|
|
|
|
* SortedSet.cs (CheckArgumentNotNull): New helper.
|
|
(IntersectWith, UnionWith): Implement.
|
|
(ExceptWith, SymmetricExceptWith): Likewise.
|
|
(SortedSubSet.IntersectWith): Implement override.
|
|
|
|
* RBTree.cs (do_remove): Ensure the node returned is suitable for
|
|
re-insertion.
|
|
|
|
2010-04-02 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: implement Mix and Max for subsets.
|
|
|
|
2010-04-02 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: implement GetViewBetween.
|
|
|
|
2010-04-02 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: optimize Reverse. Add a virtual TryAdd and TryRemove
|
|
to override in sub trees.
|
|
|
|
2010-04-02 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: implement Min and Max.
|
|
|
|
2010-04-02 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: implement RemoveWhere.
|
|
|
|
2010-04-02 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: implement Reverse.
|
|
|
|
2010-04-01 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: fix API.
|
|
|
|
2010-04-01 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedSet.cs: add new SortedSet type in .net 4.0
|
|
|
|
2010-03-03 Miguel de Icaza <miguel@novell.com>
|
|
|
|
* RBTree.cs: Make these serializable, should fix the serialization
|
|
across appdomains of SortedDictionaries
|
|
|
|
2010-03-11 Sebastien Pouliot <sebastien@ximian.com>
|
|
|
|
* ISet.cs: Add NET_2_1 since this is part of SL4
|
|
|
|
2009-12-01 Jb Evain <jbevain@novell.com>
|
|
|
|
* Stack.cs (Enumerator.Dispose): tag the enumerator as finished
|
|
upon Dispose.
|
|
|
|
2009-11-26 Marek Safar <marek.safar@gmail.com>
|
|
|
|
* LinkedList.cs: Allocate less.
|
|
|
|
2009-11-25 Jb Evain <jbevain@novell.com>
|
|
|
|
* Queue.cs (Enqueue): deal with the case where the tail
|
|
is off the array when deciding to enlarge the capacity.
|
|
|
|
2009-11-25 Jb Evain <jbevain@novell.com>
|
|
|
|
* Queue.cs (ICollection.CopyTo): fix typo, remove code duplication.
|
|
|
|
2009-11-02 Miguel de Icaza <miguel@novell.com>
|
|
|
|
* ISet.cs: Added new interface.
|
|
|
|
2009-10-20 Marek Safar <marek.safar@gmail.com>
|
|
|
|
* SortedList.cs, LinkedList.cs, Queue.cs, Stack.cs,
|
|
SortedDictionary.cs: Improve debugging experience.
|
|
|
|
2009-07-31 Raja R Harinath <harinath@hurrynot.org>
|
|
|
|
* RBTree.cs (NodeEnumerator.check_current): New helper.
|
|
(NodeEnumerator.Current): Don't check invariants.
|
|
* SortedDictionary.cs (Enumerator.Current): Likewise.
|
|
(ValueCollection.Enumerator.Current): Likewise.
|
|
(KeyCollection.Enumerator.Current): Likewise.
|
|
|
|
2009-07-26 Miguel de Icaza <miguel@novell.com>
|
|
|
|
* Stack.cs: Check arguments.
|
|
|
|
2009-07-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
|
|
|
|
* SortedList.cs: the IComparar.Compare arguments were reversed.
|
|
Fixes bug #521750. Patch by Kevin Fitzgerald.
|
|
|
|
2009-05-10 Andy Hume <andyhume32@yahoo.co.uk>
|
|
|
|
* LinkedList.cs: Add null check. Fixes #481621.
|
|
|
|
2009-03-11 Zoltan Varga <vargaz@gmail.com>
|
|
|
|
* SortedList.cs: Add version checking to the Key/Value enumerators +
|
|
implement support for Reset (). Fixes #483985.
|
|
|
|
2009-05-06 Pia Eriksson <pe@hallerud.se>
|
|
|
|
* SortedList.cs: Handle Count == 0 in CopyTo correcly
|
|
* SortedDictionary.cs: Handle Count == 0 in CopyTo correcly
|
|
|
|
2007-11-15 Roei Erez <roeie@mainsoft.com>
|
|
|
|
* Stack.cs: Performance improvement in the case where the stack is popped
|
|
until empty. Changed the condition for resizing the array, and instead of
|
|
check for zero size, check if the inner array is null.
|
|
|
|
2007-11-15 Jb Evain <jbevain@novell.com>
|
|
|
|
* LinkedList.cs: ifdef out manually the Serialization part of the
|
|
LinkedList.Enumerator. As it is a struct, the field SerializationInfo
|
|
have to be assigned in the default constructor, and the tuner cannot
|
|
remove that. Fixes #341938 for real.
|
|
|
|
2007-10-09 Raja R Harinath <rharinath@novell.com>
|
|
|
|
* RBTree.cs (get_Item, do_remove): Remove redundant code.
|
|
|
|
2007-08-20 Jb Evain <jbevain@novell.com>
|
|
|
|
* SortedList.cs: don't crash in ListKeys and ListValues
|
|
when CopyTo targets an empty array, and that the
|
|
sorted list is empty. Fixes #82492.
|
|
|
|
2007-05-08 Raja R Harinath <rharinath@novell.com>
|
|
|
|
Avoid unnecessary allocation on indexer access
|
|
* SortedDictionary.cs (NodeHelper): Rename from NodeComparer.
|
|
(NodeHelper.CreateNode): New.
|
|
(Item.set): Move responsibility of creating new nodes to
|
|
RBTree.Intern.
|
|
* RBTree.cs (INodeHelper): Rename from INodeComparer.
|
|
(INodeHelper.CreateNode): New.
|
|
(Intern): Use it to create a new node if no node is passed in.
|
|
|
|
2007-05-08 Igor Zelmanovich <igorz@mainsoft.com>
|
|
|
|
* RBTree.cs: for TARGET_JVM used Thread Local Storage
|
|
istead Thread-Relative Static Fields
|
|
|
|
2007-05-02 Raja R Harinath <rharinath@novell.com>
|
|
|
|
* RBTree.cs (Enumerator.Current): Remove nullref.
|
|
|
|
* SortedDictionary.cs (ICollection.Contains): Use EqualityComparer
|
|
for comparing the value field.
|
|
|
|
* RBTree.cs (do_remove): Remove some redundant assignments/checks.
|
|
(NodeEnumerator): Simplify. Keep track of a list of
|
|
right-pennants that need to be traversed next, rather than
|
|
comparing parent pointers.
|
|
|
|
2007-05-02 Raja R Harinath <harinath@gmail.com>
|
|
|
|
Make add and remove operations O(log n).
|
|
* SortedDictionary.cs: Rewrite to use the red-black tree
|
|
implementation from RBTree.cs.
|
|
* RBTree.cs: Some more refactoring. Rename Insert() to Intern(),
|
|
and modify semantics slightly. Replace Contains() with Lookup().
|
|
|
|
2007-04-30 Raja R Harinath <rharinath@novell.com>
|
|
|
|
* RBTree.cs: Refactor to reduce generics code.
|
|
|
|
2007-04-30 Raja R Harinath <harinath@gmail.com>
|
|
|
|
* RBTree.cs: New red-black tree implementation for use with
|
|
SortedDictionary.
|
|
|
|
2007-04-19 Gert Driesen <drieseng@users.sourceforge.net>
|
|
|
|
* Queue.cs: Fixed binary serialization, based on patch provided by
|
|
Lionel Cuir. Fixes TrimExcess to use SetCapacity, before it was not
|
|
updating _head which could lead to IndexOutOfRangeException.
|
|
* Stack.cs: Fixed binary serialization, based on patch provided by
|
|
Lionel Cuir. In Pop, clear entry from array to help GC.
|
|
|
|
2007-03-27 Alan McGovern <alan.mcgovern@gmail.com>
|
|
|
|
* Queue.cs: Removed wrong call to version++
|
|
* Stack.cs: Removed wrong call to version++
|
|
|
|
2006-09-30 Gert Driesen <drieseng@users.sourceforge.net>
|
|
|
|
* SortedList.cs: Count property, indexer and Clear method should not
|
|
be virtual. Removed unnecessary explicit interface implementation of
|
|
Add (TKey, TValue) and Remove (TKey, TValue).
|
|
* Queue.cs: Marked Enumerator as Serializable.
|
|
* Stack.cs: Marked Stack <T> and Enumerator as serializable.
|
|
|
|
2006-09-28 Andrew Skiba <andrews@mainsoft.com>
|
|
|
|
* Stack.cs: TARGET_JVM
|
|
|
|
2006-04-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* SortedDictionary.cs : new file. The original code is mostly
|
|
from Kazuki Oikawa.
|
|
|
|
2006-03-11 Miguel de Icaza <miguel@novell.com>
|
|
|
|
* Queue.cs: Flag as serializable.
|
|
|
|
* LinkedList.cs (OnDeserialization): Fix signature.
|
|
|
|
* SortedList.cs: Implement explicitly a few methods that were
|
|
flagged by corcompare.
|
|
|
|
2005-11-10 Zoltan Varga <vargaz@gmail.com>
|
|
|
|
* SortedList.cs Queue.cs Stack.cs: Implement TrimExcess methods.
|
|
|
|
* SortedList.cs: Fix build.
|
|
|
|
* Stack.cs SortedList.cs LinkedList.cs: Update to net 2.0 RTM.
|
|
|
|
2005-11-09 Zoltan Varga <vargaz@gmail.com>
|
|
|
|
* SortedList.cs: New file.
|
|
|
|
2005-09-04 David Waite <mass@akuma.org>
|
|
|
|
* LinkedList.cs, LinkedListNode.cs: added implementation of LinkedList<T>
|
|
|
|
2005-08-08 Kamil Skalski <nazgul@nemerle.org>
|
|
|
|
* Queue.cs, Stack.cs: remove implementation of ICollection<T>,
|
|
since it is no longer in b2 API
|
|
|
|
2005-06-20 David Waite <mass@akuma.org>
|
|
|
|
* Collection.cs, ReadOnlyCollection.cs: removed as they are no longer in the b2 API
|
|
|
|
2005-05-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Queue.cs, Stack.cs: moved from mscorlib.dll
|
|
|
|
2005-02-35 Carlos Alberto Cortez <calberto.cortez@gmail.com>
|
|
|
|
* Collections.cs: Changed the code inside IndexOf, for
|
|
the use of Array.IndexOf<>, to keep clean the code.
|
|
|
|
2004-11-17 Carlos Alberto Cortez Guevara <carlos@unixmexico.org>
|
|
|
|
* Collections.cs: Avoid the call to Array.Clear () in RemoveItem (),
|
|
now we only assign the last element (the deleted one) to its default
|
|
value.
|
|
|
|
2004-09-20 Gert Driesen <drieseng@users.sourceforge.net>
|
|
|
|
* ReadOnlyCollection.cs: Moved over from corlib
|
|
* Collection.cs: Moved over from corlib
|