Extended Lizard with additional static code analysis features
Project description
xLizard - Extended Cyclomatic Complexity Analyzer
xLizard - расширенный анализатор цикломатической сложности для языков программирования C/C++ с интеграцией метрик SourceMonitor и продвинутой визуализацией в HTML-отчетах.
🔒 Безопасность и Конфиденциальность
ВАЖНО: ВСЕ АНАЛИЗЫ ВЫПОЛНЯЮТСЯ ЛОКАЛЬНО
- ✅ Локальный анализ: Весь процесс анализа происходит исключительно на вашем компьютере
- ✅ Нет передачи данных: Исходные коды никогда не покидают вашу систему
- ✅ Без сетевых запросов: Генерация отчетов не требует интернет-соединения
- ✅ Идеально для конфиденциальных проектов: Полная защита интеллектуальной собственности
📊 Поддерживаемые Метрики
Базовые метрики (Lizard)
- Цикломатическая сложность (CCN): Оценка сложности управляющего графа функции
- Количество строк кода (NLOC): Непустые строки без комментариев
- Количество токенов: Общее количество лексических единиц
- Количество параметров: Параметры функции
- Глубина вложенности: Максимальный уровень вложенности блоков
Расширенные метрики (SourceMonitor)
- Процент комментариев: Отношение комментариев к общему коду (%)
- Максимальная глубина блоков: Глубина вложенности структур управления
- Операции с указателями: Количество операций * и &
- Препроцессорные директивы: Количество директив #define, #include и др.
🚀 Быстрый Старт
Установка
Установка из pip
pip install xlizard
Или установка из исходного кода
git clone <repository-url>
cd xlizard
pip install -e .
📈 Генерация Отчетов
HTML отчет с графиками
xlizard --html -o report.html .
Возможности HTML отчета:
📊 Интерактивные диаграммы: Распределение сложности, метрик, комментариев
📈 Heatmap сложности: Визуализация сложности по директориям
🔍 Поиск и фильтрация: Поиск по функциям и файлам
🎯 Топ-5 анализа: Самые сложные функции, файлы с наименьшим количеством комментариев
📋 Сравнение метрик: Сравнение с пороговыми значениями
🎨 Темы: Темная/светлая тема переключения
📱 Адаптивный дизайн: Оптимизация для desktop и mobile
XML отчет для CI систем
xlizard --xml -o report.xml .
⚙️ Конфигурация и Настройка
Исключение файлов и директорий
Исключение по шаблону
xlizard -x "*/test/*" -x "*.bak" -x "*/build/*" .
Автоматически исключаемые директории:
.git, venv, __pycache__, include, build, dist
Многопоточный анализ
Использование 4 потоков
xlizard -t 4 large_project/
Использование всех доступных ядер
xlizard -t 0 large_project/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
xlizard-1.1.6.tar.gz
(95.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
xlizard-1.1.6-py3-none-any.whl
(119.8 kB
view details)
File details
Details for the file xlizard-1.1.6.tar.gz.
File metadata
- Download URL: xlizard-1.1.6.tar.gz
- Upload date:
- Size: 95.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c2afa0d0e1a7a2aae0bdf2474de3b4652599967760e2728ecb6d8715a668bf1
|
|
| MD5 |
2c66e34ec0dcb23f6e7885d61fa66793
|
|
| BLAKE2b-256 |
a8c66ec0666d12ef697722573ced831f744975840618142d53195794d44658d4
|
File details
Details for the file xlizard-1.1.6-py3-none-any.whl.
File metadata
- Download URL: xlizard-1.1.6-py3-none-any.whl
- Upload date:
- Size: 119.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88b502c1038ff0716d74526de6d66be1f9e99712ba784c891f086022b8930b86
|
|
| MD5 |
127142c8bdac6df8fd0b01c801915f77
|
|
| BLAKE2b-256 |
e48c2c93d3d57696b3d886486dc7306ed579dba3700ea338cbc592e63df6c714
|