Author: ankit
Date: 2006-01-16 09:25:20 -0500 (Mon, 16 Jan 2006)
New Revision: 55634
Modified:
trunk/mcs/ilasm/codegen/ChangeLog
trunk/mcs/ilasm/codegen/TypeDef.cs
trunk/mcs/ilasm/codegen/TypeManager.cs
Log:
* TypeDef.cs (TypeDef.IComparable): Implement IComparable interface.
* TypeManager.cs (TypeManager.DefineAll): Sort type_table before Define()'ing.
Modified: trunk/mcs/ilasm/codegen/ChangeLog
===================================================================
--- trunk/mcs/ilasm/codegen/ChangeLog 2006-01-16 14:13:37 UTC (rev 55633)
+++ trunk/mcs/ilasm/codegen/ChangeLog 2006-01-16 14:25:20 UTC (rev 55634)
@@ -1,5 +1,10 @@
2006-01-16 Ankit Jain <[EMAIL PROTECTED]>
+ * TypeDef.cs (TypeDef.IComparable): Implement IComparable interface.
+ * TypeManager.cs (TypeManager.DefineAll): Sort type_table before
Define()'ing.
+
+2006-01-16 Ankit Jain <[EMAIL PROTECTED]>
+
* TypeRef.cs (TypeRef.CreateMethodRef): Return a TypeSpecMethodRef if
this is a modified (eg. []) type.
Modified: trunk/mcs/ilasm/codegen/TypeDef.cs
===================================================================
--- trunk/mcs/ilasm/codegen/TypeDef.cs 2006-01-16 14:13:37 UTC (rev 55633)
+++ trunk/mcs/ilasm/codegen/TypeDef.cs 2006-01-16 14:25:20 UTC (rev 55634)
@@ -14,7 +14,7 @@
namespace Mono.ILASM {
- public class TypeDef : ICustomAttrTarget, IDeclSecurityTarget {
+ public class TypeDef : ICustomAttrTarget, IDeclSecurityTarget,
IComparable {
protected class GenericInfo {
public string Id;
@@ -487,6 +487,13 @@
return name_space + "." + name;
}
+
+ public int CompareTo (object obj)
+ {
+ TypeDef type_def = (TypeDef) obj;
+
+ return FullName.CompareTo (type_def.FullName);
+ }
}
}
Modified: trunk/mcs/ilasm/codegen/TypeManager.cs
===================================================================
--- trunk/mcs/ilasm/codegen/TypeManager.cs 2006-01-16 14:13:37 UTC (rev
55633)
+++ trunk/mcs/ilasm/codegen/TypeManager.cs 2006-01-16 14:25:20 UTC (rev
55634)
@@ -48,7 +48,9 @@
public void DefineAll ()
{
- foreach (TypeDef typedef in type_table.Values) {
+ ArrayList type_list = new ArrayList
(type_table.Values);
+ type_list.Sort ();
+ foreach (TypeDef typedef in type_list) {
typedef.Define (code_gen);
}
}
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches