Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono-tools.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJb Evain <jbevain@gmail.com>2008-12-16 18:59:29 +0300
committerJb Evain <jbevain@gmail.com>2008-12-16 18:59:29 +0300
commita2479fbf36a3574c537848f863486612b144483d (patch)
tree826477eba32fdebd50407462f88738b5916efe3a /gui-compare
parentaaa08271e62440b00af0c79701756ad93896d8a2 (diff)
revert 118845:118848
svn path=/trunk/mono-tools/; revision=121608
Diffstat (limited to 'gui-compare')
-rw-r--r--gui-compare/CecilMetadata.cs39
-rw-r--r--gui-compare/ChangeLog11
2 files changed, 6 insertions, 44 deletions
diff --git a/gui-compare/CecilMetadata.cs b/gui-compare/CecilMetadata.cs
index fca8d28d..85215db4 100644
--- a/gui-compare/CecilMetadata.cs
+++ b/gui-compare/CecilMetadata.cs
@@ -107,15 +107,6 @@ namespace GuiCompare {
.Replace ('<', '[')
.Replace ('>', ']');
}
-
- static bool IsExplicitInterfaceImplementation (MethodDefinition md)
- {
- OverrideCollection overrides = md.Overrides;
- if (overrides == null || overrides.Count == 0)
- return false;
-
- return true;
- }
public static void PopulateMemberLists (TypeDefinition fromDef,
List<CompNamed> interface_list,
@@ -132,14 +123,6 @@ namespace GuiCompare {
continue;
interface_list.Add (new CecilInterface (ifc));
}
-
- // Walk the parent hierarchy, we need to gather all the inherited
- // interfaces as well to avoid false positives in comparison
- TypeReference base_type = fromDef.BaseType;
- if (base_type != null) {
- TypeDefinition base_type_def = CecilUtils.Resolver.Resolve (base_type);
- PopulateMemberLists (base_type_def, interface_list, null, null, null, null, null);
- }
}
if (constructor_list != null) {
@@ -152,33 +135,23 @@ namespace GuiCompare {
if (method_list != null) {
foreach (MethodDefinition md in fromDef.Methods) {
if (md.IsSpecialName) {
- if (!md.Name.StartsWith("op_") && !IsExplicitInterfaceImplementation (md))
- continue;
- } else {
- if (md.IsAssembly)
- continue;
-
- if (md.IsPrivate && !IsExplicitInterfaceImplementation (md))
+ if (!md.Name.StartsWith("op_"))
continue;
}
-
+ if (md.IsPrivate || md.IsAssembly)
+ continue;
+
method_list.Add (new CecilMethod (md));
}
}
if (property_list != null) {
- MethodDefinition getMethod, setMethod;
foreach (PropertyDefinition pd in fromDef.Properties) {
bool include_set = true;
bool include_get = true;
-
- setMethod = pd.SetMethod;
- if (setMethod == null || (setMethod.IsPrivate || setMethod.IsAssembly))
+ if (pd.SetMethod == null || (pd.SetMethod.IsPrivate || pd.SetMethod.IsAssembly))
include_set = false;
-
- getMethod = pd.GetMethod;
- if (getMethod == null || (getMethod.IsPrivate || getMethod.IsAssembly))
+ if (pd.GetMethod == null || (pd.GetMethod.IsPrivate || pd.GetMethod.IsAssembly))
include_get = false;
-
if (include_set || include_get)
property_list.Add (new CecilProperty (pd));
}
diff --git a/gui-compare/ChangeLog b/gui-compare/ChangeLog
index 140fc7e8..0a41a415 100644
--- a/gui-compare/ChangeLog
+++ b/gui-compare/ChangeLog
@@ -48,17 +48,6 @@
changes, which add a generic-parameters group to every generic method
or type, and which can have a generic-parameter-constraints subgroup.
-2008-11-14 Marek Habersack <mhabersack@novell.com>
-
- * CecilMetadata.cs: when populating interface lists, gather
- interfaces from parent classes to avoid false negatives when
- comparing.
- When populating member lists, check if a method is an explicit
- interface implementation and, if yes, include it in the list to
- avoid false negatives.
- Check if methods with special names are explicit interface
- implementations and, if yes, include them in comparison.
-
2008-08-15 Chris Toshok <toshok@ximian.com>
* MasterMetadata.cs (MasterUtils.ShouldSkipAttribute): we can't