Files
netrunner-proxy/tools/README.MD
T
2026-06-30 18:51:09 +07:00

29 lines
1.7 KiB
Markdown

# `tools` — вспомогательные крейты
Утилиты, общие для проекта.
## `log` — `netrunner-logger`
Единый логгер и реестр ошибок для всех крейтов. Обёртка над
`tracing`/`tracing-subscriber`.
| Файл | Что внутри |
|------------------|-----------------------------------------------------------------|
| `src/lib.rs` | Глобальный `Logger` (один на процесс), два режима, PII-слой. |
| `src/error.rs` | `AppError` + реестр кодов `ERR_*` (стабильные идентификаторы). |
- **Режимы:** production (JSON в файл с суточной ротацией + перехват паник) и
debug (цветная консоль; на Android — `tracing_android`).
- **Уровень** меняется на лету (`Logger::set_level`).
- Макросы `info!`/`error!`/… ре-экспортируются, чтобы во всех крейтах писать
`netrunner_logger::info!` без прямой зависимости на `tracing`.
## `bindgen` — генератор FFI-биндингов
Однострочная обёртка вокруг `uniffi_bindgen`: по `.udl`-описанию клиента
(`client/src/netrunner_client.udl`) генерирует Kotlin/Swift-обёртки для вызова
нативных функций из мобильного приложения. Запускается из `Makefile`
(цель `build-android`).
> Детали — в rustdoc соответствующих крейтов.