Commit Graph

5 Commits

Author SHA1 Message Date
Сергей Маринкевич 4846a7fa53 qosd: обезопашен обход дерева с модификацией
Примеров итератора с доступом на чтение я много оставил, а пример
модификации дерева только один. И тот я сразу забыл перевести на
итераторы (range-based for loop).

Т.к. проход теперь не по вектору (он давал экземпляр умного указателя),
а по обычному указателю (собственному прокси, если точнее), то узел
разрушался уже в процессе его отключения от дерева. Добавил удержание
ссылки в сам `unlinkParent()` (ну, нам действительно может быть нужно
только безвозвратное удаление поддерева) и пример в `main.cpp` расширил
и прокомментировал.
2025-10-08 19:18:38 +07:00
Сергей Маринкевич b7b5a18776 qosd: в миксины добавлен оператор конвертации в умный указатель
В отличие от метода `getNode()`, оператор конвертации будет публичным.
А ещё он позволяет преобразовывать объект неявно.
2025-10-08 19:18:38 +07:00
Сергей Маринкевич 1064c6e6d4 qosd: трассировка кон-/деструкторов переведена на отдельный логгер
Т.к. в основном меня либо интересует создание/удаление объектов, либо
нет. Смысла объединять это логи с другими логами объектов каждой
подсистемы я не вижу.
2025-10-08 19:18:38 +07:00
grayhook 28dd2c5afa qosd: добавлены итераторы по узлам 2025-10-08 19:18:38 +07:00
Сергей Маринкевич 6a54024223 qosd: сдавленные наброски по абстрактному дереву 2025-10-08 19:18:36 +07:00