【发布时间】:2011-09-24 05:14:09
【问题描述】:
我有两个公共方法 A 和 B。我修改了 CQL 以向我展示公共的和死的方法。
如果 B 只被 A 调用,而 A 作为死方法(在应用程序的任何地方都没有被调用或引用),NDepend 是否可以通过一些设置或通过 CQL 将这两种方法都显示为死方法?
在当前情况下,我只得到 A 作为死方法而不是 B。
【问题讨论】:
我有两个公共方法 A 和 B。我修改了 CQL 以向我展示公共的和死的方法。
如果 B 只被 A 调用,而 A 作为死方法(在应用程序的任何地方都没有被调用或引用),NDepend 是否可以通过一些设置或通过 CQL 将这两种方法都显示为死方法?
在当前情况下,我只得到 A 作为死方法而不是 B。
【问题讨论】:
NDepend 能否通过一些设置或通过 CQL 将这两种方法都显示为已死?
是的,NDepend 可以做到这一点,这要归功于 Code Rule over LINQ Query (CQLinq) 的功能。
提出了大约200 default code rules,其中3个专门用于未使用/死代码检测:
如果你点击上面这3个链接看这些规则的源代码,你会发现关于类型和方法的部分有点复杂。这是因为这些规则不仅检测未使用的类型和方法,还检测仅未使用的死类型和方法(递归,您所要求的)使用的类型和方法。
【讨论】: