Cyclomatic сложность - Delphi API - PullRequest
1 голос
/ 17 декабря 2010

Я ищу Api Cyclomatic Complexity в Delphi (2010).Мне нужно создать программу, которая будет анализировать исходный код и сообщать о цикломатической сложности всех методов во всех классах (как это делает SourceMonitor).
Я не могу использовать другие программы, мне действительно нужно создать одну.
Кто-нибудь знает API для Delphi 2010, который это делает?

1 Ответ

3 голосов
/ 17 декабря 2010

Вам понадобится синтаксический анализатор языка, из которого вы сможете сгенерировать граф потока управления.Затем вам нужно вычислить CC, используя эту формулу.

Я не знаю ни одной библиотеки, которая бы сделала это за вас.

Возможно, вы сможете использовать бесплатный паскаль источник для генерации графа потока управления (это распространенный метод, используемый в компиляторах для устранения недоступного кода).

К сожалению, Delphi не поставляется с полным формальным определением (грамматика bnf)язык в его документации, начиная с Delphi 6, я считаю.(даже тогда это было не совсем точно) Так что все сторонние парсеры стреляют в темноте.

...