|
|
|
@ -48,6 +48,8 @@ namespace ICSharpCode.ILSpy.Analyzers.TreeNodes
@@ -48,6 +48,8 @@ namespace ICSharpCode.ILSpy.Analyzers.TreeNodes
|
|
|
|
|
this.Children.Add(new AnalyzedAccessorTreeNode(analyzedEvent.AddAccessor, "add")); |
|
|
|
|
if (analyzedEvent.CanRemove) |
|
|
|
|
this.Children.Add(new AnalyzedAccessorTreeNode(analyzedEvent.RemoveAccessor, "remove")); |
|
|
|
|
if (TryFindBackingField(analyzedEvent, out var backingField)) |
|
|
|
|
this.Children.Add(new AnalyzedFieldTreeNode(backingField)); |
|
|
|
|
|
|
|
|
|
//foreach (var accessor in analyzedEvent.OtherMethods)
|
|
|
|
|
// this.Children.Add(new AnalyzedAccessorTreeNode(accessor, null));
|
|
|
|
@ -59,5 +61,17 @@ namespace ICSharpCode.ILSpy.Analyzers.TreeNodes
@@ -59,5 +61,17 @@ namespace ICSharpCode.ILSpy.Analyzers.TreeNodes
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
bool TryFindBackingField(IEvent analyzedEvent, out IField backingField) |
|
|
|
|
{ |
|
|
|
|
backingField = null; |
|
|
|
|
foreach (var field in analyzedEvent.DeclaringTypeDefinition.GetFields(options: GetMemberOptions.IgnoreInheritedMembers)) { |
|
|
|
|
if (field.Name == analyzedEvent.Name && field.Accessibility == Accessibility.Private) { |
|
|
|
|
backingField = field; |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|