2008-12-04 Jb Evain <jbevain@novell.com>
authorJb Evain <jbevain@gmail.com>
Thu, 4 Dec 2008 14:06:11 +0000 (14:06 -0000)
committerJb Evain <jbevain@gmail.com>
Thu, 4 Dec 2008 14:06:11 +0000 (14:06 -0000)
* mono-api-diff.cs: update mono-api-diff wrt to the format changes.

svn path=/trunk/mcs/; revision=120699

mcs/tools/corcompare/ChangeLog
mcs/tools/corcompare/mono-api-diff.cs

index 59452451cd19de53ffd6bf77242ddbb421a6866d..567d8ec491f68159695c315d9458bb1806147926 100644 (file)
@@ -1,3 +1,7 @@
+2008-12-04  Jb Evain  <jbevain@novell.com>
+
+       * mono-api-diff.cs: update mono-api-diff wrt to the format changes.
+
 2008-11-25  Atsushi Enomoto  <atsushi@ximian.com>
             Jb Evain  <jbevain@novell.com>
 
index b8d0ebc05a2c59def61c1232fb4c08f3727ae494..e86ded435cdea04ed7f68a54aa5ad103c1f4873a 100644 (file)
@@ -623,7 +623,7 @@ namespace Mono.AssemblyCompare
                string layout;
                XMLAttributes attributes;
                XMLInterfaces interfaces;
-               XMLGenericTypeConstraints genericConstraints;
+               XMLGenericParameters genericParameters;
                XMLFields fields;
                XMLConstructors constructors;
                XMLProperties properties;
@@ -677,9 +677,9 @@ namespace Mono.AssemblyCompare
                                child = child.NextSibling;
                        }
 
-                       if (child != null && child.Name == "generic-type-constraints") {
-                               genericConstraints = new XMLGenericTypeConstraints ();
-                               genericConstraints.LoadData (child);
+                       if (child != null && child.Name == "generic-parameters") {
+                               genericParameters = new XMLGenericParameters ();
+                               genericParameters.LoadData (child);
                                child = child.NextSibling;
                        }
 
@@ -777,12 +777,12 @@ namespace Mono.AssemblyCompare
                                counters.AddPartialToPartial (interfaces.Counters);
                        }
 
-                       if (genericConstraints != null || oclass.genericConstraints != null) {
-                               if (genericConstraints == null)
-                                       genericConstraints = new XMLGenericTypeConstraints ();
+                       if (genericParameters != null || oclass.genericParameters != null) {
+                               if (genericParameters == null)
+                                       genericParameters = new XMLGenericParameters ();
 
-                               genericConstraints.CompareTo (doc, parent, oclass.genericConstraints);
-                               counters.AddPartialToPartial (genericConstraints.Counters);
+                               genericParameters.CompareTo (doc, parent, oclass.genericParameters);
+                               counters.AddPartialToPartial (genericParameters.Counters);
                        }
 
                        if (fields != null || oclass.fields != null) {
@@ -1176,44 +1176,39 @@ namespace Mono.AssemblyCompare
                }
        }
 
-       abstract class XMLGenericGroup : XMLNameGroup
+       class XMLGenericParameters : XMLNameGroup
        {
                string attributes;
+               XMLGenericParameterConstraints constraints;
 
-               protected override void LoadExtraData (string name, XmlNode node)
-               {
-                       attributes = ((XmlElement) node).GetAttribute ("generic-attribute");
+               public override string GroupName {
+                       get { return "generic-parameters"; }
                }
 
-               protected override void CompareToInner (string name, XmlNode parent, XMLNameGroup other)
-               {
-                       base.CompareToInner (name, parent, other);
-
-                       XMLGenericGroup g = (XMLGenericGroup) other;
-                       if (attributes != g.attributes)
-                               AddWarning (parent, "Incorrect generic attributes: '{0}' != '{1}'", attributes, g.attributes);
+               public override string Name {
+                       get { return "generic-parameters"; }
                }
-       }
 
-       class XMLGenericTypeConstraints : XMLGenericGroup
-       {
-               public override string GroupName {
-                       get { return "generic-type-constraints"; }
-               }
+               protected override void LoadExtraData (string name, XmlNode node)
+               {
+                       attributes = ((XmlElement) node).GetAttribute ("attributes");
 
-               public override string Name {
-                       get { return "generic-type-constraint"; }
+                       var child = node.FirstChild;
+                       if (child != null && child.Name == "generic-parameter-constraints") {
+                               constraints = new XMLGenericParameterConstraints ();
+                               constraints.LoadData (child);
+                       }
                }
        }
 
-       class XMLGenericMethodConstraints : XMLGenericGroup
+       class XMLGenericParameterConstraints : XMLNameGroup
        {
                public override string GroupName {
-                       get { return "generic-method-constraints"; }
+                       get { return "generic-parameter-constraints"; }
                }
 
                public override string Name {
-                       get { return "generic-method-constraint"; }
+                       get { return "generic-parameter-constraint"; }
                }
        }
 
@@ -1577,7 +1572,7 @@ namespace Mono.AssemblyCompare
        {
                Hashtable returnTypes;
                Hashtable parameters;
-               Hashtable genericConstraints;
+               Hashtable genericParameters;
                Hashtable signatureFlags;
 
                [Flags]
@@ -1623,13 +1618,14 @@ namespace Mono.AssemblyCompare
                                parameters[name] = parms;
                        }
 
-                       XmlNode genericNode = node.SelectSingleNode ("generic-method-constraints");
+                       XmlNode genericNode = node.SelectSingleNode ("generic-parameters");
                        if (genericNode != null) {
-                               if (genericConstraints == null)
-                                       genericConstraints = new Hashtable ();
-                               XMLGenericMethodConstraints csts = new XMLGenericMethodConstraints ();
-                               csts.LoadData (genericNode);
-                               genericConstraints [name] = csts;
+                               if (genericParameters == null)
+                                       genericParameters = new Hashtable ();
+
+                               XMLGenericParameters gparams = new XMLGenericParameters ();
+                               gparams.LoadData (genericNode);
+                               genericParameters [name] = gparams;
                        }
 
                        base.LoadExtraData (name, node);