Поиск типов, которые реализуют определенные методы с использованием CQL
Вопрос
Я переработаю встроенный запрос Dead Code в NDEPend, и я нахожу много ложных срабатываний от автономных программ (т.е. ж / главных () въездных точек).
Я заметил, что встроенный запрос неиспользованных типов имеет этот пункт:
!NameIs "Program" AND // Generally, types named Program
// contain a Main() entry-point
// method and this condition avoid
// to consider such type as
// unused code.
Нельзя ли написать что-то вроде
HasMethodNamed "Main"
вместо? Это то, что мне очень хотелось бы выбрать.
Решение
Да, вы можете завершить правило CQL с помощью HasMethodNamed "Main"
.
Для этого:
- Преобразовать правило CQL в правило CQLinq
- добавить Cqlinq. куда пункт
&& t.Methods.Where(m => m.SimpleName == "Main").Any()
Не связан с StackOverflow