ed50dfd272be7e5e954b6ad3be68e5ed722f9276
[mono.git] / mcs / class / System / System.Collections.Generic / ChangeLog
1 2007-11-15  Roei Erez  <roeie@mainsoft.com>
2
3         * Stack.cs: Performance improvement in the case where the stack is popped
4         untill empty. Changed the condition for resizing the array, and instead of
5         check for zero size, check if the inner array is null.
6
7 2007-11-15  Jb Evain  <jbevain@novell.com>
8
9         * LinkedList.cs: ifdef out manually the Serialization part of the
10         LinkedList.Enumerator. As it is a struct, the field SerializationInfo
11         have to be assigned in the default constructor, and the tuner cannot
12         remove that. Fixes #341938 for real.
13
14 2007-10-09  Raja R Harinath  <rharinath@novell.com>
15
16         * RBTree.cs (get_Item, do_remove): Remove redundant code.
17
18 2007-08-20  Jb Evain  <jbevain@novell.com>
19
20         * SortedList.cs: don't crash in ListKeys and ListValues
21         when CopyTo targets an empty array, and that the
22         sorted list is empty. Fixes #82492.
23
24 2007-05-08  Raja R Harinath  <rharinath@novell.com>
25
26         Avoid unnecessary allocation on indexer access
27         * SortedDictionary.cs (NodeHelper): Rename from NodeComparer.
28         (NodeHelper.CreateNode): New.
29         (Item.set): Move responsibility of creating new nodes to
30         RBTree.Intern.
31         * RBTree.cs (INodeHelper): Rename from INodeComparer.
32         (INodeHelper.CreateNode): New.
33         (Intern): Use it to create a new node if no node is passed in.
34
35 2007-05-08 Igor Zelmanovich <igorz@mainsoft.com>
36
37         * RBTree.cs: for TARGET_JVM used Thread Local Storage 
38         istead Thread-Relative Static Fields 
39
40 2007-05-02  Raja R Harinath  <rharinath@novell.com>
41
42         * RBTree.cs (Enumerator.Current): Remove nullref.
43
44         * SortedDictionary.cs (ICollection.Contains): Use EqualityComparer
45         for comparing the value field.
46
47         * RBTree.cs (do_remove): Remove some redundant assignments/checks.
48         (NodeEnumerator): Simplify.  Keep track of a list of
49         right-pennants that need to be traversed next, rather than
50         comparing parent pointers.
51
52 2007-05-02  Raja R Harinath  <harinath@gmail.com>
53
54         Make add and remove operations O(log n).
55         * SortedDictionary.cs: Rewrite to use the red-black tree
56         implementation from RBTree.cs.
57         * RBTree.cs: Some more refactoring.  Rename Insert() to Intern(),
58         and modify semantics slightly.  Replace Contains() with Lookup().
59
60 2007-04-30  Raja R Harinath  <rharinath@novell.com>
61
62         * RBTree.cs: Refactor to reduce generics code.
63
64 2007-04-30  Raja R Harinath  <harinath@gmail.com>
65
66         * RBTree.cs: New red-black tree implementation for use with
67         SortedDictionary.
68
69 2007-04-19  Gert Driesen  <drieseng@users.sourceforge.net>
70
71         * Queue.cs: Fixed binary serialization, based on patch provided by
72         Lionel Cuir. Fixes TrimExcess to use SetCapacity, before it was not 
73         updating _head which could lead to IndexOutOfRangeException.
74         * Stack.cs: Fixed binary serialization, based on patch provided by
75         Lionel Cuir. In Pop, clear entry from array to help GC.
76
77 2007-03-27  Alan McGovern <alan.mcgovern@gmail.com>
78
79         * Queue.cs: Removed wrong call to version++
80         * Stack.cs: Removed wrong call to version++
81
82 2006-09-30  Gert Driesen  <drieseng@users.sourceforge.net>
83
84         * SortedList.cs: Count property, indexer and Clear method should not 
85         be virtual. Removed unnecessary explicit interface implementation of
86          Add (TKey, TValue) and Remove (TKey, TValue).
87         * Queue.cs: Marked Enumerator as Serializable.
88         * Stack.cs: Marked Stack <T> and Enumerator as serializable.
89
90 2006-09-28  Andrew Skiba  <andrews@mainsoft.com>
91
92         * Stack.cs: TARGET_JVM
93
94 2006-04-05  Atsushi Enomoto  <atsushi@ximian.com>
95
96         * SortedDictionary.cs : new file. The original code is mostly
97           from Kazuki Oikawa.
98
99 2006-03-11  Miguel de Icaza  <miguel@novell.com>
100
101         * Queue.cs: Flag as serializable.
102
103         * LinkedList.cs (OnDeserialization): Fix signature. 
104
105         * SortedList.cs: Implement explicitly a few methods that were
106         flagged by corcompare. 
107
108 2005-11-10  Zoltan Varga  <vargaz@gmail.com>
109
110         * SortedList.cs Queue.cs Stack.cs: Implement TrimExcess methods.
111         
112         * SortedList.cs: Fix build.
113
114         * Stack.cs SortedList.cs LinkedList.cs: Update to net 2.0 RTM.
115
116 2005-11-09  Zoltan Varga  <vargaz@gmail.com>
117
118         * SortedList.cs: New file.
119
120 2005-09-04  David Waite  <mass@akuma.org>
121
122         * LinkedList.cs, LinkedListNode.cs: added implementation of LinkedList<T>
123
124 2005-08-08  Kamil Skalski  <nazgul@nemerle.org>
125
126         * Queue.cs, Stack.cs: remove implementation of ICollection<T>,
127         since it is no longer in b2 API
128
129 2005-06-20  David Waite  <mass@akuma.org>
130
131         * Collection.cs, ReadOnlyCollection.cs: removed as they are no longer in the b2 API
132
133 2005-05-13  Atsushi Enomoto  <atsushi@ximian.com>
134
135         * Queue.cs, Stack.cs: moved from mscorlib.dll
136
137 2005-02-35  Carlos Alberto Cortez <calberto.cortez@gmail.com>
138
139         * Collections.cs: Changed the code inside IndexOf, for
140         the use of Array.IndexOf<>, to keep clean the code.
141         
142 2004-11-17  Carlos Alberto Cortez Guevara <carlos@unixmexico.org>
143
144         * Collections.cs: Avoid the call to Array.Clear () in RemoveItem (),
145         now we only assign the last element (the deleted one) to its default
146         value.
147         
148 2004-09-20  Gert Driesen <drieseng@users.sourceforge.net>
149
150         * ReadOnlyCollection.cs: Moved over from corlib
151         * Collection.cs: Moved over from corlib