2010-09-15 3 views
2

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

Я заметил, что встроенный в неиспользованном типов запроса имеет этот пункт:

!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. Convert your CQL rule to a CQLinq rule
  2. добавить статью в CQLinqгде&& t.Methods.Where(m => m.SimpleName == "Main").Any()