Skip to content

Add Referenced By and Dependent Code analysis for assemblies - #4209

Open
pieroviano wants to merge 1 commit into
icsharpcode:masterfrom
pieroviano:nav-referenced-by-dependent-code
Open

pieroviano wants to merge 1 commit into
icsharpcode:masterfrom
pieroviano:nav-referenced-by-dependent-code

Conversation

@pieroviano

Copy link
Copy Markdown

Shows which loaded assemblies reference a given assembly, and which of their members actually use it:

  • Each assembly node in the tree gets a Referenced By folder listing the loaded assemblies that reference it (version mismatches are marked).
  • Analyze now works on an assembly node. It adds the whole module to the Analyzer pane with two analyzers: Referenced By and Dependent Code. Dependent Code covers signatures, base types, constraints, method bodies and custom attributes, including attributes on parameters and types named in attribute arguments.
  • Assembly and assembly-reference nodes get Referenced By / Dependent Code context-menu entries. They are disabled when the reference does not resolve to a loaded assembly.
  • Assembly identity matching uses name, culture and public key token, but ignores version.

Try it: right-click an assembly > Dependent Code, or expand its Referenced By folder.

Split out of #4199 (one feature per PR, as requested there).

Screenshots

2-referenced-by-dependent-code

Shows which loaded assemblies reference a given assembly and which of
their members actually use it, so the impact of changing or removing an
assembly can be judged without decompiling every consumer by hand.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant