Commit Graph

5 Commits

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

Т.к. проход теперь не по вектору (он давал экземпляр умного указателя),
а по обычному указателю (собственному прокси, если точнее), то узел
разрушался уже в процессе его отключения от дерева. Добавил удержание
ссылки в сам `unlinkParent()` (ну, нам действительно может быть нужно
только безвозвратное удаление поддерева) и пример в `main.cpp` расширил
и прокомментировал.
2025-10-08 18:51:16 +07:00
Сергей Маринкевич 20a32885ff qosd: в миксины добавлен оператор конвертации в умный указатель
В отличие от метода `getNode()`, оператор конвертации будет публичным.
А ещё он позволяет преобразовывать объект неявно.
2025-10-08 18:51:16 +07:00
Сергей Маринкевич e49c3fd4a1 qosd: трассировка кон-/деструкторов переведена на отдельный логгер
Т.к. в основном меня либо интересует создание/удаление объектов, либо
нет. Смысла объединять это логи с другими логами объектов каждой
подсистемы я не вижу.
2025-10-08 18:51:16 +07:00
grayhook 79c9961388 qosd: добавлены итераторы по узлам 2025-10-08 18:51:16 +07:00
Сергей Маринкевич 5df05f703a qosd: сдавленные наброски по абстрактному дереву 2025-10-08 18:50:57 +07:00