#pragma once #include "nodes/BaseNode.h" #include "mixins/LazyLinkMixin.h" #include "mixins/FabricMixin.h" #include "links/LeafLink.h" #include "Logger.h" /// \brief Класс простого (листового) узла дерева. /// Может содержать только одного дочернего ComplexNode. class LeafNode : public BaseNode, virtual public LazyLinkMixin>, public FabricMixin { public: ~LeafNode() { Logger::get("ConDes").dbg(std::string("--- Leaf destructor called for: ") + name_); } private: friend class FabricMixin; LeafNode(std::string name) : BaseNode(std::move(name)) { Logger::get("ConDes").dbg(std::string("--- Leaf constructor called for: ") + name_); } };