CQL 可以很容易地找到CodeWasChanged的方法,但我还需要比较指标——我想找到修改后的代码,看看它是否有所改进。
我正在评估混合代码库的ndepend和cppdepend。两者都给我留下了深刻的印象,尤其是 cppdepend 似乎可以很好地应对我们的传统和现代 c++。
如果我能弄清楚如何做到这一点,那么我可以在 CQL 中做我需要的一切,但除此之外必须做一些事情,比如在外部合并报告。因此,我很欣赏有关自动化和比较 CQL 报告生成作为后备的提示。显然我会更乐意在 VisualCppDepend 或 VisualNDepend 中使用 CQL,这样我就可以在度量视图中看到查询的结果。与其他工具相比,对结果的实时探索是这些工具的大事。
CodeWasChanged 和IsInOlderBuild等其他子句的评论说强制 CQL 针对旧版本运行,这表明您不能跨修订进行查询。
我想要的查询类型类似于想象语法:
SELECT METHODS WHERE CodeWasChanged and MethodCe > 10
泛化为跨版本工作
SELECT METHODS WHERE CodeWasChanged and MethodCe > 10 and BaseMethodCe < 10
或许
SELECT METHODS WHERE CodeWasChanged and MethodCe > 10 and Older(MethodCe < 10)