7538e11a2ba817a4229566f0d52aecc330bc774c
[mono.git] / mcs / class / corlib / System / ChangeLog
1 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2
3         * AppDomain.cs: securityInfo can be null in CreateDomain.
4
5 2002-08-19  Dick Porter  <dick@ximian.com>
6
7         * MonoType.cs: Add a space before the Assembly name in
8         AssemblyQualifiedName (needed for resource files so the MS runtime
9         can load types)
10
11 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
12
13         * AppDomain.cs: parameter name when throwing ArgumentNullException.
14
15         * ArgumentException.cs: modified Message to do what MS does.
16
17         * ArgumentNullException.cs: don't use {0} in message.
18
19         * Exception.cs: use Message property in ToString ().
20
21 2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
22
23         * WeakReference.cs: Changed the constructor and GetObjectData
24         method needed for ISerializable implementation in order to be
25         compatible with SOAP generated by MS.
26
27 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
28
29         * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
30
31 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
32
33         * Exception.cs (ToString): changed the ouput format.
34
35 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
36
37         * MonoType.cs: moved get_method icall to this class, we can
38         remove it as soon someone provides a full featured GetMethodImpl.
39
40         * Type.cs: use GetMethodImpl everywhere.
41
42         * Delegate.cs: new CreateDelegate implementations.
43
44 2002-08-06  Tim Coleman <tim@timcoleman.com>
45         * MonoType.cs: 
46                 Fix bug #28582.  Now checks parameters for properties
47                 in GetPropertyImpl.
48
49 2002-08-04  Nick Drochak  <ndrochak@gol.com>
50
51         * Buffer.cs: Throw correct exception in GetByte() and SetByte().
52
53 2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
54
55         * String.cs:
56         (FormatSpecifier): allow white space between the comman and the width
57         specifier.
58
59 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
60
61         * Int32.cs:
62         * Int64.cs:
63         * UInt32.cs:
64         * UInt64.cs: fixed bug #28050. May be a MS bug?
65
66 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
67
68         * MonoType.cs: fix IsArrayImpl.
69
70 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
71
72         * String.cs: make ToLower (culture) and ToUpper (culture) use the
73         default ToLower and ToUpper and don't throw NotImplemented.
74
75 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
76
77         * Type.cs: make GettTypeCode an icall. Test implementation of
78         GetMember().
79
80 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
81
82         * AppDomainSetup.cs: implemented LoaderOptimization.
83
84 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
85
86         * Activator.cs: some more intermediate results checking in
87         in CreateInstance and CreateInstanceFrom and use GetConstructor and
88         Invoke only with Type [] until the other overloaded versions work.
89
90 2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
91
92         * Activator.cs: reformatted. Implemented CreateInstance* methods
93         that return ObjectHandle.
94
95         * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
96
97 2002-07-03  Nick Drochak  <ndrochak@gol.com>
98
99         * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
100         the divisor is not) and avoid the icall, which seems to have a bug.
101
102 2002-07-03  Nick Drochak  <ndrochak@gol.com>
103
104         * Double.cs (CompareTo): Correctly handle the case where the instance
105         is NaN. Also return 0 if the values are equal.
106
107 2002/07/03  Nick Drochak <ndrochak@gol.com>
108
109         * MissingMethodException: Add missing Message property
110         * MissingMemberException: Add missing Message property
111
112 2002-06-30  Nick Drochak  <ndrochak@gol.com>
113
114         * Double.cs (CompareTo): Just see which is bigger.  Don't use the
115         subtraction trick, it doesn't work when the values have a diference of
116         less than one.
117
118         * Single.cs (CompareTo): same
119
120 2002-06-27  Martin Baulig  <martin@gnome.org>
121
122         * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
123         constructor argument.  [FIXME: The implicit conversion to an
124         unsigned integer doesn't work with mcs.]
125
126 2002-06-26  Martin Baulig  <martin@gnome.org>
127
128         * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
129         not `S = System'.  This file now compiles with mcs.
130
131         * String.cs: Removed the already ifdef-outed __arglist Concat function
132         to make it compile with mcs.
133
134 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
135
136         * IntegerFormatter.cs:
137         (FormatParse.FormatNumber): fixed custom format for negative numbers.
138
139 2002-06-21  Martin Baulig  <martin@gnome.org>
140
141         * Double.cs: Replace the private `enum State' with constants since this
142         will avoid some bigger headaches in mcs.
143
144 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
145
146         * TimeSpan.cs: do not pollute the namespace with the
147         System.Parser name.
148
149 2002-06-18  Nick Drochak  <ndrochak@gol.com>
150
151         * ArgumentException.cs: Use the message given in the constructor when
152         accessing the Message property.  Thanks to Dietmar for the help with 
153         "base".
154
155 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
156
157         * MonoType.cs: GetField is now a InternalCall
158
159 2002-06-13  Nick Drochak  <ndrochak@gol.com>
160
161         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
162         sortable format(s), e.g. "2002-02-25"
163
164 2002/06/12  Nick Drochak <ndrochak@gol.com>
165
166         * Random.cs (Next): Fix math error.  Return a number within the range.
167
168 2002-06-12  Nick Drochak  <ndrochak@gol.com>
169
170         * String.cs (IndexOf): Return -1 if start index is equal to string
171         length.
172
173 2002-06-10  Duncan Mak  <duncan@ximian.com>
174
175         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
176         (ToType): Added null field in conversionTable to avoid
177         IndexOutOfRangeException. Changed what exceptions we throw to match
178         the spec.
179         
180 2002-06-11  Nick Drochak  <ndrochak@gol.com>
181
182         * Int64.cs (Parse): Added unique strings to the messages where we throw
183         a FormatException. Needed these to debug, so just left them in since
184         they might be useful later. Fixed Currency parsing where we weren't
185         looking at CurrencyDecimalSeparator, etc.
186
187 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>\r
188 \r
189         * DateTime.cs: fixes to pass tests M0 to M6:\r
190                 if yy pattern then year values >= 30 are in 20th century\r
191                 rfc1123 pattern is always in GMT, therefor useutc must be false\r
192         made GetNow() internal static so it can be called from TimeZone.\r
193         * TimeZone.cs: removed dependency on year 2002 from initialization of \r
194         current timezone.\r
195 \r
196 2002-06-09  Duncan Mak  <duncan@ximian.com>
197
198         * Convert.cs (ToType): Rearranged what Exceptions we throw to
199         match MS behavior.
200
201 2002-06-08  Duncan Mak  <duncan@ximian.com>
202
203         * Decimal.cs: Added support for the IConvertible interface.
204
205 2002-06-08  Martin Baulig  <martin@gnome.org>
206
207         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
208         doesn't necessarily need to be of the enum's underlying type.
209
210 2002/06/07  Nick Drochak <ndrochak@gol.com>
211
212         * String.cs: Add [Serializable] to class
213         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
214
215 2002-06-04  Nick Drochak  <ndrochak@gol.com>
216
217         * Double.cs (Parse): Recognize the group separator string, but still we
218         don't check the format for the proper number of digits between
219         separators. Also throw OverflowException when we get Pos or Neg
220         Infinity from runtime.
221
222 2002-06-03  Duncan Mak  <duncan@ximian.com>
223
224         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
225
226 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
227
228         * Type.cs: fixed GetTypeCode.
229
230 2002-06-02  Duncan Mak  <duncan@ximian.com>
231
232         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
233         cast from an int so that we throw OverFlowException correctly.
234         
235         (ToInt64): Use a new 64bit version of ConvertToBase.
236         
237         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
238         and Int32.MaxValue).
239
240         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
241
242 2002-06-02  Nick Drochak  <ndrochak@gol.com>
243
244         * Convert.cs (ToSByte): Check for special value.
245         * Single.cs (Parse): 
246         * UInt16.cs (Parse):
247         * UInt32.cs (Parse): Throw OverflowException if negative
248
249 2002-06-02  Duncan Mak  <duncan@ximian.com>
250
251         * Convert.cs (DBNull): Point it to DBNull.Value.
252         (IsDBNull): Instead of checking typecodes, just check to see if
253         it's the same as the DBNull field.
254
255 2002-06-02  Nick Drochak  <ndrochak@gol.com>
256
257         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
258
259 2002-06-02  Duncan Mak  <duncan@ximian.com>
260
261         * Char.cs (Parse): Simplify the Exception handling.
262
263         * Convert.cs (ToDecimal): Remove call to Math.Round () when
264         converting from a float.
265
266 2002-05-30  Martin Baulig  <martin@gnome.org>
267
268         * MonoType.cs (GetInterface): Implemented.
269
270 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
271
272         * Activator.cs: implemented CreateInstance ().
273
274 2002-05-22  Duncan Mak  <duncan@ximian.com>
275
276         * Convert.cs (ConvertToBase): Added new 64bit version.
277         (BuildConvertedString64): New 64bit version of
278         BuildConvertedString.
279
280         This fixes bug 25068.
281
282         (ConvertFromBase): Added additional test for checking if the
283         digits are valid. Thanks to Miguel for coming up with this test.
284
285         This fixes bug 25071.
286         
287 2002-05-21  Duncan Mak  <duncan@ximian.com>
288
289         * Convert.cs (ToType): Rearranged to fit the new layout of
290         conversionTable.
291
292         (conversionTable): Rearranged to fit the layout of the
293         System.TypeCode enum.
294
295         This should fix bug 25075.
296         
297 2002-05-21  Duncan Mak  <duncan@ximian.com>
298
299         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
300         mixed up the two code paths, one for converting to a specific base
301         (this case), another from converting from a foreign base to base10
302         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
303
304         * Convert.cs (ToByte)
305         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
306         that we won't confuse FormatException with OverflowException.
307
308 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
309
310         * Environment.cs: CommandLine missed spaces between arguments.
311         Implemented StackTrace. Returning MachineName in UserDomainName\r
312         instead of null.\r
313         \r
314 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
315
316         * MonoCustomAttrs.cs: handle inherit argument.
317
318 2002-05-21  Nick Drochak  <ndrochak@gol.com>
319
320         * Math.cs (Pow): Change icall method name and insert parameter
321         checks in for infinities and NaN.
322
323 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
324
325         * Double.cs (Parse): Reimplement by cleaning up the string first,
326         and then passing to strtof in the mono runtime.
327
328         * Single.cs (Parse): Use the Double implementation and cast to
329         float. 
330
331 2002-05-21  Nick Drochak  <ndrochak@gol.com>
332
333         * Math.cs 
334                 (Ceiling): Check for "special" values
335                 (Floor): Check for "special" values
336                 (Round): Fix off-by-one error on decimal shifting
337
338 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>\r
339 \r
340         * DateTime.cs: ToString () using "G" format specifier \r
341 \r
342 2002-05-19  Martin Baulig  <martin@gnome.org>
343
344         * Convert.cs (FromBase64CharArray): Do correct exception handling.
345
346 2002-05-19  Martin Baulig  <martin@gnome.org>
347
348         * Convert.cs (FromBase64CharArray): Convert the char array using
349         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
350         a byte array.
351
352 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
353
354         * MonoType.cs: Style changes.
355
356         * Type.cs: Style changes.
357
358 2002-05-16  Piers Haken <piersh@friksit.com
359
360         * UInt64.cs: fix declaration of IConvertible.To* overrides.
361
362 2002-05-16  Nick Drochak  <ndrochak@gol.com>
363
364         * BitConverter.cs (ToString): Add parameter check for invalid start 
365         index.
366
367         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
368         now that StreamWriter uses buffering
369
370 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
371
372         * Double.cs: Oops.  Also handle exponents without finding a dot.
373
374 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
375
376         * ChangeLog: removed empty entry at the top of the file.
377
378         * Int32.cs: made static functions used by Parse internal.
379
380         * Int64.cs:
381         * UInt32.cs:
382         * UInt64.cs: removed static fucntions used by Parse and use the ones
383         in Int32.cs
384
385 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
386
387         * IServiceProvider.cs: added using System
388
389 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
390
391         * Single.cs: copied ToString() and Parse() methods from 
392         Double to Single and modified a tiny bit for Single.  
393         There is still a FIXME for Double and Single about
394         passing the format and provider info to the icall too.\r
395
396 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
397
398         * Int32.cs:
399         * Int64.cs:
400         * UInt32.cs:
401         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
402         Don't use a delegate to test for valid digits.
403
404 2002-05-01  Duncan Mak  <duncan@ximian.com>
405
406         * Convert.cs: 
407         * Math.cs: Added missing CLSCompliant attributes where necessary.
408         
409 2002-04-30  Duncan Mak  <duncan@ximian.com>
410
411         * ArgumentException.cs (Message): 
412         * ArgumentOutOfRangeException.cs (Message): Added.
413
414 2002-04-30  Nick Drochak  <ndrochak@gol.com>
415
416         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
417
418 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
419
420         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
421
422 2002-04-28  Duncan Mak  <duncan@ximian.com>
423
424         * DivideByZeroException.cs: Added missing serialization constructor.
425
426         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
427
428 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
429
430         * Math.cs: fix Floor () and Round (). Closes #23960.
431
432 2002-04-27  Nick Drochak  <ndrochak@gol.com>
433
434         * Array.cs (IList.Contains): Should throw a RankException if this is 
435         called on a Rank > 1 array. Not in the docs, but this is what the 
436         MS.NET does.
437
438 2002-04-26  Duncan Mak  <duncan@ximian.com>
439
440         * MissingMemberException.cs: Made the message variable 'protected'
441         instead of 'private', so that we can see it in
442         MissingMethodException and MissingFieldException.
443
444         * MissingFieldException.cs:
445         * MissingMethodException.cs: Added missing (string, string)
446         constructor, and also the Message property.
447
448 2002-04-26  Martin Baulig  <martin@gnome.org>
449
450         * Enum.cs: Implemented the IConvertible methods.
451
452 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
453
454         * SByte.cs: little change in Parse (string) to avoid incorrect
455         OverflowException thrown (reported by nickd).
456
457 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
458
459         * ValueType.cs: Add Serializable attribute.
460
461         * String.cs: ifdef-out out the __arglist Concat function until I
462         add support for that to mcs.
463
464 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
465
466         * AppDomain.cs (GetValue): usage of the correct icall (bug)
467
468 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
469
470         * GC.cs: implement most of the methods as icalls.
471
472 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
473
474         * DecimalFormatter.cs (ToString): return correct value when the
475         decimal number is 0.
476
477 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
478         
479         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
480         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
481
482 2002-04-24  Nick Drochak  <ndrochak@gol.com>
483
484         * Double.cs (Parse): Handle case where there are no digits before the 
485         decimal point, such as ".1".
486
487 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
488
489         * Int32.cs:
490         * UInt32.cs:
491         * Int64.cs:
492         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
493
494 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
495
496         * String.cs (Split): fixed invalid split of count 0 and 1.
497         
498 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
499         
500         * String.cs (LastIndexOf): fixed argument checking.
501         * String.cs (Equals): made internal for performace.
502
503 2002-04-23  Nick Drochak  <ndrochak@gol.com>
504
505         * String.cs (Join): check argument and throw exception if needed
506
507 2002-04-23  Nick Drochak  <ndrochak@gol.com>
508
509         * String.cs (StartsWith): check argument and throw exception if needed
510
511 2002-04-22  Nick Drochak  <ndrochak@gol.com>
512
513         * String.cs (IndexOfAny): check arguments and throw exceptions as
514         neccessary.  ALso remove some debug WriteLines.
515
516 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
517
518         * String.cs: use internal constructors
519         buf fix in Concat.
520
521 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
522
523         * MonoType.cs: make GetElementType its own icall.
524
525 2002-04-18  Nick Drochak <ndrochak@gol.com>
526
527         * String.cs: Modified file. Re-add methods needed by the unit tests.
528
529 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
530
531         * String.cs: some code speedups and restored GetTypeCode().
532
533 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
534
535         * String.cs: New implementation using internal calls.
536         
537 2002-04-16  Nick Drochak  <ndrochak@gol.com>
538
539         * DecimalFormatter.cs: Trim off excess null characters from the string
540         that decimal2string gives back.
541
542 2002-04-16  Nick Drochak  <ndrochak@gol.com>
543
544         * String.cs (SubString): revert my change.  I can't reproduce the
545         problem anymore.
546
547 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
548
549         * Attribute.cs: added GetHashCode and Equals.
550
551 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
552
553         * Enum.cs: little improvements to Format ().
554
555 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
556
557         * String.cs: internalcall GetHashCode().
558         * Array.cS: optimize access to elements.
559
560 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
561
562         * String.cs: make IndexOfAny() use an internalcall.
563
564 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
565
566         * Int32.cs:
567         * UInt32.cs:
568         * Int64.cs: 
569         * UInt64.cs: fixed error when testing for validity of flags.
570
571 2002-04-11  Nick Drochak  <ndrochak@gol.com>
572
573         * Double.cs: Use an internal call for ToString(). This is just a simple
574         implementation to get away from throwing a NotImplementedException.
575
576 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
577
578         * Int32.cs:
579         * UInt32.cs:
580         * Int64.cs: 
581         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
582         lupus.
583
584         * Int32.cs:
585         * Int64.cs: throw an OverFlowException when parsing a string 
586         containing a dot followed by any non '0' number.
587
588 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
589
590         * Byte.cs:
591         * UInt16.cs:
592         * UInt32.cs:
593         * UInt64.cs: added complex Parse ().
594
595 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
596
597         * SByte.cs:
598         * Int16.cs:
599         * Int32.cs:
600         * Int64.cs: added complex Parse ().
601
602 2002-04-09  Nick Drochak  <ndrochak@gol.com>
603
604         * Array.cs (BinarySearch): Add checks on paramters before using them
605         and throw exceptions as needed.
606
607         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
608         "G" format to "F" if so.
609
610 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
611
612         * MonoCustomAttrs.cs: return arrays of type Attribute[]
613         instead of object[].
614
615 2002/04/09  Nick Drochak <ndrochak@gol.com>
616
617         * String.cs (Substring): Copy only non-null characters to the new
618         string.
619
620 2002-04-09  Nick Drochak  <ndrochak@gol.com>
621
622         * IntegerFormatter.cs: Don't use a format character to indicate a
623         custom format was passed in. It was using 'z' to indicate a custom
624         format, but really it should throw a format exception if the user
625         tries to use "z" as the format string. Now it does.
626
627         * Activator.cs: New File.
628
629 2002-04-08  Nick Drochak  <ndrochak@gol.com>
630
631         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
632         applied to an enum. Need to handle the different possible integer
633         types of an enum somehow.  Can anyone say generics?
634
635 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
636
637         * Convert.cs: switched the To*(object) methods to use
638         IConvertible directly instead of calling ChangeType
639
640 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
641
642         * ValueType.cs: make Equals() an internalcall.
643
644 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
645
646         * Type.cs: also look for nested types in FindMembers.
647         * MonoType.cs: make GetNestedTypes() an internalcall.
648
649 2002-04-05  Nick Drochak  <ndrochak@gol.com>
650
651         * Enum.cs (Parse): Handle different underlying types.
652
653 2002/04/04 Nick Drochak <ndrochak@gol.com>
654
655         * Enum.cs (IsDefined): Throw exception when type of value to look for
656         is not the correct one.  Attempt to have it work with string values
657         too, but not sure if the unit tests are getting that far yet.
658
659 2002-04-04  Nick Drochak  <ndrochak@gol.com>
660
661         * Decimal.cs: Fix a couple of typos.
662
663 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
664
665         * Enum.cs: the values array is of the enum and not of the underlying
666         type. Updates and some bug fixes.
667         * MonoType.cs: make the internalcall return FullName instead of the
668         assembly qualified name.
669         * Type.cs: make ToString () simply return FullName.
670
671 2002-04-03  Nick Drochak  <ndrochak@gol.com>
672
673         * Type.cs (GetTypeCode): provide some of the implementation for this
674         method.  It's still too simplistic to be considered complete.
675
676 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
677
678         * Object.cs: fixed FieldGetter/FieldSetter signature
679
680 2002-04-02  Nick Drochak  <ndrochak@gol.com>
681
682         * Environment.cs: add MonoTODO's on parts that should have it.
683
684 2002-04-01  Nick Drochak  <ndrochak@gol.com>
685
686         * Enum.cs: added reality checks (check parameters to most methods that
687         need them).
688
689 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
690
691         * Object.cs: added FieldGetter/FieldSetter
692
693 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
694
695         * IntegerFormatter.cs: fixed initialization error in static
696         constructor.
697
698 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
699
700         * Delegate.cs: added new field to store a trampoline function
701
702 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
703
704         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
705         make custom format strings work (not fully functional yet).
706
707 2002/03/28  Nick Drochak <ndrochak@gol.com>
708
709         * IntegerFormatter.cs: Change class from internal to public.  Add
710         necessary [CLSCompliant(false)] attributes.
711
712 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
713         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
714         (was a typo)
715
716 2002-03-28  Nick Drochak  <ndrochak@gol.com>
717
718         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
719
720 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
721
722         * Console.cs: Modified to get std handles from MonoIO.
723         * Environment.cs: removed PAL dependencies.
724
725 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
726
727         * String.cs (System): Removed internal enumeration, because
728         bootstrapping the corlib at this point does not support
729         enumerations. 
730
731         * IntPtr.cs: Temporary work-around until I fix the assembly
732         attributes bug.
733
734 2002-03-24  Martin Baulig  <martin@gnome.org>
735
736         * Enum.cs (GetValues): According to the docu this is sorted after
737         values, not names.
738
739         * String.cs (System): Removed enumeration, because it is pretty
740         hard to support enumerations in /nostdlib mode for the core types.
741
742 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
743
744         * Array.cs: move error handling in the catch block.
745         * MulticastDelegate.cs: remove == and != operators that were
746         removed with the delegate changes (when you add stuff, please do not
747         remove existing functionality!).
748         * Type.cs: if a property is not found in a type, search for it
749         in the parent types, too.
750
751 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
752         
753         * Math.cs: changed to use icall instead of PAL.
754
755 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
756
757         * Double.cs: added check for NaN (Bug [22082])
758
759 2002-03-19  Nick Drochak  <ndrochak@gol.com>
760
761         * Enum.cs (Equals): check for null and throw if it is.
762         * Enum.cs (Format): check for null parameters and throw if necessary.
763         This method still needs more argument checking.
764
765 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
766
767         * Enum.cs (Equals): check if Enums are of the same type
768
769 2002-03-18  Nick Drochak  <ndrochak@gol.com>
770
771         * Double.cs: Explicitly handle comparisons in CompareTo() for
772         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
773
774         * Enum.cs(CompareTo): Check types of values before trying to compare.
775         Throw exceptions if types are invalid or don't match.
776
777 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
778
779         * Array.cs: Add some extra debugging information.
780
781 2002-03-15  Nick Drochak  <ndrochak@gol.com>
782
783         * Array.cs: Added IList and IEnumerable. 
784
785 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
786
787         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
788         NonCLSCompliant. 
789
790 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
791
792         * Delegate.cs (Equals): also compare method_ptr 
793         (GetHashCode): returm method_ptr as hash
794
795 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
796         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
797         such as 42.ToString("0000000"), as these are (currently) not implemented
798         in System.IntegerFormatter. TimeSpan luckely can do with Standard
799         Numeric Format Strings, such as 42.ToString("D7").
800
801 2002-03-12  Duncan Mak  <duncan@ximian.com>
802
803         * FieldAccessException.cs: 
804         * MethodAccessException.cs: 
805         * PlatformNotSupportedException.cs: Inherit from
806         MemberAccessException, not SystemException.
807
808         * ObsoleteAttribute.cs: Made Message and IsError properties
809         instead of fields.
810
811 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
812
813         * GC.cs: make SuppressFinalize() a nop.
814         * Delegate.cs: fix == operator.
815
816 2002-03-13  Nick Drochak  <ndrochak@gol.com>
817
818         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
819         runtime that goes with this patch.
820
821 2002-03-10  Martin Baulig  <martin@gnome.org>
822
823         * Int32.cs (Parse): Correctly parse negative numbers.
824
825 2002-03-08  Martin Baulig  <martin@gnome.org>
826
827         * String.cs (Split): Really fix it this time. Also adding several new
828         testcase to the testsuite.       
829
830 2002-03-08  Martin Baulig  <martin@gnome.org>
831
832         * Array.cs (Copy): Optimized: removed duplicate null check, removed
833         two duplicate GetLowerBound() calls and one duplicate IsValueType.
834
835 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
836
837         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
838         * String.cs: use the dumb code for IndexOf(string): this is worth
839         15-20 % speedup in mcs compile with mint.
840
841 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
842
843         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
844
845 2002-03-07  Martin Baulig  <martin@gnome.org>
846
847         * String.cs (Join): Throw an ArgumentNullException.
848         (LastIndexOf (string,int,int)): This method does a backwards search,
849         so startIndex points to the end of value, not to its beginning. Don't
850         throw an exception if startIndex equals this.Length. Always return -1
851         if startIndex is smaller than the length of value.
852         (Replace (string,string)): Replace all occurences of oldValue.
853         If newValue is null, all occurences of oldValue are to be removed.
854         (Split (char[],int)): Return an empty array if maxCount is zero, throw
855         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
856         elements, not maxValue+1.
857
858 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
859
860         * MonoType.cs: make GetEvents() an internal call.
861         * MulticastDelegate.cs: copy the passed in array.
862
863 2002-03-06  Martin Baulig  <martin@gnome.org>
864
865         * Array.cs (Copy): Use FastCopy when appropriate and do correct
866         exception handling.
867
868 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
869         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
870         some of the failures found be new tests (see ChangeLog in 
871         Test/System). Comments added to this method, based on
872         the representation invariant of this class, that (try to) explain
873         why it now should be correct.
874
875 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
876
877         * Int64.cs (Parse): bug fix for max. negative value. 
878
879 2002-03-07  Nick Drochak  <ndrochak@gol.com>
880
881         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
882         I need to understand what the difference between the attribute and
883         the interface is.
884
885 2002-03-06  Martin Baulig  <martin@gnome.org>
886
887         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
888         an InvalidCastException if the widening conversion failed. See
889         testcases #M94-#M96.
890
891         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
892         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
893         for this.
894
895         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
896         (Copy): Actually allow copying multi-dimensional arrays.
897
898 2002-03-05  Duncan Mak  <duncan@ximian.com>
899
900         * Convert.cs:
901         (DBNull) Added the missing field.
902         (IsDBNull) Fixed typo.
903         (ToByte (string, int)) Implemented.
904         (ToString (byte, int)) Implemented.
905         (ConvertToBase)
906         (BuildConvertedString) internal functions used for converting values to
907         a specific base.
908
909         * Int16.cs: 
910         * Int32.cs:
911         * Int64.cs:
912         * Single.cs:
913         * UInt16.cs: 
914         * UInt32.cs: Implemented the IConvertible interface.    
915
916         * CharEnumerator.cs: Renamed to variables to be clearer and
917         changed some of the tests to conform to the 1.0 spec.
918
919 2002-03-06  Martin Baulig  <martin@gnome.org>
920
921         * Array.cs (Copy): Calculate absolute array position here and use
922         GetValueImpl() and SetValueImpl() with that position. We can now
923         copy multi-dimensional arrays.
924         (CopyTo): Small bug fix.
925
926 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
927
928         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
929         Nick (See VersionTest.cs).
930         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
931         error comparing the current position (idx) against the length of the
932         string iterated and it set idx to an unrecognized special value (-2)
933
934 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
935
936         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
937         to do this dirty work, but someone has to do it (and I need it to pass
938         the "200 sample tests compiled on linux" mark).
939
940 2002-03-06  Nick Drochak  <ndrochak@gol.com>
941
942         * Attribute.cs
943         * DecimalFormatter.cs
944         * Delegate.cs
945         * Double.cs
946         * GC.cs
947         * Int16.cs
948         * Int32.cs
949         * MonoType.cs
950         * RuntimeMethodHandle.cs
951         * RuntimeTypeHandle.cs
952         * String.cs
953         * Type.cs:
954                 Add [MonoTODO]'s to places where we currently throw a
955                 NotImplementedException.
956
957 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
958
959         * Int16.cs (Parse): do not overflow on max negative value
960
961         * Int32.cs (Parse): do not overflow on max negative value
962
963 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
964
965         * Type.cs: fixed IsClass.
966         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
967         IsByRefImpl. Added GetInterfaces().
968         * IServiceProvider.cs: compilation fix.
969
970 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
971
972         * Array.cs: allow copying an empty array to an empty array.
973
974 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
975
976         * String.cs: fixed LastIndexOf (string) to do a bit of argument
977         checking.
978
979 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
980         * Version.cs: many fixes to failures found by the newly created
981         test cases for this class. Specifically, the CompareTo member
982         returned wrong values due to the use of Int32.MaxValue as a special
983         value indicating an "undefined" version component. Also implemented the
984         missing operators (==, <, >, etc.), one missing constructor and
985         and some exception throwing.
986
987 2002-03-04  Nick Drochak  <ndrochak@gol.com>
988
989         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
990         * Attribute.cs: Add missing attributes: Serializable and
991         AttributeUsage(AttributeTargets.All)
992
993 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
994
995         * MonoType.cs: implemented GetConstructors(), GetFields(),
996         GetMethods(), GetProperties().
997         * Object.cs: added debugging icall obj_address().
998         * Type.cs: fixed the binding flags for some Get* methods.
999         Implemented FindMembers() as calls to the specific GetMember
1000         methods.
1001
1002 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
1003         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
1004         should give an exception for n>=s.Length.
1005
1006 2002-03-01  Martin Baulig  <martin@gnome.org>
1007
1008         * Array.cs: More argument checking and bug fixing.
1009
1010 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
1011
1012         * BitConverter.cs: Indentation match
1013
1014         * AppDomain.cs: Added MonoTODOs to this too.
1015
1016         * Buffer.cs: Added MonoTODOs to this.
1017
1018 2002-03-01  Martin Baulig  <martin@gnome.org>
1019
1020         * Array.cs: Added argument checking to all methods where it was missing.
1021
1022 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
1023
1024         * BitConverter.cs: Fixed bugs in ToString methods
1025
1026 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
1027
1028         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
1029
1030 2002-03-01  Nick Drochak  <ndrochak@gol.com>
1031
1032         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
1033         ArgumentOutOfRangeException like the docs say.
1034
1035 2002-03-01  Martin Baulig  <martin@gnome.org>
1036
1037         * Enum.cs (CompareTo): Correctly override this method from IComparable.
1038
1039         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
1040
1041 2002-02-28  Martin Baulig  <martin@gnome.org>
1042
1043         * String.cs: This file now passes the testsuite on Linux :-)
1044         
1045         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
1046         make them private and provide C# wrappers which do proper argument checking.
1047
1048         * String.cs (Format): Correctly handle escaped brackets.
1049
1050         * String.cs (_CompareChar): New internal function which compares two chars.
1051         (_Compare): Provide an internal compare method which can do all sorts of
1052         comparision and call it from all the Compare() methods. Also fixed a lot of
1053         bugs here, this code now actually passes the testsuite.
1054
1055 2002-02-28  Duncan Mak  <duncan@ximian.com>
1056
1057         * Convert.cs: Added the missing methods. The new class status page
1058         kicks ass, it even found my typos! Woohoo!
1059         (ConvertFromBase): Moved the Exception throwing in here and
1060         removed the other occurances so it's all centralized now.
1061         (ISDBNull): Implemented.
1062         (GetTypeCode): Implemented.
1063
1064 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
1065         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
1066         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
1067         states that a lacking format should be interpreted as "N".  
1068         Also added [Serializable] attribute
1069         * TimeSpan.cs: some formatting and added the [Serializable] attribute
1070
1071 2002-02-26  Duncan Mak  <duncan@ximian.com>
1072
1073         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
1074
1075 2002-02-26  Martin Baulig  <martin@gnome.org>
1076
1077         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
1078         fields of the interncall GetTimeZoneData.
1079
1080         * DateTime.cs: Implemented Parse and fixed a few bugs.
1081
1082         * String.cs (TrimStart): Small fix.
1083
1084 2002-02-26  Martin Baulig  <martin@gnome.org>
1085
1086         * DateTime.cs: ParseExact is now fully functional.
1087
1088         * String.cs (TrimEnd): Small fix.
1089
1090 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
1091         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
1092         missing for about six months.
1093
1094 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
1095
1096         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
1097
1098 2002-02-26  Martin Baulig  <martin@gnome.org>
1099
1100         * DateTime.cs: Miguel already committed this, but there was still a
1101         ChangeLog entry for this missing ....
1102         We're now reusing functionality from TimeSpan, printing dates is
1103         fully implemented, currently working on parsing.
1104
1105         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
1106         runtime for this.
1107
1108 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
1109
1110         * MonoType.cs: disable constructor.
1111         * Object.cs: make GetType() an internalcall.
1112         * Type.cs: added correct bindingflags to GetMethods ().
1113         All such calls should be reviewed to use the correct flags.
1114
1115 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
1116
1117         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
1118         argument.
1119
1120 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
1121
1122         * Type.cs: implemented IsAssignableFrom.
1123
1124 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
1125         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
1126         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
1127         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
1128         The former is documented by Microsoft. The latter is how they
1129         actually implemented it in mscorlib:-)
1130
1131 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
1132
1133         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
1134         runtime.
1135         * MonoType.cs: Implemented custom attributes methods.
1136
1137
1138 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
1139         * Guid.cs: 
1140
1141 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
1142
1143         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
1144         runtime.
1145         * MonoType.cs: Implemented custom attributes methods.
1146
1147 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
1148
1149         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
1150
1151 2002-02-19  Duncan Mak  <duncan@ximian.com>
1152
1153         * Convert.cs: Finished up the missing methods in Convert. Added a
1154         new private method ConvertFromBase.
1155
1156 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
1157
1158         * String.cs: impl. IConvertible interface
1159
1160 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
1161         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
1162
1163 2002-02-18  Duncan Mak  <duncan@ximian.com>
1164
1165         * Convert.cs: Changed from using Type.GetType (string) to just
1166         typeof (). Probably will speed things up a bit?         
1167
1168 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
1169
1170         * Array.cs:         
1171         1. Fix for GetUpperBound to return correct values
1172         2. made some Properties virtual
1173         3. Adds IsFixedSize and IsReadOnly properties.
1174         4. changes CreateInstance(Type,int[],int[]) to throw Exception
1175         when third arg is null. InternalCall CreateInstance changed to  
1176         CreateInstanceImpl
1177         5. Fixed array.GetUpperBound at a couple of places
1178         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
1179         7. Added two FIXME's in BinarySearch functions.
1180
1181 2002-02-17  Duncan Mak  <duncan@ximian.com>
1182
1183         * TimeZone.cs:  Applied the rest of Ajay's patch for    
1184         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
1185         it works!
1186
1187 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
1188         * Guid.cs: added stub for Guid(string) ctor
1189
1190 2002-02-17  Duncan Mak  <duncan@ximian.com>
1191
1192         * Convert.cs: Near-complete implementation of Convert.cs
1193
1194         Added all the To* methods taking (object) and
1195         (object, IFormatProvider) as parameters.
1196
1197         Added [CLSCompliant (false)] attributes to methods dealing with
1198         unsigned types.
1199
1200         Added the missing section on converting to and from DateTime. Only
1201         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
1202
1203 2002-02-16  Duncan Mak  <duncan@ximian.com>
1204
1205         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
1206         make IsDaylightSavingTime (DateTime) call 
1207         IsDaylightSavingTime (DateTime, DaylightTime).  
1208         
1209         Added internal class CurrentTimeZone from Ajay. It needs more work
1210         to fill in the appropriate internal calls.
1211         
1212 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
1213
1214         * Type.cs: fix IsClass.
1215
1216 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
1217
1218         * String.cs: fix Trim().
1219
1220 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
1221
1222         * String.cs: fix more off by one errors.
1223
1224 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
1225
1226         * MonoType.cs: fix IsValueTypeImpl.
1227         * Type.cs: fix IsEnum. Implement Equals methods.
1228
1229 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
1230
1231         * Int32.cs: implement IConvertible interface.
1232         
1233 2002-02-12  Duncan Mak  <duncan@ximian.com>
1234
1235         * TimeZone.cs: Implemented and added to CVS.
1236
1237 2002-02-11  Duncan Mak  <duncan@ximian.com>
1238
1239         * Convert.cs: Implemented the ChangeType () methods.
1240
1241 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
1242
1243         * Array.cs: make Clone() an internal call.
1244
1245 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
1246         * Changed Guid.NewGuid so that it can use both System.Random and 
1247           System.Security.Cryptography.RandomNumberGenerator
1248
1249 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
1250         * First version of Guid.NewGuid
1251
1252 2002-02-08  Duncan Mak  <duncan@ximian.com>
1253
1254         * RuntimeArgumentHandle.cs: Added to CVS.
1255
1256 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
1257
1258         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
1259         UnhandledExceptionEventHandler.cs: added delegates.
1260
1261 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
1262
1263         * MarshalByRefObject.cs: add ToString () method
1264         (apparently needed by nunit).
1265         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
1266         by it in the runtime.
1267
1268 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
1269         
1270         * String.cs (Format): implemented
1271
1272 2002-02-07  Duncan Mak  <duncan@ximian.com>
1273         
1274         * DuplicateWaitObjectException:
1275         * InvalidCastException:
1276         * NotImplementedException:
1277         * NotSupportedException:
1278         * NullReferenceException:
1279         * OutOfMemoryException:
1280         * OverflowException:
1281         * RankException:
1282         * StackOverflowException.cs:
1283         * UnauthorizedAccessException: Added missing constructor used for serialization.
1284
1285 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
1286
1287         * String.cs (System.Compare): bug fix 
1288
1289 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
1290
1291         * Enum.cs (Parse,  GetHashCode): impl. 
1292
1293 2002-02-05  Duncan Mak  <duncan@ximian.com>
1294
1295         * DBNull.cs: This is my first crack at the DBNull class. I think I
1296         actually got most of the IConvertible methods right, but I haven't
1297         done the research to test whether or not this is the correct
1298         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
1299
1300         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
1301
1302 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
1303
1304         * Enum.cs: added more functionality (GetName, ToObject, Equals)
1305
1306 2002-01-31  Duncan Mak  <duncan@ximian.com>
1307
1308         * InvalidOperationException.cs:
1309         * NotFiniteNumberException.cs:
1310         * ObjectDisposedException.cs:
1311         * TypeInitializationException.cs: Added missing bits for serialization/
1312         
1313         * AppDomainUnloadedException.cs:
1314         * ApplicationException.cs:
1315         * ArgumentOutOfRangeException.cs:
1316         * ArithmeticException.cs:
1317         * ArrayTypeMismatchException:
1318         * BadImageFormatException.cs:
1319         * Exception.cs:
1320         * MissingMemberException.cs:
1321         * TypeLoadException.cs: Added missing bits for serialization.
1322
1323 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
1324         * Guid.cs: implemented everything but Guid.NewGuid
1325
1326 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
1327
1328         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
1329         to have it in this interface and it screws up the method vtable setup.
1330
1331 2002-01-28  Andrei Zmievski <andrei@php.net>
1332
1333         * Double.cs: implemented IConvertible interface.
1334
1335 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
1336
1337         * ArgumentException.cs: Implement serialization constructor.
1338         (GetObjectData): Implement serializer.
1339         
1340         * ArgumentNullException.cs: Implement serialization constructor.
1341
1342         * Exception.cs: Implement serialization constructor.
1343         (GetObjectData): Implement serializer.
1344
1345 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
1346
1347         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
1348
1349 2002-01-23  Duncan Mak  <duncan@ximian.com>
1350
1351         * EntryPointNotFoundException.cs:
1352         * FormatException: Added missing constructor and related bits.
1353
1354         * TypeLoadException: Added missing constructor, methods and properties.
1355
1356 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
1357
1358         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
1359         manually getting the enumerator.
1360
1361         (AppDomain.AppDomain): Prime the loaded assemblies with the
1362         assemblies loaded by the runtime in our behalf.
1363
1364         * AppDomainSetup.cs: Remove private keyword, that is the default.
1365         Add a new property DisallowPublisherPolicy.
1366
1367         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
1368
1369 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
1370
1371         * MonoType.cs, Type.cs: many updates, corrected implementation,
1372         completed stubs.
1373
1374 2002-01-20  Andrei Zmievski <andrei@php.net>
1375
1376         * Byte.cs:
1377         * Char.cs: implemented IConvertible interface.
1378
1379         * Boolean.cs: use our own ToString() method directly.
1380
1381 2002-01-20  Duncan Mak  <duncan@ximian.com>
1382
1383         * Files I commited recently: Fixed indentation style.
1384
1385 2002-01-20 Nick Drochak  <ndrochak@gol.com>
1386
1387         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
1388         and delegates too. Added the appropriate usage flags.
1389
1390 2002-01-18  Duncan Mak  <duncan@ximian.com>
1391
1392         * CharEnumerator.cs: Implemented.
1393         * String.cs (System): Fixed the GetEnumerator () method(s).
1394
1395         * ObsoleteAttribute.cs:
1396         * STAThreadAttribute.cs:
1397         * MTAThreadAttribute.cs:
1398         * ThreadStaticAttribute.cs:
1399         * LoaderOptimizationAttribute.cs:
1400         * PlatformNotSupportedException.cs:
1401         * LoaderOptimization.cs: Added to CVS.
1402
1403 2002-01-18  Duncan Mak  <duncan@ximian.com>
1404
1405         * AppDomainUnloadedException.cs:
1406         * MethodAccessException.cs:
1407         * ContextMarshalException.cs:
1408         * CannotUnloadAppDomainException.cs:
1409         * DllNotFoundException.cs:
1410         * EntryPointNotFoundException.cs:
1411         * FieldAccessException.cs:
1412         * TypeUnloadedException.cs:
1413         * MissingFieldException.cs: Added to CVS.
1414
1415         * ApplicationException.cs: 
1416         * MemberAccessException.cs:
1417         * MissingMemberException.cs
1418         * MissingMethodException.cs:
1419         * SystemException.cs: Added [Serializable] attribute.
1420
1421         * Exception.cs: Added [Serializable] attribute, made properties
1422         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
1423         spec.
1424
1425         * ContextStaticAttribute.cs: Added [Serializable] attribute and
1426         put in the missing constructor.
1427
1428         * Environment.cs: Commented out references to
1429         EnvironmentPermissionAttribute, because they're just stubbed out
1430         right now and has no implementation.
1431
1432 2002-01-16  Andrei Zmievski <andrei@php.net>
1433
1434         * Boolean.cs: implemented IConvertible interface
1435
1436 2002-01-15  Nick Drochak  <ndrochak@gol.com>
1437
1438         * ResolveEventArgs.cs: class should derive from EventArgs.
1439
1440 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
1441
1442         * String.cs (System): Use DefaultMemberName for the String class.
1443
1444 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
1445
1446         * String.cs: use IndexerName in index char accessor.
1447
1448 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
1449
1450         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
1451         * String.c: eliminate 64k+ method calls in search.
1452         * Type.cs: handle byref and array types in ToString ().
1453
1454 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
1455
1456         * Guid.cs: created first version
1457
1458 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
1459
1460         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
1461
1462 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
1463
1464         * MulticastDelegate.cs: add == and != operator stubs.
1465         * String.cs: check for null in == operator.
1466         * Type.cs: use a virtual method to get TypeAttributes.
1467
1468 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
1469         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
1470
1471 2002-01-09  Nick Drochak  <ndrochak@gol.com>
1472         
1473         * Environment.cs: Comment out Security attribute and put a MonoTODO
1474         there as a reminder.  We need mcs magic to handle security attributes in
1475         corlib.
1476
1477 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
1478         * Created IAppDomainSetup.cs
1479
1480 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
1481         * Created System._AppDomain interface in _AppDomain.cs
1482
1483 2002-01-06  Nick Drochak  <ndrochak@gol.com>
1484
1485         * ResolveEventArgs.cs: New File, completely implemented! ;)
1486
1487 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
1488
1489         * Enum.cs: dummy ToString impl.
1490         * String.cs: dummy format implementations to get compiler errors
1491         somewhat working.
1492         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
1493
1494 2002-01-05  Ravi Pratap  <ravi@ximian.com>
1495
1496         * TODOAttribute.cs : Augment some more; provide two constructors
1497         with support for a comment too.
1498
1499 2002-01-05  Nick Drochak  <ndrochak@gol.com>
1500
1501         * Uncommented those MonoTODO's now that Ravi's got
1502         the class in there
1503
1504 2001-01-04  Ravi Pratap  <ravi@ximian.com>
1505
1506         * TODOAttribute.cs : Actually add this time ;-)
1507
1508         Change name to MonoTODO.
1509
1510 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
1511
1512         * String.cs (Trim): Fixed a few logic bugs in the code that
1513         calculated how much to trim off the end of the string.
1514
1515 2001-01-04  Nick Drochak  <ndrochak@gol.com>
1516         
1517         * Commented out the [TODO] attributes for now.  We don't have the
1518         class written.  Also changed it to [MonoTODO]
1519
1520 2002-01-04  Ravi Pratap  <ravi@ximian.com>
1521
1522         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
1523         our class libraries that are incomplete.
1524
1525         * Array.cs : Apply attribute wherever we find a FIXME which says
1526         we need something to be implemented there.
1527
1528         * Int32.cs : Ditto.
1529
1530         * MulticastDelegate.cs : Ditto.
1531
1532         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
1533         RuntimeTypeHandle.cs : Ditto.
1534
1535         * String.cs : Ditto.
1536
1537         * Type.cs : Ditto.
1538
1539         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
1540
1541         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
1542         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
1543
1544         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
1545         Delegate.cs : Ditto.
1546
1547         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
1548         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
1549         
1550 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
1551
1552         * Delegate.cs: add Remove() stub.
1553         * Enum.cs: add ToObject().
1554         * Type.cs: add IsEnum property.
1555
1556 2002-01-03  Kristian Rietveld  <kris@gtk.org>
1557
1558         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
1559         DateTime and object.
1560
1561 2001-12-30  Nick Drochak  <ndrochak@gol.com>
1562
1563         * Byte.cs (Parse): Add comments to aid in testing.
1564
1565 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
1566
1567         * Char.cs (Parse): Implement.
1568
1569         * Byte.cs (Parse): Implement a fast parser.
1570         
1571         * SByte.cs (Parse): Implement a fast parser.
1572
1573         * UInt16.cs (Parse): Implement a fast parser.
1574         
1575         * Int16.cs (Parse): Implement a fast parser.
1576
1577         * UInt32.cs (Parse): Implement a fast parser.
1578
1579         * Int32.cs (Parse): Implement a fast parser.
1580
1581 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
1582
1583         * Array.cs: fix null ref in sort code.
1584         * UInt64.cs: add bare-bones parse.
1585
1586 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
1587         
1588         * Byte.cs: removed use of Regexes.
1589
1590 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
1591
1592         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
1593         IsDefined(), GetUnderlyingType().
1594         * String.cs: fix one instance of Compare().
1595         * Type.cs: implemented GetProperties(), GetProperty().
1596
1597 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
1598
1599         * Array.cs: implement CopyTo ().
1600         * Char.cs: implement ToString ().
1601         * Exception.cs: bugfix.
1602         * Int32.cs: bare-bones Parse ().
1603         * MonoType.cs: query the needed info with an internalcall.
1604         * String.cs: speedups, bugfixes, reduced copies.
1605         * Type.cs: added missing fields. Implemented many of the Is*
1606         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
1607         GetFields(), FindMembers(), ToString().
1608         
1609 2001-12-11  Dick Porter  <dick@ximian.com>
1610
1611         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
1612
1613         * Console.cs: Use handles rather than casting file descriptors
1614
1615 2001-12-08  Nick Drochak  <ndrochak@gol.com>
1616
1617         * Byte.cs (Parse): Start implementation. Parse(string) works, but
1618         now we need to handle other formats
1619
1620 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
1621
1622         * DateTime.cs: added an icall to GetNow()
1623
1624 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
1625
1626         * Double.cs: added the parse method from Bob Smith
1627
1628 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
1629
1630         * UInt64.cs: ditto.
1631
1632         * UInt32.cs: ditto.
1633
1634         * Int32.cs (Int32.CompareTo): Fix because we can not just
1635         substract the values.
1636
1637         Return possitive value if the object is null.
1638
1639         * Boolean.cs: (Boolean.CompareTo): ditto.
1640
1641         * Int16.cs (Int16.CompareTo): ditto.
1642
1643         * Byte.cs (Byte.CompareTo): ditto.
1644
1645         * SByte.cs (SByte.CompareTo): ditto.
1646
1647         * Char.cs (Char.CompareTo): ditto.
1648         
1649         * Decimal.cs (Decimal.CompareTo): ditto.
1650
1651         * Int64.cs (Int64.CompareTo): ditto.
1652
1653         * Single.cs: Ditto.
1654
1655         * UInt16.cs: Ditto.
1656
1657 2001-11-28  Nick Drochak <ndrochak@gol.com>
1658
1659         * Byte.cs: Throw NotImplementedException for Parse.
1660
1661 2001-11-27  Derek Holden  <dholden@draper.com>
1662
1663         * IntegerFormatter.cs: Formatting of type "Number" was not
1664         using NumberFormatInfo.NumberNegativePattern.
1665
1666 2001-11-26  Dick Porter  <dick@ximian.com>
1667
1668         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
1669         the finalise routine any more
1670
1671 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
1672
1673         * ApplicationException.cs: internationalize by adding calls to
1674         Locale.GetText ().  And throw NotImplementedExceptions on calls
1675         that we have to implement.
1676
1677         * Version.cs: Ditto.
1678
1679         * ValueType.cs: ditto.
1680
1681         * UnauthorizedAccessException.cs: ditto.
1682
1683         * UInt32.cs: ditto.
1684
1685         * UInt64.cs: ditto.
1686
1687         * UInt16.cs: ditto.
1688
1689         * TypeLoadException.cs: ditto
1690
1691         * TypeInitializationException.cs: ditto.
1692
1693         * Type.cs: ditto.
1694
1695         * TimeSpan.cs: ditto.
1696
1697         * SystemException.cs: ditto.
1698
1699         * String.cs: ditto.
1700
1701         * StackOverflowException.cs: ditto.x
1702
1703         * Single.cs: ditto.
1704
1705         * SByte.cs: ditto.
1706
1707         * RuntimeTypeHandle.cs: ditto.
1708
1709         * RuntimeMethodHandle.cs: ditto.
1710
1711         * RuntimeFieldHandle.cs: ditto.
1712
1713         * Random.cs: ditto.
1714
1715         * OutOfMemoryException.cs: ditto.
1716
1717         * OperatingSystem.cs: ditto.
1718
1719         * ObjectDisposedException.cs: ditto.
1720
1721         * NullReferenceException.cs: ditto.
1722
1723         * NotImplementedException.cs: ditto.
1724
1725         * NotFiniteNumberException.cs: ditto.o
1726
1727         * MulticastNotSupportedException.cs: ditto.
1728
1729         * MissingMethodException.cs: ditto.
1730
1731         * MemberAccessException.cs: ditto.
1732
1733         * Math.cs: ditto.
1734
1735         * InvalidCastException.cs: ditto.
1736
1737         * IntegerFormatter.cs: ditto.
1738
1739         * Int32.cs: ditto.
1740
1741         * Int16.cs: ditto.
1742
1743         * IndexOutOfRangeException.cs: ditto.
1744
1745         * Environment.cs: ditto
1746
1747         * Enum.cs: ditto.
1748
1749         * DuplicateWaitObjectException.cs: ditto.
1750
1751         * DivideByZeroException.cs: ditto.
1752
1753         * Delegate.cs: ditto
1754
1755         * DecimalFormatter.cs: ditto.
1756
1757         * Decimal.cs: ditto.
1758
1759         * DateTime.cs: ditto.
1760
1761         * Convert.cs: ditto.
1762
1763         * Char.cs: ditto.
1764
1765         * Byte.cs: ditto.
1766
1767         * Boolean.cs: ditto.
1768
1769         * ArrayTypeMismatchException.cs: ditto.
1770
1771         * ArithmeticException.cs: ditto.
1772
1773         * ArgumentOutOfRangeException.cs: ditto.
1774
1775         * ArgumentNullException.cs: ditto.
1776
1777         * Enum.cs: Make it derive from ValueType, add CompareTo method.
1778
1779         * Attribute.cs: Reformat.
1780
1781 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
1782
1783         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
1784         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
1785         exception if the value is null too.
1786
1787         * Char.cs (CompareTo): ditto.
1788
1789         * ApplicationException.cs: Added constructor that does serialization.
1790
1791         * ParamArrayAttribute.cs: Define attribute correctly.
1792
1793 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
1794
1795         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
1796         * Array.cs: fix Array.Copy.
1797         * AssemblyLoadEventArgs.cs: rename field.
1798         * CLSCompliantAttribute.cs: use correct name for the class.
1799         * Char.cs: fix IsLetter.
1800         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
1801         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
1802         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
1803         * Delegate.cs: renamed target field to m_target.
1804         * Enum.cs: added missing methods.
1805         * MonoType.cs: add a constructor and some needed properties.
1806         * Object.cs: implement GetType().
1807         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
1808         ending 0 char.
1809         * Type.cs: add missing methods/properties.
1810
1811 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
1812
1813         * AttributeUseage.cs: Should define AttributeUsageAttribute.
1814
1815         * CLSCompliant.cs: Marked with AttributeUsage attribute.
1816
1817         * Decimal.cs: Fixed CLSCompliant attributes.
1818
1819         * Type.cs: changed _impl to internal (needs to be accessable by
1820         subclasses).
1821
1822         (TypeHandle): Marked as abstract, implementation removed.
1823
1824         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
1825         GetMethod): Added stub implementations so NUnit would link against
1826         corlib
1827
1828 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
1829
1830         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
1831
1832 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
1833
1834         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
1835         attribute. 
1836
1837 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
1838
1839         * String.cs: fix a couple of bugs.
1840         * AppDomain.cs: use new AppBuilder constructor.
1841         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
1842         NotImplementedException.cs, ObjectDisposedException.cs,
1843         UnauthorizedAccessException.cs: add implementation.
1844         * OverflowException.cs: fix class name.
1845
1846 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
1847
1848         * String.cs: Don't use a terminating nil char for our internal
1849         array.
1850
1851 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
1852
1853         * Delegate.cs (Delegate.CombineImpl): Implement.
1854         (Delegate.Combine): Implement.
1855
1856         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
1857
1858         (MulticastDelegate.CombineImpl): This was not as trivial as I
1859         thought. 
1860
1861         * ContextStaticAttribute.cs: Added AttributeUsage to
1862         ContextStaticAttribute. 
1863
1864         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
1865
1866 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
1867
1868         * added Decimal.cs * added DecimalFormatter.cs (internal class
1869         used from System.Decimal)
1870
1871 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
1872
1873         * Convert.cs: Added methods for Base64 transforming just used the
1874           existing System.Security.Cryptography.ToBase64Transform, should
1875           be changed to use a stand-alone class, e.g. Base64Encoder
1876           
1877 2001-10-10  Derek Holden  <dholden@draper.com>
1878
1879         * IntegerFormatter.cs: Added. Implements ToString for all the
1880         integer data types for all the format types.
1881
1882         * Byte.cs: Using IntegerFormatter for ToString's.
1883
1884         * SByte.cs: Using IntegerFormatter for ToString's.
1885
1886         * Int16.cs: Using IntegerFormatter for ToString's.
1887
1888         * Int32.cs: Using IntegerFormatter for ToString's.
1889
1890         * Int64.cs: Using IntegerFormatter for ToString's.
1891
1892         * UInt16.cs: Using IntegerFormatter for ToString's.
1893
1894         * UInt32.cs: Using IntegerFormatter for ToString's.
1895
1896         * UInt64.cs: Using IntegerFormatter for ToString's.
1897
1898 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
1899
1900         * Exception.cs: Implement bits of serialization.
1901
1902         * RuntimeFieldHandle.cs: Implement Serialization features.
1903
1904         * Type.cs: Implement TypeHandle property.
1905
1906 2001-09-28  Dick Porter  <dick@ximian.com>
1907
1908         * LocalDataStoreSlot.cs: Implemented
1909
1910 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
1911
1912         * String.cs: fix off-by-one error in Trim().
1913
1914 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
1915
1916         * Type.cs: added GetType () method.
1917
1918 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
1919
1920         * MissingMethodException.cs, MissingMemberException.cs,
1921         MemberAccessException.cs: added.
1922
1923 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
1924
1925         * String.cs: don't access the string array out of bounds in
1926         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
1927
1928 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
1929
1930         * String.cs: make Intern and IsIntern internalcalls.
1931
1932 2001-09-13  Dick Porter  <dick@ximian.com>
1933
1934         * Type.cs: Added a stub for the IsValueType property.
1935
1936         * SystemException.cs (System): Added the other constructor, so
1937         that System.Threading exceptions can inherit it.
1938
1939 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
1940
1941         * String.cs (TrimStart): Don't keep looping through the trimchars
1942         once we've found a match.
1943         (TrimEnd): Same here.
1944         (Trim): And finally here.
1945
1946 2001-09-07  Ravi Pratap  <ravi@ximian.com>
1947
1948         * Char.cs (IsLetterOrDigit): Implement.
1949         (IsLower): Implement, but we need to be Unicode aware.
1950         (IsNumber): Implement.
1951         (IsPunctuation): Implement.
1952         (IsWhiteSpace): Implement.
1953         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
1954         (ToLower): Same here.
1955
1956 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
1957
1958         * Object.cs: Shortcut, if (a == b) then return true.
1959
1960 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
1961
1962         * Delegate.cs: we need a pointer to the method thunk in
1963         the delegate object.
1964
1965 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
1966
1967         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
1968
1969 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
1970
1971         * String.cs (System): Don't mix uint and int.
1972
1973 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
1974
1975         * String.cs (BoyerMoore): Modified to not use pointers and to instead
1976         use indexes.
1977         (IndexOf): Use BoyerMoore.
1978
1979 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
1980
1981         * All over: Use the autogenerated enumerations from the ECMA
1982         documentation that Sergey wrote.
1983         
1984         * PlatformID.cs: Add Unix definition.
1985
1986         * OperatingSystem.cs: Use Unix instead of Linux here.
1987
1988         * MarshalByRefObject.cs: Mark class as [Serializable].
1989
1990 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
1991
1992         * Console.cs: impl. (write only)
1993         implemented the stdin stuff
1994
1995         * Int32.cs: impl. real op_Equal
1996
1997 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
1998
1999         * (common.src): Removed IAsyncResult as it is not on CVS yet.
2000
2001         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
2002         as it breaks the build.
2003
2004 2001-08-23  Michael Lambert <michaellambert@email.com>
2005
2006         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
2007         added CLSCompliant attribute
2008
2009         * IAsyncResult.cs: Added
2010
2011         * common.src: Added IAsyncResult.cs
2012
2013 2001-08-23  Michael Lambert <michaellambert@email.com>
2014
2015         * UIntPtr.cs: Added
2016
2017         * common.src: Added UIntPtr.cs
2018
2019 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
2020
2021         * Attribute.cs: uncomment some code to make it compile again
2022
2023         * mono.src: removed duplicated Attribute.cs
2024
2025 2001-08-16  Nick Drochak <ndrochak@gol.com>
2026
2027         * Attribute.cs: implemented all methods except GetHashCode()
2028
2029         * common.src: added Attribute.cs so it would compile in
2030
2031 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
2032
2033         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
2034         marked it as InternalCall
2035         
2036         * common.src: removed UriFormatException.cs because the file is
2037         not there.
2038
2039         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
2040         * Char.cs: replaced byte with char
2041
2042         * Array.cs: make it work with the mono interpreter
2043
2044 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
2045
2046         * Version.cs: Make the class sealed
2047
2048 2001-08-08  Bob Smith  <bob@thestuff.net>
2049
2050         * Random.cs: Many compile fixes.
2051         * Random.cs: I read a bad spec. Class updated to match real spec.
2052
2053 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
2054
2055         * IntPtr.cs: Added and Completed implementation.
2056
2057         * Uri.cs: Add a note.
2058
2059 2001-08-06  Bob Smith  <bob@thestuff.net>
2060
2061         * Random.cs: Compile fix. Needs more testing.
2062
2063 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
2064
2065         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
2066         into account IPv6 addresses, url encoding needs to be implemented, and 
2067         various minor methods need to be written, but this is a decent start.
2068
2069 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
2070
2071         * common.src: added Object.cs
2072
2073         * mono.src: added ValueType.cs
2074
2075 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
2076
2077         * Math.cs: replaced libc with libm
2078
2079 2001-08-02  Bob Smith  <bob@thestuff.net>
2080
2081         * Random.cs: Implemented. Needs testing.
2082
2083 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
2084
2085         * IServiceProvider.cs, EventHandler.cs: New files.
2086
2087 2001-08-02  Marcel Narings  <marcel@narings.nl>
2088         
2089         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
2090         Added exceptions. Added IConvertible. Still needs some platform 
2091         dependend stuff, the Parse and ToString members
2092
2093 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
2094
2095         * Type.cs (GetTypeFromHandle): added placeholder 
2096
2097 2001-07-24  Derek Holden  <dholden@draper.com>
2098
2099         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
2100         which is really an IConvertible defined method.
2101
2102         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
2103         behavior, still need to do the main Parse and ToString.
2104
2105         * Char.cs: Added a bunch of missing ECMA methods. Commented a
2106         specification discrepency. Still didn't any unicode stuff, though
2107         every IsFoo(char c) method has an IsFoo(string, index)
2108         counterpart, added wrappers for those.
2109         
2110         * Convert.cs: Fixed NaN/Inf checking and double/float
2111         rounding. Added ToType for IConvertible classes
2112
2113         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
2114         IsNaN methods. Changed Inf/NaN internals.
2115
2116         * IConvertible.cs: Added comments for using
2117         Convert.ToType. Changed return values to draft base values.
2118
2119         * Int16.cs: Added a missing Parse statement. Put in behavior for
2120         overloaded ToString and Parse methods.
2121
2122         * Int32.cs: Added a missing Parse statement. Put in behavior for
2123         overloaded ToString and Parse methods.
2124
2125         * Int64.cs: Added a missing Parse statement. Put in behavior for
2126         overloaded ToString and Parse methods.
2127         
2128         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
2129         methods. Changed Inf/NaN internals.
2130
2131         * SByte.cs: Added a missing Parse method. Put in Parse and
2132         ToString behavior, still need to do the main Parse and ToString.
2133
2134         * UInt16.cs: Added a missing Parse statement. Put in behavior for
2135         overloaded ToString and Parse methods.
2136
2137         * UInt32.cs: Added a missing Parse statement. Put in behavior for
2138         overloaded ToString and Parse methods.
2139
2140         * UInt64.cs: Added a missing Parse statement. Put in behavior for
2141         overloaded ToString and Parse methods.
2142         
2143 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
2144
2145         * MulticastDelegate.cs: New File.
2146
2147         * Delegate.cs: New file.
2148
2149         * Enum.cs: New file.
2150
2151         * Attribute.cs: New file.
2152
2153         * Type.cs: New file.
2154
2155         * ParamArrayAttribute.cs: New file.
2156
2157         * RuntimeTypeHandle.cs: New file.
2158
2159         * MulticastDelegate.cs: Added.
2160
2161         * DateTime.cs: Added
2162
2163         * Delegate.cs: Added
2164
2165 2001-07-18  Michael Lambert <michaellambert@email.com>
2166
2167         * AttributeTargets.cs: Add.
2168
2169 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
2170
2171         * Char.cs: Made ToUpper and ToLower public methods.
2172
2173         * String.cs: Lots and lots of compile fixes - just need to write
2174         DateTime.cs and this should build completely now.
2175
2176 2001-07-19  Bob Smith (bob@thestuff.net)
2177
2178         * Math.cs: Implemented. 
2179
2180 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
2181
2182         * String.cs: Removed tolower and toupper.
2183
2184         * Char.cs: Moved ToLower and ToUpper from string to here. 
2185
2186         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
2187         instead of comparing the value to Nan.
2188
2189 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
2190
2191         * TimeSpan.cs: New implementation.
2192
2193 2001-07-18  Scott Sanders <scott@stonecobra.com>
2194
2195          * UriFormatExcpetion.cs: Add - 85% complete
2196
2197 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
2198
2199         * String.cs (IndexOf): Slight optimization that allows skipping
2200         over a few chars here and there. This isn't as good as using my
2201         Boyer-Moore implementation, however, Boyer-Moore is only really
2202         good for long strings (I plan on making the code decide which
2203         string search algorithm it should use on-the-fly at some point).
2204         (LastIndexOf): Fix to work correctly.
2205         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
2206
2207 2001-07-16  Michael Lambert <michaellambert@email.com>
2208
2209         * EventArgs.cs: Add.
2210         
2211 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
2212
2213         * Version.cs: Remove my buggy comment.
2214
2215 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
2216
2217         * String.cs: Spelling error of IComparable, object's
2218         MemberwiseClone cannot be overridden.  Made indexer valid for now,
2219         but not sure what to do about this in the long run.  Seems to be a
2220         couple bugs in csc.exe having to do with multiple pointer defs in
2221         the same statement, and returning subclasses of a class in the
2222         return type of an interface function implementation.  Also moved
2223         operators inside of class definition.
2224
2225 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
2226
2227         * String.cs: A tom of compile fixes, although we still don't compile.
2228
2229         * IConvertible.cs: The To*Int64() methods return *Int64's, not
2230         *Int32's. Also, it's ToDateTime() not ToDateType().
2231
2232 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
2233
2234         * String.cs: Apparently I needed to at least write stubs for the
2235         IConvertible interfaces. *sigh*
2236
2237 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
2238
2239         * String.cs: Many logic/other fixes and better usage of the
2240         features of c#
2241         (tolower): New convenience method to help condense code.
2242         (toupper): Another new helper method.
2243         (Compare): Use the new helper methods.
2244         (ToLower): use tolower().
2245         (ToUpper): use toupper().
2246         (LastIndexOfAny): Implemented.
2247         (BoyerMoore): New private helper method that implements a modified
2248         version of the Boyer-Moore search algorithm. Noothing uses it yet
2249         as I'm not 100% sure it even works properly with unicode strings
2250         not to mention it uses a huge lookup-table :-)
2251         (Split): Implemented.
2252
2253 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
2254
2255         * TODO: Added things that need to be finished in System.String
2256
2257         * String.cs: New source file implementing the System.String class
2258
2259 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
2260
2261         * TypeCode.cs: UInt64 was UInt63.
2262
2263         * Object.cs: Fixed a numer of compiler errors.
2264
2265         * Array.cs: Fixed some compiler errors.
2266
2267         * IComparable.cs: Fixed some compiler errors.
2268
2269         * ICloneable.cs: Fixed some compiler errors.
2270
2271         * IConvertible.cs: Fixed some compiler errors.
2272
2273         * IFormattable.cs: Fixed a compiler error.
2274
2275         * IFormatProvider.cs: Fixed a compiler error.
2276
2277         * IDisposable.cs: Fixed a compiler error.
2278
2279         * IFormatProvider.cs: Added public accesability type to
2280         IFormatProvider.
2281
2282         * Exception.cs: Added a using statement to remove compile time
2283         error.
2284
2285         * ApplicationException.cs: Removed a ; that was causing a compiler
2286         error.
2287
2288         * Int16.cs: Fixed some compiler errors.
2289
2290         * Int32.cs: Fixed some compiler errors.
2291
2292         * Int64.cs: Fixed some compiler errors.
2293
2294         * SystemException.cs: Fixed a compiler error.
2295
2296         * UInt16.cs: Fixed some compiler errors.
2297
2298         * UInt32.cs: Fixed some compiler errors.
2299
2300         * UInt64.cs: Fixed some compiler errors.
2301
2302         * Void.cs: Fixed a compiler error.      
2303
2304 2001-07-12  Joe Shaw  <joe@ximian.com>
2305
2306         * Array.cs: Fix backwards parameters to Array.SetValue()
2307         throughout.
2308         (BinarySearch): Fix backward logic surrounding whether to call
2309         value.CompareTo or comparer.Compare.
2310         (LastIndexOf): Stop being stupid. I am so not used to strongly
2311         bounded arrays...
2312         (Sort): Implement a quicksort.
2313
2314 2001-07-11  Joe Shaw  <joe@ximian.com>
2315
2316         * Array.cs: Change all instances of trying to access an array with
2317         the index operator to calls to GetValue and SetValue, and add
2318         InternalGetValue and InternalSetValue which are internal calls
2319         into the runtime. Ew.
2320
2321 2001-07-10  Joe Shaw  <joe@ximian.com>
2322
2323         * Array.cs: Implemented everything but Sort().
2324
2325 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
2326
2327         * Object.cs (Object::Equals): Object variable name is `o'.
2328
2329 2001-07-06  Joe Shaw  <joe@ximian.com>
2330
2331         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
2332         Implement the IComparable and IFormattable interfaces. Fix a typo
2333         (publig -> public)
2334
2335         * ApplicationException.cs, ArgumentException.cs,
2336         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
2337         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
2338         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
2339         ExecutionEngineException.cs, FormatException.cs,
2340         IndexOutOfRangeException.cs, InvalidCastException.cs,
2341         InvalidOperationException.cs, InvalidProgramException.cs,
2342         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
2343         NotSupportedException.cs, NullReferenceException.cs,
2344         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
2345         StackOverflowException.cs, SystemException.cs,
2346         TypeInitializationException.cs: Added all of the exceptions
2347         specified by the language spec. Mmmm... bloat.
2348
2349 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
2350
2351         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
2352         do a generic routine all of these guys use.
2353
2354         * Int16.cs: identified missing methods.
2355
2356         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
2357
2358 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
2359
2360         * TypeCode.cs: Implement
2361
2362         * Void.cs: Implement.
2363
2364         * TODO: Add file to keep track of pending tasks.
2365
2366         * Object.cs, ValueType.cs: Implement.