-
-
Notifications
You must be signed in to change notification settings - Fork 454
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added Subtype Analyzer #306
Added Subtype Analyzer #306
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some minor code style issues and a few edge cases to handle in the checks!
I also think hat calling the node Subtypes
would be better than calling it Subtyped By
which in my opinion sounds a bit weird. Let me know what you think of this!
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
4b116c6
to
0f36890
Compare
All changes made. Let me know if you want the class renamed from SubtypedBy in addition to just the language string.
I think I styled it after this so depending on how much consistency you want you may want to update: https://github.com/dnSpyEx/dnSpy/blob/feature/new-ilspy/Extensions/dnSpy.Analyzer/TreeNodes/InterfaceEventImplementedByNode.cs#L82 |
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/Properties/dnSpy.Analyzer.Resources.resx
Outdated
Show resolved
Hide resolved
Extensions/dnSpy.Analyzer/TreeNodes/ClassInterfaceSubtypedByNode.cs
Outdated
Show resolved
Hide resolved
Some of the analyzer code is very old and based on old ILSpy analyzer source code. It hasn't been touched for years and could use some modernization but I'm not touching it for now since it's not really causing any problems yet. |
0f36890
to
9056842
Compare
all set |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One last issue regarding naming. Otherwise LGTM!
Extensions/dnSpy.Analyzer/Properties/dnSpy.Analyzer.Resources.resx
Outdated
Show resolved
Hide resolved
Find classes/interfaces that directly subtype the analyzed class
9056842
to
31c9da4
Compare
I am happy you are willing to own your share of the blame on this miscommunication. You with your clear directions and me with my inability to read id say pretty 50/50. |
Find classes/interfaces that directly subtype the analyzed class/interface.
Technically I generally only use the new-ilspy branch for non-debugging but this applied fine to master as well so submitting here.
I felt directly subtyping was the best way to go rather than any that implement/subtype felt natural with the normal behavior of the analyze panel and avoids too many downstream results for popular classes/interfaces.
Not sure if the copyright header is correct.