# t00045 - Test case for root namespace handling ## Config ```yaml compilation_database_dir: .. output_directory: puml diagrams: t00045_class: type: class glob: - ../../tests/t00045/t00045.cc exclude: namespaces: - std ``` ## Source code File t00045.cc ```cpp class A { }; class AA { }; class AAA { }; template class AAAA { T t; }; namespace ns1 { class A { }; namespace ns2 { class A { }; class B : public A { }; class C : public ns1::A { }; class D : public ns1::ns2::A { }; class E : public ::A { }; class AAA { }; class R { public: A *a; ns1::A *ns1_a; ns1::ns2::A *ns1_ns2_a; ::A *root_a; friend ::AAA; // TODO: // template friend class ::AAAA; void foo(::AA &aa) { (void)aa; } }; } // namespace ns2 } // namespace ns1 ``` ## Generated UML diagrams ![t00045_class](./t00045_class.svg "Test case for root namespace handling")