1 2002-05-17 Miguel de Icaza <miguel@ximian.com>
3 * MonoType.cs: Style changes.
5 * Type.cs: Style changes.
7 2002-05-16 Piers Haken <piersh@friksit.com
9 * UInt64.cs: fix declaration of IConvertible.To* overrides.
11 2002-05-16 Nick Drochak <ndrochak@gol.com>
13 * BitConverter.cs (ToString): Add parameter check for invalid start
16 * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
17 now that StreamWriter uses buffering
19 2002-05-14 Miguel de Icaza <miguel@ximian.com>
21 * Double.cs: Oops. Also handle exponents without finding a dot.
23 2002-05-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
25 * ChangeLog: removed empty entry at the top of the file.
27 * Int32.cs: made static functions used by Parse internal.
31 * UInt64.cs: removed static fucntions used by Parse and use the ones
34 2002-05-12 Daniel Morgan <danmorg@sc.rr.com>
36 * IServiceProvider.cs: added using System
38 2002-05-09 Daniel Morgan <danmorg@sc.rr.com>
40 * Single.cs: copied ToString() and Parse() methods from
41 Double to Single and modified a tiny bit for Single.
42 There is still a FIXME for Double and Single about
43 passing the format and provider info to the icall too.
\r
45 2002-05-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
50 * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
51 Don't use a delegate to test for valid digits.
53 2002-05-01 Duncan Mak <duncan@ximian.com>
56 * Math.cs: Added missing CLSCompliant attributes where necessary.
58 2002-04-30 Duncan Mak <duncan@ximian.com>
60 * ArgumentException.cs (Message):
61 * ArgumentOutOfRangeException.cs (Message): Added.
63 2002-04-30 Nick Drochak <ndrochak@gol.com>
65 * MonoType.cs: Remove unused variable and eliminate a compiler warning.
67 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
69 * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
71 2002-04-28 Duncan Mak <duncan@ximian.com>
73 * DivideByZeroException.cs: Added missing serialization constructor.
75 * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
77 2002-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
79 * Math.cs: fix Floor () and Round (). Closes #23960.
81 2002-04-27 Nick Drochak <ndrochak@gol.com>
83 * Array.cs (IList.Contains): Should throw a RankException if this is
84 called on a Rank > 1 array. Not in the docs, but this is what the
87 2002-04-26 Duncan Mak <duncan@ximian.com>
89 * MissingMemberException.cs: Made the message variable 'protected'
90 instead of 'private', so that we can see it in
91 MissingMethodException and MissingFieldException.
93 * MissingFieldException.cs:
94 * MissingMethodException.cs: Added missing (string, string)
95 constructor, and also the Message property.
97 2002-04-26 Martin Baulig <martin@gnome.org>
99 * Enum.cs: Implemented the IConvertible methods.
101 2002-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
103 * SByte.cs: little change in Parse (string) to avoid incorrect
104 OverflowException thrown (reported by nickd).
106 2002-04-22 Miguel de Icaza <miguel@ximian.com>
108 * ValueType.cs: Add Serializable attribute.
110 * String.cs: ifdef-out out the __arglist Concat function until I
111 add support for that to mcs.
113 2002-04-24 Patrik Torstensson <patrik.torstensson@labs2.com>
115 * AppDomain.cs (GetValue): usage of the correct icall (bug)
117 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
119 * GC.cs: implement most of the methods as icalls.
121 2002-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
123 * DecimalFormatter.cs (ToString): return correct value when the
126 2002-04-24 Patrik Torstensson <patrik.torstensson@labs2.com>
128 * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
129 * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
131 2002-04-24 Nick Drochak <ndrochak@gol.com>
133 * Double.cs (Parse): Handle case where there are no digits before the
134 decimal point, such as ".1".
136 2002-04-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
141 * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
143 2002-04-23 Patrik Torstensson <patrik.torstensson@labs2.com>
145 * String.cs (Split): fixed invalid split of count 0 and 1.
147 2002-04-23 Patrik Torstensson <patrik.torstensson@labs2.com>
149 * String.cs (LastIndexOf): fixed argument checking.
150 * String.cs (Equals): made internal for performace.
152 2002-04-23 Nick Drochak <ndrochak@gol.com>
154 * String.cs (Join): check argument and throw exception if needed
156 2002-04-23 Nick Drochak <ndrochak@gol.com>
158 * String.cs (StartsWith): check argument and throw exception if needed
160 2002-04-22 Nick Drochak <ndrochak@gol.com>
162 * String.cs (IndexOfAny): check arguments and throw exceptions as
163 neccessary. ALso remove some debug WriteLines.
165 2002-04-20 Dietmar Maurer <dietmar@ximian.com>
167 * String.cs: use internal constructors
170 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
172 * MonoType.cs: make GetElementType its own icall.
174 2002-04-18 Nick Drochak <ndrochak@gol.com>
176 * String.cs: Modified file. Re-add methods needed by the unit tests.
178 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
180 * String.cs: some code speedups and restored GetTypeCode().
182 2002-04-17 Patrik Torstensson <patrik.torstensson@labs2.com>
184 * String.cs: New implementation using internal calls.
186 2002-04-16 Nick Drochak <ndrochak@gol.com>
188 * DecimalFormatter.cs: Trim off excess null characters from the string
189 that decimal2string gives back.
191 2002-04-16 Nick Drochak <ndrochak@gol.com>
193 * String.cs (SubString): revert my change. I can't reproduce the
196 2002-04-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
198 * Attribute.cs: added GetHashCode and Equals.
200 2002-04-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
202 * Enum.cs: little improvements to Format ().
204 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
206 * String.cs: internalcall GetHashCode().
207 * Array.cS: optimize access to elements.
209 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
211 * String.cs: make IndexOfAny() use an internalcall.
213 2002-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
218 * UInt64.cs: fixed error when testing for validity of flags.
220 2002-04-11 Nick Drochak <ndrochak@gol.com>
222 * Double.cs: Use an internal call for ToString(). This is just a simple
223 implementation to get away from throwing a NotImplementedException.
225 2002-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
230 * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
234 * Int64.cs: throw an OverFlowException when parsing a string
235 containing a dot followed by any non '0' number.
237 2002-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
242 * UInt64.cs: added complex Parse ().
244 2002-04-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
249 * Int64.cs: added complex Parse ().
251 2002-04-09 Nick Drochak <ndrochak@gol.com>
253 * Array.cs (BinarySearch): Add checks on paramters before using them
254 and throw exceptions as needed.
256 * Enum.cs (Format): Check if [Flags] is applied to enum and convert
257 "G" format to "F" if so.
259 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
261 * MonoCustomAttrs.cs: return arrays of type Attribute[]
264 2002/04/09 Nick Drochak <ndrochak@gol.com>
266 * String.cs (Substring): Copy only non-null characters to the new
269 2002-04-09 Nick Drochak <ndrochak@gol.com>
271 * IntegerFormatter.cs: Don't use a format character to indicate a
272 custom format was passed in. It was using 'z' to indicate a custom
273 format, but really it should throw a format exception if the user
274 tries to use "z" as the format string. Now it does.
276 * Activator.cs: New File.
278 2002-04-08 Nick Drochak <ndrochak@gol.com>
280 * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
281 applied to an enum. Need to handle the different possible integer
282 types of an enum somehow. Can anyone say generics?
284 Mon Apr 8 06:22:42 2002 Piers Haken <piersh@friskit.com>
286 * Convert.cs: switched the To*(object) methods to use
287 IConvertible directly instead of calling ChangeType
289 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
291 * ValueType.cs: make Equals() an internalcall.
293 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
295 * Type.cs: also look for nested types in FindMembers.
296 * MonoType.cs: make GetNestedTypes() an internalcall.
298 2002-04-05 Nick Drochak <ndrochak@gol.com>
300 * Enum.cs (Parse): Handle different underlying types.
302 2002/04/04 Nick Drochak <ndrochak@gol.com>
304 * Enum.cs (IsDefined): Throw exception when type of value to look for
305 is not the correct one. Attempt to have it work with string values
306 too, but not sure if the unit tests are getting that far yet.
308 2002-04-04 Nick Drochak <ndrochak@gol.com>
310 * Decimal.cs: Fix a couple of typos.
312 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
314 * Enum.cs: the values array is of the enum and not of the underlying
315 type. Updates and some bug fixes.
316 * MonoType.cs: make the internalcall return FullName instead of the
317 assembly qualified name.
318 * Type.cs: make ToString () simply return FullName.
320 2002-04-03 Nick Drochak <ndrochak@gol.com>
322 * Type.cs (GetTypeCode): provide some of the implementation for this
323 method. It's still too simplistic to be considered complete.
325 2002-04-02 Dietmar Maurer <dietmar@ximian.com>
327 * Object.cs: fixed FieldGetter/FieldSetter signature
329 2002-04-02 Nick Drochak <ndrochak@gol.com>
331 * Environment.cs: add MonoTODO's on parts that should have it.
333 2002-04-01 Nick Drochak <ndrochak@gol.com>
335 * Enum.cs: added reality checks (check parameters to most methods that
338 2002-03-30 Dietmar Maurer <dietmar@ximian.com>
340 * Object.cs: added FieldGetter/FieldSetter
342 2002-03-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
344 * IntegerFormatter.cs: fixed initialization error in static
347 2002-03-28 Dietmar Maurer <dietmar@ximian.com>
349 * Delegate.cs: added new field to store a trampoline function
351 2002-03-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
353 * IntegerFormatter.cs: added workaround for bug #22668. First patch to
354 make custom format strings work (not fully functional yet).
356 2002/03/28 Nick Drochak <ndrochak@gol.com>
358 * IntegerFormatter.cs: Change class from internal to public. Add
359 necessary [CLSCompliant(false)] attributes.
361 2002-03-27 Duco Fijma <duco@lorentz.xs4all.nl>
362 * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
365 2002-03-28 Nick Drochak <ndrochak@gol.com>
367 * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
369 2002-03-27 Dan Lewis <dihlewis@yahoo.co.uk>
371 * Console.cs: Modified to get std handles from MonoIO.
372 * Environment.cs: removed PAL dependencies.
374 2002-03-25 Miguel de Icaza <miguel@ximian.com>
376 * String.cs (System): Removed internal enumeration, because
377 bootstrapping the corlib at this point does not support
380 * IntPtr.cs: Temporary work-around until I fix the assembly
383 2002-03-24 Martin Baulig <martin@gnome.org>
385 * Enum.cs (GetValues): According to the docu this is sorted after
388 * String.cs (System): Removed enumeration, because it is pretty
389 hard to support enumerations in /nostdlib mode for the core types.
391 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
393 * Array.cs: move error handling in the catch block.
394 * MulticastDelegate.cs: remove == and != operators that were
395 removed with the delegate changes (when you add stuff, please do not
396 remove existing functionality!).
397 * Type.cs: if a property is not found in a type, search for it
398 in the parent types, too.
400 2002-03-18 Dan Lewis <dihlewis@yahoo.co.uk>
402 * Math.cs: changed to use icall instead of PAL.
404 2002-03-18 Dietmar Maurer <dietmar@ximian.com>
406 * Double.cs: added check for NaN (Bug [22082])
408 2002-03-19 Nick Drochak <ndrochak@gol.com>
410 * Enum.cs (Equals): check for null and throw if it is.
411 * Enum.cs (Format): check for null parameters and throw if necessary.
412 This method still needs more argument checking.
414 2002-03-18 Dietmar Maurer <dietmar@ximian.com>
416 * Enum.cs (Equals): check if Enums are of the same type
418 2002-03-18 Nick Drochak <ndrochak@gol.com>
420 * Double.cs: Explicitly handle comparisons in CompareTo() for
421 Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
423 * Enum.cs(CompareTo): Check types of values before trying to compare.
424 Throw exceptions if types are invalid or don't match.
426 2002-03-14 Miguel de Icaza <miguel@ximian.com>
428 * Array.cs: Add some extra debugging information.
430 2002-03-15 Nick Drochak <ndrochak@gol.com>
432 * Array.cs: Added IList and IEnumerable.
434 2002-03-14 Miguel de Icaza <miguel@ximian.com>
436 * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
439 2002-03-14 Dietmar Maurer <dietmar@ximian.com>
441 * Delegate.cs (Equals): also compare method_ptr
442 (GetHashCode): returm method_ptr as hash
444 2002-03-13 Duco Fijma <duco@lorentz.xs4all.n>
445 * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
446 such as 42.ToString("0000000"), as these are (currently) not implemented
447 in System.IntegerFormatter. TimeSpan luckely can do with Standard
448 Numeric Format Strings, such as 42.ToString("D7").
450 2002-03-12 Duncan Mak <duncan@ximian.com>
452 * FieldAccessException.cs:
453 * MethodAccessException.cs:
454 * PlatformNotSupportedException.cs: Inherit from
455 MemberAccessException, not SystemException.
457 * ObsoleteAttribute.cs: Made Message and IsError properties
460 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
462 * GC.cs: make SuppressFinalize() a nop.
463 * Delegate.cs: fix == operator.
465 2002-03-13 Nick Drochak <ndrochak@gol.com>
467 * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
468 runtime that goes with this patch.
470 2002-03-10 Martin Baulig <martin@gnome.org>
472 * Int32.cs (Parse): Correctly parse negative numbers.
474 2002-03-08 Martin Baulig <martin@gnome.org>
476 * String.cs (Split): Really fix it this time. Also adding several new
477 testcase to the testsuite.
479 2002-03-08 Martin Baulig <martin@gnome.org>
481 * Array.cs (Copy): Optimized: removed duplicate null check, removed
482 two duplicate GetLowerBound() calls and one duplicate IsValueType.
484 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
486 * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
487 * String.cs: use the dumb code for IndexOf(string): this is worth
488 15-20 % speedup in mcs compile with mint.
490 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
492 * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
494 2002-03-07 Martin Baulig <martin@gnome.org>
496 * String.cs (Join): Throw an ArgumentNullException.
497 (LastIndexOf (string,int,int)): This method does a backwards search,
498 so startIndex points to the end of value, not to its beginning. Don't
499 throw an exception if startIndex equals this.Length. Always return -1
500 if startIndex is smaller than the length of value.
501 (Replace (string,string)): Replace all occurences of oldValue.
502 If newValue is null, all occurences of oldValue are to be removed.
503 (Split (char[],int)): Return an empty array if maxCount is zero, throw
504 an ArgumentOutOfRangeException if it's less than zero. Return maxValue
505 elements, not maxValue+1.
507 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
509 * MonoType.cs: make GetEvents() an internal call.
510 * MulticastDelegate.cs: copy the passed in array.
512 2002-03-06 Martin Baulig <martin@gnome.org>
514 * Array.cs (Copy): Use FastCopy when appropriate and do correct
517 2002-03-06 Duco Fijma <duco@lorentz.xs4all.nl>
518 * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing
519 some of the failures found be new tests (see ChangeLog in
520 Test/System). Comments added to this method, based on
521 the representation invariant of this class, that (try to) explain
522 why it now should be correct.
524 2002-03-06 Dietmar Maurer <dietmar@ximian.com>
526 * Int64.cs (Parse): bug fix for max. negative value.
528 2002-03-07 Nick Drochak <ndrochak@gol.com>
530 * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
531 I need to understand what the difference between the attribute and
534 2002-03-06 Martin Baulig <martin@gnome.org>
536 * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
537 an InvalidCastException if the widening conversion failed. See
540 * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
541 arrays with non-zero lower bounds. Also adding testcases #F10-#F13
544 * Array.cs (CopyTo): Reverted my last change, it was incorrect.
545 (Copy): Actually allow copying multi-dimensional arrays.
547 2002-03-05 Duncan Mak <duncan@ximian.com>
550 (DBNull) Added the missing field.
551 (IsDBNull) Fixed typo.
552 (ToByte (string, int)) Implemented.
553 (ToString (byte, int)) Implemented.
555 (BuildConvertedString) internal functions used for converting values to
563 * UInt32.cs: Implemented the IConvertible interface.
565 * CharEnumerator.cs: Renamed to variables to be clearer and
566 changed some of the tests to conform to the 1.0 spec.
568 2002-03-06 Martin Baulig <martin@gnome.org>
570 * Array.cs (Copy): Calculate absolute array position here and use
571 GetValueImpl() and SetValueImpl() with that position. We can now
572 copy multi-dimensional arrays.
573 (CopyTo): Small bug fix.
575 2002-03-05 Duco Fijma <duco@lorentz.xs4all.nl>
577 * Version.cs: CompareTo changed according the LAMESPEC discovered by
578 Nick (See VersionTest.cs).
579 * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
580 error comparing the current position (idx) against the length of the
581 string iterated and it set idx to an unrecognized special value (-2)
583 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
585 * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
586 to do this dirty work, but someone has to do it (and I need it to pass
587 the "200 sample tests compiled on linux" mark).
589 2002-03-06 Nick Drochak <ndrochak@gol.com>
592 * DecimalFormatter.cs
599 * RuntimeMethodHandle.cs
600 * RuntimeTypeHandle.cs
603 Add [MonoTODO]'s to places where we currently throw a
604 NotImplementedException.
606 2002-03-05 Dietmar Maurer <dietmar@ximian.com>
608 * Int16.cs (Parse): do not overflow on max negative value
610 * Int32.cs (Parse): do not overflow on max negative value
612 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
614 * Type.cs: fixed IsClass.
615 * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
616 IsByRefImpl. Added GetInterfaces().
617 * IServiceProvider.cs: compilation fix.
619 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
621 * Array.cs: allow copying an empty array to an empty array.
623 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
625 * String.cs: fixed LastIndexOf (string) to do a bit of argument
628 2002-03-04 Duco Fijma <duco@lorentz.xs4all.nl>
629 * Version.cs: many fixes to failures found by the newly created
630 test cases for this class. Specifically, the CompareTo member
631 returned wrong values due to the use of Int32.MaxValue as a special
632 value indicating an "undefined" version component. Also implemented the
633 missing operators (==, <, >, etc.), one missing constructor and
634 and some exception throwing.
636 2002-03-04 Nick Drochak <ndrochak@gol.com>
638 * IServiceProvider.cs: Add missing attribute: ComVisible(false)
639 * Attribute.cs: Add missing attributes: Serializable and
640 AttributeUsage(AttributeTargets.All)
642 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
644 * MonoType.cs: implemented GetConstructors(), GetFields(),
645 GetMethods(), GetProperties().
646 * Object.cs: added debugging icall obj_address().
647 * Type.cs: fixed the binding flags for some Get* methods.
648 Implemented FindMembers() as calls to the specific GetMember
651 2002-03-01 Duco Fijma <duco@lorentz.xs4all.nl>
652 * BitConverter.cs: fixed one little bug: ToString(s, n, 0)
653 should give an exception for n>=s.Length.
655 2002-03-01 Martin Baulig <martin@gnome.org>
657 * Array.cs: More argument checking and bug fixing.
659 2002-03-01 Miguel de Icaza <miguel@ximian.com>
661 * BitConverter.cs: Indentation match
663 * AppDomain.cs: Added MonoTODOs to this too.
665 * Buffer.cs: Added MonoTODOs to this.
667 2002-03-01 Martin Baulig <martin@gnome.org>
669 * Array.cs: Added argument checking to all methods where it was missing.
671 2002-03-01 Duco Fijma <duco@lorentz.xs4all.nl>
673 * BitConverter.cs: Fixed bugs in ToString methods
675 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
677 * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
679 2002-03-01 Nick Drochak <ndrochak@gol.com>
681 * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
682 ArgumentOutOfRangeException like the docs say.
684 2002-03-01 Martin Baulig <martin@gnome.org>
686 * Enum.cs (CompareTo): Correctly override this method from IComparable.
688 * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
690 2002-02-28 Martin Baulig <martin@gnome.org>
692 * String.cs: This file now passes the testsuite on Linux :-)
694 * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
695 make them private and provide C# wrappers which do proper argument checking.
697 * String.cs (Format): Correctly handle escaped brackets.
699 * String.cs (_CompareChar): New internal function which compares two chars.
700 (_Compare): Provide an internal compare method which can do all sorts of
701 comparision and call it from all the Compare() methods. Also fixed a lot of
702 bugs here, this code now actually passes the testsuite.
704 2002-02-28 Duncan Mak <duncan@ximian.com>
706 * Convert.cs: Added the missing methods. The new class status page
707 kicks ass, it even found my typos! Woohoo!
708 (ConvertFromBase): Moved the Exception throwing in here and
709 removed the other occurances so it's all centralized now.
710 (ISDBNull): Implemented.
711 (GetTypeCode): Implemented.
713 2002-02-27 Duco Fijma <duco@lorentz.xs4all.nl>
714 * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D")
715 just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
716 states that a lacking format should be interpreted as "N".
717 Also added [Serializable] attribute
718 * TimeSpan.cs: some formatting and added the [Serializable] attribute
720 2002-02-26 Duncan Mak <duncan@ximian.com>
722 * WeakReference.cs: Committed for Ajay Kumar Dwivedi.
724 2002-02-26 Martin Baulig <martin@gnome.org>
726 * TimeZone.cs: Use an internal enum rather than magic numbers to access the
727 fields of the interncall GetTimeZoneData.
729 * DateTime.cs: Implemented Parse and fixed a few bugs.
731 * String.cs (TrimStart): Small fix.
733 2002-02-26 Martin Baulig <martin@gnome.org>
735 * DateTime.cs: ParseExact is now fully functional.
737 * String.cs (TrimEnd): Small fix.
739 2002-02-26 Duco Fijma <duco@lorentz.xs4all.nl>
740 * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously
741 missing for about six months.
743 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
745 * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
747 2002-02-26 Martin Baulig <martin@gnome.org>
749 * DateTime.cs: Miguel already committed this, but there was still a
750 ChangeLog entry for this missing ....
751 We're now reusing functionality from TimeSpan, printing dates is
752 fully implemented, currently working on parsing.
754 * TimeZone.cs: Fully implemented this. There's a new InternCall in the
757 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
759 * MonoType.cs: disable constructor.
760 * Object.cs: make GetType() an internalcall.
761 * Type.cs: added correct bindingflags to GetMethods ().
762 All such calls should be reviewed to use the correct flags.
764 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
766 * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
769 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
771 * Type.cs: implemented IsAssignableFrom.
773 2002-02-21 Duco Fijma <duco@lorentz.xs4all.nl>
774 * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
775 "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}"
776 to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}"
777 The former is documented by Microsoft. The latter is how they
778 actually implemented it in mscorlib:-)
780 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
782 * MonoCustomAttrs.cs: hooks to get the custom attributes from the
784 * MonoType.cs: Implemented custom attributes methods.
787 2002-02-21 Duco Fijma <duco@lorentz.xs4all.nl>
790 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
792 * MonoCustomAttrs.cs: hooks to get the custom attributes from the
794 * MonoType.cs: Implemented custom attributes methods.
796 2002-02-19 Dietmar Maurer <dietmar@ximian.com>
798 * Array.cs (CopyTo): use GetLength() instead of GetUpperBound()
800 2002-02-19 Duncan Mak <duncan@ximian.com>
802 * Convert.cs: Finished up the missing methods in Convert. Added a
803 new private method ConvertFromBase.
805 2002-02-19 Dietmar Maurer <dietmar@ximian.com>
807 * String.cs: impl. IConvertible interface
809 2002-02-18 Duco Fijma <duco@lorentz.xs4all.nl>
810 * Guid.cs: actual implementation for Guid.Guid(string) Ctor
812 2002-02-18 Duncan Mak <duncan@ximian.com>
814 * Convert.cs: Changed from using Type.GetType (string) to just
815 typeof (). Probably will speed things up a bit?
817 2002-02-18 Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
820 1. Fix for GetUpperBound to return correct values
821 2. made some Properties virtual
822 3. Adds IsFixedSize and IsReadOnly properties.
823 4. changes CreateInstance(Type,int[],int[]) to throw Exception
824 when third arg is null. InternalCall CreateInstance changed to
826 5. Fixed array.GetUpperBound at a couple of places
827 6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
828 7. Added two FIXME's in BinarySearch functions.
830 2002-02-17 Duncan Mak <duncan@ximian.com>
832 * TimeZone.cs: Applied the rest of Ajay's patch for
833 IsDaylightSavingTime. Thanks a lot for the nice explanation of how
836 2002-02-17 Duco Fijma <duco@lorentz.xs4all.nl>
837 * Guid.cs: added stub for Guid(string) ctor
839 2002-02-17 Duncan Mak <duncan@ximian.com>
841 * Convert.cs: Near-complete implementation of Convert.cs
843 Added all the To* methods taking (object) and
844 (object, IFormatProvider) as parameters.
846 Added [CLSCompliant (false)] attributes to methods dealing with
849 Added the missing section on converting to and from DateTime. Only
850 6 missing methods, all marked with MonoTODOs. Will tackle them later.
852 2002-02-16 Duncan Mak <duncan@ximian.com>
854 * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
855 make IsDaylightSavingTime (DateTime) call
856 IsDaylightSavingTime (DateTime, DaylightTime).
858 Added internal class CurrentTimeZone from Ajay. It needs more work
859 to fill in the appropriate internal calls.
861 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
863 * Type.cs: fix IsClass.
865 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
867 * String.cs: fix Trim().
869 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
871 * String.cs: fix more off by one errors.
873 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
875 * MonoType.cs: fix IsValueTypeImpl.
876 * Type.cs: fix IsEnum. Implement Equals methods.
878 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
880 * Int32.cs: implement IConvertible interface.
882 2002-02-12 Duncan Mak <duncan@ximian.com>
884 * TimeZone.cs: Implemented and added to CVS.
886 2002-02-11 Duncan Mak <duncan@ximian.com>
888 * Convert.cs: Implemented the ChangeType () methods.
890 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
892 * Array.cs: make Clone() an internal call.
894 2002-02-09 Duco Fijma <duco@lorentz.xs4all.nl>
895 * Changed Guid.NewGuid so that it can use both System.Random and
896 System.Security.Cryptography.RandomNumberGenerator
898 2002-02-09 Duco Fijma <duco@lorentz.xs4all.nl>
899 * First version of Guid.NewGuid
901 2002-02-08 Duncan Mak <duncan@ximian.com>
903 * RuntimeArgumentHandle.cs: Added to CVS.
905 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
907 * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
908 UnhandledExceptionEventHandler.cs: added delegates.
910 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
912 * MarshalByRefObject.cs: add ToString () method
913 (apparently needed by nunit).
914 * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
915 by it in the runtime.
917 2002-02-08 Dan Lewis <dihlewis@yahoo.co.uk>
919 * String.cs (Format): implemented
921 2002-02-07 Duncan Mak <duncan@ximian.com>
923 * DuplicateWaitObjectException:
924 * InvalidCastException:
925 * NotImplementedException:
926 * NotSupportedException:
927 * NullReferenceException:
928 * OutOfMemoryException:
931 * StackOverflowException.cs:
932 * UnauthorizedAccessException: Added missing constructor used for serialization.
934 2002-02-07 Dietmar Maurer <dietmar@ximian.com>
936 * String.cs (System.Compare): bug fix
938 2002-02-06 Dietmar Maurer <dietmar@ximian.com>
940 * Enum.cs (Parse, GetHashCode): impl.
942 2002-02-05 Duncan Mak <duncan@ximian.com>
944 * DBNull.cs: This is my first crack at the DBNull class. I think I
945 actually got most of the IConvertible methods right, but I haven't
946 done the research to test whether or not this is the correct
947 behavior. IConvertible.ToType () is the most iffy of all, IMHO.
949 * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
951 2002-02-05 Dietmar Maurer <dietmar@ximian.com>
953 * Enum.cs: added more functionality (GetName, ToObject, Equals)
955 2002-01-31 Duncan Mak <duncan@ximian.com>
957 * InvalidOperationException.cs:
958 * NotFiniteNumberException.cs:
959 * ObjectDisposedException.cs:
960 * TypeInitializationException.cs: Added missing bits for serialization/
962 * AppDomainUnloadedException.cs:
963 * ApplicationException.cs:
964 * ArgumentOutOfRangeException.cs:
965 * ArithmeticException.cs:
966 * ArrayTypeMismatchException:
967 * BadImageFormatException.cs:
969 * MissingMemberException.cs:
970 * TypeLoadException.cs: Added missing bits for serialization.
972 2002-01-30 Duco Fijma <duco@lorentz.xs4all.nl>
973 * Guid.cs: implemented everything but Guid.NewGuid
975 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
977 * _AppDomain.cs: remove ToString() method: it doesn't seem right
978 to have it in this interface and it screws up the method vtable setup.
980 2002-01-28 Andrei Zmievski <andrei@php.net>
982 * Double.cs: implemented IConvertible interface.
984 2002-01-28 Miguel de Icaza <miguel@ximian.com>
986 * ArgumentException.cs: Implement serialization constructor.
987 (GetObjectData): Implement serializer.
989 * ArgumentNullException.cs: Implement serialization constructor.
991 * Exception.cs: Implement serialization constructor.
992 (GetObjectData): Implement serializer.
994 2002-01-23 Miguel de Icaza <miguel@ximian.com>
996 * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
998 2002-01-23 Duncan Mak <duncan@ximian.com>
1000 * EntryPointNotFoundException.cs:
1001 * FormatException: Added missing constructor and related bits.
1003 * TypeLoadException: Added missing constructor, methods and properties.
1005 2002-01-23 Miguel de Icaza <miguel@ximian.com>
1007 * AppDomain.cs (GetAssemblies): Use foreach construct instead of
1008 manually getting the enumerator.
1010 (AppDomain.AppDomain): Prime the loaded assemblies with the
1011 assemblies loaded by the runtime in our behalf.
1013 * AppDomainSetup.cs: Remove private keyword, that is the default.
1014 Add a new property DisallowPublisherPolicy.
1016 * AppDomain.cs (AppDomain.GetAssemblies): Implement.
1018 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
1020 * MonoType.cs, Type.cs: many updates, corrected implementation,
1023 2002-01-20 Andrei Zmievski <andrei@php.net>
1026 * Char.cs: implemented IConvertible interface.
1028 * Boolean.cs: use our own ToString() method directly.
1030 2002-01-20 Duncan Mak <duncan@ximian.com>
1032 * Files I commited recently: Fixed indentation style.
1034 2002-01-20 Nick Drochak <ndrochak@gol.com>
1036 * SerializableAttribute.cs: this attrib can be used on enums, structs,
1037 and delegates too. Added the appropriate usage flags.
1039 2002-01-18 Duncan Mak <duncan@ximian.com>
1041 * CharEnumerator.cs: Implemented.
1042 * String.cs (System): Fixed the GetEnumerator () method(s).
1044 * ObsoleteAttribute.cs:
1045 * STAThreadAttribute.cs:
1046 * MTAThreadAttribute.cs:
1047 * ThreadStaticAttribute.cs:
1048 * LoaderOptimizationAttribute.cs:
1049 * PlatformNotSupportedException.cs:
1050 * LoaderOptimization.cs: Added to CVS.
1052 2002-01-18 Duncan Mak <duncan@ximian.com>
1054 * AppDomainUnloadedException.cs:
1055 * MethodAccessException.cs:
1056 * ContextMarshalException.cs:
1057 * CannotUnloadAppDomainException.cs:
1058 * DllNotFoundException.cs:
1059 * EntryPointNotFoundException.cs:
1060 * FieldAccessException.cs:
1061 * TypeUnloadedException.cs:
1062 * MissingFieldException.cs: Added to CVS.
1064 * ApplicationException.cs:
1065 * MemberAccessException.cs:
1066 * MissingMemberException.cs
1067 * MissingMethodException.cs:
1068 * SystemException.cs: Added [Serializable] attribute.
1070 * Exception.cs: Added [Serializable] attribute, made properties
1071 'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
1074 * ContextStaticAttribute.cs: Added [Serializable] attribute and
1075 put in the missing constructor.
1077 * Environment.cs: Commented out references to
1078 EnvironmentPermissionAttribute, because they're just stubbed out
1079 right now and has no implementation.
1081 2002-01-16 Andrei Zmievski <andrei@php.net>
1083 * Boolean.cs: implemented IConvertible interface
1085 2002-01-15 Nick Drochak <ndrochak@gol.com>
1087 * ResolveEventArgs.cs: class should derive from EventArgs.
1089 2002-01-14 Miguel de Icaza <miguel@ximian.com>
1091 * String.cs (System): Use DefaultMemberName for the String class.
1093 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
1095 * String.cs: use IndexerName in index char accessor.
1097 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
1099 * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
1100 * String.c: eliminate 64k+ method calls in search.
1101 * Type.cs: handle byref and array types in ToString ().
1103 2002-01-09 Duco Fijma <duco@lorentz.xs4all.nl>
1105 * Guid.cs: created first version
1107 2002-01-10 Dietmar Maurer <dietmar@ximian.com>
1109 * MonoType.cs: added missing TypeAttributes to MonoTypeInfo
1111 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
1113 * MulticastDelegate.cs: add == and != operator stubs.
1114 * String.cs: check for null in == operator.
1115 * Type.cs: use a virtual method to get TypeAttributes.
1117 Tue Jan 8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
1118 * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
1120 2002-01-09 Nick Drochak <ndrochak@gol.com>
1122 * Environment.cs: Comment out Security attribute and put a MonoTODO
1123 there as a reminder. We need mcs magic to handle security attributes in
1126 2002-01-07 Duco Fijma <duco@lorentz.xs4all.nl>
1127 * Created IAppDomainSetup.cs
1129 2002-01-06 Duco Fijma <duco@lorentz.xs4all.nl>
1130 * Created System._AppDomain interface in _AppDomain.cs
1132 2002-01-06 Nick Drochak <ndrochak@gol.com>
1134 * ResolveEventArgs.cs: New File, completely implemented! ;)
1136 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
1138 * Enum.cs: dummy ToString impl.
1139 * String.cs: dummy format implementations to get compiler errors
1141 * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
1143 2002-01-05 Ravi Pratap <ravi@ximian.com>
1145 * TODOAttribute.cs : Augment some more; provide two constructors
1146 with support for a comment too.
1148 2002-01-05 Nick Drochak <ndrochak@gol.com>
1150 * Uncommented those MonoTODO's now that Ravi's got
1153 2001-01-04 Ravi Pratap <ravi@ximian.com>
1155 * TODOAttribute.cs : Actually add this time ;-)
1157 Change name to MonoTODO.
1159 2002-01-04 Jeffrey Stedfast <fejj@ximian.com>
1161 * String.cs (Trim): Fixed a few logic bugs in the code that
1162 calculated how much to trim off the end of the string.
1164 2001-01-04 Nick Drochak <ndrochak@gol.com>
1166 * Commented out the [TODO] attributes for now. We don't have the
1167 class written. Also changed it to [MonoTODO]
1169 2002-01-04 Ravi Pratap <ravi@ximian.com>
1171 * TODOAttribute.cs : Add. We use this attribute to tag all bits in
1172 our class libraries that are incomplete.
1174 * Array.cs : Apply attribute wherever we find a FIXME which says
1175 we need something to be implemented there.
1179 * MulticastDelegate.cs : Ditto.
1181 * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
1182 RuntimeTypeHandle.cs : Ditto.
1184 * String.cs : Ditto.
1188 * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
1190 * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs,
1191 UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
1193 * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
1194 Delegate.cs : Ditto.
1196 * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
1197 Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
1199 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
1201 * Delegate.cs: add Remove() stub.
1202 * Enum.cs: add ToObject().
1203 * Type.cs: add IsEnum property.
1205 2002-01-03 Kristian Rietveld <kris@gtk.org>
1207 * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
1208 DateTime and object.
1210 2001-12-30 Nick Drochak <ndrochak@gol.com>
1212 * Byte.cs (Parse): Add comments to aid in testing.
1214 2001-12-21 Miguel de Icaza <miguel@ximian.com>
1216 * Char.cs (Parse): Implement.
1218 * Byte.cs (Parse): Implement a fast parser.
1220 * SByte.cs (Parse): Implement a fast parser.
1222 * UInt16.cs (Parse): Implement a fast parser.
1224 * Int16.cs (Parse): Implement a fast parser.
1226 * UInt32.cs (Parse): Implement a fast parser.
1228 * Int32.cs (Parse): Implement a fast parser.
1230 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
1232 * Array.cs: fix null ref in sort code.
1233 * UInt64.cs: add bare-bones parse.
1235 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
1237 * Byte.cs: removed use of Regexes.
1239 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
1241 * Enum.cs: implemented GetValues(), GetNames(), GetName(),
1242 IsDefined(), GetUnderlyingType().
1243 * String.cs: fix one instance of Compare().
1244 * Type.cs: implemented GetProperties(), GetProperty().
1246 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
1248 * Array.cs: implement CopyTo ().
1249 * Char.cs: implement ToString ().
1250 * Exception.cs: bugfix.
1251 * Int32.cs: bare-bones Parse ().
1252 * MonoType.cs: query the needed info with an internalcall.
1253 * String.cs: speedups, bugfixes, reduced copies.
1254 * Type.cs: added missing fields. Implemented many of the Is*
1255 properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
1256 GetFields(), FindMembers(), ToString().
1258 2001-12-11 Dick Porter <dick@ximian.com>
1260 * DateTime.cs: Implemented FromFileTime() and ToFileTime()
1262 * Console.cs: Use handles rather than casting file descriptors
1264 2001-12-08 Nick Drochak <ndrochak@gol.com>
1266 * Byte.cs (Parse): Start implementation. Parse(string) works, but
1267 now we need to handle other formats
1269 2001-12-06 Dietmar Maurer <dietmar@ximian.com>
1271 * DateTime.cs: added an icall to GetNow()
1273 2001-12-04 Dietmar Maurer <dietmar@ximian.com>
1275 * Double.cs: added the parse method from Bob Smith
1277 2001-11-28 Miguel de Icaza <miguel@ximian.com>
1283 * Int32.cs (Int32.CompareTo): Fix because we can not just
1284 substract the values.
1286 Return possitive value if the object is null.
1288 * Boolean.cs: (Boolean.CompareTo): ditto.
1290 * Int16.cs (Int16.CompareTo): ditto.
1292 * Byte.cs (Byte.CompareTo): ditto.
1294 * SByte.cs (SByte.CompareTo): ditto.
1296 * Char.cs (Char.CompareTo): ditto.
1298 * Decimal.cs (Decimal.CompareTo): ditto.
1300 * Int64.cs (Int64.CompareTo): ditto.
1306 2001-11-28 Nick Drochak <ndrochak@gol.com>
1308 * Byte.cs: Throw NotImplementedException for Parse.
1310 2001-11-27 Derek Holden <dholden@draper.com>
1312 * IntegerFormatter.cs: Formatting of type "Number" was not
1313 using NumberFormatInfo.NumberNegativePattern.
1315 2001-11-26 Dick Porter <dick@ximian.com>
1317 * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
1318 the finalise routine any more
1320 2001-11-21 Miguel de Icaza <miguel@ximian.com>
1322 * ApplicationException.cs: internationalize by adding calls to
1323 Locale.GetText (). And throw NotImplementedExceptions on calls
1324 that we have to implement.
1326 * Version.cs: Ditto.
1328 * ValueType.cs: ditto.
1330 * UnauthorizedAccessException.cs: ditto.
1338 * TypeLoadException.cs: ditto
1340 * TypeInitializationException.cs: ditto.
1344 * TimeSpan.cs: ditto.
1346 * SystemException.cs: ditto.
1350 * StackOverflowException.cs: ditto.x
1356 * RuntimeTypeHandle.cs: ditto.
1358 * RuntimeMethodHandle.cs: ditto.
1360 * RuntimeFieldHandle.cs: ditto.
1364 * OutOfMemoryException.cs: ditto.
1366 * OperatingSystem.cs: ditto.
1368 * ObjectDisposedException.cs: ditto.
1370 * NullReferenceException.cs: ditto.
1372 * NotImplementedException.cs: ditto.
1374 * NotFiniteNumberException.cs: ditto.o
1376 * MulticastNotSupportedException.cs: ditto.
1378 * MissingMethodException.cs: ditto.
1380 * MemberAccessException.cs: ditto.
1384 * InvalidCastException.cs: ditto.
1386 * IntegerFormatter.cs: ditto.
1392 * IndexOutOfRangeException.cs: ditto.
1394 * Environment.cs: ditto
1398 * DuplicateWaitObjectException.cs: ditto.
1400 * DivideByZeroException.cs: ditto.
1402 * Delegate.cs: ditto
1404 * DecimalFormatter.cs: ditto.
1406 * Decimal.cs: ditto.
1408 * DateTime.cs: ditto.
1410 * Convert.cs: ditto.
1416 * Boolean.cs: ditto.
1418 * ArrayTypeMismatchException.cs: ditto.
1420 * ArithmeticException.cs: ditto.
1422 * ArgumentOutOfRangeException.cs: ditto.
1424 * ArgumentNullException.cs: ditto.
1426 * Enum.cs: Make it derive from ValueType, add CompareTo method.
1428 * Attribute.cs: Reformat.
1430 2001-11-14 Miguel de Icaza <miguel@ximian.com>
1432 * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
1433 UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
1434 exception if the value is null too.
1436 * Char.cs (CompareTo): ditto.
1438 * ApplicationException.cs: Added constructor that does serialization.
1440 * ParamArrayAttribute.cs: Define attribute correctly.
1442 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
1444 * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
1445 * Array.cs: fix Array.Copy.
1446 * AssemblyLoadEventArgs.cs: rename field.
1447 * CLSCompliantAttribute.cs: use correct name for the class.
1448 * Char.cs: fix IsLetter.
1449 * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
1450 SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
1451 * Convert.cs: CLSCompliant updates, add ChangeType() methods.
1452 * Delegate.cs: renamed target field to m_target.
1453 * Enum.cs: added missing methods.
1454 * MonoType.cs: add a constructor and some needed properties.
1455 * Object.cs: implement GetType().
1456 * String.cs: CLSCompliant updates. Fixes everywhere to remove the
1458 * Type.cs: add missing methods/properties.
1460 2001-11-10 Sean MacIsaac <macisaac@ximian.com>
1462 * AttributeUseage.cs: Should define AttributeUsageAttribute.
1464 * CLSCompliant.cs: Marked with AttributeUsage attribute.
1466 * Decimal.cs: Fixed CLSCompliant attributes.
1468 * Type.cs: changed _impl to internal (needs to be accessable by
1471 (TypeHandle): Marked as abstract, implementation removed.
1473 (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
1474 GetMethod): Added stub implementations so NUnit would link against
1477 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
1479 * AppDomain.cs: use an internal constructor for AssemblyBuilder.
1481 2001-11-05 Miguel de Icaza <miguel@ximian.com>
1483 * NonSerializedAttribute.cs: Add AttributeUsage rules for this
1486 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
1488 * String.cs: fix a couple of bugs.
1489 * AppDomain.cs: use new AppBuilder constructor.
1490 * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
1491 NotImplementedException.cs, ObjectDisposedException.cs,
1492 UnauthorizedAccessException.cs: add implementation.
1493 * OverflowException.cs: fix class name.
1495 2001-10-28 Jeffrey Stedfast <fejj@ximian.com>
1497 * String.cs: Don't use a terminating nil char for our internal
1500 2001-10-27 Miguel de Icaza <miguel@ximian.com>
1502 * Delegate.cs (Delegate.CombineImpl): Implement.
1503 (Delegate.Combine): Implement.
1505 * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
1507 (MulticastDelegate.CombineImpl): This was not as trivial as I
1510 * ContextStaticAttribute.cs: Added AttributeUsage to
1511 ContextStaticAttribute.
1513 * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
1515 2001-10-15 Martin Weindel <martin.weindel@t-online.de>
1517 * added Decimal.cs * added DecimalFormatter.cs (internal class
1518 used from System.Decimal)
1520 2001-10-11 Thomas Neidhart <tome@sbox.tugraz.at>
1522 * Convert.cs: Added methods for Base64 transforming just used the
1523 existing System.Security.Cryptography.ToBase64Transform, should
1524 be changed to use a stand-alone class, e.g. Base64Encoder
1526 2001-10-10 Derek Holden <dholden@draper.com>
1528 * IntegerFormatter.cs: Added. Implements ToString for all the
1529 integer data types for all the format types.
1531 * Byte.cs: Using IntegerFormatter for ToString's.
1533 * SByte.cs: Using IntegerFormatter for ToString's.
1535 * Int16.cs: Using IntegerFormatter for ToString's.
1537 * Int32.cs: Using IntegerFormatter for ToString's.
1539 * Int64.cs: Using IntegerFormatter for ToString's.
1541 * UInt16.cs: Using IntegerFormatter for ToString's.
1543 * UInt32.cs: Using IntegerFormatter for ToString's.
1545 * UInt64.cs: Using IntegerFormatter for ToString's.
1547 2001-10-07 Miguel de Icaza <miguel@ximian.com>
1549 * Exception.cs: Implement bits of serialization.
1551 * RuntimeFieldHandle.cs: Implement Serialization features.
1553 * Type.cs: Implement TypeHandle property.
1555 2001-09-28 Dick Porter <dick@ximian.com>
1557 * LocalDataStoreSlot.cs: Implemented
1559 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
1561 * String.cs: fix off-by-one error in Trim().
1563 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
1565 * Type.cs: added GetType () method.
1567 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
1569 * MissingMethodException.cs, MissingMemberException.cs,
1570 MemberAccessException.cs: added.
1572 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
1574 * String.cs: don't access the string array out of bounds in
1575 LastIndexOf. * Type.cs: fix return type of the Assembly property.
1577 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
1579 * String.cs: make Intern and IsIntern internalcalls.
1581 2001-09-13 Dick Porter <dick@ximian.com>
1583 * Type.cs: Added a stub for the IsValueType property.
1585 * SystemException.cs (System): Added the other constructor, so
1586 that System.Threading exceptions can inherit it.
1588 2001-09-08 Jeffrey Stedfast <fejj@ximian.com>
1590 * String.cs (TrimStart): Don't keep looping through the trimchars
1591 once we've found a match.
1592 (TrimEnd): Same here.
1593 (Trim): And finally here.
1595 2001-09-07 Ravi Pratap <ravi@ximian.com>
1597 * Char.cs (IsLetterOrDigit): Implement.
1598 (IsLower): Implement, but we need to be Unicode aware.
1599 (IsNumber): Implement.
1600 (IsPunctuation): Implement.
1601 (IsWhiteSpace): Implement.
1602 (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
1603 (ToLower): Same here.
1605 2001-09-04 Miguel de Icaza <miguel@ximian.com>
1607 * Object.cs: Shortcut, if (a == b) then return true.
1609 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
1611 * Delegate.cs: we need a pointer to the method thunk in
1612 the delegate object.
1614 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
1616 * AsyncCallback.cs, common.src: add AsyncCallback delegate.
1618 2001-09-06 Jeffrey Stedfast <fejj@ximian.com>
1620 * String.cs (System): Don't mix uint and int.
1622 2001-09-04 Jeffrey Stedfast <fejj@ximian.com>
1624 * String.cs (BoyerMoore): Modified to not use pointers and to instead
1626 (IndexOf): Use BoyerMoore.
1628 2001-09-02 Miguel de Icaza <miguel@ximian.com>
1630 * All over: Use the autogenerated enumerations from the ECMA
1631 documentation that Sergey wrote.
1633 * PlatformID.cs: Add Unix definition.
1635 * OperatingSystem.cs: Use Unix instead of Linux here.
1637 * MarshalByRefObject.cs: Mark class as [Serializable].
1639 2001-08-28 Dietmar Maurer <dietmar@ximian.com>
1641 * Console.cs: impl. (write only)
1642 implemented the stdin stuff
1644 * Int32.cs: impl. real op_Equal
1646 2001-08-24 Miguel de Icaza <miguel@ximian.com>
1648 * (common.src): Removed IAsyncResult as it is not on CVS yet.
1650 * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
1651 as it breaks the build.
1653 2001-08-23 Michael Lambert <michaellambert@email.com>
1655 * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData,
1656 added CLSCompliant attribute
1658 * IAsyncResult.cs: Added
1660 * common.src: Added IAsyncResult.cs
1662 2001-08-23 Michael Lambert <michaellambert@email.com>
1666 * common.src: Added UIntPtr.cs
1668 2001-08-20 Dietmar Maurer <dietmar@ximian.com>
1670 * Attribute.cs: uncomment some code to make it compile again
1672 * mono.src: removed duplicated Attribute.cs
1674 2001-08-16 Nick Drochak <ndrochak@gol.com>
1676 * Attribute.cs: implemented all methods except GetHashCode()
1678 * common.src: added Attribute.cs so it would compile in
1680 2001-08-10 Dietmar Maurer <dietmar@ximian.com>
1682 * Object.cs: changed MemberWiseClone to MemberwiseClone, and
1683 marked it as InternalCall
1685 * common.src: removed UriFormatException.cs because the file is
1688 * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
1689 * Char.cs: replaced byte with char
1691 * Array.cs: make it work with the mono interpreter
1693 2001-08-06 Miguel de Icaza <miguel@ximian.com>
1695 * Version.cs: Make the class sealed
1697 2001-08-08 Bob Smith <bob@thestuff.net>
1699 * Random.cs: Many compile fixes.
1700 * Random.cs: I read a bad spec. Class updated to match real spec.
1702 2001-08-06 Miguel de Icaza <miguel@ximian.com>
1704 * IntPtr.cs: Added and Completed implementation.
1706 * Uri.cs: Add a note.
1708 2001-08-06 Bob Smith <bob@thestuff.net>
1710 * Random.cs: Compile fix. Needs more testing.
1712 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
1714 * Uri.cs: Initial Implementation. Parsing needs to be fixed to take
1715 into account IPv6 addresses, url encoding needs to be implemented, and
1716 various minor methods need to be written, but this is a decent start.
1718 2001-08-06 Dietmar Maurer <dietmar@ximian.com>
1720 * common.src: added Object.cs
1722 * mono.src: added ValueType.cs
1724 2001-08-02 Dietmar Maurer <dietmar@ximian.com>
1726 * Math.cs: replaced libc with libm
1728 2001-08-02 Bob Smith <bob@thestuff.net>
1730 * Random.cs: Implemented. Needs testing.
1732 2001-08-02 Miguel de Icaza <miguel@ximian.com>
1734 * IServiceProvider.cs, EventHandler.cs: New files.
1736 2001-08-02 Marcel Narings <marcel@narings.nl>
1738 * DateTime.cs: Cleaned up a bit. Added the Add* family members.
1739 Added exceptions. Added IConvertible. Still needs some platform
1740 dependend stuff, the Parse and ToString members
1742 2001-08-01 Dietmar Maurer <dietmar@ximian.com>
1744 * Type.cs (GetTypeFromHandle): added placeholder
1746 2001-07-24 Derek Holden <dholden@draper.com>
1748 * Boolean.cs: Formatted to code style standard. Added GetTypeCode
1749 which is really an IConvertible defined method.
1751 * Byte.cs: Added a missing Parse method. Put in Parse and ToString
1752 behavior, still need to do the main Parse and ToString.
1754 * Char.cs: Added a bunch of missing ECMA methods. Commented a
1755 specification discrepency. Still didn't any unicode stuff, though
1756 every IsFoo(char c) method has an IsFoo(string, index)
1757 counterpart, added wrappers for those.
1759 * Convert.cs: Fixed NaN/Inf checking and double/float
1760 rounding. Added ToType for IConvertible classes
1762 * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
1763 IsNaN methods. Changed Inf/NaN internals.
1765 * IConvertible.cs: Added comments for using
1766 Convert.ToType. Changed return values to draft base values.
1768 * Int16.cs: Added a missing Parse statement. Put in behavior for
1769 overloaded ToString and Parse methods.
1771 * Int32.cs: Added a missing Parse statement. Put in behavior for
1772 overloaded ToString and Parse methods.
1774 * Int64.cs: Added a missing Parse statement. Put in behavior for
1775 overloaded ToString and Parse methods.
1777 * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
1778 methods. Changed Inf/NaN internals.
1780 * SByte.cs: Added a missing Parse method. Put in Parse and
1781 ToString behavior, still need to do the main Parse and ToString.
1783 * UInt16.cs: Added a missing Parse statement. Put in behavior for
1784 overloaded ToString and Parse methods.
1786 * UInt32.cs: Added a missing Parse statement. Put in behavior for
1787 overloaded ToString and Parse methods.
1789 * UInt64.cs: Added a missing Parse statement. Put in behavior for
1790 overloaded ToString and Parse methods.
1792 2001-07-20 Miguel de Icaza <miguel@ximian.com>
1794 * MulticastDelegate.cs: New File.
1796 * Delegate.cs: New file.
1798 * Enum.cs: New file.
1800 * Attribute.cs: New file.
1802 * Type.cs: New file.
1804 * ParamArrayAttribute.cs: New file.
1806 * RuntimeTypeHandle.cs: New file.
1808 * MulticastDelegate.cs: Added.
1810 * DateTime.cs: Added
1812 * Delegate.cs: Added
1814 2001-07-18 Michael Lambert <michaellambert@email.com>
1816 * AttributeTargets.cs: Add.
1818 2001-07-19 Jeffrey Stedfast <fejj@ximian.com>
1820 * Char.cs: Made ToUpper and ToLower public methods.
1822 * String.cs: Lots and lots of compile fixes - just need to write
1823 DateTime.cs and this should build completely now.
1825 2001-07-19 Bob Smith (bob@thestuff.net)
1827 * Math.cs: Implemented.
1829 2001-07-19 Miguel de Icaza <miguel@ximian.com>
1831 * String.cs: Removed tolower and toupper.
1833 * Char.cs: Moved ToLower and ToUpper from string to here.
1835 * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
1836 instead of comparing the value to Nan.
1838 2001-07-19 Duco Fijma (duco@lorentz.xs4all.nl)
1840 * TimeSpan.cs: New implementation.
1842 2001-07-18 Scott Sanders <scott@stonecobra.com>
1844 * UriFormatExcpetion.cs: Add - 85% complete
1846 2001-07-17 Jeffrey Stedfast <fejj@ximian.com>
1848 * String.cs (IndexOf): Slight optimization that allows skipping
1849 over a few chars here and there. This isn't as good as using my
1850 Boyer-Moore implementation, however, Boyer-Moore is only really
1851 good for long strings (I plan on making the code decide which
1852 string search algorithm it should use on-the-fly at some point).
1853 (LastIndexOf): Fix to work correctly.
1854 (BoyerMoore): Took out some unneeded code and fixed an edge-case.
1856 2001-07-16 Michael Lambert <michaellambert@email.com>
1858 * EventArgs.cs: Add.
1860 2001-07-16 Miguel de Icaza <miguel@ximian.com>
1862 * Version.cs: Remove my buggy comment.
1864 2001-07-15 Sean MacIsaac <macisaac@ximian.com>
1866 * String.cs: Spelling error of IComparable, object's
1867 MemberwiseClone cannot be overridden. Made indexer valid for now,
1868 but not sure what to do about this in the long run. Seems to be a
1869 couple bugs in csc.exe having to do with multiple pointer defs in
1870 the same statement, and returning subclasses of a class in the
1871 return type of an interface function implementation. Also moved
1872 operators inside of class definition.
1874 2001-07-14 Jeffrey Stedfast <fejj@ximian.com>
1876 * String.cs: A tom of compile fixes, although we still don't compile.
1878 * IConvertible.cs: The To*Int64() methods return *Int64's, not
1879 *Int32's. Also, it's ToDateTime() not ToDateType().
1881 2001-07-14 Jeffrey Stedfast <fejj@ximian.com>
1883 * String.cs: Apparently I needed to at least write stubs for the
1884 IConvertible interfaces. *sigh*
1886 2001-07-14 Jeffrey Stedfast <fejj@ximian.com>
1888 * String.cs: Many logic/other fixes and better usage of the
1890 (tolower): New convenience method to help condense code.
1891 (toupper): Another new helper method.
1892 (Compare): Use the new helper methods.
1893 (ToLower): use tolower().
1894 (ToUpper): use toupper().
1895 (LastIndexOfAny): Implemented.
1896 (BoyerMoore): New private helper method that implements a modified
1897 version of the Boyer-Moore search algorithm. Noothing uses it yet
1898 as I'm not 100% sure it even works properly with unicode strings
1899 not to mention it uses a huge lookup-table :-)
1900 (Split): Implemented.
1902 2001-07-13 Jeffrey Stedfast <fejj@ximian.com>
1904 * TODO: Added things that need to be finished in System.String
1906 * String.cs: New source file implementing the System.String class
1908 2001-07-12 Sean MacIsaac <macisaac@ximian.com>
1910 * TypeCode.cs: UInt64 was UInt63.
1912 * Object.cs: Fixed a numer of compiler errors.
1914 * Array.cs: Fixed some compiler errors.
1916 * IComparable.cs: Fixed some compiler errors.
1918 * ICloneable.cs: Fixed some compiler errors.
1920 * IConvertible.cs: Fixed some compiler errors.
1922 * IFormattable.cs: Fixed a compiler error.
1924 * IFormatProvider.cs: Fixed a compiler error.
1926 * IDisposable.cs: Fixed a compiler error.
1928 * IFormatProvider.cs: Added public accesability type to
1931 * Exception.cs: Added a using statement to remove compile time
1934 * ApplicationException.cs: Removed a ; that was causing a compiler
1937 * Int16.cs: Fixed some compiler errors.
1939 * Int32.cs: Fixed some compiler errors.
1941 * Int64.cs: Fixed some compiler errors.
1943 * SystemException.cs: Fixed a compiler error.
1945 * UInt16.cs: Fixed some compiler errors.
1947 * UInt32.cs: Fixed some compiler errors.
1949 * UInt64.cs: Fixed some compiler errors.
1951 * Void.cs: Fixed a compiler error.
1953 2001-07-12 Joe Shaw <joe@ximian.com>
1955 * Array.cs: Fix backwards parameters to Array.SetValue()
1957 (BinarySearch): Fix backward logic surrounding whether to call
1958 value.CompareTo or comparer.Compare.
1959 (LastIndexOf): Stop being stupid. I am so not used to strongly
1961 (Sort): Implement a quicksort.
1963 2001-07-11 Joe Shaw <joe@ximian.com>
1965 * Array.cs: Change all instances of trying to access an array with
1966 the index operator to calls to GetValue and SetValue, and add
1967 InternalGetValue and InternalSetValue which are internal calls
1968 into the runtime. Ew.
1970 2001-07-10 Joe Shaw <joe@ximian.com>
1972 * Array.cs: Implemented everything but Sort().
1974 2001-07-09 Jeffrey Stedfast <fejj@ximian.com>
1976 * Object.cs (Object::Equals): Object variable name is `o'.
1978 2001-07-06 Joe Shaw <joe@ximian.com>
1980 * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
1981 Implement the IComparable and IFormattable interfaces. Fix a typo
1984 * ApplicationException.cs, ArgumentException.cs,
1985 ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
1986 ArtithmeticException.cs, ArrayTypeMismatchException.cs,
1987 DivideByZeroException.cs, DuplicateWaitObjectException.cs,
1988 ExecutionEngineException.cs, FormatException.cs,
1989 IndexOutOfRangeException.cs, InvalidCastException.cs,
1990 InvalidOperationException.cs, InvalidProgramException.cs,
1991 MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
1992 NotSupportedException.cs, NullReferenceException.cs,
1993 OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
1994 StackOverflowException.cs, SystemException.cs,
1995 TypeInitializationException.cs: Added all of the exceptions
1996 specified by the language spec. Mmmm... bloat.
1998 2001-07-06 Miguel de Icaza <miguel@ximian.com>
2000 * Int64.cs, Int32.cs: Put. Parsing and ToString missing. Should
2001 do a generic routine all of these guys use.
2003 * Int16.cs: identified missing methods.
2005 * UInt16.cs, UInt32.cs, UInt64.cs: Add.
2007 2001-06-26 Miguel de Icaza <miguel@ximian.com>
2009 * TypeCode.cs: Implement
2011 * Void.cs: Implement.
2013 * TODO: Add file to keep track of pending tasks.
2015 * Object.cs, ValueType.cs: Implement.