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.2.tar.gz
(82.4 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.2-py3-none-any.whl
(107.0 kB
view details)
File details
Details for the file xlizard-1.1.2.tar.gz.
File metadata
- Download URL: xlizard-1.1.2.tar.gz
- Upload date:
- Size: 82.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7277fb522af9995c094b19412f50da3b2569a5df348f8770698f39e8930f87bb
|
|
| MD5 |
d2c13bf29bb287b126582745ce3d9c5a
|
|
| BLAKE2b-256 |
f3d52c14ddcf20ab07e324fef64e8aebf19891abf3631cb46740024b9ade4b7d
|
File details
Details for the file xlizard-1.1.2-py3-none-any.whl.
File metadata
- Download URL: xlizard-1.1.2-py3-none-any.whl
- Upload date:
- Size: 107.0 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 |
248b0fb279c040f382e822120ad91ff9b6ff71d2c7a376c6c96dce0d1b7a5d59
|
|
| MD5 |
6a0026a953ae9546d6d5dd20acfbe8a4
|
|
| BLAKE2b-256 |
21d7f6b281dbd4ca8f179c8d0da3c8a9b7ab4ef6a402029694b3ba013a1f891c
|