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