diff --git a/CHANGELOG.md b/CHANGELOG.md index def7ef08..17c8c485 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ # CHANGELOG + * Fixed generation of empty packages in class diagrams (#253) * Added option inline_lambda_messages to omit lambda expressions from sequence diagrams (#261) * Added support for CUDA calls in sequence diagrams (#263) diff --git a/src/class_diagram/generators/plantuml/class_diagram_generator.cc b/src/class_diagram/generators/plantuml/class_diagram_generator.cc index 9ae0cd27..0a5b6fa8 100644 --- a/src/class_diagram/generators/plantuml/class_diagram_generator.cc +++ b/src/class_diagram/generators/plantuml/class_diagram_generator.cc @@ -724,7 +724,10 @@ void generator::generate(const package &p, std::ostream &ostr) const if (dynamic_cast(subpackage.get()) != nullptr) { // TODO: add option - generate_empty_packages const auto &sp = dynamic_cast(*subpackage); - if (!sp.is_empty()) { + if (!sp.is_empty() && + !sp.all_of([this](const common::model::element &e) { + return !model().should_include(e); + })) { together_group_stack_.enter(); generate(sp, ostr);