This application is an IL Code analysis tool for looking for orphaned code, types, methods, and fields that are not used.
From the introduction:
Several times throughout my career, I have worked on large software projects that contain dozens of projects in a solution, thousands of classes, and tens of thousands of methods. It is always a chore to keep all this code straight, and eventually after a few years of updates and code changes, some classes and methods become deprecated...unused. But they are still left in the code because no one knows about them.
This is generally considered bad because it clutters your code up, exposes more than you intend to, takes longer to compile, and takes up more memory when the DLL is loaded.
Well, I love writing code analysis tools that help make my job easier and my code better. So naturally, I decided to write a "Not Used Analyzer" tool. This article describes the architecture of this tool, how I accessed and parsed assemblies in order to perform the analysis, and the rules I use in order to determine what is used and not used.