# t00017 - Test include relations also as members flag ## Config ```yaml compilation_database_dir: .. output_directory: puml diagrams: t00017_class: type: class include_relations_also_as_members: false glob: - ../../tests/t00017/t00017.cc using_namespace: - clanguml::t00017 include: namespaces: - clanguml::t00017 ``` ## Source code File t00017.cc ```cpp #include namespace clanguml { namespace t00017 { class A { }; class B { }; class C { }; class D { }; class E { }; class F { }; class G { }; class H { }; class I { }; class J { }; class K { }; class R { explicit R(int &some_int, C &cc, const E &ee, F &&ff, I *&ii) : some_int_reference{some_int} , c{cc} , e{ee} , f{std::move(ff)} , i{ii} { } private: int some_int; int *some_int_pointer; int **some_int_pointer_pointer; int &some_int_reference; A a; B *b; C &c; const D *d; const E &e; F &&f; G **g; H ***h; I *&i; volatile J *j; mutable K *k; }; } // namespace t00017 } // namespace clanguml ``` ## Generated UML diagrams ![t00017_class](./t00017_class.svg "Test include relations also as members flag") ## Generated JSON models ```json { "diagram_type": "class", "elements": [ { "bases": [], "display_name": "clanguml::t00017::A", "id": "121332093434690887", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "A", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 5, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::B", "id": "1424864837456200487", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "B", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 7, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::C", "id": "2151170391844743478", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "C", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 9, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::D", "id": "1378112127131766972", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "D", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 11, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::E", "id": "1535300935831802489", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "E", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 13, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::F", "id": "1803800465279710134", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "F", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 15, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::G", "id": "1135797791892670246", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "G", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 17, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::H", "id": "1243547836571712317", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "H", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 19, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::I", "id": "387733199705628658", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "I", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 21, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::J", "id": "747991828672433537", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "J", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 23, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::K", "id": "1783571342994833467", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "K", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 25, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00017::R", "id": "287495916564113342", "is_abstract": false, "is_nested": false, "is_struct": false, "is_template": false, "is_union": false, "members": [ { "access": "private", "is_static": false, "name": "some_int", "source_location": { "column": 9, "file": "../../tests/t00017/t00017.cc", "line": 38, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "int" }, { "access": "private", "is_static": false, "name": "some_int_pointer", "source_location": { "column": 10, "file": "../../tests/t00017/t00017.cc", "line": 39, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "int *" }, { "access": "private", "is_static": false, "name": "some_int_pointer_pointer", "source_location": { "column": 11, "file": "../../tests/t00017/t00017.cc", "line": 40, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "int **" }, { "access": "private", "is_static": false, "name": "some_int_reference", "source_location": { "column": 10, "file": "../../tests/t00017/t00017.cc", "line": 41, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "int &" }, { "access": "private", "is_static": false, "name": "a", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 42, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "clanguml::t00017::A" }, { "access": "private", "is_static": false, "name": "b", "source_location": { "column": 8, "file": "../../tests/t00017/t00017.cc", "line": 43, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "clanguml::t00017::B *" }, { "access": "private", "is_static": false, "name": "c", "source_location": { "column": 8, "file": "../../tests/t00017/t00017.cc", "line": 44, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "clanguml::t00017::C &" }, { "access": "private", "is_static": false, "name": "d", "source_location": { "column": 14, "file": "../../tests/t00017/t00017.cc", "line": 45, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "const clanguml::t00017::D *" }, { "access": "private", "is_static": false, "name": "e", "source_location": { "column": 14, "file": "../../tests/t00017/t00017.cc", "line": 46, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "const clanguml::t00017::E &" }, { "access": "private", "is_static": false, "name": "f", "source_location": { "column": 9, "file": "../../tests/t00017/t00017.cc", "line": 47, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "clanguml::t00017::F &&" }, { "access": "private", "is_static": false, "name": "g", "source_location": { "column": 9, "file": "../../tests/t00017/t00017.cc", "line": 48, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "clanguml::t00017::G **" }, { "access": "private", "is_static": false, "name": "h", "source_location": { "column": 10, "file": "../../tests/t00017/t00017.cc", "line": 49, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "clanguml::t00017::H ***" }, { "access": "private", "is_static": false, "name": "i", "source_location": { "column": 9, "file": "../../tests/t00017/t00017.cc", "line": 50, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "clanguml::t00017::I *&" }, { "access": "private", "is_static": false, "name": "j", "source_location": { "column": 17, "file": "../../tests/t00017/t00017.cc", "line": 51, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "volatile clanguml::t00017::J *" }, { "access": "private", "is_static": false, "name": "k", "source_location": { "column": 16, "file": "../../tests/t00017/t00017.cc", "line": 52, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "clanguml::t00017::K *" } ], "methods": [ { "access": "private", "is_const": false, "is_consteval": false, "is_constexpr": false, "is_constructor": true, "is_copy_assignment": false, "is_defaulted": false, "is_deleted": false, "is_move_assignment": false, "is_noexcept": false, "is_operator": false, "is_pure_virtual": false, "is_static": false, "is_virtual": false, "name": "R", "parameters": [ { "name": "some_int", "type": "int &" }, { "name": "cc", "type": "clanguml::t00017::C &" }, { "name": "ee", "type": "const clanguml::t00017::E &" }, { "name": "ff", "type": "clanguml::t00017::F &&" }, { "name": "ii", "type": "clanguml::t00017::I *&" } ], "source_location": { "column": 14, "file": "../../tests/t00017/t00017.cc", "line": 28, "translation_unit": "../../tests/t00017/t00017.cc" }, "type": "void" } ], "name": "R", "namespace": "clanguml::t00017", "source_location": { "column": 7, "file": "../../tests/t00017/t00017.cc", "line": 27, "translation_unit": "../../tests/t00017/t00017.cc" }, "template_parameters": [], "type": "class" } ], "metadata": { "clang_uml_version": "0.3.7-47-g2104d93", "llvm_version": "Ubuntu clang version 15.0.6", "schema_version": 1 }, "name": "t00017_class", "relationships": [ { "access": "public", "destination": "2151170391844743478", "source": "287495916564113342", "type": "dependency" }, { "access": "public", "destination": "1535300935831802489", "source": "287495916564113342", "type": "dependency" }, { "access": "public", "destination": "1803800465279710134", "source": "287495916564113342", "type": "dependency" }, { "access": "public", "destination": "387733199705628658", "source": "287495916564113342", "type": "dependency" }, { "access": "private", "destination": "121332093434690887", "label": "a", "source": "287495916564113342", "type": "aggregation" }, { "access": "private", "destination": "1424864837456200487", "label": "b", "source": "287495916564113342", "type": "association" }, { "access": "private", "destination": "2151170391844743478", "label": "c", "source": "287495916564113342", "type": "association" }, { "access": "private", "destination": "1378112127131766972", "label": "d", "source": "287495916564113342", "type": "association" }, { "access": "private", "destination": "1535300935831802489", "label": "e", "source": "287495916564113342", "type": "association" }, { "access": "private", "destination": "1803800465279710134", "label": "f", "source": "287495916564113342", "type": "aggregation" }, { "access": "private", "destination": "1135797791892670246", "label": "g", "source": "287495916564113342", "type": "association" }, { "access": "private", "destination": "1243547836571712317", "label": "h", "source": "287495916564113342", "type": "association" }, { "access": "private", "destination": "387733199705628658", "label": "i", "source": "287495916564113342", "type": "association" }, { "access": "private", "destination": "747991828672433537", "label": "j", "source": "287495916564113342", "type": "association" }, { "access": "private", "destination": "1783571342994833467", "label": "k", "source": "287495916564113342", "type": "association" } ], "using_namespace": "clanguml::t00017" } ```