-
-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Whenever i'm using analyze on A.M, i find out it is used by B.M2. If i decompile B.M2 in analyze menu, main view would load B.M2 and put user in the beginning of it. To actually see how A.M is used in B.M2, i have to search for ".M" within B.M2 and then click to find first inclusion (and click further to find others but it's justified)
DNSpy would put user to the first occurence of A.M within B.M2 when decompiling from analyze menu, but it has a drawback: sometimes A.M related logic isn't contained within a single block in B.M2, and in those rare cases you would miss those. While that solution is nice, to mitigate mentioned issue some kind of "scroll through all A.M usages" menu would be nice. In fact, the search modal gives a perfect window to scroll through all occurences, and the quickest solution might be just "when clicking on analyze item, open it in main view, open text search and search for '.M' "

Plaintext search has its issues, for example searching for ".M" would not find constructors. it may be worth looking into upgrading main view search to be able to search not for text tokens but code tokens. example:
code:
A b = new A();
b.Foo();
search token: A.Foo
and it would point at b.Foo(); line
With a search update like that in analyzing it would be trivial to give user all occurences where B.M2 uses A.M