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