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

85 lines
1.6 KiB
Markdown

# t00061 - Paths diagram filter test case
## Config
```yaml
diagrams:
t00061_class:
type: class
glob:
- t00061.cc
include:
namespaces:
- clanguml::t00061
paths:
- include/*_a.h
using_namespace: clanguml::t00061
```
## Source code
File `tests/t00061/t00061.cc`
```cpp
#include "include/t00061_a.h"
#include "include/t00061_b.h"
namespace clanguml {
namespace t00061 {
struct C {
A *a;
B *b;
};
}
}
```
File `tests/t00061/include/t00061_a.h`
```cpp
namespace clanguml {
namespace t00061 {
struct A { };
}
}
```
File `tests/t00061/include/t00061_b.h`
```cpp
namespace clanguml {
namespace t00061 {
struct B { };
}
}
```
## Generated PlantUML diagrams
![t00061_class](./t00061_class.svg "Paths diagram filter test case")
## Generated Mermaid diagrams
![t00061_class](./t00061_class_mermaid.svg "Paths diagram filter test case")
## Generated JSON models
```json
{
"diagram_type": "class",
"elements": [
{
"bases": [],
"display_name": "A",
"id": "8081637823658635385",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
"is_template": false,
"is_union": false,
"members": [],
"methods": [],
"name": "A",
"namespace": "clanguml::t00061",
"source_location": {
"column": 8,
"file": "include/t00061_a.h",
"line": 3,
"translation_unit": "t00061.cc"
},
"template_parameters": [],
"type": "class"
}
],
"name": "t00061_class",
"package_type": "namespace",
"relationships": [],
"using_namespace": "clanguml::t00061"
}
```