Поиск типов, которые реализуют определенные методы с использованием CQL

Я уточняю встроенный запрос мертвого кода в NDEpend и нахожу много ложных срабатываний от автономных программ (например, w/ Main() точки входа).

Я заметил, что встроенный запрос неиспользуемых типов имеет следующее предложение:

 !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"

вместо? Это то, что я действительно хотел бы выбрать для.

1 ответ

Решение

Да, вы можете дополнить свое правило CQL HasMethodNamed "Main",

Для этого:

  1. Преобразуйте ваше правило CQL в правило CQLinq
  2. добавить предложение CQLinq where && t.Methods.Where(m => m.SimpleName == "Main").Any()
Другие вопросы по тегам