Files
clang-uml/docs/test_cases/t00036.md
2023-03-05 11:41:16 +01:00

925 B

t00036 - Class diagram with namespaces generated as packages

Config

compilation_database_dir: ..
output_directory: puml
diagrams:
  t00036_class:
    type: class
    generate_packages: true
    glob:
      - ../../tests/t00036/t00036.cc
    using_namespace:
      - clanguml::t00036
    include:
      namespaces:
        - clanguml::t00036

Source code

File t00036.cc

namespace clanguml {
namespace t00036 {

namespace ns1 {

enum class E { blue, yellow };

namespace ns11 {

template <typename T> struct A {
    T a;
};

namespace ns111 {

struct B {
    A<int> a_int;
};

}
} // namespace ns11
} // namespace ns1

namespace ns2 {
namespace ns22 {

// TODO: Fix for incomplete struct C declaration "struct C;"
struct C { };

}
}

} // namespace t00036
} // namespace clanguml

Generated UML diagrams

t00036_class