Files
clang-uml/docs/test_cases/t30006.md
2024-06-17 22:02:29 +02:00

121 lines
2.4 KiB
Markdown

# t30006 - Package split namespace test case
## Config
```yaml
diagrams:
t30006_package:
type: package
glob:
- t30006.cc
include:
namespaces:
- clanguml::t30006
using_namespace: clanguml::t30006
plantuml:
before:
- "' t30006 test package diagram"
```
## Source code
File `tests/t30006/t30006.cc`
```cpp
namespace clanguml {
namespace t30006 {
namespace B {
struct BB { };
}
/// \uml{note[top] Top A note.}
namespace A {
struct A1 {
B::BB *b;
};
}
namespace C {
struct CC { };
}
/// \uml{note[bottom] Bottom A note.}
namespace A {
struct A2 {
C::CC *c;
};
}
}
}
```
## Generated PlantUML diagrams
![t30006_package](./t30006_package.svg "Package split namespace test case")
## Generated Mermaid diagrams
![t30006_package](./t30006_package_mermaid.svg "Package split namespace test case")
## Generated JSON models
```json
{
"diagram_type": "package",
"elements": [
{
"display_name": "B",
"id": "13272721377695553156",
"is_deprecated": false,
"name": "B",
"namespace": "clanguml::t30006",
"source_location": {
"column": 11,
"file": "t30006.cc",
"line": 4,
"translation_unit": "t30006.cc"
},
"type": "namespace"
},
{
"comment": {
"formatted": "\\uml{note[top] Top A note.}",
"raw": "/// \\uml{note[top] Top A note.}"
},
"display_name": "A",
"id": "11999355388220637599",
"is_deprecated": false,
"name": "A",
"namespace": "clanguml::t30006",
"source_location": {
"column": 11,
"file": "t30006.cc",
"line": 9,
"translation_unit": "t30006.cc"
},
"type": "namespace"
},
{
"display_name": "C",
"id": "11044539711888922958",
"is_deprecated": false,
"name": "C",
"namespace": "clanguml::t30006",
"source_location": {
"column": 11,
"file": "t30006.cc",
"line": 15,
"translation_unit": "t30006.cc"
},
"type": "namespace"
}
],
"name": "t30006_package",
"package_type": "namespace",
"relationships": [
{
"destination": "13272721377695553156",
"source": "11999355388220637599",
"type": "dependency"
},
{
"destination": "11044539711888922958",
"source": "11999355388220637599",
"type": "dependency"
}
],
"using_namespace": "clanguml::t30006"
}
```