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.3.tar.gz
(82.5 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.3-py3-none-any.whl
(106.9 kB
view details)
File details
Details for the file xlizard-1.1.3.tar.gz.
File metadata
- Download URL: xlizard-1.1.3.tar.gz
- Upload date:
- Size: 82.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a4728cdd6d88b73d1df10c5f629f3d92e4bc4143786f538d7fc68ee96b61a77
|
|
| MD5 |
9efe282dc3cfae4899270609be65d952
|
|
| BLAKE2b-256 |
867eda1b1feafbbdc5910796df5852af866638de96b600ed1c59ff94d5d2032f
|
File details
Details for the file xlizard-1.1.3-py3-none-any.whl.
File metadata
- Download URL: xlizard-1.1.3-py3-none-any.whl
- Upload date:
- Size: 106.9 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 |
01c00734fe2b11761c9077c0f4505a5d8564f4ff01c89d557bbed7111f78f1cf
|
|
| MD5 |
c131a11a008ab39b4b3d5ec8292eb68a
|
|
| BLAKE2b-256 |
26b73af072acce894e9ea505485b16ec3ce7fa8a13528c4c84970d381c1c0fbf
|