# t30002 - Package dependency test case ## Config ```yaml compilation_database_dir: .. output_directory: puml diagrams: t30002_package: type: package glob: - ../../tests/t30002/t30002.cc include: namespaces: - clanguml::t30002 exclude: namespaces: - clanguml::t30002::detail using_namespace: - clanguml::t30002 plantuml: before: - "' t30002 test package diagram" ``` ## Source code File t30002.cc ```cpp #include #include #include #include namespace clanguml { namespace t30002 { namespace A::AA { namespace A1 { struct CA { }; } namespace A2 { struct CB { }; } namespace A3 { struct CC { }; } namespace A4 { struct CD { }; } namespace A5 { struct CE { }; } namespace A6 { struct CF { }; } namespace A7 { struct CG { }; } namespace A8 { struct CH { }; } namespace A9 { struct CI { }; } namespace A10 { struct CJ { }; } namespace A11 { struct CK { }; } namespace A12 { struct CL { }; } namespace A13 { struct CM { }; } namespace A14 { struct CN { }; } namespace A15 { struct CO { }; } namespace A16 { struct CP { }; } namespace A17 { struct CR { }; } } namespace B::BB::BBB { class CBA : public A::AA::A6::CF { public: A::AA::A1::CA *ca_; A::AA::A2::CB cb_; std::shared_ptr cc_; std::map> *cd_; std::array co_; static A::AA::A16::CP *cp_; CBA() = default; CBA(A::AA::A14::CN *cn) { } friend A::AA::A17::CR; template CBA(std::tuple &items) { } void ce(const std::vector /*ce_*/) { } std::shared_ptr cg() { return {}; } template void ch(std::map> &ch_) { } template std::map> ci(T * /*t*/) { return {}; } }; void cj(std::unique_ptr /*cj_*/) { } std::unique_ptr ck() { return {}; } template void cl(std::map> & /*ch_*/) { } template std::map> cm() { return {}; } } } // namespace t30002 } // namespace clanguml ``` ## Generated UML diagrams ![t30002_package](./t30002_package.svg "Package dependency test case")