Compare commits

..

1 Commits

Author SHA1 Message Date
Bartek Kryza
db857d2913 WIP 2023-12-23 16:55:29 +01:00
985 changed files with 69095 additions and 81027 deletions

View File

@@ -6,4 +6,5 @@
+ src/**/*.h
+ tests/**/*.cc
+ tests/**/*.h
+ tests/**/*.cppm
+ tests/**/*.cppm
- tests/catch.h

View File

@@ -5,11 +5,9 @@ Checks: >-
-*osx*,
-abseil*,
-android*,
-boost*,
-bugprone-branch-clone,
-bugprone-exception-escape,
-bugprone-easily-swappable-parameters,
-bugprone-empty-catch,
-clang-analyzer-alpha.*,
-clang-analyzer-core.StackAddressEscape,
-cppcoreguidelines-pro-bounds-array-to-pointer-decay,
@@ -18,8 +16,6 @@ Checks: >-
-cppcoreguidelines-special-member-functions,
-cppcoreguidelines-avoid-magic-numbers,
-cppcoreguidelines-non-private-member-variables-in-classes,
-cppcoreguidelines-missing-std-forward,
-cppcoreguidelines-avoid-const-or-ref-data-members,
-cert-env33-c,
-cert-err58-cpp,
-cert-dcl58-cpp,
@@ -30,27 +26,20 @@ Checks: >-
-google-default-arguments,
-google-explicit-constructor,
-google-build-using-namespace,
-google-upgrade-*,
-google-runtime-int,
-hicpp-signed-bitwise,
-hicpp-explicit-conversions,
-llvmlibc-*,
-llvm-header-guard,
-llvm-namespace-comment,
-llvm-prefer-register-over-unsigned,
-llvm-twine-local,
-misc-confusable-identifiers,
-misc-no-recursion,
-misc-non-private-member-variables-in-classes,
-misc-const-correctness,
-misc-include-cleaner,
-modernize-use-nodiscard,
-modernize-use-trailing-return-type,
-modernize-concat-nested-namespaces,
-mpi*,
-objc*,
-openmp*,
-performance-unnecessary-value-param,
-readability-inconsistent-declaration-parameter-name,
-readability-identifier-length,
-readability-identifier-naming,

View File

@@ -2,9 +2,7 @@ compilation_database_dir: debug
output_directory: docs/diagrams
comment_parser: clang
add_compile_flags:
- -fparse-all-comments
- -Wno-deprecated-declarations
- -Wno-ignored-optimization-argument
remove_compile_flags:
- -Wno-class-memaccess
- -Wno-dangling-reference
@@ -17,8 +15,6 @@ generate_links:
tooltip: "{% if existsIn(element, \"comment\") and existsIn(element.comment, \"brief\") %}{{ abbrv(trim(replace(element.comment.brief.0, \"\\n+\", \" \")), 256) }}{% else %}{{ element.name }}{% endif %}"
diagrams:
# Class diagrams
class_translation_unit_visitor:
include!: uml/class/class_translation_unit_visitor.yml
architecture_visitors_class:
include!: uml/class/architecture_visitors_class.yml
config_class:
@@ -39,7 +35,7 @@ diagrams:
include!: uml/class/stylable_element_hierarchy_class.yml
source_location_hierarchy_class:
include!: uml/class/source_location_hierarchy_class.yml
filter_visitor_hierarchy_class:
"filter_visitor_hierarchy_class":
include!: uml/class/filter_visitor_hierarchy_class.yml
diagram_filter_context_class:
include!: uml/class/diagram_filter_context_class.yml
@@ -78,8 +74,6 @@ diagrams:
include!: uml/sequence/diagram_generate_generic_sequence.yml
class_diagram_generator_sequence:
include!: uml/sequence/class_diagram_generator_sequence.yml
plantuml_sequence_diagram_generator_sequence:
include!: uml/sequence/plantuml_sequence_diagram_generator_sequence.yml
template_builder_sequence:
include!: uml/sequence/template_builder_sequence.yml
# Package diagrams

1
.envrc
View File

@@ -1 +0,0 @@
use flake .

View File

@@ -27,7 +27,7 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v3
- name: Update package database
run: sudo apt -y update
- name: Install deps
@@ -41,18 +41,15 @@ jobs:
make check-formatting
- name: Build and unit test
run: |
NUMPROC=2 CODE_COVERAGE=ON LLVM_VERSION=15 make test
NUMPROC=2 CMAKE_CXX_FLAGS="--coverage -fno-inline" CMAKE_EXE_LINKER_FLAGS="-lgcov --coverage" LLVM_VERSION=15 make test
- name: Run coverage
run: |
lcov -c -d debug -o coverage.info
lcov -r coverage.info -o coverage-src.info "$PWD/src/main.cc" "$PWD/src/common/generators/generators.cc"
lcov -e coverage-src.info -o coverage-src.info "$PWD/src/*"
lcov -e coverage.info "$PWD/src/*" -o coverage-src.info
lcov -l coverage-src.info
- name: Upload coverage
uses: codecov/codecov-action@v3
with:
files: coverage-src.info
disable_search: true
name: clang-uml
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: false
fail_ci_if_error: true

4
.gitignore vendored
View File

@@ -33,10 +33,6 @@ coverage*.info
packaging/_BUILD
packaging/conda/meta.yaml
#nix
.direnv/
result
# CLion
.idea/

View File

@@ -1,49 +1,5 @@
# CHANGELOG
### 0.5.3
* Added context filter direction and relationships options (#274)
* Improved test coverage (#287)
* Fixed handling of relationships to nested enums (#280)
* Improved handling of anonymous and multi-dimensions arrays in
class diagrams (#278)
* Fixed handling of enums in class diagram context filter (#275)
* Added Nix clang wrapper for improved include paths handling (Thanks
@pogobanane)
* Refactored test cases (#272)
### 0.5.2
* Fixed generation of empty packages in class diagrams (#253)
* Added option inline_lambda_messages to omit lambda expressions from sequence
diagrams (#261)
* Added support for CUDA calls in sequence diagrams (#263)
* Improved handling of message call comments (#264)
* Fixed handling of nested lambda expressions in sequence diagrams
* Fixed type aliases handling in sequence diagram message names (#260)
* Added support for call expressions tracking through lambdas in function
arguments (#168)
* Added Nix build files (Thanks @hatch01, @uku3lig, @thomaslepoix)
* Fixed building with LLVM 18 (#251)
### 0.5.1
* Fixed elements filter in sequence diagrams (#248)
* Fixed progress indicators ranges with multiple commands per TU (#240)
* Added default diagram generation error for empty diagrams (#246)
* Added style option to plantuml config section (#238)
* Added generate_concept_requirements config option (#237)
* Refactored util pipe handling (#244)
* Fixed handling of variadic template parameters in sequence diagrams (#241)
* Fixed handling of query_driver option in config file (#243)
### 0.5.0
* Fixed static linking against LLVM (#225)
* Fixed handling of absolute paths in glob patterns (#233)
* Enabled type_aliases config option for sequence diagrams (#224)
* Refactored and unified JSON generators output (#223)
* Added support for C++20 module based packages in class diagrams (#101)
* Added support for class diagram filtering based on C++20 modules (#195)
* Added support for C++20 coroutines in class diagrams (#221)
* Fixed progress indicator characters on Windows (#218)
### 0.4.2
* Fixed random typos and omissions in docs (#208)
* Fixed handling of diagram hyperlinks with sources outside of project dir (#213)

View File

@@ -5,8 +5,6 @@ cmake_minimum_required(VERSION 3.16)
#
project(clang-uml C CXX)
cmake_policy(SET CMP0054 NEW)
#
# CMake standard defines
#
@@ -61,15 +59,6 @@ setup_git_version()
message(STATUS "clang-uml version: "
"${GIT_VERSION_MAJOR}.${GIT_VERSION_MINOR}.${GIT_VERSION_PATCH}")
#
# Setup coverage
#
option(CODE_COVERAGE "" OFF)
if(CODE_COVERAGE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage -fno-inline")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov --coverage")
endif(CODE_COVERAGE)
#
# Setup LLVM
#
@@ -118,7 +107,6 @@ if(APPLE)
set(YAML_CPP_LIBRARY_DIR ${HOMEBREW_PREFIX}/lib)
endif(PKG_CONFIG_FOUND)
elseif(MSVC)
find_package(yaml-cpp REQUIRED)
set(YAML_CPP_LIBRARIES "yaml-cpp")
else()
find_package(yaml-cpp REQUIRED)
@@ -133,25 +121,14 @@ endif()
link_directories(${LLVM_LIBRARY_DIR} ${YAML_CPP_LIBRARY_DIR})
#
# Setup backward-cpp, libdw and libunwind
# Setup libdw and libunwind
#
if(CMAKE_BUILD_TYPE MATCHES Debug)
set(CLANG_UML_ENABLE_BACKTRACE_DEFAULT ON)
else()
set(CLANG_UML_ENABLE_BACKTRACE_DEFAULT OFF)
endif()
option(CLANG_UML_ENABLE_BACKTRACE "Enable backtrace on segfault"
${CLANG_UML_ENABLE_BACKTRACE_DEFAULT})
if(LINUX AND CLANG_UML_ENABLE_BACKTRACE)
if(LINUX AND (CMAKE_BUILD_TYPE MATCHES Debug))
find_package(PkgConfig REQUIRED)
pkg_check_modules(DW REQUIRED IMPORTED_TARGET libdw)
pkg_check_modules(UNWIND REQUIRED IMPORTED_TARGET libunwind)
set(BACKWARD_CPP_LIBRARIES PkgConfig::DW PkgConfig::UNWIND)
set(ENABLE_BACKWARD_CPP -DENABLE_BACKWARD_CPP)
message(STATUS "Enabling backward-cpp")
else()
message(STATUS "Disabling backward-cpp")
endif()
#
@@ -177,17 +154,7 @@ add_subdirectory(src)
#
option(BUILD_TESTS "" ON)
option(ENABLE_CXX_MODULES_TEST_CASES "" OFF)
option(ENABLE_CUDA_TEST_CASES "" OFF)
#
# Setup CUDA if available
#
if(ENABLE_CUDA_TEST_CASES)
include(CheckLanguage)
check_language(CUDA)
endif(ENABLE_CUDA_TEST_CASES)
if(BUILD_TESTS)
enable_testing()
add_subdirectory(tests)
enable_testing()
add_subdirectory(tests)
endif(BUILD_TESTS)

View File

@@ -38,7 +38,7 @@ PROJECT_NAME = "clang-uml"
# could be handy for archiving the generated documentation or if some version
# control system is used.
PROJECT_NUMBER = 0.5.3
PROJECT_NUMBER = 0.4.2
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a

View File

@@ -179,7 +179,7 @@ recommend that a file or class name and description of purpose be included on
the same “printed page” as the copyright notice for easier identification within
third-party archives.
Copyright 2021-2024 Bartek Kryza <bkryza@gmail.com>
Copyright 2021-2023 Bartek Kryza <bkryza@gmail.com>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

View File

@@ -1,6 +1,6 @@
# Makefile
#
# Copyright (c) 2021-2024 Bartek Kryza <bkryza@gmail.com>
# Copyright (c) 2021-2023 Bartek Kryza <bkryza@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -32,15 +32,12 @@ endif
LLVM_VERSION ?=
LLVM_CONFIG_PATH ?=
LLVM_SHARED ?= ON
CMAKE_PREFIX ?=
CMAKE_CXX_FLAGS ?=
CMAKE_EXE_LINKER_FLAGS ?=
CMAKE_GENERATOR ?= Unix Makefiles
CODE_COVERAGE ?= OFF
ENABLE_CXX_MODULES_TEST_CASES ?= OFF
ENABLE_CUDA_TEST_CASES ?= OFF
GIT_VERSION ?= $(shell git describe --tags --always --abbrev=7)
PKG_VERSION ?= $(shell git describe --tags --always --abbrev=7 | tr - .)
@@ -51,10 +48,9 @@ DESTDIR ?=
.PHONY: clean
clean:
rm -rf debug release debug_tidy coverage.info coverage-src.info
rm -rf debug release debug_tidy
debug/CMakeLists.txt:
$(eval CLANG_UML_ENABLE_BACKTRACE ?= ON)
cmake -S . -B debug \
-G"$(CMAKE_GENERATOR)" \
-DGIT_VERSION=$(GIT_VERSION) \
@@ -64,15 +60,10 @@ debug/CMakeLists.txt:
-DCMAKE_EXE_LINKER_FLAGS="$(CMAKE_EXE_LINKER_FLAGS)" \
-DLLVM_VERSION=${LLVM_VERSION} \
-DLLVM_CONFIG_PATH=${LLVM_CONFIG_PATH} \
-DLINK_LLVM_SHARED=${LLVM_SHARED} \
-DCMAKE_PREFIX=${CMAKE_PREFIX} \
-DENABLE_CUDA_TEST_CASES=$(ENABLE_CUDA_TEST_CASES) \
-DENABLE_CXX_MODULES_TEST_CASES=$(ENABLE_CXX_MODULES_TEST_CASES) \
-DCODE_COVERAGE=$(CODE_COVERAGE) \
-DCLANG_UML_ENABLE_BACKTRACE=$(CLANG_UML_ENABLE_BACKTRACE)
-DENABLE_CXX_MODULES_TEST_CASES=$(ENABLE_CXX_MODULES_TEST_CASES)
release/CMakeLists.txt:
$(eval CLANG_UML_ENABLE_BACKTRACE ?= OFF)
cmake -S . -B release \
-G"$(CMAKE_GENERATOR)" \
-DGIT_VERSION=$(GIT_VERSION) \
@@ -82,11 +73,8 @@ release/CMakeLists.txt:
-DCMAKE_EXE_LINKER_FLAGS="$(CMAKE_EXE_LINKER_FLAGS)" \
-DLLVM_VERSION=${LLVM_VERSION} \
-DLLVM_CONFIG_PATH=${LLVM_CONFIG_PATH} \
-DLINK_LLVM_SHARED=${LLVM_SHARED} \
-DCMAKE_PREFIX=${CMAKE_PREFIX} \
-DENABLE_CUDA_TEST_CASES=$(ENABLE_CUDA_TEST_CASES) \
-DENABLE_CXX_MODULES_TEST_CASES=$(ENABLE_CXX_MODULES_TEST_CASES) \
-DCLANG_UML_ENABLE_BACKTRACE=$(CLANG_UML_ENABLE_BACKTRACE)
-DENABLE_CXX_MODULES_TEST_CASES=$(ENABLE_CXX_MODULES_TEST_CASES)
debug_tidy/CMakeLists.txt:
cmake -S . -B debug_tidy \
@@ -99,9 +87,7 @@ debug_tidy/CMakeLists.txt:
-DCMAKE_EXE_LINKER_FLAGS="$(CMAKE_EXE_LINKER_FLAGS)" \
-DLLVM_VERSION=${LLVM_VERSION} \
-DLLVM_CONFIG_PATH=${LLVM_CONFIG_PATH} \
-DLINK_LLVM_SHARED=${LLVM_SHARED} \
-DCMAKE_PREFIX=${CMAKE_PREFIX} \
-DENABLE_CUDA_TEST_CASES=$(ENABLE_CUDA_TEST_CASES) \
-DENABLE_CXX_MODULES_TEST_CASES=$(ENABLE_CXX_MODULES_TEST_CASES)
debug: debug/CMakeLists.txt
@@ -121,13 +107,6 @@ test: debug
test_release: release
CTEST_OUTPUT_ON_FAILURE=1 ctest --test-dir release
coverage_report: test
lcov -c -d debug -o coverage.info
lcov -r coverage.info -o coverage-src.info "${PWD}/src/main.cc" "${PWD}/src/common/generators/generators.cc"
lcov -e coverage-src.info -o coverage-src.info "${PWD}/src/*"
lcov -l coverage-src.info
genhtml coverage-src.info --output-directory debug/coverage_html
install: release
make -C release install DESTDIR=${DESTDIR}
@@ -176,7 +155,7 @@ format:
.PHONY: debug_tidy
tidy: debug_tidy
run-clang-tidy-17 -extra-arg=-Wno-unknown-warning-option -j $(NUMPROC) -p debug_tidy ./src
run-clang-tidy-15 -j $(NUMPROC) -p debug_tidy ./src
.PHONY: check-formatting
check-formatting:

View File

@@ -4,8 +4,8 @@
[![Build status](https://github.com/bkryza/clang-uml/actions/workflows/build.yml/badge.svg)](https://github.com/bkryza/clang-uml/actions)
[![Coverage](https://codecov.io/gh/bkryza/clang-uml/branch/master/graph/badge.svg)](https://codecov.io/gh/bkryza/clang-uml)
[![Version](https://img.shields.io/badge/version-0.5.3-blue)](https://github.com/bkryza/clang-uml/releases)
[![Version](https://img.shields.io/badge/LLVM-12,13,14,15,16,17,18-orange)](https://github.com/bkryza/clang-uml/releases)
[![Version](https://img.shields.io/badge/version-0.4.2-blue)](https://github.com/bkryza/clang-uml/releases)
[![Version](https://img.shields.io/badge/LLVM-12,13,14,15,16,17-orange)](https://github.com/bkryza/clang-uml/releases)
[![Doxygen](https://img.shields.io/badge/Docs-Doxygen-gainsboro)](https://clang-uml.github.io)
`clang-uml` is an automatic C++ to UML class, sequence, package and include diagram generator, driven by
@@ -38,7 +38,6 @@ Main features supported so far include:
* Diagram content filtering based on namespaces, elements and relationships - [_example_](docs/test_cases/t00040.md)
* Optional package generation from namespaces (only PlantUML) - [_example_](docs/test_cases/t00036.md)
* Optional package generation from subdirectories (only PlantUML) - [_example_](docs/test_cases/t00065.md)
* Optional package generation from C++20 modules (only PlantUML) - [_example_](docs/test_cases/t00071.md)
* Interactive links to online code or docs for classes, methods and class fields in SVG diagrams - [_example_](https://raw.githubusercontent.com/bkryza/clang-uml/master/docs/test_cases/t00002_class.svg)
* Support for plain C99/C11 code (struct, units and their relationships) - [_example_](docs/test_cases/t00057.md)
* C++20 concept constraints - [_example_](docs/test_cases/t00059.md)
@@ -52,11 +51,9 @@ Main features supported so far include:
* Handling of template code including constexpr conditionals - [_example_](docs/test_cases/t20018.md)
* Handling of lambda expressions - [_example_](docs/test_cases/t20012.md)
* Interactive links to online code to classes and call expressions - [_example_](https://raw.githubusercontent.com/bkryza/clang-uml/master/docs/test_cases/t20021_sequence.svg)
* Support for CUDA Kernel and CUDA Device function calls - [_example_](docs/test_cases/t20050.md)
* **Package diagram generation**
* Generation of package diagram based on C++ namespaces - [_example_](docs/test_cases/t30001.md)
* Generation of package diagram based on subdirectories - [_example_](docs/test_cases/t30010.md)
* Generation of package diagram based on C++20 modules - [_example_](docs/test_cases/t30014.md)
* Dependencies between packages based on symbols used in the code - [_example_](docs/test_cases/t30002.md)
* Interactive links to online code to packages - [_example_](https://raw.githubusercontent.com/bkryza/clang-uml/master/docs/test_cases/t30002_package.svg)
* **Include graph diagram generation**
@@ -447,7 +444,7 @@ This project relies on the following great tools:
* [Clang LibTooling](https://clang.llvm.org/docs/LibTooling.html) - a C++ library for creating tools based on Clang
* [PlantUML](https://plantuml.com/) - language and diagram for generating UML diagrams
* [MermaidJS](https://mermaid.js.org/) - JavaScript based diagramming and charting tool
* [doctest](https://github.com/doctest/doctest) - C++ unit test framework
* [Catch2](https://github.com/catchorg/Catch2) - C++ unit test framework
* [glob](https://github.com/p-ranav/glob) - Unix style path expansion for C++
* [indicators](https://github.com/p-ranav/indicators) - Activity indicators for modern C++
* [CLI11](https://github.com/CLIUtils/CLI11) - command line parser for C++

View File

@@ -1,6 +1,6 @@
param ($Prefix="C:\clang-uml-llvm17", $BuildType="Release")
param ($Prefix="C:\clang-uml", $BuildType="Release")
cmake -S . -B $BuildType -DCMAKE_PREFIX_PATH="$Prefix" -DENABLE_CXX_MODULES_TEST_CASES=OFF -Thost=x64
cmake -S . -B $BuildType -DCMAKE_PREFIX_PATH="$Prefix" -Thost=x64
cmake --build $BuildType --config $BuildType
# Create compile commands in Visual Studio

View File

@@ -22,10 +22,6 @@ if(NOT "${LLVM_CONFIG_PATH}" STREQUAL "")
set(LLVM_VERSION ${CMAKE_MATCH_1})
endif()
if(LLVM_VERSION STREQUAL "18")
set(LLVM_VERSION "18.1")
endif()
find_package(LLVM ${LLVM_VERSION} CONFIG REQUIRED)
list(APPEND CMAKE_MODULE_PATH ${LLVM_CMAKE_DIR})
@@ -71,19 +67,16 @@ else(LINK_LLVM_SHARED)
LLVMBitReader
LLVMCore
LLVMSupport)
if(${LLVM_PACKAGE_VERSION} VERSION_LESS "15.0")
list(REMOVE_ITEM LIBTOOLING_LIBS clangSupport)
else()
list(APPEND LIBTOOLING_LIBS
LLVMWindowsDriver
LLVMWindowsManifest)
endif()
if(${LLVM_PACKAGE_VERSION} VERSION_GREATER_EQUAL "16.0")
list(APPEND LIBTOOLING_LIBS clangASTMatchers)
endif()
if(MSVC)
if(${LLVM_PACKAGE_VERSION} VERSION_GREATER_EQUAL "18.1")
list(APPEND LIBTOOLING_LIBS clangAPINotes)
if(${LLVM_PACKAGE_VERSION} VERSION_LESS "15.0")
list(REMOVE_ITEM LIBTOOLING_LIBS clangSupport)
else()
list(APPEND LIBTOOLING_LIBS
LLVMWindowsDriver
LLVMWindowsManifest)
endif()
if(${LLVM_PACKAGE_VERSION} VERSION_GREATER_EQUAL "17.0")
list(APPEND LIBTOOLING_LIBS clangASTMatchers)
endif()
endif(MSVC)
endif(LINK_LLVM_SHARED)

View File

@@ -1,6 +1,6 @@
# docs/Makefile
#
# Copyright (c) 2021-2024 Bartek Kryza <bkryza@gmail.com>
# Copyright (c) 2021-2023 Bartek Kryza <bkryza@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.

View File

@@ -8,9 +8,6 @@
* [Relationships to classes in containers or smart pointers](#relationships-to-classes-in-containers-or-smart-pointers)
* [Inheritance diagrams](#inheritance-diagrams)
* [Generating UML packages in the diagram](#generating-uml-packages-in-the-diagram)
* [Namespace packages](#namespace-packages)
* [Directory packages](#directory-packages)
* [Module packages](#module-packages)
* [Class context diagram](#class-context-diagram)
* [Disabling dependency relationships](#disabling-dependency-relationships)
@@ -90,10 +87,8 @@ type of relationship generated in the class diagrams.
By default, a member from which a relationship has been added to the diagram
between 2 classes will also be rendered inside as a property inside the class
box. This behaviour can be however disabled by adding the following option to
the diagram definition:
between 2 classes will also be rendered inside the class. This behaviour can be
however disabled by adding the following option to the diagram definition:
```yaml
include_relations_also_as_members: false
```
@@ -137,15 +132,6 @@ rendered. This can be easily achieved in `clang-uml` through inclusion filters:
```
## Generating UML packages in the diagram
`clang-uml` supports 3 sources for generating UML packages in a diagram:
* `namespace` - default
* `directory` - based on relative directory paths within the project source tree
* `module` - based on C++20 modules
Currently, a specific diagram can only contain packages of one of the above
types.
### Namespace packages
By default, `clang-uml` will render all element names including a namespace
(relative to `using_namespace` property), e.g. `ns1::ns2::MyClass`.
In order to generate packages in the diagram for each namespace instead, the
@@ -159,8 +145,7 @@ which results in the following diagram:
![t00036_class](test_cases/t00036_class.svg)
### Directory packages
In case the code base is structured based on subdirectories instead of namespaces
In case the code base is structured based on subdirectory instead of namespaces
(or this is a C project, where namespaces are not available), packages can be
generated based on the location of a given declaration in the filesystem tree,
by adding also the following option:
@@ -178,33 +163,6 @@ which results in the following diagram:
> denote the root path against which all relative paths in the config file are
> calculated.
### Module packages
Finally, to generate UML packages in the diagram based on C++20 modules, use
the following option:
```yaml
package_type: module
```
which can produce the following diagram:
![t00071_class](test_cases/t00071_class.svg)
Packages from modules support internal module partitions, which are represented
by `:` prefix in the name as well as conventional submodules separated by `.`.
Module paths can be rendered relative to a specific parent module, to enable
this add the following option:
```yaml
using_module: mod1.mod2
```
which will render modules relative to `mod1.mod2`.
For examples of this feature check out the following test cases documentation:
[t00071](test_cases/t00072.md) and [t00072](test_cases/t00072.md).
## Class context diagram
Sometimes it's helpful to generate a class diagram depicting only direct
relationships of a given class, e.g. within the classes' documentation page,
@@ -217,7 +175,7 @@ this can be easily achieved using `context` inclusion filter:
```
By default, the diagram will include only elements in direct relationship to
`ns1::MyClass`, but an additional option called `radius` can be added to this
`ns1::MyClass`, but an addition option called `radius` can be added to this
filter, which will extend the context to elements related to `ns1::MyClass`
through at most N relationships, e.g:

View File

@@ -11,39 +11,34 @@
* [Use '--query-driver' command line option](#use---query-driver-command-line-option)
* [Manually add and remove compile flags from the compilation database](#manually-add-and-remove-compile-flags-from-the-compilation-database)
* [Using 'CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES'](#using-cmake_cxx_implicit_include_directories)
* [Nix wrapper](#nix-wrapper)
<!-- tocstop -->
## Overall configuration file structure
By default, `clang-uml` will look for file `.clang-uml` in the project's
directory and read all diagram definitions configuration from it. The file must
be specified in YAML and it's overall structure is as follows:
By default, `clang-uml` will look for file `.clang-uml` in the project's directory and read all diagrams definitions
configuration from it. The file must be specified in YAML and it's overall structure is as follows:
```yaml
# Common options for all diagrams
# ...
# Diagram definitions
# common options for all diagrams
...
diagrams:
first_diagram_name:
type: class|sequence|package|include
# Diagram specific options
# ...
# diagram specific options
...
second_diagram_name:
type: class|sequence|package|include
# Diagram specific options
# ...
# More diagrams
# ...
# diagram specific options
...
...
```
The top level common options are inherited by specific diagrams, if the option
is applicable to them and they themselves do not override this option.
The top level common options are inherited by specific diagrams, if the option is applicable to them and they themselves
do not override this option.
For detailed reference of all configuration options see [here](./configuration_file.md).
Effective configuration, including default values can be printed out in YAML
format using the following option:
Effective configuration, including default values can be printed out in YAML format using the following option:
```bash
clang-uml --dump-config
@@ -61,11 +56,10 @@ diagrams:
```
## Translation unit glob patterns
One of the key options of the diagram configuration is the list of translation
units, which should be parsed to get all necessary information for a diagram.
One of the key options of the diagram configuration is the list of translation units, which should be parsed to
get all necessary information for a diagram.
The syntax is simple and based on glob patterns, which can be added to the
configuration file as follows:
The syntax is simple and based on glob patterns, which can be added to the configuration file as follows:
```yaml
glob:
@@ -73,17 +67,13 @@ configuration file as follows:
- src/dir3/*.cc
```
The glob patterns only need to match the translation units, which are also in
the `compile_commands.json` file, i.e. any files that match the glob patterns,
but are not in `compile_commands.json` will be ignored. In case the `glob`
pattern set does not match any translation units an error will be printed on
the standard output.
The glob patterns only need to match the translation units, which are also in the `compile_commands.json` file, i.e.
any files that match the glob patterns, but are not in `compile_commands.json` will be ignored. In case the `glob`
pattern set does not match any translation units an error will be printed on the standard output.
For small projects, the `glob` property can be omitted, which will result in
`clang-uml` parsing all translation units from `compile_commands.json` for
the diagram. However, for large projects, constraining the number of translation
units for each diagram to minimum necessary to discover all necessary diagram
elements will significantly decrease the diagram generation times.
For small projects, the `glob` property can be omitted, which will result in `clang-uml` parsing all translation units
from `compile_commands.json` for the diagram. However, for large projects, constraining the number of translation units
for each diagram to absolute minimum will significantly decrease the diagram generation times.
## Custom directives
In case it's necessary to add some custom PlantUML or MermaidJS declarations
@@ -132,13 +122,13 @@ the generated PlantUML diagram will contain comments before each line containing
the source location of the specific diagram element.
## Resolving include path and compiler flags issues
Due to the fact, that a project can be compiled with different compilers
Due to the fact, that your project can be compiled with different compilers
and toolchains, the system paths and compilation flags detected by the Clang
version linked to your `clang-uml` installation might differ from the ones
actually used to compile your project.
> This is often an issue on macOS, when `clang-uml` uses Homebrew version of LLVM
> and a project was built using system Apple Clang.
> and your project was built using system Apple Clang
Typically, this results in error messages on the console during diagram
generation, such as:
@@ -225,11 +215,4 @@ Yet another option, for CMake based projects, is to use the following CMake opti
set(CMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES})
```
### Nix wrapper
On NixOS or when using `nix`, `clang-uml` uses a wrapper script,
which builds and exports `CPATH` and `CPLUS_INCLUDE_PATH`
environment variables before running `clang-uml`, which contain valid
system header Clang paths for the current Nix environment.
If you want to use an unwrapped version, the `clang-uml-unwrapped` binary
can be called the same way as `clang-uml`.

View File

@@ -25,7 +25,6 @@
* `glob` - list of glob patterns to match source code files for analysis
* `include_relations_also_as_members` - when set to `false`, class members for relationships are rendered in UML are skipped from class definition (default: `true`)
* `generate_method_arguments` - determines whether the class diagrams methods contain full arguments (`full`), are abbreviated (`abbreviated`) or skipped (`none`)
* `generate_concept_requirements` - determines whether concept requirements are rendered in the diagram (default: `true`)
* `using_namespace` - similar to C++ `using namespace`, a `A::B` value here will render a class `A::B::C::MyClass` in the diagram as `C::MyClass`, at most 1 value is supported
* `generate_packages` - whether or not the class diagram should contain packages generated from namespaces or subdirectories
* `package_type` - determines how the packages are inferred: `namespace` - use C++ namespaces, `directory` - use project's directory structure

View File

@@ -3,20 +3,15 @@
<!-- toc -->
* [namespaces](#namespaces)
* [modules](#modules)
* [elements](#elements)
* [element_types](#element_types)
* [paths](#paths)
* [context](#context)
* [context radius](#context-radius)
* [context direction](#context-direction)
* [context relationships](#context-relationships)
* [relationships](#relationships)
* [subclasses](#subclasses)
* [parents](#parents)
* [specializations](#specializations)
* [access](#access)
* [module_access](#module_access)
* [method_types](#method_types)
* [callee_types](#callee_types)
* [dependants and dependencies](#dependants-and-dependencies)
@@ -43,7 +38,7 @@ to your diagram configuration:
```
Some filters accept either specified exact values, some support regular
expressions while some accept glob patterns.
expressions while some except glob patterns.
For filters which accept regular expressions, the regular expression has to
be provided as a map ```r: 'pattern'``` due to the fact the pointer (```*```) otherwise
@@ -57,26 +52,26 @@ exclude:
- r: '.*test.*'
```
`paths` filter is currently the only filter which accepts `glob` like patterns.
The following table specifies the values allowed in each filter:
| Filter name | Possible values | Example values |
|-------------------|-----------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------|
| `namespaces` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: '.*detail.*'``` |
| `modules` | Qualified name or regex | ```mod1.mod2:par1```, ```r: '.*impl.*'``` |
| `elements` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: '.*detail.*'``` |
| `element_types` | Types of diagram elements | ```class```, ```enum```, ```concept``` |
| `paths` | File or dir path | ```src/dir1```, ```src/dir2/a.cpp```, ```src/dir3/*.cpp``` |
| `context` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `relationships` | Type of relationship | ```inheritance```, ```composition```, ```aggregation```, ```ownership```, ```association```, ```instantiation```, ```friendship```, ```dependency``` |
| `subclasses` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `parents` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `specializations` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `access` | Method or member access scope | ```public```, ```protected```, ```private``` |
| `module_access` | Module access scope | ```public```, ```private``` |
| `method_types` | Type of class method | ```constructor```, ```destructor```, ```assignment```, ```operator```, ```defaulted```, ```deleted```, ```static``` |
| `dependants` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `dependencies` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `callee_types` | Callee types in sequence diagrams | ```constructor```, ```assignment```, ```operator```, ```defaulted```, ```static```, ```method```, ```function```, ```function_template```, ```lambda``` |
| Filter name | Possible values | Example values |
|-------------------|----------------------------------|------------------------------------------------------------------------------------------------------------------------|
| `namespaces` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: '.*detail.*'``` |
| `elements` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: '.*detail.*'``` |
| `element_types` | Types of diagram elements | ```class```, ```enum```, ```concept``` |
| `paths` | File or dir path or glob pattern | ```src/dir1```, ```src/dir2/a.cpp```, ```src/dir3/*.cpp``` |
| `context` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `relationships` | Type of relationship | ```inheritance```, ```composition```, ```aggregation```, ```ownership```, ```association```, ```instantiation```, ```friendship```, ```dependency``` |
| `subclasses` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `parents` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `specializations` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `access` | Method or member access scope | ```public```, ```protected```, ```private``` |
| `method_types` | Type of class method | ```constructor```, ```destructor```, ```assignment```, ```operator```, ```defaulted```, ```deleted```, ```static``` |
| `dependants` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `dependencies` | Qualified name or regex | ```ns1::ns2::ClassA```, ```r: 'ns1::ns2::ClassA.+'``` |
| `callee_types` | Callee types in sequence diagrams| ```constructor```, ```assignment```, ```operator```, ```defaulted```, ```static```, ```method```, ```function```, ```function_template```, ```lambda``` |
The following filters are available:
@@ -93,19 +88,6 @@ Allows to include or exclude entities from specific namespaces.
- ns1::ns2::detail
```
## modules
Allows to include or exclude entities from specific C++20 module.
```yaml
include:
modules:
- mod1.mod2
exclude:
modules:
- r: ".*impl.*"
```
## elements
Allows to directly include or exclude specific entities from the diagrams, for instance to exclude a specific class
@@ -155,8 +137,7 @@ paths to directories can be specified.
## context
This filter allows to limit the diagram elements only to classes which are in
direct relationship (of any kind) with the specified `class`, `enum` or
`concept`:
direct relationship (of any kind) with the specified class, enum or concept:
```yaml
include:
@@ -164,7 +145,6 @@ direct relationship (of any kind) with the specified `class`, `enum` or
- ns1::ns2::MyClass
```
### context radius
By default, the filter will only include or exclude items in direct
relationship (radius 1). It is however possible to define the context filter
and provide a custom radius:
@@ -183,46 +163,6 @@ and provide a custom radius:
Please note that you can specify multiple context filters in a single diagram
with different radius. Radius set to 0 will match only the given element.
### context direction
Sometimes we may be interested only in relationships pointing outward from
a specific element, or inward. For instance we may want to see which elements
depend through any relationship on a specified element. For this purpose the
context filter has a `direction` option, which can have one of 3 values:
* `any` (default)
* `inward` - only relationships pointing toward the specified class are
considered in calculating the context
* `outward` - only relationships pointing toward the specified class are
considered in calculating the context
For example, the following filter:
```yaml
context:
- match:
radius: 2
pattern: clanguml::t00076::B
direction: inward
```
will include all elements related to class `B` through relationships pointing
toward `B` within a radius of maximum 2 relationships (see test case
[t00076](./test_cases/t00076.md)).
### context relationships
Another way to customize the context of a specified element is to declare
which relationships should be considered when calculating the elements' context.
For example, the following filter:
```yaml
context:
- match:
radius: 1
pattern: clanguml::t00078::A
relationships:
- inheritance
- aggregation
```
will only include elements related to class `A` through inheritance or
aggregation relationship (see test case [t00076](./test_cases/t00078.md)).
## relationships
This filter allows to include or exclude specific types of relationships from the diagram, for instance to only
@@ -259,22 +199,15 @@ This filter allows to include or exclude specializations and instantiations of a
## access
This filter allows to include or exclude class methods and members based on their access scope, allowed values are:
This filter allows to include or exclude class methods and members based on their access scope, allowed values ar:
* `public`
* `protected`
* `private`
## module_access
This filter allows to include or exclude diagram elements based on the module in which they are declared, allowed values are:
* `public`
* `private`
## method_types
This filter allows to include or exclude various method types from the class diagram, allowed values are:
This filter allows to include or exclude various method types from the class diagram, allowed values ar:
* `constructor`
* `destructor`
* `assignment`
@@ -303,8 +236,6 @@ The following callee types are supported:
* `function`
* `function_template`
* `lambda`
* `cuda_kernel`
* `cuda_device`
## dependants and dependencies

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -51,20 +51,6 @@ instance:
cmd: "/usr/bin/plantuml -tsvg \"diagrams/{}.puml\""
```
Furthermore, `plantuml` generator accepts basic styling options for customizing
diagram look and layout, e.g.:
```yaml
plantuml:
style:
# Apply this style to all classes in the diagram
class: "#aliceblue;line:blue;line.dotted;text:blue"
# Apply this style to all packages in the diagram
package: "#back:grey"
# Make all template instantiation relations point upwards and draw them
# as green and dotted lines
instantiation: "up[#green,dotted]"
```
An example PlantUML diagram is presented below:
```plantuml
@@ -135,9 +121,9 @@ example:
- 'note for {{ alias("config") }} "General options not used by diagrams."'
```
will add a diagram direction hint before the diagram contents (right after
diagram type, e.g. `classDiagram`), and after each diagram contents
2 notes attached to classes `inheritable_diagram_options` and `config`.
will add before the diagram contents (right after diagram type,
e.g. `classDiagram`) diagram direction hint, and after each diagram contents
2 notes attached to elements.
This generator also accepts a `cmd` parameter to specify a command to execute
on the generated MermaidJS source file to generate actual diagram image, for

View File

@@ -56,5 +56,5 @@ source files (matched by `glob`) and not their dependencies, for example:
![t40001_include](./test_cases/t40001_include.svg)
Please note that generating include diagram, which contains third party and
system library headers will result in a huge diagram that is unlikely to
system library headers will result in a huge diagram that will be unlikely to
be useful.

View File

@@ -6,7 +6,6 @@
* [Ubuntu](#ubuntu)
* [Fedora](#fedora)
* [Conda](#conda)
* [Nix](#nix)
* [Windows](#windows)
* [Building from source](#building-from-source)
* [Linux](#linux)
@@ -24,7 +23,7 @@
#### Ubuntu
```bash
# Currently supported Ubuntu versions are Focal, Jammy and Mantic
# Currently supported Ubuntu versions are Focal, Jammy, Lunar and Mantic
sudo add-apt-repository ppa:bkryza/clang-uml
sudo apt update
sudo apt install clang-uml
@@ -33,17 +32,17 @@ sudo apt install clang-uml
#### Fedora
```bash
# Fedora 37
wget https://github.com/bkryza/clang-uml/releases/download/0.4.2/clang-uml-0.4.2-1.fc37.x86_64.rpm
sudo dnf install ./clang-uml-0.4.2-1.fc37.x86_64.rpm
# Fedora 38
wget https://github.com/bkryza/clang-uml/releases/download/0.5.3/clang-uml-0.5.3-1.fc38.x86_64.rpm
sudo dnf install ./clang-uml-0.5.3-1.fc38.x86_64.rpm
wget https://github.com/bkryza/clang-uml/releases/download/0.4.2/clang-uml-0.4.2-1.fc38.x86_64.rpm
sudo dnf install ./clang-uml-0.4.2-1.fc38.x86_64.rpm
# Fedora 39
wget https://github.com/bkryza/clang-uml/releases/download/0.5.3/clang-uml-0.5.3-1.fc39.x86_64.rpm
sudo dnf install ./clang-uml-0.5.3-1.fc39.x86_64.rpm
# Fedora 40
wget https://github.com/bkryza/clang-uml/releases/download/0.5.3/clang-uml-0.5.3-1.fc40.x86_64.rpm
sudo dnf install ./clang-uml-0.5.3-1.fc40.x86_64.rpm
wget https://github.com/bkryza/clang-uml/releases/download/0.4.2/clang-uml-0.4.2-1.fc39.x86_64.rpm
sudo dnf install ./clang-uml-0.4.2-1.fc39.x86_64.rpm
```
#### Conda
@@ -54,32 +53,6 @@ conda config --set channel_priority strict
conda install -c bkryza/label/clang-uml clang-uml
```
#### Nix
You can use the version packaged in nixpkgs like this:
Currently clang-uml version 0.5.2 is available in nixos-unstable and nixos-24.05
```bash
nix-shell -p clang-uml
```
Or you can build it by yourself
```bash
# To build it by yourself
git clone https://github.com/bkryza/clang-uml
# To build using nix flakes
nix --extra-experimental-features 'nix-command flakes' build
# or without nix flakes
nix-build -E 'with import <nixpkgs> { }; callPackage ./packaging/nix { }'
```
Or if you have flake enabled, you can also directly run
```bash
nix run github:bkryza/clang-uml
```
#### Windows
Download and run the latest Windows installer from
@@ -106,13 +79,11 @@ release/src/clang-uml --help
# To build using a specific installed version of LLVM use:
LLVM_VERSION=16 make release
# or specify a path to a specific llvm-config binary, e.g.:
# or specify path to a specific llvm-config binary, e.g.:
LLVM_CONFIG_PATH=/usr/bin/llvm-config-16 make release
# or directly specify the path where LLVMConfig.cmake can be found on your system, e.g.:
CMAKE_PREFIX=/usr/lib/llvm-16/lib/cmake/llvm make release
# By default clang-uml is linked against shared LLVM libraries, this can be changed using:
LLVM_SHARED=OFF LLVM_VERSION=16 make release
# Optionally, to install in default prefix
make install
@@ -138,7 +109,7 @@ CMAKE_PREFIX=/usr/local/opt/llvm/lib/cmake/llvm make release
##### Visual Studio native build
These steps present how to build and use `clang-uml` natively using Microsoft Visual Studio only.
These steps present how to build and use `clang-uml` natively using Visual Studio only.
First, install the following dependencies manually:
@@ -200,11 +171,12 @@ bin\clang-uml.exe --version
```
It should produce something like:
```bash
clang-uml 0.5.2
Copyright (C) 2021-2024 Bartek Kryza <bkryza@gmail.com>
Linux x86_64 6.5.0-21-generic
Built against LLVM/Clang libraries version: 17.0.6
Using LLVM/Clang libraries version: Ubuntu clang version 17.0.6
clang-uml 0.4.2
Copyright (C) 2021-2023 Bartek Kryza <bkryza@gmail.com>
Linux x86_64 6.2.0-36-generic
Built against LLVM/Clang libraries version: 17.0.3
Using LLVM/Clang libraries version: Ubuntu clang version 17.0.3 (++20231010073202+37b79e779f44-1~exp1~20231010073304.52)
```
Finally, remove the temporary build directory:

View File

@@ -17,11 +17,7 @@ elements simply add this to your `.clang-uml` file:
```yaml
generate_links:
link: 'https://github.com/myorg/myrepo/blob/{{ git.commit }}/{{ element.source.path }}#L{{ element.source.line }}'
tooltip: '{% if "comment" in element %}{{ abbrv(trim(replace(element.comment.formatted, "\n+", " ")), 256) }}{% else %}{{ element.name }}{% endif %}'
tooltip: '{% if "comment" in element %}{{ abbrv(trim(replace(element.comment, "\n+", " ")), 256) }}{% else %}{{ element.name }}{% endif %}'
```
You can open example diagram [here](https://raw.githubusercontent.com/bkryza/clang-uml/master/docs/test_cases/t00014_class.svg) to see how it works in action.
Full documentation on how to use the [inja](https://github.com/pantor/inja)
template engine in `clang-uml` configuration files can be found
[here](./jinja_templates.md).
You can open example diagram [here](https://raw.githubusercontent.com/bkryza/clang-uml/master/docs/test_cases/t00014_class.svg) to see how it works in action.

View File

@@ -7,8 +7,8 @@
<!-- tocstop -->
Package diagrams are simple diagrams, which can be useful to visualize a high
level structure of a C++ project, by rendering project's namespaces,
subdirectories or modules as UML packages and their interdependencies.
level structure of a C++ project, by rendering project's namespaces or
subdirectories as UML packages and their interdependencies.
The minimal config required to generate a package diagram is presented below:
```yaml
@@ -153,33 +153,12 @@ results the following diagram:
![package_deps](./test_cases/t30002_package.svg)
By default, packages are generated from C++ namespaces in the code. However,
they can also be generated from the subdirectories in the filesystem tree or
based on C++20 modules
Subdirectory based packages can be enabled by adding the following option to
the configuration file:
they can also be generated from the subdirectories in the filesystem tree by
adding the following option to the configuration file:
```yaml
package_type: directory
```
for example check out this diagram (you can click on package names to see the
corresponding source directory):
![t30011_package](./test_cases/t30011_package.svg)
Module based packages can be enabled using the following option:
```yaml
package_type: module
```
for example check out this diagram (you can click on package names to see the
corresponding module source):
![t30014_package](./test_cases/t30012_package.svg)
Diagrams can be rendered relative to a specific module using `using_module`
option:
```yaml
using_module: mod1.mod2
```
for example checkout this diagram
![t30011_package](./test_cases/t30011_package.svg)

View File

@@ -52,9 +52,9 @@ To add an initial class diagram to your project, follow these steps:
mmdc -i diagrams/some_class_diagram.mmd -o diagrams/some_class_diagram.svg
```
Steps 3 and 4 can be combined into one step:
Steps 3 and 4 can be combined into one step like follows:
```
clang-uml -p -n some_class_diagram -g plantuml -r --plantuml-cmd="/usr/bin/plantuml -tsvg diagrams/{}.puml"
clang-uml -p -n some_class_diagram -g plantuml -r --plantuml-cmd="plantuml -tsvg diagrams/{}.puml"
```
where `-r` enables diagram rendering and `--plantuml-cmd` specifies command
to execute on each generated diagram.

View File

@@ -74,7 +74,7 @@ there are 3 types of constraints:
locations
Currently, the constraints can be a method or a free function, both specified
using the full signature of the function, e.g.:
using the full signature of the function, e.g.
```yaml
from:
@@ -97,8 +97,8 @@ and `to` locations as follows:
function: "clanguml::t20034::A::a2()"]
```
To find the exact function signature, which can be used as a `from` location,
run `clang-uml` as follows (assuming the function of interest is called `main`):
To find the exact function signature which, can be used as a `from` location,
run `clang-uml` as follows:
```bash
clang-uml --print-from -n main_sequence | grep main
@@ -112,7 +112,7 @@ clang-uml --print-to -n main_sequence | grep main
Command line flags `--print-from` and `--print-to` will print on stdout all
functions and methods available in the diagram model, and each line of this
output can be directly used as a value of `from`, `from_to` or `to`
output can be directly used as a value of `start_from`, `from_to` or `to`
properties in the config file.
Since that list can be quite large, it's best to filter the output to limit
@@ -141,7 +141,7 @@ tentative support, which follows the following rules:
* If lambda expression is passed to some function or method, which is outside
the scope of the diagram (e.g. used in `std::transform` call) the call will
not be generated
* If the lambda is passed as template argument in instantiation it will not
* If the lambda is passed as template parameter in instantiation it will not
be generated
Another issue is the naming of lambda participants. Currently, each lambda is
@@ -252,23 +252,12 @@ results in the following diagram:
![extension](test_cases/t20012_sequence.svg)
In case lambda expressions are redundant and we are only interested in the calls
generate from the lambda expressions, it is possible to inline lambda
expressions in the generated diagrams by specifying the following option:
```yaml
inline_lambda_messages: true
```
For example compare the test cases [t20012](test_cases/t20012.md) and
[t20052](test_cases/t20052.md).
## Customizing participants order
The default participant order in the sequence diagram can be suboptimal in the
sense that consecutive calls can go right, then left, then right again
depending on the specific call chain in the code. It is however possible to
override this order in the diagram definition using `participants_order`
property, for instance like this:
property, for instance like this test case:
```yaml
diagrams:
@@ -383,5 +372,5 @@ for each sequence diagram, which should include these comments.
In case only selected messages should have some specific comments, instead
of enabling the `generate_message_comments` option, it is possible to use
`\\uml{note TEXT}` directive in the comment above the expression, see
`\uml{note TEXT}` directive in the comment above the expression, see
[t20001](test_cases/t20001_sequence.svg).

View File

@@ -76,14 +76,6 @@
* [t00069](./test_cases/t00069.md) - Coroutine methods in class diagrams
* [t00070](./test_cases/t00070.md) - Diagram filter based on C++20 modules
* [t00071](./test_cases/t00071.md) - Class diagram with C++20 modules generated as packages
* [t00072](./test_cases/t00072.md) - Class diagram with C++20 module partitions generated as packages
* [t00073](./test_cases/t00073.md) - Class diagram for template overload pattern
* [t00074](./test_cases/t00074.md) - Test case for rendering concepts without requirements
* [t00075](./test_cases/t00075.md) - Test case for class diagram styles in config file
* [t00076](./test_cases/t00076.md) - Test case for context diagram with inward direction flag
* [t00077](./test_cases/t00077.md) - Test case for context diagram with outward direction flag
* [t00078](./test_cases/t00078.md) - Test case for context diagram with relationships option
* [t00079](./test_cases/t00079.md) - Test case for context diagram exclude filter with relationships option
## Sequence diagrams
* [t20001](./test_cases/t20001.md) - Basic sequence diagram test case
* [t20002](./test_cases/t20002.md) - Free function sequence diagram test case
@@ -123,22 +115,6 @@
* [t20036](./test_cases/t20036.md) - Test case for rendering all call chains leading to an activity (to)
* [t20037](./test_cases/t20037.md) - Test case checking if activities in static variable declarations appear only once
* [t20038](./test_cases/t20038.md) - Sequence diagram comment decorator test case
* [t20039](./test_cases/t20039.md) - Test case for type aliases config option in sequence diagrams
* [t20040](./test_cases/t20040.md) - Test case for recursive variadic template function call
* [t20041](./test_cases/t20041.md) - Test case for recursive variadic template class call
* [t20042](./test_cases/t20042.md) - Test case for template overload pattern
* [t20043](./test_cases/t20043.md) - Test case for elements diagram filter in sequence diagrams
* [t20044](./test_cases/t20044.md) - Test case for template method call expressions with callables
* [t20045](./test_cases/t20045.md) - Test case for template function call expressions with callables
* [t20046](./test_cases/t20046.md) - Test case for call expressions in nested lambdas
* [t20047](./test_cases/t20047.md) - Test case for 'call' comment directive
* [t20048](./test_cases/t20048.md) - Test case for message comments
* [t20049](./test_cases/t20049.md) - Test case for CUDA kernel calls
* [t20050](./test_cases/t20050.md) - Test case for CUDA kernel calls with participants combined to file
* [t20051](./test_cases/t20051.md) - Test case for CUDA calls callee_type filter
* [t20052](./test_cases/t20052.md) - Test case for inlining lambda operator calls
* [t20053](./test_cases/t20053.md) - Test case for inlining nested lambda operator calls
* [t20054](./test_cases/t20054.md) - Test case for sequence diagram with nested classes
## Package diagrams
* [t30001](./test_cases/t30001.md) - Basic package diagram test case
* [t30002](./test_cases/t30002.md) - Package dependency test case
@@ -153,8 +129,6 @@
* [t30011](./test_cases/t30011.md) - Package diagram with packages from directory structure for plain C
* [t30012](./test_cases/t30012.md) - C++20 modules package diagram test
* [t30013](./test_cases/t30013.md) - C++20 modules package dependencies diagram test
* [t30014](./test_cases/t30014.md) - C++20 modules package diagram test with partitions
* [t30015](./test_cases/t30015.md) - C++20 modules package diagram test with partition dependencies
## Include diagrams
* [t40001](./test_cases/t40001.md) - Basic include graph diagram test case
* [t40002](./test_cases/t40002.md) - Cyclic include graph diagram test case

View File

@@ -139,8 +139,8 @@ private:
"raw": "/// \\brief This is class A",
"text": "\n \n"
},
"display_name": "A",
"id": "7901073918843258388",
"display_name": "clanguml::t00002::A",
"id": "987634239855407298",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -158,7 +158,6 @@ private:
"raw": "/// Abstract foo_a",
"text": "\n Abstract foo_a\n"
},
"display_name": "foo_a",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -181,7 +180,6 @@ private:
"line": 10,
"translation_unit": "t00002.cc"
},
"template_parameters": [],
"type": "void"
},
{
@@ -194,7 +192,6 @@ private:
"raw": "/// Abstract foo_c",
"text": "\n Abstract foo_c\n"
},
"display_name": "foo_c",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -217,7 +214,6 @@ private:
"line": 12,
"translation_unit": "t00002.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -236,7 +232,7 @@ private:
"bases": [
{
"access": "public",
"id": "7901073918843258388",
"id": "987634239855407298",
"is_virtual": false,
"name": "clanguml::t00002::A"
}
@@ -252,8 +248,8 @@ private:
"raw": "/// \\brief This is class B",
"text": "\n \n"
},
"display_name": "B",
"id": "4753875669499007606",
"display_name": "clanguml::t00002::B",
"id": "594234458687375950",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -263,7 +259,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "foo_a",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -286,7 +281,6 @@ private:
"line": 18,
"translation_unit": "t00002.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -305,7 +299,7 @@ private:
"bases": [
{
"access": "public",
"id": "7901073918843258388",
"id": "987634239855407298",
"is_virtual": false,
"name": "clanguml::t00002::A"
}
@@ -322,8 +316,8 @@ private:
"raw": "/// @brief This is class C - class C has a long comment\n///\n/// Vivamus integer non suscipit taciti mus etiam at primis tempor sagittis sit,\n/// euismod libero facilisi aptent elementum felis blandit cursus gravida sociis\n/// erat ante, eleifend lectus nullam dapibus netus feugiat curae curabitur est\n/// ad.",
"text": "\n \n\n Vivamus integer non suscipit taciti mus etiam at primis tempor sagittis sit,\n euismod libero facilisi aptent elementum felis blandit cursus gravida sociis\n erat ante, eleifend lectus nullam dapibus netus feugiat curae curabitur est\n ad.\n"
},
"display_name": "C",
"id": "9139995436788700062",
"display_name": "clanguml::t00002::C",
"id": "1142499429598587507",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -341,7 +335,6 @@ private:
"raw": "/// Do nothing unless override is provided",
"text": "\n Do nothing unless override is provided\n"
},
"display_name": "foo_c",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -364,7 +357,6 @@ private:
"line": 30,
"translation_unit": "t00002.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -383,13 +375,13 @@ private:
"bases": [
{
"access": "public",
"id": "4753875669499007606",
"id": "594234458687375950",
"is_virtual": false,
"name": "clanguml::t00002::B"
},
{
"access": "public",
"id": "9139995436788700062",
"id": "1142499429598587507",
"is_virtual": false,
"name": "clanguml::t00002::C"
}
@@ -402,8 +394,8 @@ private:
"raw": "/// This is class D\n/// which is a little like B\n/// and a little like C",
"text": "\n This is class D\n which is a little like B\n and a little like C\n"
},
"display_name": "D",
"id": "487603959843317797",
"display_name": "clanguml::t00002::D",
"id": "60950494980414724",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -442,7 +434,6 @@ private:
"raw": "/**\n * Forward foo_a\n */",
"text": "\n Forward foo_a\n"
},
"display_name": "foo_a",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -465,7 +456,6 @@ private:
"line": 41,
"translation_unit": "t00002.cc"
},
"template_parameters": [],
"type": "void"
},
{
@@ -478,7 +468,6 @@ private:
"raw": "/**\n * Forward foo_c\n */",
"text": "\n Forward foo_c\n"
},
"display_name": "foo_c",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -501,7 +490,6 @@ private:
"line": 50,
"translation_unit": "t00002.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -520,19 +508,19 @@ private:
"bases": [
{
"access": "public",
"id": "4753875669499007606",
"id": "594234458687375950",
"is_virtual": true,
"name": "clanguml::t00002::B"
},
{
"access": "public",
"id": "9139995436788700062",
"id": "1142499429598587507",
"is_virtual": true,
"name": "clanguml::t00002::C"
}
],
"display_name": "E",
"id": "17903093362471729766",
"display_name": "clanguml::t00002::E",
"id": "2237886670308966220",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -571,7 +559,6 @@ private:
"raw": "///\n /// Forward foo_a\n ///",
"text": "\n Forward foo_a\n"
},
"display_name": "foo_a",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -594,7 +581,6 @@ private:
"line": 66,
"translation_unit": "t00002.cc"
},
"template_parameters": [],
"type": "void"
},
{
@@ -607,7 +593,6 @@ private:
"raw": "///\n /// Forward foo_c\n ///",
"text": "\n Forward foo_c\n"
},
"display_name": "foo_c",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -630,7 +615,6 @@ private:
"line": 75,
"translation_unit": "t00002.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -647,56 +631,55 @@ private:
}
],
"name": "t00002_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "7901073918843258388",
"source": "4753875669499007606",
"destination": "987634239855407298",
"source": "594234458687375950",
"type": "extension"
},
{
"access": "public",
"destination": "7901073918843258388",
"source": "9139995436788700062",
"destination": "987634239855407298",
"source": "1142499429598587507",
"type": "extension"
},
{
"access": "private",
"destination": "7901073918843258388",
"destination": "987634239855407298",
"label": "as",
"source": "487603959843317797",
"source": "60950494980414724",
"type": "association"
},
{
"access": "public",
"destination": "4753875669499007606",
"source": "487603959843317797",
"destination": "594234458687375950",
"source": "60950494980414724",
"type": "extension"
},
{
"access": "public",
"destination": "9139995436788700062",
"source": "487603959843317797",
"destination": "1142499429598587507",
"source": "60950494980414724",
"type": "extension"
},
{
"access": "private",
"destination": "7901073918843258388",
"destination": "987634239855407298",
"label": "as",
"source": "17903093362471729766",
"source": "2237886670308966220",
"type": "association"
},
{
"access": "public",
"destination": "4753875669499007606",
"source": "17903093362471729766",
"destination": "594234458687375950",
"source": "2237886670308966220",
"type": "extension"
},
{
"access": "public",
"destination": "9139995436788700062",
"source": "17903093362471729766",
"destination": "1142499429598587507",
"source": "2237886670308966220",
"type": "extension"
}
],

View File

@@ -1,157 +1,183 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="383px" preserveAspectRatio="none" style="width:562px;height:383px;" version="1.1" viewBox="0 0 562 383" width="562px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="422px" preserveAspectRatio="none" style="width:567px;height:422px;background:#FFFFFF;" version="1.1" viewBox="0 0 567 422" width="567px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1q2qgu2mpw38v" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="250" x="160" y="16.708">Basic class diagram example</text>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L7" target="_top" title="This is class A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L7" xlink:show="new" xlink:title="This is class A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1q2qgu2mpw38v)" height="73.6094" id="C_0007901073918843258388" style="stroke: #A80036; stroke-width: 1.5;" width="125" x="294" y="28.9531"/>
<ellipse cx="348.25" cy="44.9531" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M348.3594,40.2969 L347.2031,45.375 L349.5313,45.375 L348.3594,40.2969 Z M346.875,38.0625 L349.8594,38.0625 L353.2188,50.4531 L350.7656,50.4531 L350,47.3906 L346.7188,47.3906 L345.9688,50.4531 L343.5313,50.4531 L346.875,38.0625 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="8" x="368.75" y="49.1074">A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="295" x2="418" y1="60.9531" y2="60.9531"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="198" x="177.75" y="23.0059">Basic class diagram example</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L7" target="_top" title="This is class A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L7" xlink:show="new" xlink:title="This is class A" xlink:type="simple">
<g id="elem_C_0000987634239855407298">
<rect codeLine="3" fill="#F1F1F1" height="85.7998" id="C_0000987634239855407298" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="134" x="292" y="44.7999"/>
<ellipse cx="350.25" cy="60.7999" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M351.7813,62.7374 L352.1094,63.5343 L351.8281,63.5343 C351.375,63.5343 351.25,63.5656 351.0781,63.6749 C350.7969,63.8156 350.625,64.1124 350.625,64.4093 C350.625,64.7062 350.7656,64.9562 351,65.1281 C351.1719,65.2531 351.4063,65.2999 351.8281,65.2999 L354.1875,65.2999 C354.5469,65.2999 354.7969,65.2687 354.9375,65.1749 C355.2031,65.0343 355.375,64.7218 355.375,64.4093 C355.375,64.1437 355.2344,63.8781 355,63.7062 C354.8125,63.5812 354.6563,63.5499 354.2031,63.5343 L350.8125,55.7062 L347.0938,55.7062 C346.6406,55.7062 346.5,55.7218 346.3281,55.8312 C346.0625,56.0031 345.8906,56.2843 345.8906,56.5812 C345.8906,56.8624 346.0313,57.1281 346.2813,57.2999 C346.4531,57.4249 346.6406,57.4562 347.0938,57.4562 L348.0625,57.4562 L345.4844,63.5343 C344.7344,63.5343 344.3281,63.8312 344.3281,64.4093 C344.3281,65.0187 344.7188,65.2999 345.5156,65.2999 L347.7813,65.2999 C348.1406,65.2999 348.3906,65.2687 348.5313,65.1749 C348.7969,65.0187 348.9688,64.7218 348.9688,64.4093 C348.9688,64.1437 348.8281,63.8781 348.5938,63.7062 C348.4063,63.5656 348.25,63.5343 347.7813,63.5343 L347.4844,63.5343 L347.8281,62.7374 L351.7813,62.7374 Z M351.0156,60.9874 L348.5625,60.9874 L349.7969,58.1124 L351.0156,60.9874 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="9" x="370.75" y="66.7499">A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="293" x2="425" y1="76.7999" y2="76.7999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L10" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L10" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="298" y="86.7499"/>
<ellipse cx="303" cy="91.7499" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L10" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L10" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="108" x="312" y="96.1999">foo_a() = 0 : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L12" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L12" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="298" y="105.6498"/>
<ellipse cx="303" cy="110.6498" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L12" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L12" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="107" x="312" y="115.0998">foo_c() = 0 : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="293" x2="425" y1="122.5998" y2="122.5998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L10" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L10" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="300" y="66.9531"/>
<ellipse cx="305" cy="71.9531" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L16" target="_top" title="This is class B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L16" xlink:show="new" xlink:title="This is class B" xlink:type="simple">
<g id="elem_C_0000594234458687375950">
<rect codeLine="9" fill="#F1F1F1" height="64.7999" id="C_0000594234458687375950" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="110" x="61" y="191.5999"/>
<ellipse cx="107.25" cy="207.5999" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M102.25,208.7562 C102.25,211.2562 104.3906,213.0687 107.3125,213.0687 C108.5469,213.0687 109.7188,212.7718 110.4688,212.2562 C111.0781,211.8343 111.4063,211.4124 111.4063,211.0062 C111.4063,210.5374 110.9844,210.1312 110.4844,210.1312 C110.25,210.1312 110.0313,210.2093 109.8281,210.4124 C109.3906,210.8499 109.3906,210.8499 109.2188,210.9437 C108.7656,211.1781 108.125,211.3187 107.3594,211.3187 C105.3594,211.3187 104.0781,210.3031 104.0781,208.7249 L104.0781,207.6781 C104.0781,205.9749 105.2969,204.7718 107,204.7718 C107.5781,204.7718 108.1563,204.9124 108.625,205.1624 C109.0938,205.4281 109.2656,205.6156 109.3281,205.9749 C109.4531,206.6468 109.7031,206.8968 110.2344,206.8968 C110.5156,206.8968 110.7969,206.7562 110.9844,206.5374 C111.1094,206.3656 111.1563,206.1937 111.1563,205.7562 L111.1563,204.3968 C111.1563,203.9749 111.1406,203.8343 111.0156,203.6624 C110.8438,203.4124 110.5625,203.2562 110.2344,203.2562 C109.9219,203.2562 109.7188,203.3656 109.5,203.6312 C108.3281,203.1312 107.8906,203.0218 106.9375,203.0218 C104.2656,203.0218 102.25,205.0374 102.25,207.6624 L102.25,208.7562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="127.75" y="212.2059">B</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="62" x2="170" y1="223.5999" y2="223.5999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L18" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L18" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="67" y="232.4999"/>
<ellipse cx="72" cy="237.4999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L18" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L18" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="84" x="81" y="240.6059">foo_a() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="62" x2="170" y1="248.3999" y2="248.3999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L10" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L10" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="99" x="314" y="75.1636">foo_a() = 0 : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L27" target="_top" title="This is class C - class C has a long comment" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L27" xlink:show="new" xlink:title="This is class C - class C has a long comment" xlink:type="simple">
<g id="elem_C_0001142499429598587507">
<rect codeLine="14" fill="#F1F1F1" height="64.7999" id="C_0001142499429598587507" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="109" x="304.5" y="191.5999"/>
<ellipse cx="349.75" cy="207.5999" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M344.75,208.7562 C344.75,211.2562 346.8906,213.0687 349.8125,213.0687 C351.0469,213.0687 352.2188,212.7718 352.9688,212.2562 C353.5781,211.8343 353.9063,211.4124 353.9063,211.0062 C353.9063,210.5374 353.4844,210.1312 352.9844,210.1312 C352.75,210.1312 352.5313,210.2093 352.3281,210.4124 C351.8906,210.8499 351.8906,210.8499 351.7188,210.9437 C351.2656,211.1781 350.625,211.3187 349.8594,211.3187 C347.8594,211.3187 346.5781,210.3031 346.5781,208.7249 L346.5781,207.6781 C346.5781,205.9749 347.7969,204.7718 349.5,204.7718 C350.0781,204.7718 350.6563,204.9124 351.125,205.1624 C351.5938,205.4281 351.7656,205.6156 351.8281,205.9749 C351.9531,206.6468 352.2031,206.8968 352.7344,206.8968 C353.0156,206.8968 353.2969,206.7562 353.4844,206.5374 C353.6094,206.3656 353.6563,206.1937 353.6563,205.7562 L353.6563,204.3968 C353.6563,203.9749 353.6406,203.8343 353.5156,203.6624 C353.3438,203.4124 353.0625,203.2562 352.7344,203.2562 C352.4219,203.2562 352.2188,203.3656 352,203.6312 C350.8281,203.1312 350.3906,203.0218 349.4375,203.0218 C346.7656,203.0218 344.75,205.0374 344.75,207.6624 L344.75,208.7562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="370.25" y="212.2059">C</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="305.5" x2="412.5" y1="223.5999" y2="223.5999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L30" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L30" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="310.5" y="232.4999"/>
<ellipse cx="315.5" cy="237.4999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L30" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L30" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="83" x="324.5" y="240.6059">foo_c() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="305.5" x2="412.5" y1="248.3999" y2="248.3999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L12" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L12" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="300" y="79.7578"/>
<ellipse cx="305" cy="84.7578" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L36" target="_top" title="D" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L36" xlink:show="new" xlink:title="D" xlink:type="simple">
<g id="elem_C_0000060950494980414724">
<rect codeLine="19" fill="#F1F1F1" height="98.3998" id="C_0000060950494980414724" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="153" x="39.5" y="317.3999"/>
<ellipse cx="106.75" cy="333.3999" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M101.75,334.5562 C101.75,337.0562 103.8906,338.8687 106.8125,338.8687 C108.0469,338.8687 109.2188,338.5718 109.9688,338.0562 C110.5781,337.6343 110.9063,337.2124 110.9063,336.8062 C110.9063,336.3374 110.4844,335.9312 109.9844,335.9312 C109.75,335.9312 109.5313,336.0093 109.3281,336.2124 C108.8906,336.6499 108.8906,336.6499 108.7188,336.7437 C108.2656,336.9781 107.625,337.1187 106.8594,337.1187 C104.8594,337.1187 103.5781,336.1031 103.5781,334.5249 L103.5781,333.4781 C103.5781,331.7749 104.7969,330.5718 106.5,330.5718 C107.0781,330.5718 107.6563,330.7124 108.125,330.9624 C108.5938,331.2281 108.7656,331.4156 108.8281,331.7749 C108.9531,332.4468 109.2031,332.6968 109.7344,332.6968 C110.0156,332.6968 110.2969,332.5562 110.4844,332.3374 C110.6094,332.1656 110.6563,331.9937 110.6563,331.5562 L110.6563,330.1968 C110.6563,329.7749 110.6406,329.6343 110.5156,329.4624 C110.3438,329.2124 110.0625,329.0562 109.7344,329.0562 C109.4219,329.0562 109.2188,329.1656 109,329.4312 C107.8281,328.9312 107.3906,328.8218 106.4375,328.8218 C103.7656,328.8218 101.75,330.8374 101.75,333.4624 L101.75,334.5562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="127.25" y="338.0059">D</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="40.5" x2="191.5" y1="349.3999" y2="349.3999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L41" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L41" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="45.5" y="358.2999"/>
<ellipse cx="50.5" cy="363.2999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L41" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L41" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="84" x="59.5" y="366.4059">foo_a() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L50" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L50" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="45.5" y="375.0998"/>
<ellipse cx="50.5" cy="380.0998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L50" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L50" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="83" x="59.5" y="383.2058">foo_c() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="40.5" x2="191.5" y1="390.9998" y2="390.9998"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L58" target="_top" title="as" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L58" xlink:show="new" xlink:title="as" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="45.5" y="399.8997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="47.5" y="401.8997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L58" target="_top" title="as" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L58" xlink:show="new" xlink:title="as" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="127" x="59.5" y="408.0057">as : std::vector&lt;A *&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L12" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L12" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="98" x="314" y="87.9683">foo_c() = 0 : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L61" target="_top" title="E" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L61" xlink:show="new" xlink:title="E" xlink:type="simple">
<g id="elem_C_0002237886670308966220">
<rect codeLine="26" fill="#F1F1F1" height="98.3998" id="C_0002237886670308966220" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="153" x="407.5" y="317.3999"/>
<ellipse cx="475.25" cy="333.3999" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M470.25,334.5562 C470.25,337.0562 472.3906,338.8687 475.3125,338.8687 C476.5469,338.8687 477.7188,338.5718 478.4688,338.0562 C479.0781,337.6343 479.4063,337.2124 479.4063,336.8062 C479.4063,336.3374 478.9844,335.9312 478.4844,335.9312 C478.25,335.9312 478.0313,336.0093 477.8281,336.2124 C477.3906,336.6499 477.3906,336.6499 477.2188,336.7437 C476.7656,336.9781 476.125,337.1187 475.3594,337.1187 C473.3594,337.1187 472.0781,336.1031 472.0781,334.5249 L472.0781,333.4781 C472.0781,331.7749 473.2969,330.5718 475,330.5718 C475.5781,330.5718 476.1563,330.7124 476.625,330.9624 C477.0938,331.2281 477.2656,331.4156 477.3281,331.7749 C477.4531,332.4468 477.7031,332.6968 478.2344,332.6968 C478.5156,332.6968 478.7969,332.5562 478.9844,332.3374 C479.1094,332.1656 479.1563,331.9937 479.1563,331.5562 L479.1563,330.1968 C479.1563,329.7749 479.1406,329.6343 479.0156,329.4624 C478.8438,329.2124 478.5625,329.0562 478.2344,329.0562 C477.9219,329.0562 477.7188,329.1656 477.5,329.4312 C476.3281,328.9312 475.8906,328.8218 474.9375,328.8218 C472.2656,328.8218 470.25,330.8374 470.25,333.4624 L470.25,334.5562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="495.75" y="338.0059">E</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="408.5" x2="559.5" y1="349.3999" y2="349.3999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L66" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L66" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="413.5" y="358.2999"/>
<ellipse cx="418.5" cy="363.2999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L66" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L66" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="84" x="427.5" y="366.4059">foo_a() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L75" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L75" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="413.5" y="375.0998"/>
<ellipse cx="418.5" cy="380.0998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L75" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L75" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="83" x="427.5" y="383.2058">foo_c() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="408.5" x2="559.5" y1="390.9998" y2="390.9998"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L83" target="_top" title="as" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L83" xlink:show="new" xlink:title="as" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="413.5" y="399.8997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="415.5" y="401.8997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L83" target="_top" title="as" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L83" xlink:show="new" xlink:title="as" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="127" x="427.5" y="408.0057">as : std::vector&lt;A *&gt;</text>
</a>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="295" x2="418" y1="94.5625" y2="94.5625"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L16" target="_top" title="This is class B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L16" xlink:show="new" xlink:title="This is class B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1q2qgu2mpw38v)" height="60.8047" id="C_0004753875669499007606" style="stroke: #A80036; stroke-width: 1.5;" width="100" x="69.5" y="163.9531"/>
<ellipse cx="111.5" cy="179.9531" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M114.4688,185.5938 Q113.8906,185.8906 113.25,186.0313 Q112.6094,186.1875 111.9063,186.1875 Q109.4063,186.1875 108.0781,184.5469 Q106.7656,182.8906 106.7656,179.7656 Q106.7656,176.6406 108.0781,174.9844 Q109.4063,173.3281 111.9063,173.3281 Q112.6094,173.3281 113.25,173.4844 Q113.9063,173.6406 114.4688,173.9375 L114.4688,176.6563 Q113.8438,176.0781 113.25,175.8125 Q112.6563,175.5313 112.0313,175.5313 Q110.6875,175.5313 110,176.6094 Q109.3125,177.6719 109.3125,179.7656 Q109.3125,181.8594 110,182.9375 Q110.6875,184 112.0313,184 Q112.6563,184 113.25,183.7344 Q113.8438,183.4531 114.4688,182.875 L114.4688,185.5938 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="131.5" y="184.1074">B</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="70.5" x2="168.5" y1="195.9531" y2="195.9531"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L18" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L18" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="75.5" y="201.9531"/>
<ellipse cx="80.5" cy="206.9531" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L18" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L18" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="89.5" y="210.1636">foo_a() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="70.5" x2="168.5" y1="216.7578" y2="216.7578"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L27" target="_top" title="This is class C - class C has a long comment" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L27" xlink:show="new" xlink:title="This is class C - class C has a long comment" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1q2qgu2mpw38v)" height="60.8047" id="C_0009139995436788700062" style="stroke: #A80036; stroke-width: 1.5;" width="99" x="307" y="163.9531"/>
<ellipse cx="348.55" cy="179.9531" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M351.5188,185.5938 Q350.9406,185.8906 350.3,186.0313 Q349.6594,186.1875 348.9563,186.1875 Q346.4563,186.1875 345.1281,184.5469 Q343.8156,182.8906 343.8156,179.7656 Q343.8156,176.6406 345.1281,174.9844 Q346.4563,173.3281 348.9563,173.3281 Q349.6594,173.3281 350.3,173.4844 Q350.9563,173.6406 351.5188,173.9375 L351.5188,176.6563 Q350.8938,176.0781 350.3,175.8125 Q349.7063,175.5313 349.0813,175.5313 Q347.7375,175.5313 347.05,176.6094 Q346.3625,177.6719 346.3625,179.7656 Q346.3625,181.8594 347.05,182.9375 Q347.7375,184 349.0813,184 Q349.7063,184 350.3,183.7344 Q350.8938,183.4531 351.5188,182.875 L351.5188,185.5938 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="368.45" y="184.1074">C</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="308" x2="405" y1="195.9531" y2="195.9531"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L30" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L30" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="313" y="201.9531"/>
<ellipse cx="318" cy="206.9531" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L30" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L30" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="73" x="327" y="210.1636">foo_c() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="308" x2="405" y1="216.7578" y2="216.7578"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L36" target="_top" title="D" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L36" xlink:show="new" xlink:title="D" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1q2qgu2mpw38v)" height="86.4141" id="C_0000487603959843317797" style="stroke: #A80036; stroke-width: 1.5;" width="148" x="33.5" y="285.9531"/>
<ellipse cx="98.75" cy="301.9531" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M101.7188,307.5938 Q101.1406,307.8906 100.5,308.0313 Q99.8594,308.1875 99.1563,308.1875 Q96.6563,308.1875 95.3281,306.5469 Q94.0156,304.8906 94.0156,301.7656 Q94.0156,298.6406 95.3281,296.9844 Q96.6563,295.3281 99.1563,295.3281 Q99.8594,295.3281 100.5,295.4844 Q101.1563,295.6406 101.7188,295.9375 L101.7188,298.6563 Q101.0938,298.0781 100.5,297.8125 Q99.9063,297.5313 99.2813,297.5313 Q97.9375,297.5313 97.25,298.6094 Q96.5625,299.6719 96.5625,301.7656 Q96.5625,303.8594 97.25,304.9375 Q97.9375,306 99.2813,306 Q99.9063,306 100.5,305.7344 Q101.0938,305.4531 101.7188,304.875 L101.7188,307.5938 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="9" x="119.25" y="306.1074">D</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="34.5" x2="180.5" y1="317.9531" y2="317.9531"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L41" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L41" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="39.5" y="323.9531"/>
<ellipse cx="44.5" cy="328.9531" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L41" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L41" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="53.5" y="332.1636">foo_a() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L50" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L50" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="39.5" y="336.7578"/>
<ellipse cx="44.5" cy="341.7578" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L50" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L50" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="73" x="53.5" y="344.9683">foo_c() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="34.5" x2="180.5" y1="351.5625" y2="351.5625"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L58" target="_top" title="as" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L58" xlink:show="new" xlink:title="as" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="39.5" y="357.5625"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="41.5" y="359.5625"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L58" target="_top" title="as" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L58" xlink:show="new" xlink:title="as" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="122" x="53.5" y="365.7729">as : std::vector&lt;A *&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L61" target="_top" title="E" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L61" xlink:show="new" xlink:title="E" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1q2qgu2mpw38v)" height="86.4141" id="C_0017903093362471729766" style="stroke: #A80036; stroke-width: 1.5;" width="148" x="403.5" y="285.9531"/>
<ellipse cx="469.25" cy="301.9531" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M472.2188,307.5938 Q471.6406,307.8906 471,308.0313 Q470.3594,308.1875 469.6563,308.1875 Q467.1563,308.1875 465.8281,306.5469 Q464.5156,304.8906 464.5156,301.7656 Q464.5156,298.6406 465.8281,296.9844 Q467.1563,295.3281 469.6563,295.3281 Q470.3594,295.3281 471,295.4844 Q471.6563,295.6406 472.2188,295.9375 L472.2188,298.6563 Q471.5938,298.0781 471,297.8125 Q470.4063,297.5313 469.7813,297.5313 Q468.4375,297.5313 467.75,298.6094 Q467.0625,299.6719 467.0625,301.7656 Q467.0625,303.8594 467.75,304.9375 Q468.4375,306 469.7813,306 Q470.4063,306 471,305.7344 Q471.5938,305.4531 472.2188,304.875 L472.2188,307.5938 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="489.75" y="306.1074">E</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="404.5" x2="550.5" y1="317.9531" y2="317.9531"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L66" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L66" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="409.5" y="323.9531"/>
<ellipse cx="414.5" cy="328.9531" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L66" target="_top" title="foo_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L66" xlink:show="new" xlink:title="foo_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="423.5" y="332.1636">foo_a() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L75" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L75" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="409.5" y="336.7578"/>
<ellipse cx="414.5" cy="341.7578" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L75" target="_top" title="foo_c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L75" xlink:show="new" xlink:title="foo_c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="73" x="423.5" y="344.9683">foo_c() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="404.5" x2="550.5" y1="351.5625" y2="351.5625"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L83" target="_top" title="as" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L83" xlink:show="new" xlink:title="as" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="409.5" y="357.5625"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="411.5" y="359.5625"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L83" target="_top" title="as" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L83" xlink:show="new" xlink:title="as" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="122" x="423.5" y="365.7729">as : std::vector&lt;A *&gt;</text>
</a>
<path d="M150,53.4531 L150,78.5859 A0,0 0 0 0 150,78.5859 L259,78.5859 A0,0 0 0 0 259,78.5859 L259,71.4531 L293.74,65.9531 L259,63.4531 L259,63.4531 L249,53.4531 L150,53.4531 A0,0 0 0 0 150,53.4531 " fill="#FBFB77" filter="url(#f1q2qgu2mpw38v)" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M249,53.4531 L249,63.4531 L259,63.4531 L249,53.4531 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="88" x="156" y="70.52">This is class A</text>
<path d="M6,53.4531 L6,78.5859 A0,0 0 0 0 6,78.5859 L61.94,78.5859 L105.69,163.8331 L69.94,78.5859 L115,78.5859 A0,0 0 0 0 115,78.5859 L115,63.4531 L105,53.4531 L6,53.4531 A0,0 0 0 0 6,53.4531 " fill="#FBFB77" filter="url(#f1q2qgu2mpw38v)" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M105,53.4531 L105,63.4531 L115,63.4531 L105,53.4531 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="88" x="12" y="70.52">This is class B</text>
<path d="M217,285.9531 L217,324.9531 L181.57,328.9531 L217,332.9531 L217,371.6172 A0,0 0 0 0 217,371.6172 L368,371.6172 A0,0 0 0 0 368,371.6172 L368,295.9531 L358,285.9531 L217,285.9531 A0,0 0 0 0 217,285.9531 " fill="#FBFB77" filter="url(#f1q2qgu2mpw38v)" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M358,285.9531 L358,295.9531 L368,295.9531 L358,285.9531 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="235" y="303.02"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="89" x="223" y="318.1528">This is class D</text>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="130" x="223" y="333.2856">which is a little like B</text>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="105" x="223" y="348.4185">and a little like C</text>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="227" y="363.5513"/>
<path d="M275.32,103.9131 C250.75,115.3331 227.18,126.5731 215.5,132.9531 C198.38,142.3031 180.15,153.4731 164.22,163.6531 " fill="none" id="C_0007901073918843258388&lt;-C_0004753875669499007606" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="272.59,97.4631,293.68,95.4331,278.46,110.1731,272.59,97.4631" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M356.5,123.5031 C356.5,137.3331 356.5,151.5931 356.5,163.5931 " fill="none" id="C_0007901073918843258388&lt;-C_0009139995436788700062" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="349.5,123.2031,356.5,103.2031,363.5,123.2031,349.5,123.2031" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M146.15,285.8431 C176.88,252.5231 221.11,204.9431 260.5,163.9531 C278.66,145.0531 299.06,124.3731 316.36,106.9831 " fill="none" id="C_0000487603959843317797-&gt;C_0007901073918843258388" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="320.23,103.0931,311.0448,106.6472,316.7016,106.6358,316.713,112.2926,320.23,103.0931" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="263.5" y="192.0195"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="15" x="273.5" y="199.02">as</text>
<path d="M114.96,245.5631 C113.76,258.8031 112.48,272.9731 111.32,285.7531 " fill="none" id="C_0004753875669499007606&lt;-C_0000487603959843317797" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="108.03,244.4731,116.81,225.1931,121.97,245.7431,108.03,244.4731" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M299.39,236.4931 C288.99,243.3231 278.07,250.0931 267.5,255.9531 C238.61,271.9731 229.64,272.4231 199.5,285.9531 C193.73,288.5431 187.77,291.2331 181.78,293.9431 " fill="none" id="C_0009139995436788700062&lt;-C_0000487603959843317797" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="295.79,230.4731,316.28,225.0731,303.64,242.0731,295.79,230.4731" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M467.23,285.8831 C458.11,251.9631 443.18,203.5431 423.5,163.9531 C413.76,144.3531 400.46,124.2031 388.29,107.3831 " fill="none" id="C_0017903093362471729766-&gt;C_0007901073918843258388" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="385.22,103.1831,387.3048,112.8088,388.1719,107.2188,393.7619,108.0858,385.22,103.1831" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="451.5" y="192.0195"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="15" x="461.5" y="199.02">as</text>
<path d="M188.64,221.4631 C191.97,222.6531 195.27,223.8231 198.5,224.9531 C281.02,253.8031 304.05,254.1931 385.5,285.9531 C391.39,288.2531 397.44,290.7331 403.49,293.3031 " fill="none" id="C_0004753875669499007606&lt;-C_0017903093362471729766" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="185.93,227.9231,169.53,214.5031,190.72,214.7731,185.93,227.9231" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M397.5,240.3431 C410.91,255.0331 425.74,271.2831 438.96,285.7531 " fill="none" id="C_0009139995436788700062&lt;-C_0017903093362471729766" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="391.97,244.6731,383.65,225.1931,402.31,235.2331,391.97,244.6731" style="stroke: #A80036; stroke-width: 1.0;"/>
<g id="elem_GMN15">
<path d="M149,74.8999 L149,100.4999 A0,0 0 0 0 149,100.4999 L257,100.4999 A0,0 0 0 0 257,100.4999 L257,92.8999 L291.82,87.6999 L257,84.8999 L257,84.8999 L247,74.8999 L149,74.8999 A0,0 0 0 0 149,74.8999 " fill="#FEFFDD" style="stroke:#181818;stroke-width:0.5;"/>
<path d="M247,74.8999 L247,84.8999 L257,84.8999 L247,74.8999 " fill="#FEFFDD" style="stroke:#181818;stroke-width:0.5;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="87" x="155" y="91.9769">This is class A</text>
</g>
<g id="elem_GMN18">
<path d="M6,74.8999 L6,100.4999 A0,0 0 0 0 6,100.4999 L60.97,100.4999 L102.78,191.2899 L68.97,100.4999 L114,100.4999 A0,0 0 0 0 114,100.4999 L114,84.8999 L104,74.8999 L6,74.8999 A0,0 0 0 0 6,74.8999 " fill="#FEFFDD" style="stroke:#181818;stroke-width:0.5;"/>
<path d="M104,74.8999 L104,84.8999 L114,84.8999 L104,74.8999 " fill="#FEFFDD" style="stroke:#181818;stroke-width:0.5;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="87" x="12" y="91.9769">This is class B</text>
</g>
<g id="elem_GMN21">
<path d="M228,322.5999 L228,362.5999 L192.91,366.5999 L228,370.5999 L228,410.6 A0,0 0 0 0 228,410.6 L372,410.6 A0,0 0 0 0 372,410.6 L372,332.5999 L362,322.5999 L228,322.5999 A0,0 0 0 0 228,322.5999 " fill="#FEFFDD" style="stroke:#181818;stroke-width:0.5;"/>
<path d="M362,322.5999 L362,332.5999 L372,332.5999 L362,322.5999 " fill="#FEFFDD" style="stroke:#181818;stroke-width:0.5;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="12" x="234" y="339.6769">   </text>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="87" x="234" y="355.277">This is class D</text>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="123" x="234" y="370.877">which is a little like B</text>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="97" x="234" y="386.477">and a little like C</text>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="4" x="234" y="402.077"> </text>
</g>
<g id="link_C_0000987634239855407298_C_0000594234458687375950">
<path codeLine="32" d="M275.8134,130.1859 C238.7334,148.6859 216.01,160.0299 215,160.5999 C198.18,170.0699 180.21,181.0999 164.26,191.2399 " fill="none" id="C_0000987634239855407298-backto-C_0000594234458687375950" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="291.92,122.1499,273.1347,124.817,278.492,135.5547,291.92,122.1499" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000987634239855407298_C_0001142499429598587507">
<path codeLine="33" d="M359,148.8299 C359,168.3599 359,173.1999 359,191.2599 " fill="none" id="C_0000987634239855407298-backto-C_0001142499429598587507" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="359,130.8299,353,148.8299,365,148.8299,359,130.8299" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000060950494980414724_C_0000987634239855407298">
<path codeLine="34" d="M154.1,317.0699 C182.32,281.6599 222.12,232.8499 259,191.5999 C277.26,171.1699 294.0878,153.5728 312.1278,135.2728 " fill="none" id="C_0000060950494980414724-to-C_0000987634239855407298" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="316.34,130.9999,307.1731,134.6011,312.8299,134.5607,312.8703,140.2174,316.34,130.9999" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="262" y="221.7999"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="14" x="272" y="228.5769">as</text>
</g>
<g id="link_C_0000594234458687375950_C_0000060950494980414724">
<path codeLine="35" d="M116,274.5499 C116,292.3699 116,296.9999 116,317.0299 " fill="none" id="C_0000594234458687375950-backto-C_0000060950494980414724" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="116,256.5499,110,274.5499,122,274.5499,116,256.5499" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001142499429598587507_C_0000060950494980414724">
<path codeLine="36" d="M299.4477,267.0389 C284.6377,277.1789 282.75,278.0199 267,287.3999 C259.45,291.8899 226.29,309.1099 192.97,326.2399 " fill="none" id="C_0001142499429598587507-backto-C_0000060950494980414724" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="314.3,256.8699,296.058,262.0881,302.8373,271.9897,314.3,256.8699" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002237886670308966220_C_0000987634239855407298">
<path codeLine="37" d="M473.6,317.1799 C464.89,281.3899 450.7,232.0599 431,191.5999 C420.69,170.4299 409.8342,153.6366 396.5942,135.7066 " fill="none" id="C_0002237886670308966220-to-C_0000987634239855407298" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="393.03,130.8799,395.1584,140.496,396.0001,134.9022,401.594,135.7438,393.03,130.8799" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="459" y="221.7999"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="14" x="469" y="228.5769">as</text>
</g>
<g id="link_C_0000594234458687375950_C_0002237886670308966220">
<path codeLine="38" d="M188.2692,253.0527 C197.1292,256.3827 189.37,253.3799 198,256.3999 C282.51,285.9799 307.21,283.2999 390,317.3999 C395.6,319.7099 401.31,322.2199 407.02,324.8399 " fill="none" id="C_0000594234458687375950-backto-C_0002237886670308966220" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="171.42,246.7199,186.1583,258.6691,190.3801,247.4362,171.42,246.7199" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001142499429598587507_C_0002237886670308966220">
<path codeLine="39" d="M399.0085,270.0033 C414.8485,287.8233 423.01,296.9999 440.82,317.0299 " fill="none" id="C_0001142499429598587507-backto-C_0002237886670308966220" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="387.05,256.5499,394.5241,273.9895,403.493,266.0171,387.05,256.5499" style="stroke:#181818;stroke-width:1.0;"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

@@ -1,67 +1,71 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-labelledby="chart-title-my-svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 -49 643.00390625 581" style="max-width: 643.004px; background-color: white;" width="643.00390625" id="my-svg">
<title id="chart-title-my-svg">Basic class diagram example</title>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 -49 660.78515625 581" style="max-width: 660.785px; background-color: white;" width="660.78515625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M446.5,176.92166101504392L471.439453125,187.2680508458699C496.37890625,197.61444067669595,546.2578125,218.30722033834797,569.7860734108881,233.4869435025073C593.3143343217762,248.66666666666666,590.4919498935523,258.3333333333333,589.0807576794404,263.1666666666667L587.6695654653284,268"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M350.4728594653179,214L347.9552474710983,218.16666666666666C345.4376354768786,222.33333333333334,340.4024114884393,230.66666666666666,337.88479949421964,239.66666666666666C335.3671875,248.66666666666666,335.3671875,258.3333333333333,335.3671875,263.1666666666667L335.3671875,268"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M104.48046875,420.18307505317534L90.25325520833333,412.8192292109795C76.02604166666667,405.45538336878354,47.571614583333336,390.7276916843918,33.344401041666664,371.94717917552924C19.1171875,353.1666666666667,19.1171875,330.3333333333333,19.1171875,307.5C19.1171875,284.6666666666667,19.1171875,261.8333333333333,70.72526041666667,238.30293795491482C122.33333333333333,214.77254257649636,225.54947916666666,190.54508515299275,277.1575520833333,178.43135644124092L328.765625,166.3176277294891"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M517.26953125,328.8916115796672L495.6634114583333,336.74300964972264C474.0572916666667,344.5944077197781,430.8450520833333,360.29720385988907,389.2994791666667,376.71270088837883C347.75390625,393.1281979168687,307.875,410.2563958337375,287.935546875,418.8204947921718L267.99609375,427.38459375060614"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M335.3671875,347L335.3671875,351.8333333333333C335.3671875,356.6666666666667,335.3671875,366.3333333333333,324.138671875,377.67959984632984C312.91015625,389.0258663593263,290.453125,402.0517327186526,279.224609375,408.56466589831575L267.99609375,415.0775990779789"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M461.21233742774564,401L457.6600207731214,396.8333333333333C454.1077041184971,392.6666666666667,447.0030708092486,384.3333333333333,443.4507541546243,368.75C439.8984375,353.1666666666667,439.8984375,330.3333333333333,439.8984375,307.5C439.8984375,284.6666666666667,439.8984375,261.8333333333333,437.38082550578036,246.25C434.8632135115607,230.66666666666666,429.8279895231214,222.33333333333334,427.3103775289017,218.16666666666666L424.7927655346821,214"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M576.13671875,347L576.13671875,351.8333333333333C576.13671875,356.6666666666667,576.13671875,366.3333333333333,573.126497772158,375.3333333333333C570.116276794316,384.3333333333333,564.095834838632,392.6666666666667,561.08561386079,396.8333333333333L558.075392882948,401"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M393.78125,332.9825861983183L410.2161458333333,340.15215516526524C426.6510416666667,347.32172413221224,459.5208333333333,361.6608620661061,476.9795204118497,372.9970976997197C494.4382074903661,384.3333333333333,496.48578998073225,392.6666666666667,497.50958122591527,396.8333333333333L498.5333724710983,401"/>
<path style="fill:none" class="edge-pattern-dotted relation" id="edgeNote9" d="M387.6328125,41L387.6328125,45.166666666666664C387.6328125,49.333333333333336,387.6328125,57.666666666666664,387.6328125,66C387.6328125,74.33333333333333,387.6328125,82.66666666666667,387.6328125,86.83333333333333L387.6328125,91"/>
<path style="fill:none" class="edge-pattern-dotted relation" id="edgeNote10" d="M576.13671875,169L576.13671875,180.66666666666666C576.13671875,192.33333333333334,576.13671875,215.66666666666666,576.13671875,232.16666666666666C576.13671875,248.66666666666666,576.13671875,258.3333333333333,576.13671875,263.1666666666667L576.13671875,268"/>
<path style="fill:none" class="edge-pattern-dotted relation" id="edgeNote11" d="M146.09375,351L146.09375,355.1666666666667C146.09375,359.3333333333333,146.09375,367.6666666666667,148.02749427986512,376C149.96123855973025,384.3333333333333,153.8287271194605,392.6666666666667,155.76247139932562,396.8333333333333L157.69621567919074,401"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M474.31429457979715,184.6657693554395L496.8406881914976,193.72147446286624C519.3670818031982,202.777179570293,564.419869026599,220.88858978514648,585.5350704241877,234.7776282259066C606.6502718217762,248.66666666666666,603.8278873935523,258.3333333333333,602.4166951794404,263.1666666666667L601.0055029653284,268"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M345.9667272259796,229.23018082356498L344.9410226883163,230.85848401963747C343.9153181506531,232.48678721571,341.86390907532655,235.74339360785498,340.8382045376633,242.20503013726082C339.8125,248.66666666666666,339.8125,258.3333333333333,339.8125,263.1666666666667L339.8125,268"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M108.92578125,421.27951321691216L93.95768229166667,413.73292768076016C78.98958333333333,406.1863421446081,49.053385416666664,391.0931710723041,34.085286458333336,372.1299188694854C19.1171875,353.1666666666667,19.1171875,330.3333333333333,19.1171875,307.5C19.1171875,284.6666666666667,19.1171875,261.8333333333333,70.12126595331993,238.65748300376916C121.12534440663988,215.481632674205,223.13350131327977,191.96326534840998,274.1375797665997,180.20408168551248L325.14165821991963,168.44489802261495"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M509.1758634081611,335.6819822126829L490.03001638180086,342.40165184390236C470.88416935544075,349.12132147512193,432.5924753027204,362.56066073756097,393.13673244302686,377.9083151236693C353.6809895833333,393.2559695097776,313.0611979166667,410.5119390195552,292.7513020833333,419.139923774444L272.44140625,427.7679085293328"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M339.8125,365L339.8125,366.8333333333333C339.8125,368.6666666666667,339.8125,372.3333333333333,328.583984375,380.67959984632984C317.35546875,389.0258663593263,294.8984375,402.0517327186526,283.669921875,408.56466589831575L272.44140625,415.0775990779789"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M470.74534862716763,401L467.08596760597305,396.8333333333333C463.4265865847785,392.6666666666667,456.1078245423892,384.3333333333333,452.4484435211946,368.75C448.7890625,353.1666666666667,448.7890625,330.3333333333333,448.7890625,307.5C448.7890625,284.6666666666667,448.7890625,261.8333333333333,446.69737674691896,247.0961211568647C444.60569099383787,232.3589089803961,440.4223194876757,225.71781796079222,438.33063373459464,222.39727245099027L436.23894798151355,219.07672694118833"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M589.47265625,365L589.47265625,366.8333333333333C589.47265625,368.6666666666667,589.47265625,372.3333333333333,586.3553709055876,378.3333333333333C583.2380855611754,384.3333333333333,577.0035148723507,392.6666666666667,573.8862295279383,396.8333333333333L570.7689441835261,401"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M419.27660699856824,340.7533726363654L433.3144902071402,346.6278105303045C447.3523734157122,352.5022484242436,475.42813983285606,364.2511242121218,490.4898142866111,374.2922287727276C505.5514887403661,384.3333333333333,507.59907123073225,392.6666666666667,508.62286247591527,396.8333333333333L509.6466537210983,401"/>
<path style="fill:none" class="edge-pattern-dotted relation" id="edgeNote9" d="M394.30078125,41L394.30078125,45.166666666666664C394.30078125,49.333333333333336,394.30078125,57.666666666666664,394.30078125,66C394.30078125,74.33333333333333,394.30078125,82.66666666666667,394.30078125,86.83333333333333L394.30078125,91"/>
<path style="fill:none" class="edge-pattern-dotted relation" id="edgeNote10" d="M589.47265625,169L589.47265625,180.66666666666666C589.47265625,192.33333333333334,589.47265625,215.66666666666666,589.47265625,232.16666666666666C589.47265625,248.66666666666666,589.47265625,258.3333333333333,589.47265625,263.1666666666667L589.47265625,268"/>
<path style="fill:none" class="edge-pattern-dotted relation" id="edgeNote11" d="M146.09375,351L146.09375,355.1666666666667C146.09375,359.3333333333333,146.09375,367.6666666666667,148.24162301300578,376C150.38949602601156,384.3333333333333,154.6852420520231,392.6666666666667,156.8331150650289,396.8333333333333L158.98098807803467,401"/>
</g>
<g class="edgeLabels">
<g class="edgeLabel">
@@ -111,7 +115,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(439.8984375, 307.5)" class="edgeLabel">
<g transform="translate(448.7890625, 307.5)" class="edgeLabel">
<g transform="translate(-11.1171875, -9)" class="label">
<foreignObject height="18" width="22.234375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -169,11 +173,11 @@
</g>
</g>
<g class="nodes">
<a transform="translate(387.6328125, 152.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L7">
<g title="This is class A" id="classId-C_0007901073918843258388-0" class="node default clickable">
<rect height="123" width="117.734375" y="-61.5" x="-58.8671875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="58.8671875" x1="-58.8671875" class="divider"/>
<line y2="6.5" y1="6.5" x2="58.8671875" x1="-58.8671875" class="divider"/>
<a transform="translate(394.30078125, 152.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L7">
<g title="This is class A" id="classId-C_0000987634239855407298-0" class="node default clickable">
<rect height="123" width="126.625" y="-61.5" x="-63.3125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="63.3125" x1="-63.3125" class="divider"/>
<line y2="6.5" y1="6.5" x2="63.3125" x1="-63.3125" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -54)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -185,24 +189,24 @@
<span class="nodeLabel">A</span>
</div>
</foreignObject>
<foreignObject transform="translate( -51.3671875, 14)" height="18" width="102.734375">
<foreignObject transform="translate( -55.8125, 14)" height="18" width="111.625">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+foo_a() : void</span>
<span style="font-style:italic;" class="nodeLabel">+foo_a() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -51.3671875, 36)" height="18" width="101.828125">
<foreignObject transform="translate( -55.8125, 36)" height="18" width="110.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+foo_c() : void</span>
<span style="font-style:italic;" class="nodeLabel">+foo_c() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(576.13671875, 307.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L16">
<g title="This is class B" id="classId-C_0004753875669499007606-1" class="node default clickable">
<rect height="79" width="117.734375" y="-39.5" x="-58.8671875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="58.8671875" x1="-58.8671875" class="divider"/>
<line y2="6.5" y1="6.5" x2="58.8671875" x1="-58.8671875" class="divider"/>
<a transform="translate(589.47265625, 307.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L16">
<g title="This is class B" id="classId-C_0000594234458687375950-1" class="node default clickable">
<rect height="79" width="126.625" y="-39.5" x="-63.3125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="63.3125" x1="-63.3125" class="divider"/>
<line y2="6.5" y1="6.5" x2="63.3125" x1="-63.3125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -214,19 +218,19 @@
<span class="nodeLabel">B</span>
</div>
</foreignObject>
<foreignObject transform="translate( -51.3671875, 14)" height="18" width="102.734375">
<foreignObject transform="translate( -55.8125, 14)" height="18" width="111.625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo_a() : void</span>
<span class="nodeLabel">+foo_a() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(335.3671875, 307.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L27">
<g title="This is class C - class C has a long comment" id="classId-C_0009139995436788700062-2" class="node default clickable">
<rect height="79" width="116.828125" y="-39.5" x="-58.4140625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="58.4140625" x1="-58.4140625" class="divider"/>
<line y2="6.5" y1="6.5" x2="58.4140625" x1="-58.4140625" class="divider"/>
<a transform="translate(339.8125, 307.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L27">
<g title="This is class C - class C has a long comment" id="classId-C_0001142499429598587507-2" class="node default clickable">
<rect height="79" width="125.71875" y="-39.5" x="-62.859375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="62.859375" x1="-62.859375" class="divider"/>
<line y2="6.5" y1="6.5" x2="62.859375" x1="-62.859375" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -238,16 +242,16 @@
<span class="nodeLabel">C</span>
</div>
</foreignObject>
<foreignObject transform="translate( -50.9140625, 14)" height="18" width="101.828125">
<foreignObject transform="translate( -55.359375, 14)" height="18" width="110.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo_c() : void</span>
<span class="nodeLabel">+foo_c() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(186.23828125, 462.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L36">
<g title="D" id="classId-C_0000487603959843317797-3" class="node default clickable">
<a transform="translate(190.68359375, 462.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L36">
<g title="D" id="classId-C_0000060950494980414724-3" class="node default clickable">
<rect height="123" width="163.515625" y="-61.5" x="-81.7578125" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="81.7578125" x1="-81.7578125" class="divider"/>
<line y2="6.5" y1="6.5" x2="81.7578125" x1="-81.7578125" class="divider"/>
@@ -267,21 +271,21 @@
<span class="nodeLabel">-as : std::vector&lt;A *&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -74.2578125, 14)" height="18" width="102.734375">
<foreignObject transform="translate( -74.2578125, 14)" height="18" width="111.625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo_a() : void</span>
<span class="nodeLabel">+foo_a() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -74.2578125, 36)" height="18" width="101.828125">
<foreignObject transform="translate( -74.2578125, 36)" height="18" width="110.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo_c() : void</span>
<span class="nodeLabel">+foo_c() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(513.64453125, 462.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00002/t00002.cc#L61">
<g title="E" id="classId-C_0017903093362471729766-4" class="node default clickable">
<a transform="translate(524.7578125, 462.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00002/t00002.cc#L61">
<g title="E" id="classId-C_0002237886670308966220-4" class="node default clickable">
<rect height="123" width="163.515625" y="-61.5" x="-81.7578125" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="81.7578125" x1="-81.7578125" class="divider"/>
<line y2="6.5" y1="6.5" x2="81.7578125" x1="-81.7578125" class="divider"/>
@@ -301,20 +305,20 @@
<span class="nodeLabel">-as : std::vector&lt;A *&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -74.2578125, 14)" height="18" width="102.734375">
<foreignObject transform="translate( -74.2578125, 14)" height="18" width="111.625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo_a() : void</span>
<span class="nodeLabel">+foo_a() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -74.2578125, 36)" height="18" width="101.828125">
<foreignObject transform="translate( -74.2578125, 36)" height="18" width="110.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo_c() : void</span>
<span class="nodeLabel">+foo_c() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<g transform="translate(387.6328125, 24.5)" id="note0" class="node undefined">
<g transform="translate(394.30078125, 24.5)" id="note0" class="node undefined">
<rect height="33" width="116.359375" y="-16.5" x="-58.1796875" ry="0" rx="0"/>
<g transform="translate(-50.6796875, -9)" style="" class="label">
<rect/>
@@ -325,7 +329,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(576.13671875, 152.5)" id="note1" class="node undefined">
<g transform="translate(589.47265625, 152.5)" id="note1" class="node undefined">
<rect height="33" width="117.25" y="-16.5" x="-58.625" ry="0" rx="0"/>
<g transform="translate(-51.125, -9)" style="" class="label">
<rect/>
@@ -350,5 +354,5 @@
</g>
</g>
</g>
<text class="classTitleText" y="-25" x="321.501953125">Basic class diagram example</text>
<text class="classTitleText" y="-25" x="330.392578125">Basic class diagram example</text>
</svg>

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

@@ -103,8 +103,8 @@ int A::static_int = 1;
"elements": [
{
"bases": [],
"display_name": "A",
"id": "10975613308274365816",
"display_name": "clanguml::t00003::A",
"id": "1371951663534295727",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -235,7 +235,6 @@ int A::static_int = 1;
"methods": [
{
"access": "public",
"display_name": "A",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -258,12 +257,10 @@ int A::static_int = 1;
"line": 9,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "A",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -291,12 +288,10 @@ int A::static_int = 1;
"line": 10,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "A",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -324,12 +319,10 @@ int A::static_int = 1;
"line": 21,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "A",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -357,12 +350,10 @@ int A::static_int = 1;
"line": 22,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "~A",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -385,12 +376,10 @@ int A::static_int = 1;
"line": 23,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "basic_method",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -413,12 +402,10 @@ int A::static_int = 1;
"line": 25,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "static_method",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -441,12 +428,10 @@ int A::static_int = 1;
"line": 26,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "const_method",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -469,12 +454,10 @@ int A::static_int = 1;
"line": 27,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "auto_method",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -497,12 +480,10 @@ int A::static_int = 1;
"line": 28,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "operator++",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -525,12 +506,10 @@ int A::static_int = 1;
"line": 30,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "A &"
},
{
"access": "public",
"display_name": "operator=",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -558,12 +537,10 @@ int A::static_int = 1;
"line": 36,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "A &"
},
{
"access": "public",
"display_name": "operator=",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -591,12 +568,10 @@ int A::static_int = 1;
"line": 37,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "A &"
},
{
"access": "public",
"display_name": "size",
"is_const": true,
"is_consteval": false,
"is_constexpr": true,
@@ -619,12 +594,10 @@ int A::static_int = 1;
"line": 39,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "std::size_t"
},
{
"access": "public",
"display_name": "double_int",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -652,12 +625,10 @@ int A::static_int = 1;
"line": 41,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "sum",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -689,12 +660,10 @@ int A::static_int = 1;
"line": 42,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "default_int",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -723,12 +692,10 @@ int A::static_int = 1;
"line": 44,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "default_string",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -761,12 +728,10 @@ int A::static_int = 1;
"line": 45,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "std::string"
},
{
"access": "public",
"display_name": "create_from_int",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -794,12 +759,10 @@ int A::static_int = 1;
"line": 50,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "A"
},
{
"access": "protected",
"display_name": "protected_method",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -822,12 +785,10 @@ int A::static_int = 1;
"line": 58,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "private",
"display_name": "private_method",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -850,12 +811,10 @@ int A::static_int = 1;
"line": 67,
"translation_unit": "t00003.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "A<T>",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -877,14 +836,6 @@ int A::static_int = 1;
"type": "T"
}
],
"template_parameters": [
{
"is_variadic": false,
"kind": "template_type",
"name": "T",
"template_parameters": []
}
],
"type": "void"
}
],
@@ -901,7 +852,6 @@ int A::static_int = 1;
}
],
"name": "t00003_class",
"package_type": "namespace",
"relationships": [],
"using_namespace": "clanguml::t00003"
}

View File

@@ -1,236 +1,232 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="486px" preserveAspectRatio="none" style="width:347px;height:486px;" version="1.1" viewBox="0 0 347 486" width="347px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="613px" preserveAspectRatio="none" style="width:369px;height:613px;background:#FFFFFF;" version="1.1" viewBox="0 0 369 613" width="369px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1h7j0gmw5hza3" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1h7j0gmw5hza3)" height="468.9453" id="C_0010975613308274365816" style="stroke: #A80036; stroke-width: 1.5;" width="329" x="7" y="7"/>
<ellipse cx="163.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M166.2188,28.6406 Q165.6406,28.9375 165,29.0781 Q164.3594,29.2344 163.6563,29.2344 Q161.1563,29.2344 159.8281,27.5938 Q158.5156,25.9375 158.5156,22.8125 Q158.5156,19.6875 159.8281,18.0313 Q161.1563,16.375 163.6563,16.375 Q164.3594,16.375 165,16.5313 Q165.6563,16.6875 166.2188,16.9844 L166.2188,19.7031 Q165.5938,19.125 165,18.8594 Q164.4063,18.5781 163.7813,18.5781 Q162.4375,18.5781 161.75,19.6563 Q161.0625,20.7188 161.0625,22.8125 Q161.0625,24.9063 161.75,25.9844 Q162.4375,27.0469 163.7813,27.0469 Q164.4063,27.0469 165,26.7813 Q165.5938,26.5 166.2188,25.9219 L166.2188,28.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="183.75" y="27.1543">A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="8" x2="335" y1="39" y2="39"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L9" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L9" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="45"/>
<ellipse cx="18" cy="50" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L9" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L9" xlink:show="new" xlink:title="A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="106" x="27" y="53.2104">A() = default : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L10" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L10" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="57.8047"/>
<ellipse cx="18" cy="62.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L10" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L10" xlink:show="new" xlink:title="A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="71" x="27" y="66.0151">A(int i) : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L21" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L21" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="70.6094"/>
<ellipse cx="18" cy="75.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L21" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L21" xlink:show="new" xlink:title="A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="137" x="27" y="78.8198">A(A &amp;&amp;) = default : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L22" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L22" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="83.4141"/>
<ellipse cx="18" cy="88.4141" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L22" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L22" xlink:show="new" xlink:title="A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="165" x="27" y="91.6245">A(const A &amp;) = deleted : void</text>
</a>
<ellipse cx="18" cy="101.2188" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="90" x="27" y="104.4292">A&lt;T&gt;(T t) : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L23" target="_top" title="~A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L23" xlink:show="new" xlink:title="~A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="109.0234"/>
<ellipse cx="18" cy="114.0234" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L23" target="_top" title="~A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L23" xlink:show="new" xlink:title="~A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="115" x="27" y="117.2339">~A() = default : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8" x2="335" y1="123.8281" y2="123.8281"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L36" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L36" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="129.8281"/>
<ellipse cx="18" cy="134.8281" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L36" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L36" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="219" x="27" y="138.0386">operator=(A &amp;&amp; other) noexcept : A &amp;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L37" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L37" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="142.6328"/>
<ellipse cx="18" cy="147.6328" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L37" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L37" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="209" x="27" y="150.8433">operator=(A &amp; other) noexcept : A &amp;</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8" x2="335" y1="157.4375" y2="157.4375"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L30" target="_top" title="operator++" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L30" xlink:show="new" xlink:title="operator++" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="163.4375"/>
<ellipse cx="18" cy="168.4375" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L30" target="_top" title="operator++" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L30" xlink:show="new" xlink:title="operator++" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="108" x="27" y="171.6479">operator++() : A &amp;</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8" x2="335" y1="178.2422" y2="178.2422"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L28" target="_top" title="auto_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L28" xlink:show="new" xlink:title="auto_method" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="184.2422"/>
<ellipse cx="18" cy="189.2422" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L28" target="_top" title="auto_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L28" xlink:show="new" xlink:title="auto_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="108" x="27" y="192.4526">auto_method() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L25" target="_top" title="basic_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L25" xlink:show="new" xlink:title="basic_method" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="197.0469"/>
<ellipse cx="18" cy="202.0469" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L25" target="_top" title="basic_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L25" xlink:show="new" xlink:title="basic_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="122" x="27" y="205.2573">basic_method() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L27" target="_top" title="const_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L27" xlink:show="new" xlink:title="const_method" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="209.8516"/>
<ellipse cx="18" cy="214.8516" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L27" target="_top" title="const_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L27" xlink:show="new" xlink:title="const_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="158" x="27" y="218.062">const_method() const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L50" target="_top" title="create_from_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L50" xlink:show="new" xlink:title="create_from_int" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="222.6563"/>
<ellipse cx="18" cy="227.6563" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L50" target="_top" title="create_from_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L50" xlink:show="new" xlink:title="create_from_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="137" x="27" y="230.8667">create_from_int(int i) : A</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L44" target="_top" title="default_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L44" xlink:show="new" xlink:title="default_int" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="235.4609"/>
<ellipse cx="18" cy="240.4609" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L44" target="_top" title="default_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L44" xlink:show="new" xlink:title="default_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="145" x="27" y="243.6714">default_int(int i = 12) : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L45" target="_top" title="default_string" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L45" xlink:show="new" xlink:title="default_string" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="248.2656"/>
<ellipse cx="18" cy="253.2656" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L45" target="_top" title="default_string" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L45" xlink:show="new" xlink:title="default_string" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="303" x="27" y="256.4761">default_string(int i, std::string s = "abc") : std::string</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L41" target="_top" title="double_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L41" xlink:show="new" xlink:title="double_int" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="261.0703"/>
<ellipse cx="18" cy="266.0703" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L41" target="_top" title="double_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L41" xlink:show="new" xlink:title="double_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="148" x="27" y="269.2808">double_int(const int i) : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L67" target="_top" title="private_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L67" xlink:show="new" xlink:title="private_method" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="273.875"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="15" y="275.875"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L67" target="_top" title="private_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L67" xlink:show="new" xlink:title="private_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="131" x="27" y="282.0854">private_method() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L58" target="_top" title="protected_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L58" xlink:show="new" xlink:title="protected_method" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="286.6797"/>
<polygon fill="#FFFF44" points="18,286.6797,22,290.6797,18,294.6797,14,290.6797" style="stroke: #B38D22; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L58" target="_top" title="protected_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L58" xlink:show="new" xlink:title="protected_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="146" x="27" y="294.8901">protected_method() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L39" target="_top" title="size" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L39" xlink:show="new" xlink:title="size" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="299.4844"/>
<ellipse cx="18" cy="304.4844" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L39" target="_top" title="size" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L39" xlink:show="new" xlink:title="size" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="27" y="307.6948">size() constexpr const : std::size_t</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L26" target="_top" title="static_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L26" xlink:show="new" xlink:title="static_method" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="312.2891"/>
<ellipse cx="18" cy="317.2891" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L26" target="_top" title="static_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L26" xlink:show="new" xlink:title="static_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="114" x="27" y="320.4995">static_method() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L42" target="_top" title="sum" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L42" xlink:show="new" xlink:title="sum" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="325.0938"/>
<ellipse cx="18" cy="330.0938" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L42" target="_top" title="sum" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L42" xlink:show="new" xlink:title="sum" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="235" x="27" y="333.3042">sum(const double a, const double b) : int</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="8" x2="335" y1="339.8984" y2="339.8984"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" target="_top" title="a_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="a_" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="345.8984"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="15" y="347.8984"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" target="_top" title="a_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="a_" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="39" x="27" y="354.1089">a_ : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L55" target="_top" title="auto_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L55" xlink:show="new" xlink:title="auto_member" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="358.7031"/>
<ellipse cx="18" cy="363.7031" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L55" target="_top" title="auto_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L55" xlink:show="new" xlink:title="auto_member" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="206" x="27" y="366.9136">auto_member : const unsigned long</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" target="_top" title="b_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="b_" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="371.5078"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="15" y="373.5078"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" target="_top" title="b_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="b_" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="39" x="27" y="379.7183">b_ : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" target="_top" title="c_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="c_" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="384.3125"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="15" y="386.3125"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" target="_top" title="c_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="c_" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="38" x="27" y="392.5229">c_ : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L62" target="_top" title="compare" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L62" xlink:show="new" xlink:title="compare" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="397.1172"/>
<polygon fill="#FFFF44" points="18,397.1172,22,401.1172,18,405.1172,14,401.1172" style="stroke: #B38D22; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L62" target="_top" title="compare" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L62" xlink:show="new" xlink:title="compare" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="236" x="27" y="405.3276">compare : std::function&lt;bool (const int)&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L69" target="_top" title="private_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L69" xlink:show="new" xlink:title="private_member" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="409.9219"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="15" y="411.9219"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L69" target="_top" title="private_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L69" xlink:show="new" xlink:title="private_member" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="119" x="27" y="418.1323">private_member : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L60" target="_top" title="protected_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L60" xlink:show="new" xlink:title="protected_member" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="422.7266"/>
<polygon fill="none" points="18,422.7266,22,426.7266,18,430.7266,14,426.7266" style="stroke: #B38D22; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L60" target="_top" title="protected_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L60" xlink:show="new" xlink:title="protected_member" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="134" x="27" y="430.937">protected_member : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L52" target="_top" title="public_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L52" xlink:show="new" xlink:title="public_member" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="435.5313"/>
<ellipse cx="18" cy="440.5313" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L52" target="_top" title="public_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L52" xlink:show="new" xlink:title="public_member" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="113" x="27" y="443.7417">public_member : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L54" target="_top" title="static_const_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L54" xlink:show="new" xlink:title="static_const_int" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="448.3359"/>
<ellipse cx="18" cy="453.3359" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L54" target="_top" title="static_const_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L54" xlink:show="new" xlink:title="static_const_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="149" x="27" y="456.5464">static_const_int : const int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L53" target="_top" title="static_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L53" xlink:show="new" xlink:title="static_int" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="13" y="461.1406"/>
<ellipse cx="18" cy="466.1406" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L53" target="_top" title="static_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L53" xlink:show="new" xlink:title="static_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="77" x="27" y="469.3511">static_int : int</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001371951663534295727">
<rect codeLine="2" fill="#F1F1F1" height="592.7977" id="C_0001371951663534295727" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="348" x="7" y="7"/>
<ellipse cx="172.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M167.25,24.1563 C167.25,26.6563 169.3906,28.4688 172.3125,28.4688 C173.5469,28.4688 174.7188,28.1719 175.4688,27.6563 C176.0781,27.2344 176.4063,26.8125 176.4063,26.4063 C176.4063,25.9375 175.9844,25.5313 175.4844,25.5313 C175.25,25.5313 175.0313,25.6094 174.8281,25.8125 C174.3906,26.25 174.3906,26.25 174.2188,26.3438 C173.7656,26.5781 173.125,26.7188 172.3594,26.7188 C170.3594,26.7188 169.0781,25.7031 169.0781,24.125 L169.0781,23.0781 C169.0781,21.375 170.2969,20.1719 172,20.1719 C172.5781,20.1719 173.1563,20.3125 173.625,20.5625 C174.0938,20.8281 174.2656,21.0156 174.3281,21.375 C174.4531,22.0469 174.7031,22.2969 175.2344,22.2969 C175.5156,22.2969 175.7969,22.1563 175.9844,21.9375 C176.1094,21.7656 176.1563,21.5938 176.1563,21.1563 L176.1563,19.7969 C176.1563,19.375 176.1406,19.2344 176.0156,19.0625 C175.8438,18.8125 175.5625,18.6563 175.2344,18.6563 C174.9219,18.6563 174.7188,18.7656 174.5,19.0313 C173.3281,18.5313 172.8906,18.4219 171.9375,18.4219 C169.2656,18.4219 167.25,20.4375 167.25,23.0625 L167.25,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="192.75" y="27.606">A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="354" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L9" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L9" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="47.9"/>
<ellipse cx="18" cy="52.9" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L9" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L9" xlink:show="new" xlink:title="A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="116" x="27" y="56.0059">A() = default : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L10" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L10" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="64.6999"/>
<ellipse cx="18" cy="69.6999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L10" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L10" xlink:show="new" xlink:title="A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="79" x="27" y="72.8059">A(int i) : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L21" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L21" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="81.4998"/>
<ellipse cx="18" cy="86.4998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L21" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L21" xlink:show="new" xlink:title="A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="147" x="27" y="89.6058">A(A &amp;&amp;) = default : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L22" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L22" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="98.2997"/>
<ellipse cx="18" cy="103.2997" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L22" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L22" xlink:show="new" xlink:title="A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="180" x="27" y="106.4057">A(const A &amp;) = deleted : void</text>
</a>
<ellipse cx="18" cy="120.0997" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99" x="27" y="123.2057">A&lt;T&gt;(T t) : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L23" target="_top" title="~A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L23" xlink:show="new" xlink:title="~A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="131.8996"/>
<ellipse cx="18" cy="136.8996" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L23" target="_top" title="~A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L23" xlink:show="new" xlink:title="~A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="124" x="27" y="140.0056">~A() = default : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="8" x2="354" y1="147.7996" y2="147.7996"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L36" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L36" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="156.6995"/>
<ellipse cx="18" cy="161.6995" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L36" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L36" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="236" x="27" y="164.8055">operator=(A &amp;&amp; other) noexcept : A &amp;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L37" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L37" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="173.4995"/>
<ellipse cx="18" cy="178.4995" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L37" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L37" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="227" x="27" y="181.6054">operator=(A &amp; other) noexcept : A &amp;</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="8" x2="354" y1="189.3994" y2="189.3994"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L30" target="_top" title="operator++" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L30" xlink:show="new" xlink:title="operator++" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="198.2994"/>
<ellipse cx="18" cy="203.2994" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L30" target="_top" title="operator++" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L30" xlink:show="new" xlink:title="operator++" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="114" x="27" y="206.4054">operator++() : A &amp;</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="8" x2="354" y1="214.1993" y2="214.1993"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L28" target="_top" title="auto_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L28" xlink:show="new" xlink:title="auto_method" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="223.0993"/>
<ellipse cx="18" cy="228.0993" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L28" target="_top" title="auto_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L28" xlink:show="new" xlink:title="auto_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="121" x="27" y="231.2053">auto_method() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L25" target="_top" title="basic_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L25" xlink:show="new" xlink:title="basic_method" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="239.8992"/>
<ellipse cx="18" cy="244.8992" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L25" target="_top" title="basic_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L25" xlink:show="new" xlink:title="basic_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="137" x="27" y="248.0052">basic_method() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L27" target="_top" title="const_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L27" xlink:show="new" xlink:title="const_method" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="256.6992"/>
<ellipse cx="18" cy="261.6992" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L27" target="_top" title="const_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L27" xlink:show="new" xlink:title="const_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="176" x="27" y="264.8051">const_method() const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L50" target="_top" title="create_from_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L50" xlink:show="new" xlink:title="create_from_int" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="273.4991"/>
<ellipse cx="18" cy="278.4991" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L50" target="_top" title="create_from_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L50" xlink:show="new" xlink:title="create_from_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="153" x="27" y="281.6051">create_from_int(int i) : A</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L44" target="_top" title="default_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L44" xlink:show="new" xlink:title="default_int" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="290.299"/>
<ellipse cx="18" cy="295.299" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L44" target="_top" title="default_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L44" xlink:show="new" xlink:title="default_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="157" x="27" y="298.405">default_int(int i = 12) : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L45" target="_top" title="default_string" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L45" xlink:show="new" xlink:title="default_string" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="307.0989"/>
<ellipse cx="18" cy="312.0989" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L45" target="_top" title="default_string" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L45" xlink:show="new" xlink:title="default_string" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="322" x="27" y="315.2049">default_string(int i, std::string s = "abc") : std::string</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L41" target="_top" title="double_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L41" xlink:show="new" xlink:title="double_int" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="323.8989"/>
<ellipse cx="18" cy="328.8989" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L41" target="_top" title="double_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L41" xlink:show="new" xlink:title="double_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="163" x="27" y="332.0048">double_int(const int i) : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L67" target="_top" title="private_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L67" xlink:show="new" xlink:title="private_method" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="340.6988"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="342.6988"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L67" target="_top" title="private_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L67" xlink:show="new" xlink:title="private_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="147" x="27" y="348.8048">private_method() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L58" target="_top" title="protected_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L58" xlink:show="new" xlink:title="protected_method" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="357.4987"/>
<polygon fill="#FFFF44" points="18,357.4987,22,361.4987,18,365.4987,14,361.4987" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L58" target="_top" title="protected_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L58" xlink:show="new" xlink:title="protected_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="164" x="27" y="365.6047">protected_method() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L39" target="_top" title="size" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L39" xlink:show="new" xlink:title="size" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="374.2986"/>
<ellipse cx="18" cy="379.2986" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L39" target="_top" title="size" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L39" xlink:show="new" xlink:title="size" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="215" x="27" y="382.4046">size() constexpr const : std::size_t</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L26" target="_top" title="static_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L26" xlink:show="new" xlink:title="static_method" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="391.0986"/>
<ellipse cx="18" cy="396.0986" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L26" target="_top" title="static_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L26" xlink:show="new" xlink:title="static_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="126" x="27" y="399.2046">static_method() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L42" target="_top" title="sum" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L42" xlink:show="new" xlink:title="sum" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="407.8985"/>
<ellipse cx="18" cy="412.8985" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L42" target="_top" title="sum" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L42" xlink:show="new" xlink:title="sum" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="258" x="27" y="416.0045">sum(const double a, const double b) : int</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="354" y1="423.7985" y2="423.7985"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" target="_top" title="a_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="a_" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="432.6984"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="434.6984"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" target="_top" title="a_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="a_" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="43" x="27" y="440.8044">a_ : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L55" target="_top" title="auto_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L55" xlink:show="new" xlink:title="auto_member" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="449.4984"/>
<ellipse cx="18" cy="454.4984" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L55" target="_top" title="auto_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L55" xlink:show="new" xlink:title="auto_member" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="228" x="27" y="457.6043">auto_member : const unsigned long</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" target="_top" title="b_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="b_" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="466.2983"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="468.2983"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" target="_top" title="b_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="b_" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="43" x="27" y="474.4043">b_ : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" target="_top" title="c_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="c_" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="483.0982"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="485.0982"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" target="_top" title="c_" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L70" xlink:show="new" xlink:title="c_" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="42" x="27" y="491.2042">c_ : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L62" target="_top" title="compare" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L62" xlink:show="new" xlink:title="compare" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="499.8981"/>
<polygon fill="#FFFF44" points="18,499.8981,22,503.8981,18,507.8981,14,503.8981" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L62" target="_top" title="compare" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L62" xlink:show="new" xlink:title="compare" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="255" x="27" y="508.0041">compare : std::function&lt;bool (const int)&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L69" target="_top" title="private_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L69" xlink:show="new" xlink:title="private_member" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="516.6981"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="518.6981"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L69" target="_top" title="private_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L69" xlink:show="new" xlink:title="private_member" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="131" x="27" y="524.804">private_member : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L60" target="_top" title="protected_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L60" xlink:show="new" xlink:title="protected_member" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="533.498"/>
<polygon fill="none" points="18,533.498,22,537.498,18,541.498,14,537.498" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L60" target="_top" title="protected_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L60" xlink:show="new" xlink:title="protected_member" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="148" x="27" y="541.604">protected_member : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L52" target="_top" title="public_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L52" xlink:show="new" xlink:title="public_member" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="550.2979"/>
<ellipse cx="18" cy="555.2979" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L52" target="_top" title="public_member" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L52" xlink:show="new" xlink:title="public_member" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="125" x="27" y="558.4039">public_member : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L54" target="_top" title="static_const_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L54" xlink:show="new" xlink:title="static_const_int" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="567.0978"/>
<ellipse cx="18" cy="572.0978" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L54" target="_top" title="static_const_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L54" xlink:show="new" xlink:title="static_const_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="163" x="27" y="575.2038">static_const_int : const int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L53" target="_top" title="static_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L53" xlink:show="new" xlink:title="static_int" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="583.8978"/>
<ellipse cx="18" cy="588.8978" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L53" target="_top" title="static_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L53" xlink:show="new" xlink:title="static_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="83" x="27" y="592.0037">static_int : int</text>
</a>
</g>
</a>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

View File

@@ -1,50 +1,55 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 400.75 755" style="max-width: 400.75px; background-color: white;" width="400.75" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 409.640625 755" style="max-width: 409.641px; background-color: white;" width="409.640625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
@@ -52,11 +57,11 @@
<g class="edgePaths"/>
<g class="edgeLabels"/>
<g class="nodes">
<a transform="translate(200.375, 377.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00003/t00003.cc#L7">
<g title="A" id="classId-C_0010975613308274365816-0" class="node default clickable">
<rect height="739" width="384.75" y="-369.5" x="-192.375" class="outer title-state"/>
<line y2="-339.5" y1="-339.5" x2="192.375" x1="-192.375" class="divider"/>
<line y2="-103.5" y1="-103.5" x2="192.375" x1="-192.375" class="divider"/>
<a transform="translate(204.8203125, 377.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00003/t00003.cc#L7">
<g title="A" id="classId-C_0001371951663534295727-0" class="node default clickable">
<rect height="739" width="393.640625" y="-369.5" x="-196.8203125" class="outer title-state"/>
<line y2="-339.5" y1="-339.5" x2="196.8203125" x1="-196.8203125" class="divider"/>
<line y2="-103.5" y1="-103.5" x2="196.8203125" x1="-196.8203125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -68,159 +73,159 @@
<span class="nodeLabel">A</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -328)" height="18" width="53.359375">
<foreignObject transform="translate( -189.3203125, -328)" height="18" width="53.359375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-a_ : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -306)" height="18" width="263.734375">
<foreignObject transform="translate( -189.3203125, -306)" height="18" width="263.734375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+auto_member : const unsigned long</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -284)" height="18" width="53.359375">
<foreignObject transform="translate( -189.3203125, -284)" height="18" width="53.359375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-b_ : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -262)" height="18" width="52.46875">
<foreignObject transform="translate( -189.3203125, -262)" height="18" width="52.46875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-c_ : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -240)" height="18" width="294.390625">
<foreignObject transform="translate( -189.3203125, -240)" height="18" width="294.390625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">#compare : std::function&lt;bool (const int)&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -218)" height="18" width="151.171875">
<foreignObject transform="translate( -189.3203125, -218)" height="18" width="151.171875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-private_member : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -196)" height="18" width="173.421875">
<foreignObject transform="translate( -189.3203125, -196)" height="18" width="173.421875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">#protected_member : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -174)" height="18" width="148.96875">
<foreignObject transform="translate( -189.3203125, -174)" height="18" width="148.96875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+public_member : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -152)" height="18" width="192.546875">
<foreignObject transform="translate( -189.3203125, -152)" height="18" width="192.546875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+static_const_int : const int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -130)" height="18" width="102.71875">
<foreignObject transform="translate( -189.3203125, -130)" height="18" width="102.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+static_int : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -96)" height="18" width="134.734375">
<foreignObject transform="translate( -189.3203125, -96)" height="18" width="143.625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+A() : [default] void</span>
<span class="nodeLabel">+A() : : [default] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -74)" height="18" width="98.265625">
<foreignObject transform="translate( -189.3203125, -74)" height="18" width="107.15625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+A(int i) : void</span>
<span class="nodeLabel">+A(int i) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -52)" height="18" width="170.3125">
<foreignObject transform="translate( -189.3203125, -52)" height="18" width="179.203125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+A(A &amp;&amp;) : [default] void</span>
<span class="nodeLabel">+A(A &amp;&amp;) : : [default] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -30)" height="18" width="140.078125">
<foreignObject transform="translate( -189.3203125, -30)" height="18" width="148.96875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+A(const A &amp;) : void</span>
<span class="nodeLabel">+A(const A &amp;) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, -8)" height="18" width="91.734375">
<foreignObject transform="translate( -189.3203125, -8)" height="18" width="100.625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+A(T t) : void</span>
<span class="nodeLabel">+A(T t) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 14)" height="18" width="144.078125">
<foreignObject transform="translate( -189.3203125, 14)" height="18" width="152.96875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+~A() : [default] void</span>
<span class="nodeLabel">+~A() : : [default] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 36)" height="18" width="202.796875">
<foreignObject transform="translate( -189.3203125, 36)" height="18" width="211.6875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+operator=(A &amp;&amp; other) : A &amp;</span>
<span class="nodeLabel">+operator=(A &amp;&amp; other) : : A &amp;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 58)" height="18" width="192.125">
<foreignObject transform="translate( -189.3203125, 58)" height="18" width="201.015625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+operator=(A &amp; other) : A &amp;</span>
<span class="nodeLabel">+operator=(A &amp; other) : : A &amp;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 80)" height="18" width="135.640625">
<foreignObject transform="translate( -189.3203125, 80)" height="18" width="144.53125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+operator++() : A &amp;</span>
<span class="nodeLabel">+operator++() : : A &amp;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 102)" height="18" width="143.640625">
<foreignObject transform="translate( -189.3203125, 102)" height="18" width="152.53125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+auto_method() : int</span>
<span class="nodeLabel">+auto_method() : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 124)" height="18" width="162.3125">
<foreignObject transform="translate( -189.3203125, 124)" height="18" width="171.203125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+basic_method() : void</span>
<span class="nodeLabel">+basic_method() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 146)" height="18" width="214.78125">
<foreignObject transform="translate( -189.3203125, 146)" height="18" width="223.671875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+const_method() : [const] void</span>
<span class="nodeLabel">+const_method() : : [const] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 168)" height="18" width="179.1875">
<foreignObject transform="translate( -189.3203125, 168)" height="18" width="188.078125">
<div xmlns="http://www.w3.org/1999/xhtml" style="text-decoration: underline; display: inline-block; white-space: nowrap;">
<span style="text-decoration:underline;" class="nodeLabel">+create_from_int(int i) : A</span>
<span style="text-decoration:underline;" class="nodeLabel">+create_from_int(int i) : : A</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 190)" height="18" width="185">
<foreignObject transform="translate( -189.3203125, 190)" height="18" width="193.890625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+default_int(int i = 12) : int</span>
<span class="nodeLabel">+default_int(int i = 12) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 212)" height="18" width="369.75">
<foreignObject transform="translate( -189.3203125, 212)" height="18" width="378.640625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+default_string(int i, std::string s = "abc") : std::string</span>
<span class="nodeLabel">+default_string(int i, std::string s = "abc") : : std::string</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 234)" height="18" width="191.671875">
<foreignObject transform="translate( -189.3203125, 234)" height="18" width="200.5625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+double_int(const int i) : int</span>
<span class="nodeLabel">+double_int(const int i) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 256)" height="18" width="168.96875">
<foreignObject transform="translate( -189.3203125, 256)" height="18" width="177.859375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-private_method() : void</span>
<span class="nodeLabel">-private_method() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 278)" height="18" width="191.21875">
<foreignObject transform="translate( -189.3203125, 278)" height="18" width="200.109375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">#protected_method() : void</span>
<span class="nodeLabel">#protected_method() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 300)" height="18" width="259.21875">
<foreignObject transform="translate( -189.3203125, 300)" height="18" width="268.109375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+size() : [const,constexpr] std::size_t</span>
<span class="nodeLabel">+size() : : [const,constexpr] std::size_t</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 322)" height="18" width="149.84375">
<foreignObject transform="translate( -189.3203125, 322)" height="18" width="158.734375">
<div xmlns="http://www.w3.org/1999/xhtml" style="text-decoration: underline; display: inline-block; white-space: nowrap;">
<span style="text-decoration:underline;" class="nodeLabel">+static_method() : int</span>
<span style="text-decoration:underline;" class="nodeLabel">+static_method() : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -184.875, 344)" height="18" width="297.515625">
<foreignObject transform="translate( -189.3203125, 344)" height="18" width="306.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+sum(const double a, const double b) : int</span>
<span class="nodeLabel">+sum(const double a, const double b) : : int</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 52 KiB

View File

@@ -1,90 +1,81 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1292.50390625 716" style="max-width: 1292.5px; background-color: white;" width="1292.50390625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1239.9609375 525" style="max-width: 1239.96px; background-color: white;" width="1239.9609375" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M52.26500092455621,109L50.40117264546351,114.66666666666667C48.5373443663708,120.33333333333333,44.8096878081854,131.66666666666666,66.0571876540927,149.66830289267793C87.3046875,167.6699391186892,133.52734375,192.33987823737837,156.638671875,204.67484779672296L179.75,217.00981735606757"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M85.4849990754438,109L87.34882735453648,114.66666666666667C89.2126556336292,120.33333333333333,92.9403121918146,131.66666666666666,93.3253283621436,143C93.71034453247262,154.33333333333334,90.75272031494524,165.66666666666666,89.27390820618153,171.33333333333334L87.79509609741784,177"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M124.171875,81.91643991151655L148.212890625,92.09703325959713C172.25390625,102.27762660767769,220.3359375,122.63881330383884,242.8981410162363,138.4860733185861C265.4603445324726,154.33333333333334,262.50272031494524,165.66666666666666,261.02390820618155,171.33333333333334L259.54509609741785,177"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M409.45703125,109L409.45703125,114.66666666666667C409.45703125,120.33333333333333,409.45703125,131.66666666666666,409.45703125,150.33333333333334C409.45703125,169,409.45703125,195,409.45703125,208L409.45703125,221"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M396.03143028846154,278L390.61408253205127,289.5C385.196734775641,301,374.3620392628205,324,368.94469150641027,349.9166666666667C363.52734375,375.8333333333333,363.52734375,404.6666666666667,363.52734375,435C363.52734375,465.3333333333333,363.52734375,497.1666666666667,365.9711768877152,518.75C368.4150100254304,540.3333333333334,373.3026763008607,551.6666666666666,375.7465094385759,557.3333333333334L378.1903425762911,563"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M429.38076923076926,278L437.42017227564105,289.5C445.45957532051284,301,461.53838141025636,324,469.5777844551282,343.3333333333333C477.6171875,362.6666666666667,477.6171875,378.3333333333333,477.6171875,386.1666666666667L477.6171875,394"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M477.6171875,473L477.6171875,482.3333333333333C477.6171875,491.6666666666667,477.6171875,510.3333333333333,473.99051251956183,525.3333333333334C470.3638375391236,540.3333333333334,463.1104875782473,551.6666666666666,459.48381259780905,557.3333333333334L455.8571376173709,563"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id8" d="M566.05078125,278L566.05078125,289.5C566.05078125,301,566.05078125,324,595.97265625,347.340421729807C625.89453125,370.680843459614,685.73828125,394.361686919228,715.66015625,406.202108649035L745.58203125,418.042530378842"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M710.56640625,83.09118086696562L686.48046875,93.07598405580468C662.39453125,103.06078724464373,614.22265625,123.03039362232187,590.13671875,146.01519681116093C566.05078125,169,566.05078125,195,566.05078125,208L566.05078125,221"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M721.9733496671597,109L716.5969320142998,114.66666666666667C711.2205143614398,120.33333333333333,700.4676790557199,131.66666666666666,695.0912614028599,150.33333333333334C689.71484375,169,689.71484375,195,689.71484375,208L689.71484375,221"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M676.9046875,278L671.7356770833334,289.5C666.5666666666667,301,656.2286458333333,324,650.0992548771676,345.1666666666667C643.9698639210019,366.3333333333333,642.0491028420039,385.6666666666667,641.0887223025048,395.3333333333333L640.1283417630058,405"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id12" d="M707.5284855769231,278L714.7164463141025,289.5C721.9044070512822,301,736.280328525641,324,765.4090444711538,345.3580923878124C794.5377604166666,366.71618477562475,838.4192708333334,386.43236955124956,860.3600260416666,396.29046193906197L882.30078125,406.1485543268743"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id13" d="M783.8423862795858,109L785.4083687746548,114.66666666666667C786.9743512697238,120.33333333333333,790.106316259862,131.66666666666666,791.672298754931,155.08333333333334C793.23828125,178.5,793.23828125,214,793.23828125,248C793.23828125,282,793.23828125,314.5,792.4600418473025,338.5833333333333C791.6818024446051,362.6666666666667,790.12532363921,378.3333333333333,789.3470842365124,386.1666666666667L788.568844833815,394"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id14" d="M829.20703125,100.5423628857873L839.19140625,107.61863573815607C849.17578125,114.69490859052486,869.14453125,128.84745429526242,879.12890625,143.4237271476312C889.11328125,158,889.11328125,173,889.11328125,180.5L889.11328125,188"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id15" d="M1124.4638729659764,87L1113.863774346647,96.33333333333333C1103.2636757273176,105.66666666666667,1082.0634784886588,124.33333333333333,1071.4633798693294,139.33333333333334C1060.86328125,154.33333333333334,1060.86328125,165.66666666666666,1060.86328125,171.33333333333334L1060.86328125,177"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id16" d="M1180.8762712647929,87L1188.7504083456608,96.33333333333333C1196.6245454265286,105.66666666666667,1212.3728195882643,124.33333333333333,1220.2469566691323,146.66666666666666C1228.12109375,169,1228.12109375,195,1228.12109375,208L1228.12109375,221"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M68.875,100.5L68.875,107.58333333333333C68.875,114.66666666666667,68.875,128.83333333333334,68.875,141.58333333333334C68.875,154.33333333333334,68.875,165.66666666666666,68.875,171.33333333333334L68.875,177"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M216.8046875,122.5L216.8046875,125.91666666666667C216.8046875,129.33333333333334,216.8046875,136.16666666666666,216.8046875,152.58333333333334C216.8046875,169,216.8046875,195,216.8046875,208L216.8046875,221"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M187.02502436861477,288.75536793025486L179.66082759884566,298.4628066085457C172.29663082907652,308.1702452868366,157.56823728953825,327.5851226434183,150.20404051976914,341.45922798837574C142.83984375,355.3333333333333,142.83984375,363.6666666666667,142.83984375,367.8333333333333L142.83984375,372"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M252.17553801655745,287.9335217836957L261.23547438879785,297.7779348197464C270.2954107610383,307.62234785579716,288.41528350551914,327.31117392789855,297.47521987775957,348.65558696394925C306.53515625,370,306.53515625,393,306.53515625,404.5L306.53515625,416"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M439.30859375,278L439.30859375,289.5C439.30859375,301,439.30859375,324,442.0797258763246,342.38370400806735C444.85085800264915,360.7674080161348,450.3931222552983,374.53481603226965,453.16425438162287,381.418520040337L455.9353865079474,388.3022240484044"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M491.4602667336719,108.14628676523756L482.7683212363933,113.9552389710313C474.0763757391146,119.76419117682504,456.6924847445573,131.3820955884125,448.0005392472787,150.19104779420627C439.30859375,169,439.30859375,195,439.30859375,208L439.30859375,221"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M638.3938980336458,70.22651590329238L713.5346285697048,82.35542991941031C788.6753591057637,94.48434393552826,938.9568201778819,118.74217196776412,1014.097550713941,143.87108598388207C1089.23828125,169,1089.23828125,195,1089.23828125,208L1089.23828125,221"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M1046.7815928755397,268.7739249541037L1018.0621346879498,281.81160412841973C989.3426765003597,294.8492833027358,931.9037601251799,320.9246416513679,903.18430193759,345.46232082568395C874.46484375,370,874.46484375,393,874.46484375,404.5L874.46484375,416"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M1121.8428189400033,288.33974899739826L1130.0500053666694,298.11645749783185C1138.2571917933356,307.8931659982655,1154.6715646466678,327.4465829991328,1162.878751073334,343.22329149956636C1171.0859375,359,1171.0859375,371,1171.0859375,377L1171.0859375,383"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M530.4356888973774,120.74206957072454L528.3311730394812,124.45172464227045C526.226657181585,128.16137971381636,522.0176254657925,135.58068985690818,519.9131096078962,157.0403449284541C517.80859375,178.5,517.80859375,214,517.80859375,248C517.80859375,282,517.80859375,314.5,513.917140758547,340.4166666666667C510.02568776709404,366.3333333333333,502.2427817841881,385.6666666666667,498.3513287927351,395.3333333333333L494.45987580128207,405"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M601.0564986026226,120.74206957072454L603.1610144605188,124.45172464227045C605.265530318415,128.16137971381636,609.4745620342075,135.58068985690818,611.5790778921038,146.7903449284541C613.68359375,158,613.68359375,173,613.68359375,180.5L613.68359375,188"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id12" d="M831.3599453018669,96.59527129852006L823.7055533765557,104.32939274876672C816.0511614512446,112.06351419901337,800.7423776006223,127.53175709950669,793.0879856753112,140.93254521642C785.43359375,154.33333333333334,785.43359375,165.66666666666666,785.43359375,171.33333333333334L785.43359375,177"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id13" d="M906.7650546981331,96.59527129852006L914.4194466234443,104.32939274876672C922.0738385487554,112.06351419901337,937.3826223993777,127.53175709950669,945.0370143246888,148.26587854975335C952.69140625,169,952.69140625,195,952.69140625,208L952.69140625,221"/>
</g>
<g class="edgeLabels">
<g transform="translate(41.08203125, 143)" class="edgeLabel">
<g transform="translate(-13.5703125, -9)" class="label">
<foreignObject height="18" width="27.140625">
<g transform="translate(undefined, undefined)" class="edgeLabel">
<g transform="translate(0, 0)" class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+aa</span>
</span>
</div>
</foreignObject>
</g>
</g>
<g transform="translate(96.66796875, 143)" class="edgeLabel">
<g transform="translate(-22.015625, -9)" class="label">
<foreignObject height="18" width="44.03125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+color</span>
<span class="edgeLabel"/>
</span>
</div>
</foreignObject>
@@ -134,29 +125,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(477.6171875, 529)" class="edgeLabel">
<g transform="translate(-21.34375, -9)" class="label">
<foreignObject height="18" width="42.6875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">-lights</span>
</span>
</div>
</foreignObject>
</g>
</g>
<g transform="translate(undefined, undefined)" class="edgeLabel">
<g transform="translate(0, 0)" class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel"/>
</span>
</div>
</foreignObject>
</g>
</g>
<g transform="translate(566.05078125, 143)" class="edgeLabel">
<g transform="translate(439.30859375, 143)" class="edgeLabel">
<g transform="translate(-22.0234375, -9)" class="label">
<foreignObject height="18" width="44.046875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -246,71 +215,27 @@
</g>
</g>
<g class="nodes">
<a transform="translate(68.875, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L4">
<g title="Color" id="classId-C_0008844195389762820798-0" class="node default clickable">
<rect height="145" width="121.75" y="-72.5" x="-60.875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="60.875" x1="-60.875" class="divider"/>
<line y2="61.5" y1="61.5" x2="60.875" x1="-60.875" class="divider"/>
<g class="label">
<foreignObject transform="translate( -53.375, -65)" height="18" width="106.75">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">«enumeration»</span>
</div>
</foreignObject>
<foreignObject transform="translate( -20.890625, -43)" height="18" width="41.78125" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">Color</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.375, -9)" height="18" width="29.359375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">Red</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.375, 13)" height="18" width="44.46875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">Green</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.375, 35)" height="18" width="32.03125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">Blue</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(68.875, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L6">
<g title="B" id="classId-C_0009860995429872413691-1" class="node default clickable">
<rect height="101" width="110.59375" y="-50.5" x="-55.296875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="55.296875" x1="-55.296875" class="divider"/>
<line y2="39.5" y1="39.5" x2="55.296875" x1="-55.296875" class="divider"/>
<a transform="translate(68.875, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L4">
<g title="B" id="classId-C_0001232624428734051711-0" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel"/>
</div>
</foreignObject>
<foreignObject transform="translate( -5.78125, -43)" height="18" width="11.5625" class="classTitle">
<foreignObject transform="translate( -5.78125, -21)" height="18" width="11.5625" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">B</span>
</div>
</foreignObject>
<foreignObject transform="translate( -47.796875, -9)" height="18" width="60.9375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+aa : AA</span>
</div>
</foreignObject>
<foreignObject transform="translate( -47.796875, 13)" height="18" width="95.59375">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+color : Color </span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(240.625, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L8">
<g title="B##AA" id="classId-C_0013041644057721012989-2" class="node default clickable">
<a transform="translate(68.875, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L6">
<g title="B##AA" id="classId-C_0001630205507215126623-1" class="node default clickable">
<rect height="145" width="121.75" y="-72.5" x="-60.875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="60.875" x1="-60.875" class="divider"/>
<line y2="61.5" y1="61.5" x2="60.875" x1="-60.875" class="divider"/>
@@ -343,11 +268,11 @@
</g>
</g>
</a>
<a transform="translate(409.45703125, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L14">
<g title="A" id="classId-C_0012418199527012894198-3" class="node default clickable">
<rect height="101" width="160.40625" y="-50.5" x="-80.203125" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="80.203125" x1="-80.203125" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="80.203125" x1="-80.203125" class="divider"/>
<a transform="translate(216.8046875, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L9">
<g title="A" id="classId-C_0001552274940876611774-2" class="node default clickable">
<rect height="101" width="169.296875" y="-50.5" x="-84.6484375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="84.6484375" x1="-84.6484375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="84.6484375" x1="-84.6484375" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -359,21 +284,21 @@
<span class="nodeLabel">A</span>
</div>
</foreignObject>
<foreignObject transform="translate( -72.703125, 3)" height="18" width="136.515625">
<foreignObject transform="translate( -77.1484375, 3)" height="18" width="145.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo() : [const] void</span>
<span class="nodeLabel">+foo() : : [const] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -72.703125, 25)" height="18" width="145.40625">
<foreignObject transform="translate( -77.1484375, 25)" height="18" width="154.296875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo2() : [const] void</span>
<span class="nodeLabel">+foo2() : : [const] void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(409.45703125, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L18">
<g title="A##AA" id="classId-C_0013939998749822876416-4" class="node default clickable">
<a transform="translate(216.8046875, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L13">
<g title="A##AA" id="classId-C_0001742499843727859552-3" class="node default clickable">
<rect height="57" width="60.328125" y="-28.5" x="-30.1640625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="30.1640625" x1="-30.1640625" class="divider"/>
<line y2="17.5" y1="17.5" x2="30.1640625" x1="-30.1640625" class="divider"/>
@@ -391,8 +316,8 @@
</g>
</g>
</a>
<a transform="translate(409.45703125, 635.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L20">
<g title="A##AA##Lights" id="classId-C_0004727494996070729955-5" class="node default clickable">
<a transform="translate(142.83984375, 444.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L15">
<g title="A##AA##Lights" id="classId-C_0000590936874508841244-4" class="node default clickable">
<rect height="145" width="121.75" y="-72.5" x="-60.875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="60.875" x1="-60.875" class="divider"/>
<line y2="61.5" y1="61.5" x2="60.875" x1="-60.875" class="divider"/>
@@ -425,32 +350,27 @@
</g>
</g>
</a>
<a transform="translate(477.6171875, 433.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L22">
<g title="A##AA##AAA" id="classId-C_0011441493064034257052-6" class="node default clickable">
<rect height="79" width="113.71875" y="-39.5" x="-56.859375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="56.859375" x1="-56.859375" class="divider"/>
<line y2="28.5" y1="28.5" x2="56.859375" x1="-56.859375" class="divider"/>
<a transform="translate(306.53515625, 444.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L17">
<g title="A##AA##AAA" id="classId-C_0001430186633004282131-5" class="node default clickable">
<rect height="57" width="105.640625" y="-28.5" x="-52.8203125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="52.8203125" x1="-52.8203125" class="divider"/>
<line y2="17.5" y1="17.5" x2="52.8203125" x1="-52.8203125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel"/>
</div>
</foreignObject>
<foreignObject transform="translate( -45.3203125, -32)" height="18" width="90.640625" class="classTitle">
<foreignObject transform="translate( -45.3203125, -21)" height="18" width="90.640625" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">A::AA::AAA</span>
</div>
</foreignObject>
<foreignObject transform="translate( -49.359375, 2)" height="18" width="98.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-lights : Lights</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(566.05078125, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L40">
<g title="C##B" id="classId-C_0002302554954640607720-7" class="node default clickable">
<a transform="translate(439.30859375, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L33">
<g title="C##B" id="classId-C_0000287819369330075965-6" class="node default clickable">
<rect height="57" width="87" y="-28.5" x="-43.5" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="43.5" x1="-43.5" class="divider"/>
<line y2="17.5" y1="17.5" x2="43.5" x1="-43.5" class="divider"/>
@@ -468,8 +388,8 @@
</g>
</g>
</a>
<a transform="translate(769.88671875, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L30">
<g title="C" id="classId-C_0018226625421819521092-8" class="node default clickable">
<a transform="translate(565.74609375, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L23">
<g title="C" id="classId-C_0002278328177727440136-7" class="node default clickable">
<rect height="101" width="118.640625" y="-50.5" x="-59.3203125" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="59.3203125" x1="-59.3203125" class="divider"/>
<line y2="39.5" y1="39.5" x2="59.3203125" x1="-59.3203125" class="divider"/>
@@ -497,8 +417,8 @@
</g>
</g>
</a>
<a transform="translate(689.71484375, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L34">
<g title="C##AA" id="classId-C_0004991521063183421232-9" class="node default clickable">
<a transform="translate(1089.23828125, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L27">
<g title="C##AA" id="classId-C_0000623940132897927654-8" class="node default clickable">
<rect height="57" width="60.328125" y="-28.5" x="-30.1640625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="30.1640625" x1="-30.1640625" class="divider"/>
<line y2="17.5" y1="17.5" x2="30.1640625" x1="-30.1640625" class="divider"/>
@@ -516,8 +436,8 @@
</g>
</g>
</a>
<a transform="translate(637.296875, 433.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L35">
<g title="C##AA##AAA" id="classId-C_0012782408698292006929-10" class="node default clickable">
<a transform="translate(874.46484375, 444.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L28">
<g title="C##AA##AAA" id="classId-C_0001597801087286500866-9" class="node default clickable">
<rect height="57" width="105.640625" y="-28.5" x="-52.8203125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="52.8203125" x1="-52.8203125" class="divider"/>
<line y2="17.5" y1="17.5" x2="52.8203125" x1="-52.8203125" class="divider"/>
@@ -535,8 +455,8 @@
</g>
</g>
</a>
<a transform="translate(943.17578125, 433.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L37">
<g title="C##AA##CCC" id="classId-C_0000654553621116797875-11" class="node default clickable">
<a transform="translate(1171.0859375, 444.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L30">
<g title="C##AA##CCC" id="classId-C_0000081819202639599734-10" class="node default clickable">
<rect height="123" width="121.75" y="-61.5" x="-60.875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="60.875" x1="-60.875" class="divider"/>
<line y2="50.5" y1="50.5" x2="60.875" x1="-60.875" class="divider"/>
@@ -564,8 +484,8 @@
</g>
</g>
</a>
<a transform="translate(784.64453125, 433.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L40">
<g title="C##B" id="classId-C_0011050386686796671606-12" class="node default clickable">
<a transform="translate(478.55859375, 444.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L33">
<g title="C##B" id="classId-C_0001381298335849583950-11" class="node default clickable">
<rect height="79" width="78.125" y="-39.5" x="-39.0625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="39.0625" x1="-39.0625" class="divider"/>
<line y2="28.5" y1="28.5" x2="39.0625" x1="-39.0625" class="divider"/>
@@ -588,8 +508,8 @@
</g>
</g>
</a>
<a transform="translate(889.11328125, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L46">
<g title="C##CC" id="classId-C_0016299031488803029599-13" class="node default clickable">
<a transform="translate(613.68359375, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L39">
<g title="C##CC" id="classId-C_0002037378936100378699-12" class="node default clickable">
<rect height="123" width="121.75" y="-61.5" x="-60.875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="60.875" x1="-60.875" class="divider"/>
<line y2="50.5" y1="50.5" x2="60.875" x1="-60.875" class="divider"/>
@@ -617,8 +537,8 @@
</g>
</g>
</a>
<a transform="translate(1156.83203125, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L50">
<g title="D" id="classId-C_0004897065367017086369-14" class="node default clickable">
<a transform="translate(869.0625, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L43">
<g title="D" id="classId-C_0000612133170877135796-13" class="node default clickable">
<rect height="57" width="79" y="-28.5" x="-39.5" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="39.5" x1="-39.5" class="divider"/>
<line y2="17.5" y1="17.5" x2="39.5" x1="-39.5" class="divider"/>
@@ -636,8 +556,8 @@
</g>
</g>
</a>
<a transform="translate(1060.86328125, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L52">
<g title="D##AA" id="classId-C_0012576640463341047379-15" class="node default clickable">
<a transform="translate(785.43359375, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L45">
<g title="D##AA" id="classId-C_0001572080057917630922-14" class="node default clickable">
<rect height="145" width="121.75" y="-72.5" x="-60.875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="60.875" x1="-60.875" class="divider"/>
<line y2="61.5" y1="61.5" x2="60.875" x1="-60.875" class="divider"/>
@@ -670,8 +590,8 @@
</g>
</g>
</a>
<a transform="translate(1228.12109375, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00004/t00004.cc#L54">
<g title="D##DD" id="classId-C_0004807329861420443943-16" class="node default clickable">
<a transform="translate(952.69140625, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00004/t00004.cc#L47">
<g title="D##DD" id="classId-C_0000600916232677555492-15" class="node default clickable">
<rect height="57" width="112.765625" y="-28.5" x="-56.3828125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="56.3828125" x1="-56.3828125" class="divider"/>
<line y2="17.5" y1="17.5" x2="56.3828125" x1="-56.3828125" class="divider"/>

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View File

@@ -72,8 +72,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "A",
"id": "770847151166242555",
"display_name": "clanguml::t00005::A",
"id": "96355893895780319",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -94,8 +94,8 @@ public:
},
{
"bases": [],
"display_name": "B",
"id": "15275406858672700331",
"display_name": "clanguml::t00005::B",
"id": "1909425857334087541",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -116,8 +116,8 @@ public:
},
{
"bases": [],
"display_name": "C",
"id": "7745411075680519262",
"display_name": "clanguml::t00005::C",
"id": "968176384460064907",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -138,8 +138,8 @@ public:
},
{
"bases": [],
"display_name": "D",
"id": "13884796726689493544",
"display_name": "clanguml::t00005::D",
"id": "1735599590836186693",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -160,8 +160,8 @@ public:
},
{
"bases": [],
"display_name": "E",
"id": "7103681095374757269",
"display_name": "clanguml::t00005::E",
"id": "887960136921844658",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -182,8 +182,8 @@ public:
},
{
"bases": [],
"display_name": "F",
"id": "6181754862849854182",
"display_name": "clanguml::t00005::F",
"id": "772719357856231772",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -204,8 +204,8 @@ public:
},
{
"bases": [],
"display_name": "G",
"id": "7833183087077891503",
"display_name": "clanguml::t00005::G",
"id": "979147885884736437",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -226,8 +226,8 @@ public:
},
{
"bases": [],
"display_name": "H",
"id": "11525386408433893405",
"display_name": "clanguml::t00005::H",
"id": "1440673301054236675",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -248,8 +248,8 @@ public:
},
{
"bases": [],
"display_name": "I",
"id": "877453852400691446",
"display_name": "clanguml::t00005::I",
"id": "109681731550086430",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -270,8 +270,8 @@ public:
},
{
"bases": [],
"display_name": "J",
"id": "2706640095757202600",
"display_name": "clanguml::t00005::J",
"id": "338330011969650325",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -292,8 +292,8 @@ public:
},
{
"bases": [],
"display_name": "K",
"id": "17432955118643460073",
"display_name": "clanguml::t00005::K",
"id": "2179119389830432509",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -314,8 +314,8 @@ public:
},
{
"bases": [],
"display_name": "R",
"id": "5045539258985153690",
"display_name": "clanguml::t00005::R",
"id": "630692407373144211",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -517,83 +517,82 @@ public:
}
],
"name": "t00005_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "770847151166242555",
"destination": "96355893895780319",
"label": "a",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "aggregation"
},
{
"access": "public",
"destination": "15275406858672700331",
"destination": "1909425857334087541",
"label": "b",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
},
{
"access": "public",
"destination": "7745411075680519262",
"destination": "968176384460064907",
"label": "c",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
},
{
"access": "public",
"destination": "13884796726689493544",
"destination": "1735599590836186693",
"label": "d",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
},
{
"access": "public",
"destination": "7103681095374757269",
"destination": "887960136921844658",
"label": "e",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
},
{
"access": "public",
"destination": "6181754862849854182",
"destination": "772719357856231772",
"label": "f",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "aggregation"
},
{
"access": "public",
"destination": "7833183087077891503",
"destination": "979147885884736437",
"label": "g",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
},
{
"access": "public",
"destination": "11525386408433893405",
"destination": "1440673301054236675",
"label": "h",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
},
{
"access": "public",
"destination": "877453852400691446",
"destination": "109681731550086430",
"label": "i",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
},
{
"access": "public",
"destination": "2706640095757202600",
"destination": "338330011969650325",
"label": "j",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
},
{
"access": "public",
"destination": "17432955118643460073",
"destination": "2179119389830432509",
"label": "k",
"source": "5045539258985153690",
"source": "630692407373144211",
"type": "association"
}
],

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

@@ -1,66 +1,71 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 796.640625 528" style="max-width: 796.641px; background-color: white;" width="796.640625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M279.40625,274.8828836217502L236.38541666666666,300.5690696847918C193.36458333333334,326.2552557478335,107.32291666666667,377.6276278739167,64.30208333333333,408.980480603625C21.28125,440.3333333333333,21.28125,451.6666666666667,21.28125,457.3333333333333L21.28125,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M279.40625,293.3359334907113L249.14583333333334,315.9466112422594C218.88541666666666,338.5572889938075,158.36458333333334,383.7786444969038,128.10416666666666,412.0559889151186C97.84375,440.3333333333333,97.84375,451.6666666666667,97.84375,457.3333333333333L97.84375,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M279.40625,324.18716577540107L261.90625,341.6559714795009C244.40625,359.12477718360077,209.40625,394.06238859180036,191.90625,417.19786096256684C174.40625,440.3333333333333,174.40625,451.6666666666667,174.40625,457.3333333333333L174.40625,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M279.40625,386.2527359074953L274.6666666666667,393.37727992291275C269.9270833333333,400.50182393833023,260.4479166666667,414.7509119691651,255.70833333333334,427.5421226512492C250.96875,440.3333333333333,250.96875,451.6666666666667,250.96875,457.3333333333333L250.96875,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M338.3285885989011,395L336.45481341575095,400.6666666666667C334.58103823260075,406.3333333333333,330.83348786630035,417.6666666666667,328.9597126831502,429C327.0859375,440.3333333333333,327.0859375,451.6666666666667,327.0859375,457.3333333333333L327.0859375,463"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M402.3125,395L402.3125,400.6666666666667C402.3125,406.3333333333333,402.3125,417.6666666666667,402.3125,429C402.3125,440.3333333333333,402.3125,451.6666666666667,402.3125,457.3333333333333L402.3125,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M467.0539320054945,395L468.94989125457874,400.6666666666667C470.84585050366303,406.3333333333333,474.6377690018315,417.6666666666667,476.5337282509158,429C478.4296875,440.3333333333333,478.4296875,451.6666666666667,478.4296875,457.3333333333333L478.4296875,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M525.21875,384.1035714285714L530.2552083333334,391.58630952380946C535.2916666666666,399.0690476190476,545.3645833333334,414.03452380952376,550.4010416666666,427.18392857142857C555.4375,440.3333333333333,555.4375,451.6666666666667,555.4375,457.3333333333333L555.4375,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M525.21875,325.1493349455865L542.4231770833334,342.45777912132206C559.6276041666666,359.76622329705765,594.0364583333334,394.38311164852877,611.2408854166666,417.35822249093104C628.4453125,440.3333333333333,628.4453125,451.6666666666667,628.4453125,457.3333333333333L628.4453125,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M525.21875,295.38850996852045L554.3697916666666,317.6570916404337C583.5208333333334,339.925673312347,641.8229166666666,384.46283665617347,670.9739583333334,412.3980849947534C700.125,440.3333333333333,700.125,451.6666666666667,700.125,457.3333333333333L700.125,463"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M525.21875,276.45350785340315L566.9088541666666,301.8779232111693C608.5989583333334,327.30233856893545,691.9791666666666,378.1511692844677,733.6692708333334,409.2422513089005C775.359375,440.3333333333333,775.359375,451.6666666666667,775.359375,457.3333333333333L775.359375,463"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M263.95139406036645,284.1104200148062L223.50637005030538,308.25868334567184C183.0613460402443,332.4069466765375,102.17129802012215,380.7034733382687,61.726274010061076,410.518403335801C21.28125,440.3333333333333,21.28125,451.6666666666667,21.28125,457.3333333333333L21.28125,463"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M279.40625,293.3359334907113L249.14583333333334,315.9466112422594C218.88541666666666,338.5572889938075,158.36458333333334,383.7786444969038,128.10416666666666,411.0559889151186C97.84375,438.3333333333333,97.84375,447.6666666666667,97.84375,452.3333333333333L97.84375,457"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M279.40625,324.18716577540107L261.90625,341.6559714795009C244.40625,359.12477718360077,209.40625,394.06238859180036,191.90625,416.19786096256684C174.40625,438.3333333333333,174.40625,447.6666666666667,174.40625,452.3333333333333L174.40625,457"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M279.40625,386.2527359074953L274.6666666666667,393.37727992291275C269.9270833333333,400.50182393833023,260.4479166666667,414.7509119691651,255.70833333333334,426.5421226512492C250.96875,438.3333333333333,250.96875,447.6666666666667,250.96875,452.3333333333333L250.96875,457"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M338.3285885989011,395L336.45481341575095,400.6666666666667C334.58103823260075,406.3333333333333,330.83348786630035,417.6666666666667,328.9597126831502,428C327.0859375,438.3333333333333,327.0859375,447.6666666666667,327.0859375,452.3333333333333L327.0859375,457"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M402.3125,413L402.3125,415.6666666666667C402.3125,418.3333333333333,402.3125,423.6666666666667,402.3125,432C402.3125,440.3333333333333,402.3125,451.6666666666667,402.3125,457.3333333333333L402.3125,463"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M467.0539320054945,395L468.94989125457874,400.6666666666667C470.84585050366303,406.3333333333333,474.6377690018315,417.6666666666667,476.5337282509158,428C478.4296875,438.3333333333333,478.4296875,447.6666666666667,478.4296875,452.3333333333333L478.4296875,457"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M525.21875,384.1035714285714L530.2552083333334,391.58630952380946C535.2916666666666,399.0690476190476,545.3645833333334,414.03452380952376,550.4010416666666,426.18392857142857C555.4375,438.3333333333333,555.4375,447.6666666666667,555.4375,452.3333333333333L555.4375,457"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M525.21875,325.1493349455865L542.4231770833334,342.45777912132206C559.6276041666666,359.76622329705765,594.0364583333334,394.38311164852877,611.2408854166666,416.35822249093104C628.4453125,438.3333333333333,628.4453125,447.6666666666667,628.4453125,452.3333333333333L628.4453125,457"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M525.21875,295.38850996852045L554.3697916666666,317.6570916404337C583.5208333333334,339.925673312347,641.8229166666666,384.46283665617347,670.9739583333334,411.3980849947534C700.125,438.3333333333333,700.125,447.6666666666667,700.125,452.3333333333333L700.125,457"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M525.21875,276.45350785340315L566.9088541666666,301.8779232111693C608.5989583333334,327.30233856893545,691.9791666666666,378.1511692844677,733.6692708333334,408.2422513089005C775.359375,438.3333333333333,775.359375,447.6666666666667,775.359375,452.3333333333333L775.359375,457"/>
</g>
<g class="edgeLabels">
<g transform="translate(21.28125, 429)" class="edgeLabel">
@@ -186,8 +191,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(21.28125, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L3">
<g title="A" id="classId-C_0000770847151166242555-0" class="node default clickable">
<a transform="translate(21.28125, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L3">
<g title="A" id="classId-C_0000096355893895780319-0" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -205,8 +210,8 @@
</g>
</g>
</a>
<a transform="translate(97.84375, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L5">
<g title="B" id="classId-C_0015275406858672700331-1" class="node default clickable">
<a transform="translate(97.84375, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L5">
<g title="B" id="classId-C_0001909425857334087541-1" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -224,8 +229,8 @@
</g>
</g>
</a>
<a transform="translate(174.40625, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L7">
<g title="C" id="classId-C_0007745411075680519262-2" class="node default clickable">
<a transform="translate(174.40625, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L7">
<g title="C" id="classId-C_0000968176384460064907-2" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -243,8 +248,8 @@
</g>
</g>
</a>
<a transform="translate(250.96875, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L9">
<g title="D" id="classId-C_0013884796726689493544-3" class="node default clickable">
<a transform="translate(250.96875, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L9">
<g title="D" id="classId-C_0001735599590836186693-3" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -262,8 +267,8 @@
</g>
</g>
</a>
<a transform="translate(327.0859375, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L11">
<g title="E" id="classId-C_0007103681095374757269-4" class="node default clickable">
<a transform="translate(327.0859375, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L11">
<g title="E" id="classId-C_0000887960136921844658-4" class="node default clickable">
<rect height="57" width="25.671875" y="-28.5" x="-12.8359375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="12.8359375" x1="-12.8359375" class="divider"/>
<line y2="17.5" y1="17.5" x2="12.8359375" x1="-12.8359375" class="divider"/>
@@ -281,8 +286,8 @@
</g>
</g>
</a>
<a transform="translate(402.3125, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L13">
<g title="F" id="classId-C_0006181754862849854182-5" class="node default clickable">
<a transform="translate(402.3125, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L13">
<g title="F" id="classId-C_0000772719357856231772-5" class="node default clickable">
<rect height="57" width="24.78125" y="-28.5" x="-12.390625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="12.390625" x1="-12.390625" class="divider"/>
<line y2="17.5" y1="17.5" x2="12.390625" x1="-12.390625" class="divider"/>
@@ -300,8 +305,8 @@
</g>
</g>
</a>
<a transform="translate(478.4296875, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L15">
<g title="G" id="classId-C_0007833183087077891503-6" class="node default clickable">
<a transform="translate(478.4296875, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L15">
<g title="G" id="classId-C_0000979147885884736437-6" class="node default clickable">
<rect height="57" width="27.453125" y="-28.5" x="-13.7265625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.7265625" x1="-13.7265625" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.7265625" x1="-13.7265625" class="divider"/>
@@ -319,8 +324,8 @@
</g>
</g>
</a>
<a transform="translate(555.4375, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L17">
<g title="H" id="classId-C_0011525386408433893405-7" class="node default clickable">
<a transform="translate(555.4375, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L17">
<g title="H" id="classId-C_0001440673301054236675-7" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -338,8 +343,8 @@
</g>
</g>
</a>
<a transform="translate(628.4453125, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L19">
<g title="I" id="classId-C_0000877453852400691446-8" class="node default clickable">
<a transform="translate(628.4453125, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L19">
<g title="I" id="classId-C_0000109681731550086430-8" class="node default clickable">
<rect height="57" width="19.453125" y="-28.5" x="-9.7265625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="9.7265625" x1="-9.7265625" class="divider"/>
<line y2="17.5" y1="17.5" x2="9.7265625" x1="-9.7265625" class="divider"/>
@@ -357,8 +362,8 @@
</g>
</g>
</a>
<a transform="translate(700.125, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L21">
<g title="J" id="classId-C_0002706640095757202600-9" class="node default clickable">
<a transform="translate(700.125, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L21">
<g title="J" id="classId-C_0000338330011969650325-9" class="node default clickable">
<rect height="57" width="23.90625" y="-28.5" x="-11.953125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="11.953125" x1="-11.953125" class="divider"/>
<line y2="17.5" y1="17.5" x2="11.953125" x1="-11.953125" class="divider"/>
@@ -376,8 +381,8 @@
</g>
</g>
</a>
<a transform="translate(775.359375, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L23">
<g title="K" id="classId-C_0017432955118643460073-10" class="node default clickable">
<a transform="translate(775.359375, 491.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L23">
<g title="K" id="classId-C_0002179119389830432509-10" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -395,8 +400,8 @@
</g>
</g>
</a>
<a transform="translate(402.3125, 201.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00005/t00005.cc#L25">
<g title="R" id="classId-C_0005045539258985153690-11" class="node default clickable">
<a transform="translate(402.3125, 201.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00005/t00005.cc#L25">
<g title="R" id="classId-C_0000630692407373144211-11" class="node default clickable">
<rect height="387" width="245.8125" y="-193.5" x="-122.90625" class="outer title-state"/>
<line y2="-163.5" y1="-163.5" x2="122.90625" x1="-122.90625" class="divider"/>
<line y2="182.5" y1="182.5" x2="122.90625" x1="-122.90625" class="divider"/>
@@ -418,7 +423,7 @@
</foreignObject>
<foreignObject transform="translate( -115.40625, -130)" height="18" width="42.25">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+b : B </span>
<span style="font-style:italic;" class="nodeLabel">+b : B</span>
</div>
</foreignObject>
<foreignObject transform="translate( -115.40625, -108)" height="18" width="57.359375">
@@ -428,7 +433,7 @@
</foreignObject>
<foreignObject transform="translate( -115.40625, -86)" height="18" width="85.828125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+d : const D </span>
<span style="font-style:italic;" class="nodeLabel">+d : const D</span>
</div>
</foreignObject>
<foreignObject transform="translate( -115.40625, -64)" height="18" width="100.0625">
@@ -458,12 +463,12 @@
</foreignObject>
<foreignObject transform="translate( -115.40625, 46)" height="18" width="88.484375">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+j : volatile J </span>
<span style="font-style:italic;" class="nodeLabel">+j : volatile J</span>
</div>
</foreignObject>
<foreignObject transform="translate( -115.40625, 68)" height="18" width="41.359375">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+k : K </span>
<span style="font-style:italic;" class="nodeLabel">+k : K</span>
</div>
</foreignObject>
<foreignObject transform="translate( -115.40625, 90)" height="18" width="104.5">
@@ -473,7 +478,7 @@
</foreignObject>
<foreignObject transform="translate( -115.40625, 112)" height="18" width="162.328125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+some_int_pointer : int </span>
<span style="font-style:italic;" class="nodeLabel">+some_int_pointer : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -115.40625, 134)" height="18" width="230.8125">

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 35 KiB

View File

@@ -96,8 +96,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "A",
"id": "7912762435557379205",
"display_name": "clanguml::t00006::A",
"id": "989095304444672400",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -118,8 +118,8 @@ public:
},
{
"bases": [],
"display_name": "B",
"id": "5186282081960042491",
"display_name": "clanguml::t00006::B",
"id": "648285260245005311",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -140,8 +140,8 @@ public:
},
{
"bases": [],
"display_name": "C",
"id": "2586434664058382197",
"display_name": "clanguml::t00006::C",
"id": "323304333007297774",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -162,8 +162,8 @@ public:
},
{
"bases": [],
"display_name": "D",
"id": "8055299192349067940",
"display_name": "clanguml::t00006::D",
"id": "1006912399043633492",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -184,8 +184,8 @@ public:
},
{
"bases": [],
"display_name": "E",
"id": "8740403152164631827",
"display_name": "clanguml::t00006::E",
"id": "1092550394020578978",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -206,8 +206,8 @@ public:
},
{
"bases": [],
"display_name": "F",
"id": "7723190094486257891",
"display_name": "clanguml::t00006::F",
"id": "965398761810782236",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -228,8 +228,8 @@ public:
},
{
"bases": [],
"display_name": "G",
"id": "14117856007096243716",
"display_name": "clanguml::t00006::G",
"id": "1764732000887030464",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -250,8 +250,8 @@ public:
},
{
"bases": [],
"display_name": "H",
"id": "13354284798700417170",
"display_name": "clanguml::t00006::H",
"id": "1669285599837552146",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -272,8 +272,8 @@ public:
},
{
"bases": [],
"display_name": "I",
"id": "17878004788792003021",
"display_name": "clanguml::t00006::I",
"id": "2234750598599000377",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -294,8 +294,8 @@ public:
},
{
"bases": [],
"display_name": "J",
"id": "10687469195003722956",
"display_name": "clanguml::t00006::J",
"id": "1335933649375465369",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -316,8 +316,8 @@ public:
},
{
"bases": [],
"display_name": "K",
"id": "12825522918912640984",
"display_name": "clanguml::t00006::K",
"id": "1603190364864080123",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -338,8 +338,8 @@ public:
},
{
"bases": [],
"display_name": "L",
"id": "2443897907266560370",
"display_name": "clanguml::t00006::L",
"id": "305487238408320046",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -360,8 +360,8 @@ public:
},
{
"bases": [],
"display_name": "M",
"id": "13317956099389786204",
"display_name": "clanguml::t00006::M",
"id": "1664744512423723275",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -382,8 +382,8 @@ public:
},
{
"bases": [],
"display_name": "N",
"id": "7601680158337220805",
"display_name": "clanguml::t00006::N",
"id": "950210019792152600",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -404,8 +404,8 @@ public:
},
{
"bases": [],
"display_name": "NN",
"id": "13298797887197809793",
"display_name": "clanguml::t00006::NN",
"id": "1662349735899726224",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -426,8 +426,8 @@ public:
},
{
"bases": [],
"display_name": "NNN",
"id": "15705160603852798870",
"display_name": "clanguml::t00006::NNN",
"id": "1963145075481599858",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -448,8 +448,8 @@ public:
},
{
"bases": [],
"display_name": "custom_container<T>",
"id": "7331041535639501055",
"display_name": "clanguml::t00006::custom_container<T>",
"id": "916380191954937631",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -490,8 +490,8 @@ public:
},
{
"bases": [],
"display_name": "custom_container<E>",
"id": "401224904659478871",
"display_name": "clanguml::t00006::custom_container<clanguml::t00006::E>",
"id": "50153113082434858",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -512,15 +512,15 @@ public:
"is_variadic": false,
"kind": "argument",
"template_parameters": [],
"type": "E"
"type": "clanguml::t00006::E"
}
],
"type": "class"
},
{
"bases": [],
"display_name": "R",
"id": "2424204488135060211",
"display_name": "clanguml::t00006::R",
"id": "303025561016882526",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -698,139 +698,129 @@ public:
}
],
"name": "t00006_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "8740403152164631827",
"source": "401224904659478871",
"destination": "1092550394020578978",
"source": "50153113082434858",
"type": "dependency"
},
{
"access": "public",
"destination": "7331041535639501055",
"source": "401224904659478871",
"destination": "916380191954937631",
"source": "50153113082434858",
"type": "instantiation"
},
{
"access": "public",
"destination": "7912762435557379205",
"destination": "989095304444672400",
"label": "a",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "5186282081960042491",
"destination": "648285260245005311",
"label": "b",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "association"
},
{
"access": "public",
"destination": "2586434664058382197",
"destination": "323304333007297774",
"label": "c",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "8055299192349067940",
"destination": "1006912399043633492",
"label": "d",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "association"
},
{
"access": "public",
"destination": "401224904659478871",
"destination": "50153113082434858",
"label": "e",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "7723190094486257891",
"destination": "965398761810782236",
"label": "f",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "14117856007096243716",
"destination": "1764732000887030464",
"label": "g",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "association"
},
{
"access": "public",
"destination": "13354284798700417170",
"destination": "1669285599837552146",
"label": "h",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "13354284798700417170",
"label": "h",
"source": "2424204488135060211",
"type": "aggregation"
},
{
"access": "public",
"destination": "17878004788792003021",
"destination": "2234750598599000377",
"label": "i",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "association"
},
{
"access": "public",
"destination": "10687469195003722956",
"destination": "1335933649375465369",
"label": "j",
"multiplicity_destination": "10",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "12825522918912640984",
"destination": "1603190364864080123",
"label": "k",
"multiplicity_destination": "20",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "association"
},
{
"access": "public",
"destination": "2443897907266560370",
"destination": "305487238408320046",
"label": "lm",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "13317956099389786204",
"destination": "1664744512423723275",
"label": "lm",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "7601680158337220805",
"destination": "950210019792152600",
"label": "ns",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "13298797887197809793",
"destination": "1662349735899726224",
"label": "ns",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
},
{
"access": "public",
"destination": "15705160603852798870",
"destination": "1963145075481599858",
"label": "ns",
"source": "2424204488135060211",
"source": "303025561016882526",
"type": "aggregation"
}
],

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 68 KiB

View File

@@ -1,73 +1,78 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1446.88671875 613" style="max-width: 1446.89px; background-color: white;" width="1446.88671875" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M1230.6285411799065,476L1224.652039524922,480.1666666666667C1218.6755378699377,484.3333333333333,1206.7225345599688,492.6666666666667,1200.7460329049843,502.8333333333333C1194.76953125,513,1194.76953125,525,1194.76953125,531L1194.76953125,537"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M1312.3870838200935,476L1318.363585475078,480.1666666666667C1324.3400871300623,484.3333333333333,1336.2930904400312,492.6666666666667,1342.2695920950157,501C1348.24609375,509.3333333333333,1348.24609375,517.6666666666666,1348.24609375,521.8333333333334L1348.24609375,526"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M456.82421875,227.2368645730771L384.2337239583333,253.53072047756424C311.6432291666667,279.8245763820514,166.46223958333334,332.4122881910257,93.87174479166667,364.37281076217954C21.28125,396.3333333333333,21.28125,407.6666666666667,21.28125,413.3333333333333L21.28125,419"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M456.82421875,234.68405406050766L396.994140625,259.7367117170897C337.1640625,284.7893693736718,217.50390625,334.8946846868359,157.673828125,365.6140090100846C97.84375,396.3333333333333,97.84375,407.6666666666667,97.84375,413.3333333333333L97.84375,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M456.82421875,244.8843375425559L409.7545572916667,268.2369479521299C362.6848958333333,291.58955836170395,268.5455729166667,338.29477918085195,221.47591145833334,367.31405625709266C174.40625,396.3333333333333,174.40625,407.6666666666667,174.40625,413.3333333333333L174.40625,419"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M456.82421875,259.7105464095237L422.5149739583333,280.59212200793644C388.2057291666667,301.47369760634916,319.5872395833333,343.23684880317455,285.2779947916667,369.78509106825396C250.96875,396.3333333333333,250.96875,407.6666666666667,250.96875,413.3333333333333L250.96875,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M720.40234375,219.1586165277627L812.2532552083334,246.7988471064689C904.1041666666666,274.4390776851751,1087.8059895833333,329.71953884258755,1179.6569010416667,363.02643608796046C1271.5078125,396.3333333333333,1271.5078125,407.6666666666667,1271.5078125,413.3333333333333L1271.5078125,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M456.82421875,282.8796913442183L435.126953125,299.8997427868486C413.4296875,316.9197942294789,370.03515625,350.9598971147395,348.337890625,373.6466152240364C326.640625,396.3333333333333,326.640625,407.6666666666667,326.640625,413.3333333333333L326.640625,419"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M456.82421875,325.21888858530025L447.8131510416667,335.18240715441686C438.8020833333333,345.1459257235335,420.7799479166667,365.0729628617667,411.7688802083333,380.70314809755C402.7578125,396.3333333333333,402.7578125,407.6666666666667,402.7578125,413.3333333333333L402.7578125,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M497.77448296836985,351L494.7730066403082,356.6666666666667C491.77153031224657,362.3333333333333,485.7685776561232,373.6666666666667,482.76710132806164,385C479.765625,396.3333333333333,479.765625,407.6666666666667,479.765625,413.3333333333333L479.765625,419"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M558.7031440085158,351L557.7148595904298,356.6666666666667C556.7265751723438,362.3333333333333,554.7500063361719,373.6666666666667,553.761721918086,385C552.7734375,396.3333333333333,552.7734375,407.6666666666667,552.7734375,413.3333333333333L552.7734375,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id12" d="M618.5234184914842,351L619.5117029095702,356.6666666666667C620.4999873276562,362.3333333333333,622.4765561638281,373.6666666666667,623.464840581914,385C624.453125,396.3333333333333,624.453125,407.6666666666667,624.453125,413.3333333333333L624.453125,419"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id13" d="M681.3102569951338,351L684.3731308292781,356.6666666666667C687.4360046634225,362.3333333333333,693.5617523317113,373.6666666666667,696.6246261658556,385C699.6875,396.3333333333333,699.6875,407.6666666666667,699.6875,413.3333333333333L699.6875,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id14" d="M720.40234375,324.5239295500659L729.5618489583334,334.6032746250549C738.7213541666666,344.6826197000439,757.0403645833334,364.841309850022,766.1998697916666,380.58732159167766C775.359375,396.3333333333333,775.359375,407.6666666666667,775.359375,413.3333333333333L775.359375,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id15" d="M720.40234375,282.3582301016245L742.3209635416666,299.46519175135376C764.2395833333334,316.57215340108297,808.0768229166666,350.7860767005415,829.9954427083334,373.5597050169374C851.9140625,396.3333333333333,851.9140625,407.6666666666667,851.9140625,413.3333333333333L851.9140625,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id16" d="M720.40234375,258.98044846442207L755.228515625,279.98370705368507C790.0546875,300.98696564294806,859.70703125,342.99348282147406,894.533203125,369.66340807740363C929.359375,396.3333333333333,929.359375,407.6666666666667,929.359375,413.3333333333333L929.359375,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id17" d="M720.40234375,243.5127690219649L768.951171875,267.09397418497076C817.5,290.6751793479766,914.59765625,337.8375896739883,963.146484375,367.08546150366084C1011.6953125,396.3333333333333,1011.6953125,407.6666666666667,1011.6953125,413.3333333333333L1011.6953125,419"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id18" d="M720.40234375,231.88701122067323L784.599609375,257.4058426838944C848.796875,282.92467414711547,977.19140625,333.96233707355776,1041.388671875,365.14783520344554C1105.5859375,396.3333333333333,1105.5859375,407.6666666666667,1105.5859375,413.3333333333333L1105.5859375,419"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M1230.6285411799065,476L1224.652039524922,480.1666666666667C1218.6755378699377,484.3333333333333,1206.7225345599688,492.6666666666667,1200.7460329049843,501.8333333333333C1194.76953125,511,1194.76953125,521,1194.76953125,526L1194.76953125,531"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M1312.3870838200935,476L1318.363585475078,480.1666666666667C1324.3400871300623,484.3333333333333,1336.2930904400312,492.6666666666667,1342.2695920950157,498C1348.24609375,503.3333333333333,1348.24609375,505.6666666666667,1348.24609375,506.8333333333333L1348.24609375,508"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M439.9002612954139,233.3670900236914L370.13042607951155,258.6392416864095C300.3605908636093,283.9113933491276,160.82092043180464,334.4556966745638,91.05108521590232,365.3945150039485C21.28125,396.3333333333333,21.28125,407.6666666666667,21.28125,413.3333333333333L21.28125,419"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M456.82421875,234.68405406050766L396.994140625,259.7367117170897C337.1640625,284.7893693736718,217.50390625,334.8946846868359,157.673828125,364.6140090100846C97.84375,394.3333333333333,97.84375,403.6666666666667,97.84375,408.3333333333333L97.84375,413"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M440.69963758880505,252.88420518996335L396.3174063240042,274.90350432496945C351.93517505920335,296.92280345997557,263.17071252960164,340.9614017299878,218.78848126480082,368.64736753166056C174.40625,396.3333333333333,174.40625,407.6666666666667,174.40625,413.3333333333333L174.40625,419"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M456.82421875,259.7105464095237L422.5149739583333,280.59212200793644C388.2057291666667,301.47369760634916,319.5872395833333,343.23684880317455,285.2779947916667,368.78509106825396C250.96875,394.3333333333333,250.96875,403.6666666666667,250.96875,408.3333333333333L250.96875,413"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M737.6388227493442,224.3455030413823L826.6169877077868,251.12125253448525C915.5951526662294,277.8970020275882,1093.5514825831149,331.4485010137941,1182.5296475415573,363.89091717356376C1271.5078125,396.3333333333333,1271.5078125,407.6666666666667,1271.5078125,413.3333333333333L1271.5078125,419"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M442.6616776518023,293.9892561260566L423.32483554316855,309.15771343838054C403.98799343453487,324.3261707507044,365.3143092172674,354.66308537535224,345.9774671086337,375.4982093543428C326.640625,396.3333333333333,326.640625,407.6666666666667,326.640625,413.3333333333333L326.640625,419"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M456.82421875,325.21888858530025L447.8131510416667,335.18240715441686C438.8020833333333,345.1459257235335,420.7799479166667,365.0729628617667,411.7688802083333,379.70314809755C402.7578125,394.3333333333333,402.7578125,403.6666666666667,402.7578125,408.3333333333333L402.7578125,413"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M489.34926730635937,366.9064685285142L487.7519935886328,369.9220571070952C486.15471987090626,372.93764568567616,482.9601724354531,378.9688228428381,481.3628987177265,387.65107808808574C479.765625,396.3333333333333,479.765625,407.6666666666667,479.765625,413.3333333333333L479.765625,419"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M558.7031440085158,351L557.7148595904298,356.6666666666667C556.7265751723438,362.3333333333333,554.7500063361719,373.6666666666667,553.761721918086,384C552.7734375,394.3333333333333,552.7734375,403.6666666666667,552.7734375,408.3333333333333L552.7734375,413"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id12" d="M621.6159945845262,368.73234257250704L622.0888496537718,371.44361881042255C622.5617047230174,374.154895048338,623.5074148615087,379.57744752416903,623.9802699307544,387.9553904287512C624.453125,396.3333333333333,624.453125,407.6666666666667,624.453125,413.3333333333333L624.453125,419"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id13" d="M681.3102569951338,351L684.3731308292781,356.6666666666667C687.4360046634225,362.3333333333333,693.5617523317113,373.6666666666667,696.6246261658556,384C699.6875,394.3333333333333,699.6875,403.6666666666667,699.6875,408.3333333333333L699.6875,413"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id14" d="M732.507895294273,337.84517655659454L739.649808578561,345.7043137971621C746.7917218628487,353.5634510377297,761.0755484314244,369.2817255188649,768.2174617157121,382.8075294260991C775.359375,396.3333333333333,775.359375,407.6666666666667,775.359375,413.3333333333333L775.359375,419"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id15" d="M734.59210754455,293.43300339297804L754.1457667037917,308.69416949414835C773.6994258630333,323.9553355953187,812.8067441815166,354.4776677976593,832.3604033407584,375.40550056549637C851.9140625,396.3333333333333,851.9140625,407.6666666666667,851.9140625,413.3333333333333L851.9140625,419"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id16" d="M735.8161752545873,268.276350698643L768.0733752121561,287.73029224886915C800.3305751697249,307.18423379909535,864.8449750848625,346.09211689954765,897.1021750424312,371.2127251164405C929.359375,396.3333333333333,929.359375,407.6666666666667,929.359375,413.3333333333333L929.359375,419"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id17" d="M736.593445283185,251.37713365886302L782.4437564859876,273.64761138238583C828.29406768879,295.9180891059087,919.9946900943951,340.45904455295437,965.8450012971975,368.39618894314384C1011.6953125,396.3333333333333,1011.6953125,407.6666666666667,1011.6953125,413.3333333333333L1011.6953125,419"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id18" d="M737.1292676808903,238.53607249353038L798.5387126507418,262.946727077942C859.9481576205935,287.3573816623536,982.7670475602968,336.17869083117677,1044.1764925301484,366.25601208225504C1105.5859375,396.3333333333333,1105.5859375,407.6666666666667,1105.5859375,413.3333333333333L1105.5859375,419"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -202,14 +207,6 @@
</foreignObject>
</g>
</g>
<g transform="translate(634.3670392320046, 396.4337717562932)" class="edgeTerminals">
<g transform="translate(0, 0)" class="inner"/>
<foreignObject style="width: 18px; height: 12px;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">10</span>
</div>
</foreignObject>
</g>
<g transform="translate(699.6875, 385)" class="edgeLabel">
<g transform="translate(-8.671875, -9)" class="label">
<foreignObject height="18" width="17.34375">
@@ -221,14 +218,6 @@
</foreignObject>
</g>
</g>
<g transform="translate(709.4483592266314, 396.3556735882021)" class="edgeTerminals">
<g transform="translate(0, 0)" class="inner"/>
<foreignObject style="width: 18px; height: 12px;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">20</span>
</div>
</foreignObject>
</g>
<g transform="translate(775.359375, 385)" class="edgeLabel">
<g transform="translate(-13.1171875, -9)" class="label">
<foreignObject height="18" width="26.234375">
@@ -286,8 +275,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(21.28125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L7">
<g title="A" id="classId-C_0007912762435557379205-0" class="node default clickable">
<a transform="translate(21.28125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L7">
<g title="A" id="classId-C_0000989095304444672400-0" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -305,8 +294,8 @@
</g>
</g>
</a>
<a transform="translate(97.84375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L9">
<g title="B" id="classId-C_0005186282081960042491-1" class="node default clickable">
<a transform="translate(97.84375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L9">
<g title="B" id="classId-C_0000648285260245005311-1" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -324,8 +313,8 @@
</g>
</g>
</a>
<a transform="translate(174.40625, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L11">
<g title="C" id="classId-C_0002586434664058382197-2" class="node default clickable">
<a transform="translate(174.40625, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L11">
<g title="C" id="classId-C_0000323304333007297774-2" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -343,8 +332,8 @@
</g>
</g>
</a>
<a transform="translate(250.96875, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L13">
<g title="D" id="classId-C_0008055299192349067940-3" class="node default clickable">
<a transform="translate(250.96875, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L13">
<g title="D" id="classId-C_0001006912399043633492-3" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -362,8 +351,8 @@
</g>
</g>
</a>
<a transform="translate(1194.76953125, 565.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L15">
<g title="E" id="classId-C_0008740403152164631827-4" class="node default clickable">
<a transform="translate(1194.76953125, 565.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L15">
<g title="E" id="classId-C_0001092550394020578978-4" class="node default clickable">
<rect height="57" width="25.671875" y="-28.5" x="-12.8359375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="12.8359375" x1="-12.8359375" class="divider"/>
<line y2="17.5" y1="17.5" x2="12.8359375" x1="-12.8359375" class="divider"/>
@@ -381,8 +370,8 @@
</g>
</g>
</a>
<a transform="translate(326.640625, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L17">
<g title="F" id="classId-C_0007723190094486257891-5" class="node default clickable">
<a transform="translate(326.640625, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L17">
<g title="F" id="classId-C_0000965398761810782236-5" class="node default clickable">
<rect height="57" width="24.78125" y="-28.5" x="-12.390625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="12.390625" x1="-12.390625" class="divider"/>
<line y2="17.5" y1="17.5" x2="12.390625" x1="-12.390625" class="divider"/>
@@ -400,8 +389,8 @@
</g>
</g>
</a>
<a transform="translate(402.7578125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L19">
<g title="G" id="classId-C_0014117856007096243716-6" class="node default clickable">
<a transform="translate(402.7578125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L19">
<g title="G" id="classId-C_0001764732000887030464-6" class="node default clickable">
<rect height="57" width="27.453125" y="-28.5" x="-13.7265625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.7265625" x1="-13.7265625" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.7265625" x1="-13.7265625" class="divider"/>
@@ -419,8 +408,8 @@
</g>
</g>
</a>
<a transform="translate(479.765625, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L21">
<g title="H" id="classId-C_0013354284798700417170-7" class="node default clickable">
<a transform="translate(479.765625, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L21">
<g title="H" id="classId-C_0001669285599837552146-7" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -438,8 +427,8 @@
</g>
</g>
</a>
<a transform="translate(552.7734375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L23">
<g title="I" id="classId-C_0017878004788792003021-8" class="node default clickable">
<a transform="translate(552.7734375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L23">
<g title="I" id="classId-C_0002234750598599000377-8" class="node default clickable">
<rect height="57" width="19.453125" y="-28.5" x="-9.7265625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="9.7265625" x1="-9.7265625" class="divider"/>
<line y2="17.5" y1="17.5" x2="9.7265625" x1="-9.7265625" class="divider"/>
@@ -457,8 +446,8 @@
</g>
</g>
</a>
<a transform="translate(624.453125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L25">
<g title="J" id="classId-C_0010687469195003722956-9" class="node default clickable">
<a transform="translate(624.453125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L25">
<g title="J" id="classId-C_0001335933649375465369-9" class="node default clickable">
<rect height="57" width="23.90625" y="-28.5" x="-11.953125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="11.953125" x1="-11.953125" class="divider"/>
<line y2="17.5" y1="17.5" x2="11.953125" x1="-11.953125" class="divider"/>
@@ -476,8 +465,8 @@
</g>
</g>
</a>
<a transform="translate(699.6875, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L27">
<g title="K" id="classId-C_0012825522918912640984-10" class="node default clickable">
<a transform="translate(699.6875, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L27">
<g title="K" id="classId-C_0001603190364864080123-10" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -495,8 +484,8 @@
</g>
</g>
</a>
<a transform="translate(775.359375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L29">
<g title="L" id="classId-C_0002443897907266560370-11" class="node default clickable">
<a transform="translate(775.359375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L29">
<g title="L" id="classId-C_0000305487238408320046-11" class="node default clickable">
<rect height="57" width="24.78125" y="-28.5" x="-12.390625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="12.390625" x1="-12.390625" class="divider"/>
<line y2="17.5" y1="17.5" x2="12.390625" x1="-12.390625" class="divider"/>
@@ -514,8 +503,8 @@
</g>
</g>
</a>
<a transform="translate(851.9140625, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L31">
<g title="M" id="classId-C_0013317956099389786204-12" class="node default clickable">
<a transform="translate(851.9140625, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L31">
<g title="M" id="classId-C_0001664744512423723275-12" class="node default clickable">
<rect height="57" width="28.328125" y="-28.5" x="-14.1640625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="14.1640625" x1="-14.1640625" class="divider"/>
<line y2="17.5" y1="17.5" x2="14.1640625" x1="-14.1640625" class="divider"/>
@@ -533,8 +522,8 @@
</g>
</g>
</a>
<a transform="translate(929.359375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L33">
<g title="N" id="classId-C_0007601680158337220805-13" class="node default clickable">
<a transform="translate(929.359375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L33">
<g title="N" id="classId-C_0000950210019792152600-13" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -552,8 +541,8 @@
</g>
</g>
</a>
<a transform="translate(1011.6953125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L35">
<g title="NN" id="classId-C_0013298797887197809793-14" class="node default clickable">
<a transform="translate(1011.6953125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L35">
<g title="NN" id="classId-C_0001662349735899726224-14" class="node default clickable">
<rect height="57" width="38.109375" y="-28.5" x="-19.0546875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="19.0546875" x1="-19.0546875" class="divider"/>
<line y2="17.5" y1="17.5" x2="19.0546875" x1="-19.0546875" class="divider"/>
@@ -571,8 +560,8 @@
</g>
</g>
</a>
<a transform="translate(1105.5859375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L37">
<g title="NNN" id="classId-C_0015705160603852798870-15" class="node default clickable">
<a transform="translate(1105.5859375, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L37">
<g title="NNN" id="classId-C_0001963145075481599858-15" class="node default clickable">
<rect height="57" width="49.671875" y="-28.5" x="-24.8359375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="24.8359375" x1="-24.8359375" class="divider"/>
<line y2="17.5" y1="17.5" x2="24.8359375" x1="-24.8359375" class="divider"/>
@@ -590,8 +579,8 @@
</g>
</g>
</a>
<a transform="translate(1348.24609375, 565.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L39">
<g title="custom_container" id="classId-C_0007331041535639501055-16" class="node default clickable">
<a transform="translate(1348.24609375, 565.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L39">
<g title="custom_container" id="classId-C_0000916380191954937631-16" class="node default clickable">
<rect height="79" width="181.28125" y="-39.5" x="-90.640625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="90.640625" x1="-90.640625" class="divider"/>
<line y2="28.5" y1="28.5" x2="90.640625" x1="-90.640625" class="divider"/>
@@ -614,8 +603,8 @@
</g>
</g>
</a>
<a transform="translate(1271.5078125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L39">
<g title="custom_container" id="classId-C_0000401224904659478871-17" class="node default clickable">
<a transform="translate(1271.5078125, 447.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L39">
<g title="custom_container" id="classId-C_0000050153113082434858-17" class="node default clickable">
<rect height="57" width="182.171875" y="-28.5" x="-91.0859375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="91.0859375" x1="-91.0859375" class="divider"/>
<line y2="17.5" y1="17.5" x2="91.0859375" x1="-91.0859375" class="divider"/>
@@ -633,8 +622,8 @@
</g>
</g>
</a>
<a transform="translate(588.61328125, 179.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00006/t00006.cc#L44">
<g title="R" id="classId-C_0002424204488135060211-18" class="node default clickable">
<a transform="translate(588.61328125, 179.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00006/t00006.cc#L44">
<g title="R" id="classId-C_0000303025561016882526-18" class="node default clickable">
<rect height="343" width="263.578125" y="-171.5" x="-131.7890625" class="outer title-state"/>
<line y2="-141.5" y1="-141.5" x2="131.7890625" x1="-131.7890625" class="divider"/>
<line y2="160.5" y1="160.5" x2="131.7890625" x1="-131.7890625" class="divider"/>

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 49 KiB

View File

@@ -46,8 +46,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "A",
"id": "791012980272136155",
"display_name": "clanguml::t00007::A",
"id": "98876622534017019",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -68,8 +68,8 @@ public:
},
{
"bases": [],
"display_name": "B",
"id": "5571050502189662274",
"display_name": "clanguml::t00007::B",
"id": "696381312773707784",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -90,8 +90,8 @@ public:
},
{
"bases": [],
"display_name": "C",
"id": "7776249429434912544",
"display_name": "clanguml::t00007::C",
"id": "972031178679364068",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -112,8 +112,8 @@ public:
},
{
"bases": [],
"display_name": "R",
"id": "535246997770401258",
"display_name": "clanguml::t00007::R",
"id": "66905874721300157",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -171,41 +171,26 @@ public:
}
],
"name": "t00007_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "791012980272136155",
"destination": "98876622534017019",
"label": "a",
"source": "535246997770401258",
"source": "66905874721300157",
"type": "aggregation"
},
{
"access": "public",
"destination": "5571050502189662274",
"destination": "696381312773707784",
"label": "b",
"source": "535246997770401258",
"source": "66905874721300157",
"type": "association"
},
{
"access": "public",
"destination": "5571050502189662274",
"label": "b",
"source": "535246997770401258",
"type": "association"
},
{
"access": "public",
"destination": "7776249429434912544",
"destination": "972031178679364068",
"label": "c",
"source": "535246997770401258",
"type": "association"
},
{
"access": "public",
"destination": "7776249429434912544",
"label": "c",
"source": "535246997770401258",
"source": "66905874721300157",
"type": "association"
}
],

View File

@@ -1,75 +1,83 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="230px" preserveAspectRatio="none" style="width:207px;height:230px;" version="1.1" viewBox="0 0 207 230" width="207px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="237px" preserveAspectRatio="none" style="width:207px;height:237px;background:#FFFFFF;" version="1.1" viewBox="0 0 207 237" width="207px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1efoyw4quq6ma" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L5" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L5" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1efoyw4quq6ma)" height="48" id="C_0000791012980272136155" style="stroke: #A80036; stroke-width: 1.5;" width="40" x="6" y="171"/>
<ellipse cx="21" cy="187" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M23.9688,192.6406 Q23.3906,192.9375 22.75,193.0781 Q22.1094,193.2344 21.4063,193.2344 Q18.9063,193.2344 17.5781,191.5938 Q16.2656,189.9375 16.2656,186.8125 Q16.2656,183.6875 17.5781,182.0313 Q18.9063,180.375 21.4063,180.375 Q22.1094,180.375 22.75,180.5313 Q23.4063,180.6875 23.9688,180.9844 L23.9688,183.7031 Q23.3438,183.125 22.75,182.8594 Q22.1563,182.5781 21.5313,182.5781 Q20.1875,182.5781 19.5,183.6563 Q18.8125,184.7188 18.8125,186.8125 Q18.8125,188.9063 19.5,189.9844 Q20.1875,191.0469 21.5313,191.0469 Q22.1563,191.0469 22.75,190.7813 Q23.3438,190.5 23.9688,189.9219 L23.9688,192.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="35" y="191.1543">A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="45" y1="203" y2="203"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="45" y1="211" y2="211"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L5" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L5" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0000098876622534017019">
<rect codeLine="2" fill="#F1F1F1" height="48" id="C_0000098876622534017019" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="7" y="182.4"/>
<ellipse cx="22" cy="198.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M17,199.5563 C17,202.0563 19.1406,203.8688 22.0625,203.8688 C23.2969,203.8688 24.4688,203.5719 25.2188,203.0563 C25.8281,202.6344 26.1563,202.2125 26.1563,201.8063 C26.1563,201.3375 25.7344,200.9313 25.2344,200.9313 C25,200.9313 24.7813,201.0094 24.5781,201.2125 C24.1406,201.65 24.1406,201.65 23.9688,201.7438 C23.5156,201.9781 22.875,202.1188 22.1094,202.1188 C20.1094,202.1188 18.8281,201.1031 18.8281,199.525 L18.8281,198.4781 C18.8281,196.775 20.0469,195.5719 21.75,195.5719 C22.3281,195.5719 22.9063,195.7125 23.375,195.9625 C23.8438,196.2281 24.0156,196.4156 24.0781,196.775 C24.2031,197.4469 24.4531,197.6969 24.9844,197.6969 C25.2656,197.6969 25.5469,197.5563 25.7344,197.3375 C25.8594,197.1656 25.9063,196.9938 25.9063,196.5563 L25.9063,195.1969 C25.9063,194.775 25.8906,194.6344 25.7656,194.4625 C25.5938,194.2125 25.3125,194.0563 24.9844,194.0563 C24.6719,194.0563 24.4688,194.1656 24.25,194.4313 C23.0781,193.9313 22.6406,193.8219 21.6875,193.8219 C19.0156,193.8219 17,195.8375 17,198.4625 L17,199.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="36" y="203.006">A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="47" y1="214.4" y2="214.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="47" y1="222.4" y2="222.4"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L7" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L7" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1efoyw4quq6ma)" height="48" id="C_0005571050502189662274" style="stroke: #A80036; stroke-width: 1.5;" width="40" x="81" y="171"/>
<ellipse cx="96" cy="187" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M98.9688,192.6406 Q98.3906,192.9375 97.75,193.0781 Q97.1094,193.2344 96.4063,193.2344 Q93.9063,193.2344 92.5781,191.5938 Q91.2656,189.9375 91.2656,186.8125 Q91.2656,183.6875 92.5781,182.0313 Q93.9063,180.375 96.4063,180.375 Q97.1094,180.375 97.75,180.5313 Q98.4063,180.6875 98.9688,180.9844 L98.9688,183.7031 Q98.3438,183.125 97.75,182.8594 Q97.1563,182.5781 96.5313,182.5781 Q95.1875,182.5781 94.5,183.6563 Q93.8125,184.7188 93.8125,186.8125 Q93.8125,188.9063 94.5,189.9844 Q95.1875,191.0469 96.5313,191.0469 Q97.1563,191.0469 97.75,190.7813 Q98.3438,190.5 98.9688,189.9219 L98.9688,192.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="110" y="191.1543">B</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="82" x2="120" y1="203" y2="203"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="82" x2="120" y1="211" y2="211"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L7" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L7" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0000696381312773707784">
<rect codeLine="6" fill="#F1F1F1" height="48" id="C_0000696381312773707784" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="83" y="182.4"/>
<ellipse cx="98" cy="198.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M93,199.5563 C93,202.0563 95.1406,203.8688 98.0625,203.8688 C99.2969,203.8688 100.4688,203.5719 101.2188,203.0563 C101.8281,202.6344 102.1563,202.2125 102.1563,201.8063 C102.1563,201.3375 101.7344,200.9313 101.2344,200.9313 C101,200.9313 100.7813,201.0094 100.5781,201.2125 C100.1406,201.65 100.1406,201.65 99.9688,201.7438 C99.5156,201.9781 98.875,202.1188 98.1094,202.1188 C96.1094,202.1188 94.8281,201.1031 94.8281,199.525 L94.8281,198.4781 C94.8281,196.775 96.0469,195.5719 97.75,195.5719 C98.3281,195.5719 98.9063,195.7125 99.375,195.9625 C99.8438,196.2281 100.0156,196.4156 100.0781,196.775 C100.2031,197.4469 100.4531,197.6969 100.9844,197.6969 C101.2656,197.6969 101.5469,197.5563 101.7344,197.3375 C101.8594,197.1656 101.9063,196.9938 101.9063,196.5563 L101.9063,195.1969 C101.9063,194.775 101.8906,194.6344 101.7656,194.4625 C101.5938,194.2125 101.3125,194.0563 100.9844,194.0563 C100.6719,194.0563 100.4688,194.1656 100.25,194.4313 C99.0781,193.9313 98.6406,193.8219 97.6875,193.8219 C95.0156,193.8219 93,195.8375 93,198.4625 L93,199.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="112" y="203.006">B</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="84" x2="123" y1="214.4" y2="214.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="84" x2="123" y1="222.4" y2="222.4"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L9" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L9" xlink:show="new" xlink:title="C" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1efoyw4quq6ma)" height="48" id="C_0007776249429434912544" style="stroke: #A80036; stroke-width: 1.5;" width="40" x="156" y="171"/>
<ellipse cx="171" cy="187" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M173.9688,192.6406 Q173.3906,192.9375 172.75,193.0781 Q172.1094,193.2344 171.4063,193.2344 Q168.9063,193.2344 167.5781,191.5938 Q166.2656,189.9375 166.2656,186.8125 Q166.2656,183.6875 167.5781,182.0313 Q168.9063,180.375 171.4063,180.375 Q172.1094,180.375 172.75,180.5313 Q173.4063,180.6875 173.9688,180.9844 L173.9688,183.7031 Q173.3438,183.125 172.75,182.8594 Q172.1563,182.5781 171.5313,182.5781 Q170.1875,182.5781 169.5,183.6563 Q168.8125,184.7188 168.8125,186.8125 Q168.8125,188.9063 169.5,189.9844 Q170.1875,191.0469 171.5313,191.0469 Q172.1563,191.0469 172.75,190.7813 Q173.3438,190.5 173.9688,189.9219 L173.9688,192.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="185" y="191.1543">C</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="157" x2="195" y1="203" y2="203"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="157" x2="195" y1="211" y2="211"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L9" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L9" xlink:show="new" xlink:title="C" xlink:type="simple">
<g id="elem_C_0000972031178679364068">
<rect codeLine="10" fill="#F1F1F1" height="48" id="C_0000972031178679364068" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="42" x="158.5" y="182.4"/>
<ellipse cx="173.5" cy="198.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M168.5,199.5563 C168.5,202.0563 170.6406,203.8688 173.5625,203.8688 C174.7969,203.8688 175.9688,203.5719 176.7188,203.0563 C177.3281,202.6344 177.6563,202.2125 177.6563,201.8063 C177.6563,201.3375 177.2344,200.9313 176.7344,200.9313 C176.5,200.9313 176.2813,201.0094 176.0781,201.2125 C175.6406,201.65 175.6406,201.65 175.4688,201.7438 C175.0156,201.9781 174.375,202.1188 173.6094,202.1188 C171.6094,202.1188 170.3281,201.1031 170.3281,199.525 L170.3281,198.4781 C170.3281,196.775 171.5469,195.5719 173.25,195.5719 C173.8281,195.5719 174.4063,195.7125 174.875,195.9625 C175.3438,196.2281 175.5156,196.4156 175.5781,196.775 C175.7031,197.4469 175.9531,197.6969 176.4844,197.6969 C176.7656,197.6969 177.0469,197.5563 177.2344,197.3375 C177.3594,197.1656 177.4063,196.9938 177.4063,196.5563 L177.4063,195.1969 C177.4063,194.775 177.3906,194.6344 177.2656,194.4625 C177.0938,194.2125 176.8125,194.0563 176.4844,194.0563 C176.1719,194.0563 175.9688,194.1656 175.75,194.4313 C174.5781,193.9313 174.1406,193.8219 173.1875,193.8219 C170.5156,193.8219 168.5,195.8375 168.5,198.4625 L168.5,199.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="187.5" y="203.006">C</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="159.5" x2="199.5" y1="214.4" y2="214.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="159.5" x2="199.5" y1="222.4" y2="222.4"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L11" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L11" xlink:show="new" xlink:title="R" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1efoyw4quq6ma)" height="86.4141" id="C_0000535246997770401258" style="stroke: #A80036; stroke-width: 1.5;" width="159" x="21.5" y="8"/>
<ellipse cx="92.75" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M95.7188,29.6406 Q95.1406,29.9375 94.5,30.0781 Q93.8594,30.2344 93.1563,30.2344 Q90.6563,30.2344 89.3281,28.5938 Q88.0156,26.9375 88.0156,23.8125 Q88.0156,20.6875 89.3281,19.0313 Q90.6563,17.375 93.1563,17.375 Q93.8594,17.375 94.5,17.5313 Q95.1563,17.6875 95.7188,17.9844 L95.7188,20.7031 Q95.0938,20.125 94.5,19.8594 Q93.9063,19.5781 93.2813,19.5781 Q91.9375,19.5781 91.25,20.6563 Q90.5625,21.7188 90.5625,23.8125 Q90.5625,25.9063 91.25,26.9844 Q91.9375,28.0469 93.2813,28.0469 Q93.9063,28.0469 94.5,27.7813 Q95.0938,27.5 95.7188,26.9219 L95.7188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="113.25" y="28.1543">R</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="22.5" x2="179.5" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="22.5" x2="179.5" y1="48" y2="48"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L11" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L11" xlink:show="new" xlink:title="R" xlink:type="simple">
<g id="elem_C_0000066905874721300157">
<rect codeLine="14" fill="#F1F1F1" height="98.3998" id="C_0000066905874721300157" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="167" x="20" y="7"/>
<ellipse cx="94.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M89.25,24.1563 C89.25,26.6563 91.3906,28.4688 94.3125,28.4688 C95.5469,28.4688 96.7188,28.1719 97.4688,27.6563 C98.0781,27.2344 98.4063,26.8125 98.4063,26.4063 C98.4063,25.9375 97.9844,25.5313 97.4844,25.5313 C97.25,25.5313 97.0313,25.6094 96.8281,25.8125 C96.3906,26.25 96.3906,26.25 96.2188,26.3438 C95.7656,26.5781 95.125,26.7188 94.3594,26.7188 C92.3594,26.7188 91.0781,25.7031 91.0781,24.125 L91.0781,23.0781 C91.0781,21.375 92.2969,20.1719 94,20.1719 C94.5781,20.1719 95.1563,20.3125 95.625,20.5625 C96.0938,20.8281 96.2656,21.0156 96.3281,21.375 C96.4531,22.0469 96.7031,22.2969 97.2344,22.2969 C97.5156,22.2969 97.7969,22.1563 97.9844,21.9375 C98.1094,21.7656 98.1563,21.5938 98.1563,21.1563 L98.1563,19.7969 C98.1563,19.375 98.1406,19.2344 98.0156,19.0625 C97.8438,18.8125 97.5625,18.6563 97.2344,18.6563 C96.9219,18.6563 96.7188,18.7656 96.5,19.0313 C95.3281,18.5313 94.8906,18.4219 93.9375,18.4219 C91.2656,18.4219 89.25,20.4375 89.25,23.0625 L89.25,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="114.75" y="27.606">R</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="21" x2="186" y1="39" y2="39"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="21" x2="186" y1="47" y2="47"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L13" target="_top" title="a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L13" xlink:show="new" xlink:title="a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="26" y="55.9"/>
<ellipse cx="31" cy="60.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L13" target="_top" title="a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L13" xlink:show="new" xlink:title="a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="140" x="40" y="64.0059">a : std::unique_ptr&lt;A&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L14" target="_top" title="b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L14" xlink:show="new" xlink:title="b" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="26" y="72.6999"/>
<ellipse cx="31" cy="77.6999" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L14" target="_top" title="b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L14" xlink:show="new" xlink:title="b" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="141" x="40" y="80.8059">b : std::shared_ptr&lt;B&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L15" target="_top" title="c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L15" xlink:show="new" xlink:title="c" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="26" y="89.4998"/>
<ellipse cx="31" cy="94.4998" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L15" target="_top" title="c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L15" xlink:show="new" xlink:title="c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="130" x="40" y="97.6058">c : std::weak_ptr&lt;C&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L13" target="_top" title="a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L13" xlink:show="new" xlink:title="a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="27.5" y="54"/>
<ellipse cx="32.5" cy="59" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L13" target="_top" title="a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L13" xlink:show="new" xlink:title="a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="130" x="41.5" y="62.2104">a : std::unique_ptr&lt;A&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L14" target="_top" title="b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L14" xlink:show="new" xlink:title="b" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="27.5" y="66.8047"/>
<ellipse cx="32.5" cy="71.8047" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L14" target="_top" title="b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L14" xlink:show="new" xlink:title="b" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="133" x="41.5" y="75.0151">b : std::shared_ptr&lt;B&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L15" target="_top" title="c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L15" xlink:show="new" xlink:title="c" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="27.5" y="79.6094"/>
<ellipse cx="32.5" cy="84.6094" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L15" target="_top" title="c" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L15" xlink:show="new" xlink:title="c" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="121" x="41.5" y="87.8198">c : std::weak_ptr&lt;C&gt;</text>
</a>
<path d="M72.48,106 C60.66,128.37 47.58,153.14 38.31,170.69 " fill="none" id="C_0000535246997770401258&lt;-C_0000791012980272136155" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="78.7,94.22,72.3597,97.6552,73.092,104.829,79.4323,101.3938,78.7,94.22" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="19" x="62" y="137.0669">+a</text>
<path d="M101,94.22 C101,117.28 101,145.22 101,165.66 " fill="none" id="C_0000535246997770401258-&gt;C_0005571050502189662274" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="101,170.69,105,161.69,101,165.69,97,161.69,101,170.69" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="19" x="102" y="137.0669">+b</text>
<path d="M123.3,94.22 C135.58,117.48 150.49,145.69 161.31,166.18 " fill="none" id="C_0000535246997770401258-&gt;C_0007776249429434912544" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="163.69,170.69,163.0039,160.8651,161.346,166.2735,155.9375,164.6155,163.69,170.69" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="18" x="148" y="137.0669">+c</text>
<g id="link_C_0000066905874721300157_C_0000098876622534017019">
<path codeLine="20" d="M73.1339,116.4076 C59.9739,142.0676 49.9,161.72 39.44,182.12 " fill="none" id="C_0000066905874721300157-backto-C_0000098876622534017019" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="78.61,105.73,72.3127,109.2434,73.1339,116.4076,79.4311,112.8942,78.61,105.73" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="15" x="64.5" y="148.477">+a</text>
</g>
<g id="link_C_0000066905874721300157_C_0000696381312773707784">
<path codeLine="21" d="M103.5,105.73 C103.5,131.39 103.5,155.72 103.5,176.12 " fill="none" id="C_0000066905874721300157-to-C_0000696381312773707784" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="103.5,182.12,107.5,173.12,103.5,177.12,99.5,173.12,103.5,182.12" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="15" x="104.5" y="148.477">+b</text>
</g>
<g id="link_C_0000066905874721300157_C_0000972031178679364068">
<path codeLine="22" d="M128.39,105.73 C141.55,131.39 154.3624,156.3809 164.8224,176.7809 " fill="none" id="C_0000066905874721300157-to-C_0000972031178679364068" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="167.56,182.12,167.013,172.2863,165.2787,177.6708,159.8942,175.9365,167.56,182.12" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="15" x="151.5" y="148.477">+c</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -1,58 +1,63 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 198.671875 264" style="max-width: 198.672px; background-color: white;" width="198.671875" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M50.03129090314136,131L45.488315335951135,136.66666666666666C40.94533976876091,142.33333333333334,31.85938863438045,153.66666666666666,27.316413067190226,165C22.7734375,176.33333333333334,22.7734375,187.66666666666666,22.7734375,193.33333333333334L22.7734375,199"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M99.3359375,131L99.3359375,136.66666666666666C99.3359375,142.33333333333334,99.3359375,153.66666666666666,99.3359375,165C99.3359375,176.33333333333334,99.3359375,187.66666666666666,99.3359375,193.33333333333334L99.3359375,199"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M148.64058409685865,131L153.1835596640489,136.66666666666666C157.7265352312391,142.33333333333334,166.81248636561955,153.66666666666666,171.3554619328098,165C175.8984375,176.33333333333334,175.8984375,187.66666666666666,175.8984375,193.33333333333334L175.8984375,199"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M38.772214861128596,145.0439740344453L36.10575196760716,148.36997836203776C33.43928907408573,151.6959826896302,28.106363287042864,158.3479913448151,25.43990039352143,167.3406623390742C22.7734375,176.33333333333334,22.7734375,187.66666666666666,22.7734375,193.33333333333334L22.7734375,199"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M99.3359375,131L99.3359375,136.66666666666666C99.3359375,142.33333333333334,99.3359375,153.66666666666666,99.3359375,164C99.3359375,174.33333333333334,99.3359375,183.66666666666666,99.3359375,188.33333333333334L99.3359375,193"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M148.64058409685865,131L153.1835596640489,136.66666666666666C157.7265352312391,142.33333333333334,166.81248636561955,153.66666666666666,171.3554619328098,164C175.8984375,174.33333333333334,175.8984375,183.66666666666666,175.8984375,188.33333333333334L175.8984375,193"/>
</g>
<g class="edgeLabels">
<g transform="translate(22.7734375, 165)" class="edgeLabel">
@@ -90,8 +95,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(22.7734375, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L5">
<g title="A" id="classId-C_0000791012980272136155-0" class="node default clickable">
<a transform="translate(22.7734375, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L5">
<g title="A" id="classId-C_0000098876622534017019-0" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -109,8 +114,8 @@
</g>
</g>
</a>
<a transform="translate(99.3359375, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L7">
<g title="B" id="classId-C_0005571050502189662274-1" class="node default clickable">
<a transform="translate(99.3359375, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L7">
<g title="B" id="classId-C_0000696381312773707784-1" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -128,8 +133,8 @@
</g>
</g>
</a>
<a transform="translate(175.8984375, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L9">
<g title="C" id="classId-C_0007776249429434912544-2" class="node default clickable">
<a transform="translate(175.8984375, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L9">
<g title="C" id="classId-C_0000972031178679364068-2" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -147,8 +152,8 @@
</g>
</g>
</a>
<a transform="translate(99.3359375, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00007/t00007.cc#L11">
<g title="R" id="classId-C_0000535246997770401258-3" class="node default clickable">
<a transform="translate(99.3359375, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00007/t00007.cc#L11">
<g title="R" id="classId-C_0000066905874721300157-3" class="node default clickable">
<rect height="123" width="182.671875" y="-61.5" x="-91.3359375" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="91.3359375" x1="-91.3359375" class="divider"/>
<line y2="50.5" y1="50.5" x2="91.3359375" x1="-91.3359375" class="divider"/>

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -79,8 +79,8 @@ template <> struct E::nested_template<char> {
"elements": [
{
"bases": [],
"display_name": "A<T,P=T,CMP=nullptr,int N=3>",
"id": "18348137047180305042",
"display_name": "clanguml::t00008::A<T,P=T,CMP=nullptr,int N=3>",
"id": "2293517130897538130",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -203,8 +203,8 @@ template <> struct E::nested_template<char> {
},
{
"bases": [],
"display_name": "Vector<T>",
"id": "13419256118741442489",
"display_name": "clanguml::t00008::Vector<T>",
"id": "1677407014842680311",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -245,8 +245,8 @@ template <> struct E::nested_template<char> {
},
{
"bases": [],
"display_name": "B<T,C<>>",
"id": "15748606021494945899",
"display_name": "clanguml::t00008::B<T,C<>>",
"id": "1968575752686868237",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -293,8 +293,8 @@ template <> struct E::nested_template<char> {
},
{
"bases": [],
"display_name": "B<int,Vector>",
"id": "11593091325657631773",
"display_name": "clanguml::t00008::B<int,clanguml::t00008::Vector>",
"id": "1449136415707203971",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -328,8 +328,8 @@ template <> struct E::nested_template<char> {
},
{
"bases": [],
"display_name": "D",
"id": "12499174870531358858",
"display_name": "clanguml::t00008::D",
"id": "1562396858816419857",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -346,13 +346,12 @@ template <> struct E::nested_template<char> {
"line": 29,
"translation_unit": "t00008.cc"
},
"type": "B<int,Vector>"
"type": "B<int,clanguml::t00008::Vector>"
}
],
"methods": [
{
"access": "public",
"display_name": "add",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -380,12 +379,10 @@ template <> struct E::nested_template<char> {
"line": 33,
"translation_unit": "t00008.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "D<Items...>",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -407,14 +404,6 @@ template <> struct E::nested_template<char> {
"type": "std::tuple<Items...> *"
}
],
"template_parameters": [
{
"is_variadic": true,
"kind": "template_type",
"name": "Items...",
"template_parameters": []
}
],
"type": "void"
}
],
@@ -431,8 +420,8 @@ template <> struct E::nested_template<char> {
},
{
"bases": [],
"display_name": "E",
"id": "14301267656419448926",
"display_name": "clanguml::t00008::E",
"id": "1787658457052431115",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -453,8 +442,8 @@ template <> struct E::nested_template<char> {
},
{
"bases": [],
"display_name": "E::nested_template<ET>",
"id": "12395353627920519248",
"display_name": "clanguml::t00008::E::nested_template<ET>",
"id": "1549419203490064906",
"is_abstract": false,
"is_nested": true,
"is_struct": true,
@@ -464,7 +453,6 @@ template <> struct E::nested_template<char> {
"methods": [
{
"access": "public",
"display_name": "get",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -492,7 +480,6 @@ template <> struct E::nested_template<char> {
"line": 40,
"translation_unit": "t00008.cc"
},
"template_parameters": [],
"type": "DT *"
}
],
@@ -516,8 +503,8 @@ template <> struct E::nested_template<char> {
},
{
"bases": [],
"display_name": "E::nested_template<char>",
"id": "269096719176302663",
"display_name": "clanguml::t00008::E::nested_template<char>",
"id": "33637089897037832",
"is_abstract": false,
"is_nested": true,
"is_struct": true,
@@ -527,7 +514,6 @@ template <> struct E::nested_template<char> {
"methods": [
{
"access": "public",
"display_name": "getDecl",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -555,7 +541,6 @@ template <> struct E::nested_template<char> {
"line": 47,
"translation_unit": "t00008.cc"
},
"template_parameters": [],
"type": "DeclType *"
}
],
@@ -579,37 +564,36 @@ template <> struct E::nested_template<char> {
}
],
"name": "t00008_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "15748606021494945899",
"source": "11593091325657631773",
"destination": "1968575752686868237",
"source": "1449136415707203971",
"type": "instantiation"
},
{
"access": "public",
"destination": "11593091325657631773",
"destination": "1449136415707203971",
"label": "ints",
"source": "12499174870531358858",
"source": "1562396858816419857",
"type": "aggregation"
},
{
"access": "public",
"destination": "14301267656419448926",
"source": "12395353627920519248",
"destination": "1787658457052431115",
"source": "1549419203490064906",
"type": "containment"
},
{
"access": "public",
"destination": "14301267656419448926",
"source": "269096719176302663",
"destination": "1787658457052431115",
"source": "33637089897037832",
"type": "containment"
},
{
"access": "public",
"destination": "12395353627920519248",
"source": "269096719176302663",
"destination": "1549419203490064906",
"source": "33637089897037832",
"type": "instantiation"
}
],

View File

@@ -1,192 +1,212 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="403px" preserveAspectRatio="none" style="width:1039px;height:403px;" version="1.1" viewBox="0 0 1039 403" width="1039px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="433px" preserveAspectRatio="none" style="width:1048px;height:433px;background:#FFFFFF;" version="1.1" viewBox="0 0 1048 433" width="1048px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="fuvfbzwyi1mac" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L9" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L9" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fuvfbzwyi1mac)" height="124.8281" id="C_0018348137047180305042" style="stroke: #A80036; stroke-width: 1.5;" width="209" x="6" y="8"/>
<ellipse cx="21" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M23.9688,29.6406 Q23.3906,29.9375 22.75,30.0781 Q22.1094,30.2344 21.4063,30.2344 Q18.9063,30.2344 17.5781,28.5938 Q16.2656,26.9375 16.2656,23.8125 Q16.2656,20.6875 17.5781,19.0313 Q18.9063,17.375 21.4063,17.375 Q22.1094,17.375 22.75,17.5313 Q23.4063,17.6875 23.9688,17.9844 L23.9688,20.7031 Q23.3438,20.125 22.75,19.8594 Q22.1563,19.5781 21.5313,19.5781 Q20.1875,19.5781 19.5,20.6563 Q18.8125,21.7188 18.8125,23.8125 Q18.8125,25.9063 19.5,26.9844 Q20.1875,28.0469 21.5313,28.0469 Q22.1563,28.0469 22.75,27.7813 Q23.3438,27.5 23.9688,26.9219 L23.9688,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="35" y="28.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="167" x="51" y="5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="165" x="52" y="17.1387">T,P=T,CMP=nullptr,int N=3</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="214" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="214" y1="48" y2="48"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L9" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L9" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0002293517130897538130">
<rect codeLine="2" fill="#F1F1F1" height="148.7996" id="C_0002293517130897538130" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="190" x="7" y="10"/>
<ellipse cx="22" cy="26" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M17,27.1563 C17,29.6563 19.1406,31.4688 22.0625,31.4688 C23.2969,31.4688 24.4688,31.1719 25.2188,30.6563 C25.8281,30.2344 26.1563,29.8125 26.1563,29.4063 C26.1563,28.9375 25.7344,28.5313 25.2344,28.5313 C25,28.5313 24.7813,28.6094 24.5781,28.8125 C24.1406,29.25 24.1406,29.25 23.9688,29.3438 C23.5156,29.5781 22.875,29.7188 22.1094,29.7188 C20.1094,29.7188 18.8281,28.7031 18.8281,27.125 L18.8281,26.0781 C18.8281,24.375 20.0469,23.1719 21.75,23.1719 C22.3281,23.1719 22.9063,23.3125 23.375,23.5625 C23.8438,23.8281 24.0156,24.0156 24.0781,24.375 C24.2031,25.0469 24.4531,25.2969 24.9844,25.2969 C25.2656,25.2969 25.5469,25.1563 25.7344,24.9375 C25.8594,24.7656 25.9063,24.5938 25.9063,24.1563 L25.9063,22.7969 C25.9063,22.375 25.8906,22.2344 25.7656,22.0625 C25.5938,21.8125 25.3125,21.6563 24.9844,21.6563 C24.6719,21.6563 24.4688,21.7656 24.25,22.0313 C23.0781,21.5313 22.6406,21.4219 21.6875,21.4219 C19.0156,21.4219 17,23.4375 17,26.0625 L17,27.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="36" y="30.606">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="147" x="53" y="7"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="145" x="54" y="21.2001">T,P=T,CMP=nullptr,int N=3</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="196" y1="42" y2="42"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="196" y1="50" y2="50"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L17" target="_top" title="comparator" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L17" xlink:show="new" xlink:title="comparator" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="58.9"/>
<ellipse cx="18" cy="63.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L17" target="_top" title="comparator" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L17" xlink:show="new" xlink:title="comparator" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="116" x="27" y="67.0059">comparator : CMP</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L15" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L15" xlink:show="new" xlink:title="ints" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="75.6999"/>
<ellipse cx="18" cy="80.6999" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L15" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L15" xlink:show="new" xlink:title="ints" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="139" x="27" y="83.8059">ints : std::array&lt;int,N&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L12" target="_top" title="pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L12" xlink:show="new" xlink:title="pointer" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="92.4998"/>
<ellipse cx="18" cy="97.4998" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L12" target="_top" title="pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L12" xlink:show="new" xlink:title="pointer" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="74" x="27" y="100.6058">pointer : T *</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L13" target="_top" title="reference" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L13" xlink:show="new" xlink:title="reference" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="109.2997"/>
<ellipse cx="18" cy="114.2997" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L13" target="_top" title="reference" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L13" xlink:show="new" xlink:title="reference" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="95" x="27" y="117.4057">reference : T &amp;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L11" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L11" xlink:show="new" xlink:title="value" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="126.0997"/>
<ellipse cx="18" cy="131.0997" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L11" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L11" xlink:show="new" xlink:title="value" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="55" x="27" y="134.2057">value : T</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L14" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L14" xlink:show="new" xlink:title="values" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="142.8996"/>
<ellipse cx="18" cy="147.8996" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L14" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L14" xlink:show="new" xlink:title="values" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="144" x="27" y="151.0056">values : std::vector&lt;P&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L17" target="_top" title="comparator" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L17" xlink:show="new" xlink:title="comparator" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="54"/>
<ellipse cx="17" cy="59" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L20" target="_top" title="Vector" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L20" xlink:show="new" xlink:title="Vector" xlink:type="simple">
<g id="elem_C_0001677407014842680311">
<rect codeLine="12" fill="#F1F1F1" height="64.7999" id="C_0001677407014842680311" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="170" x="232" y="52"/>
<ellipse cx="286.75" cy="68" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M281.75,69.1563 C281.75,71.6563 283.8906,73.4688 286.8125,73.4688 C288.0469,73.4688 289.2188,73.1719 289.9688,72.6563 C290.5781,72.2344 290.9063,71.8125 290.9063,71.4063 C290.9063,70.9375 290.4844,70.5313 289.9844,70.5313 C289.75,70.5313 289.5313,70.6094 289.3281,70.8125 C288.8906,71.25 288.8906,71.25 288.7188,71.3438 C288.2656,71.5781 287.625,71.7188 286.8594,71.7188 C284.8594,71.7188 283.5781,70.7031 283.5781,69.125 L283.5781,68.0781 C283.5781,66.375 284.7969,65.1719 286.5,65.1719 C287.0781,65.1719 287.6563,65.3125 288.125,65.5625 C288.5938,65.8281 288.7656,66.0156 288.8281,66.375 C288.9531,67.0469 289.2031,67.2969 289.7344,67.2969 C290.0156,67.2969 290.2969,67.1563 290.4844,66.9375 C290.6094,66.7656 290.6563,66.5938 290.6563,66.1563 L290.6563,64.7969 C290.6563,64.375 290.6406,64.2344 290.5156,64.0625 C290.3438,63.8125 290.0625,63.6563 289.7344,63.6563 C289.4219,63.6563 289.2188,63.7656 289,64.0313 C287.8281,63.5313 287.3906,63.4219 286.4375,63.4219 C283.7656,63.4219 281.75,65.4375 281.75,68.0625 L281.75,69.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="41" x="307.25" y="72.606">Vector</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="9" x="396" y="49"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="7" x="397" y="63.2001">T</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="233" x2="401" y1="84" y2="84"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="233" x2="401" y1="92" y2="92"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L21" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L21" xlink:show="new" xlink:title="values" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="238" y="100.9"/>
<ellipse cx="243" cy="105.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L21" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L21" xlink:show="new" xlink:title="values" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="144" x="252" y="109.0059">values : std::vector&lt;T&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L17" target="_top" title="comparator" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L17" xlink:show="new" xlink:title="comparator" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="102" x="26" y="62.2104">comparator : CMP</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L24" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L24" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0001968575752686868237">
<rect codeLine="17" fill="#F1F1F1" height="64.7999" id="C_0001968575752686868237" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="191" x="479.5" y="361.6"/>
<ellipse cx="547.75" cy="377.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M542.75,378.7562 C542.75,381.2562 544.8906,383.0687 547.8125,383.0687 C549.0469,383.0687 550.2188,382.7719 550.9688,382.2562 C551.5781,381.8344 551.9063,381.4125 551.9063,381.0062 C551.9063,380.5375 551.4844,380.1312 550.9844,380.1312 C550.75,380.1312 550.5313,380.2094 550.3281,380.4125 C549.8906,380.85 549.8906,380.85 549.7188,380.9437 C549.2656,381.1781 548.625,381.3187 547.8594,381.3187 C545.8594,381.3187 544.5781,380.3031 544.5781,378.725 L544.5781,377.6781 C544.5781,375.975 545.7969,374.7719 547.5,374.7719 C548.0781,374.7719 548.6563,374.9125 549.125,375.1625 C549.5938,375.4281 549.7656,375.6156 549.8281,375.975 C549.9531,376.6469 550.2031,376.8969 550.7344,376.8969 C551.0156,376.8969 551.2969,376.7562 551.4844,376.5375 C551.6094,376.3656 551.6563,376.1937 551.6563,375.7562 L551.6563,374.3969 C551.6563,373.975 551.6406,373.8344 551.5156,373.6625 C551.3438,373.4125 551.0625,373.2562 550.7344,373.2562 C550.4219,373.2562 550.2188,373.3656 550,373.6312 C548.8281,373.1312 548.3906,373.0219 547.4375,373.0219 C544.7656,373.0219 542.75,375.0375 542.75,377.6625 L542.75,378.7562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="568.25" y="382.206">B</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="35" x="638.5" y="358.6"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="33" x="639.5" y="372.8001">T,C&lt;&gt;</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="480.5" x2="669.5" y1="393.6" y2="393.6"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="480.5" x2="669.5" y1="401.6" y2="401.6"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L25" target="_top" title="template_template" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L25" xlink:show="new" xlink:title="template_template" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="485.5" y="410.5"/>
<ellipse cx="490.5" cy="415.5" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L25" target="_top" title="template_template" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L25" xlink:show="new" xlink:title="template_template" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="165" x="499.5" y="418.6059">template_template : C&lt;T&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L15" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L15" xlink:show="new" xlink:title="ints" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="66.8047"/>
<ellipse cx="17" cy="71.8047" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L24" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L24" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0001449136415707203971">
<rect codeLine="22" fill="#F1F1F1" height="48" id="C_0001449136415707203971" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="96" x="527" y="244.2"/>
<ellipse cx="542" cy="260.2" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M537,261.3563 C537,263.8563 539.1406,265.6688 542.0625,265.6688 C543.2969,265.6688 544.4688,265.3719 545.2188,264.8563 C545.8281,264.4344 546.1563,264.0125 546.1563,263.6063 C546.1563,263.1375 545.7344,262.7313 545.2344,262.7313 C545,262.7313 544.7813,262.8094 544.5781,263.0125 C544.1406,263.45 544.1406,263.45 543.9688,263.5438 C543.5156,263.7781 542.875,263.9188 542.1094,263.9188 C540.1094,263.9188 538.8281,262.9031 538.8281,261.325 L538.8281,260.2781 C538.8281,258.575 540.0469,257.3719 541.75,257.3719 C542.3281,257.3719 542.9063,257.5125 543.375,257.7625 C543.8438,258.0281 544.0156,258.2156 544.0781,258.575 C544.2031,259.2469 544.4531,259.4969 544.9844,259.4969 C545.2656,259.4969 545.5469,259.3563 545.7344,259.1375 C545.8594,258.9656 545.9063,258.7938 545.9063,258.3563 L545.9063,256.9969 C545.9063,256.575 545.8906,256.4344 545.7656,256.2625 C545.5938,256.0125 545.3125,255.8563 544.9844,255.8563 C544.6719,255.8563 544.4688,255.9656 544.25,256.2313 C543.0781,255.7313 542.6406,255.6219 541.6875,255.6219 C539.0156,255.6219 537,257.6375 537,260.2625 L537,261.3563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="556" y="264.806">B</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="53" x="573" y="241.2"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="51" x="574" y="255.4001">int,Vector</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="528" x2="622" y1="276.2" y2="276.2"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="528" x2="622" y1="284.2" y2="284.2"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L15" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L15" xlink:show="new" xlink:title="ints" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="133" x="26" y="75.0151">ints : std::array&lt;int,N&gt;</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L28" target="_top" title="D" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L28" xlink:show="new" xlink:title="D" xlink:type="simple">
<g id="elem_C_0001562396858816419857">
<rect codeLine="26" fill="#F1F1F1" height="106.3998" id="C_0001562396858816419857" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="277" x="436.5" y="31.2"/>
<ellipse cx="565.75" cy="47.2" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M560.75,48.3562 C560.75,50.8562 562.8906,52.6687 565.8125,52.6687 C567.0469,52.6687 568.2188,52.3719 568.9688,51.8562 C569.5781,51.4344 569.9063,51.0125 569.9063,50.6062 C569.9063,50.1375 569.4844,49.7312 568.9844,49.7312 C568.75,49.7312 568.5313,49.8094 568.3281,50.0125 C567.8906,50.45 567.8906,50.45 567.7188,50.5437 C567.2656,50.7781 566.625,50.9187 565.8594,50.9187 C563.8594,50.9187 562.5781,49.9031 562.5781,48.325 L562.5781,47.2781 C562.5781,45.575 563.7969,44.3719 565.5,44.3719 C566.0781,44.3719 566.6563,44.5125 567.125,44.7625 C567.5938,45.0281 567.7656,45.2156 567.8281,45.575 C567.9531,46.2469 568.2031,46.4969 568.7344,46.4969 C569.0156,46.4969 569.2969,46.3562 569.4844,46.1375 C569.6094,45.9656 569.6563,45.7937 569.6563,45.3562 L569.6563,43.9969 C569.6563,43.575 569.6406,43.4344 569.5156,43.2625 C569.3438,43.0125 569.0625,42.8562 568.7344,42.8562 C568.4219,42.8562 568.2188,42.9656 568,43.2312 C566.8281,42.7312 566.3906,42.6219 565.4375,42.6219 C562.7656,42.6219 560.75,44.6375 560.75,47.2625 L560.75,48.3562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="586.25" y="51.806">D</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="437.5" x2="712.5" y1="63.2" y2="63.2"/>
<ellipse cx="447.5" cy="77.1" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="251" x="456.5" y="80.2059">D&lt;Items...&gt;(std::tuple&lt;Items...&gt; *) : void</text>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="437.5" x2="712.5" y1="87.9999" y2="87.9999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L33" target="_top" title="add" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L33" xlink:show="new" xlink:title="add" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="442.5" y="96.8999"/>
<ellipse cx="447.5" cy="101.8999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L33" target="_top" title="add" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L33" xlink:show="new" xlink:title="add" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="94" x="456.5" y="105.0059">add(int i) : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="437.5" x2="712.5" y1="112.7999" y2="112.7999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L29" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L29" xlink:show="new" xlink:title="ints" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="442.5" y="121.6998"/>
<ellipse cx="447.5" cy="126.6998" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L29" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L29" xlink:show="new" xlink:title="ints" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="119" x="456.5" y="129.8058">ints : B&lt;int,Vector&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L12" target="_top" title="pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L12" xlink:show="new" xlink:title="pointer" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="79.6094"/>
<ellipse cx="17" cy="84.6094" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L36" target="_top" title="E" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L36" xlink:show="new" xlink:title="E" xlink:type="simple">
<g id="elem_C_0001787658457052431115">
<rect codeLine="34" fill="#F1F1F1" height="48" id="C_0001787658457052431115" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="834.5" y="370"/>
<ellipse cx="849.5" cy="386" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M844.5,387.1563 C844.5,389.6563 846.6406,391.4688 849.5625,391.4688 C850.7969,391.4688 851.9688,391.1719 852.7188,390.6563 C853.3281,390.2344 853.6563,389.8125 853.6563,389.4063 C853.6563,388.9375 853.2344,388.5313 852.7344,388.5313 C852.5,388.5313 852.2813,388.6094 852.0781,388.8125 C851.6406,389.25 851.6406,389.25 851.4688,389.3438 C851.0156,389.5781 850.375,389.7188 849.6094,389.7188 C847.6094,389.7188 846.3281,388.7031 846.3281,387.125 L846.3281,386.0781 C846.3281,384.375 847.5469,383.1719 849.25,383.1719 C849.8281,383.1719 850.4063,383.3125 850.875,383.5625 C851.3438,383.8281 851.5156,384.0156 851.5781,384.375 C851.7031,385.0469 851.9531,385.2969 852.4844,385.2969 C852.7656,385.2969 853.0469,385.1563 853.2344,384.9375 C853.3594,384.7656 853.4063,384.5938 853.4063,384.1563 L853.4063,382.7969 C853.4063,382.375 853.3906,382.2344 853.2656,382.0625 C853.0938,381.8125 852.8125,381.6563 852.4844,381.6563 C852.1719,381.6563 851.9688,381.7656 851.75,382.0313 C850.5781,381.5313 850.1406,381.4219 849.1875,381.4219 C846.5156,381.4219 844.5,383.4375 844.5,386.0625 L844.5,387.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="863.5" y="390.606">E</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="835.5" x2="874.5" y1="402" y2="402"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="835.5" x2="874.5" y1="410" y2="410"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L12" target="_top" title="pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L12" xlink:show="new" xlink:title="pointer" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="69" x="26" y="87.8198">pointer : T *</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L37" target="_top" title="E##nested_template" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L37" xlink:show="new" xlink:title="E##nested_template" xlink:type="simple">
<g id="elem_C_0001549419203490064906">
<rect codeLine="38" fill="#F1F1F1" height="64.7999" id="C_0001549419203490064906" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="174" x="863" y="235.8"/>
<ellipse cx="878" cy="251.8" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M873,252.9562 C873,255.4562 875.1406,257.2687 878.0625,257.2687 C879.2969,257.2687 880.4688,256.9719 881.2188,256.4562 C881.8281,256.0344 882.1563,255.6125 882.1563,255.2062 C882.1563,254.7375 881.7344,254.3312 881.2344,254.3312 C881,254.3312 880.7813,254.4094 880.5781,254.6125 C880.1406,255.05 880.1406,255.05 879.9688,255.1437 C879.5156,255.3781 878.875,255.5187 878.1094,255.5187 C876.1094,255.5187 874.8281,254.5031 874.8281,252.925 L874.8281,251.8781 C874.8281,250.175 876.0469,248.9719 877.75,248.9719 C878.3281,248.9719 878.9063,249.1125 879.375,249.3625 C879.8438,249.6281 880.0156,249.8156 880.0781,250.175 C880.2031,250.8469 880.4531,251.0969 880.9844,251.0969 C881.2656,251.0969 881.5469,250.9562 881.7344,250.7375 C881.8594,250.5656 881.9063,250.3937 881.9063,249.9562 L881.9063,248.5969 C881.9063,248.175 881.8906,248.0344 881.7656,247.8625 C881.5938,247.6125 881.3125,247.4562 880.9844,247.4562 C880.6719,247.4562 880.4688,247.5656 880.25,247.8312 C879.0781,247.3312 878.6406,247.2219 877.6875,247.2219 C875.0156,247.2219 873,249.2375 873,251.8625 L873,252.9562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="123" x="892" y="256.406">E::nested_template</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="17" x="1023" y="232.8"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="15" x="1024" y="247.0001">ET</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="864" x2="1036" y1="267.8" y2="267.8"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L40" target="_top" title="get" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L40" xlink:show="new" xlink:title="get" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="869" y="276.7"/>
<ellipse cx="874" cy="281.7" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L40" target="_top" title="get" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L40" xlink:show="new" xlink:title="get" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="109" x="883" y="284.8059">get(ET * d) : DT *</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="864" x2="1036" y1="292.5999" y2="292.5999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L13" target="_top" title="reference" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L13" xlink:show="new" xlink:title="reference" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="92.4141"/>
<ellipse cx="17" cy="97.4141" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L44" target="_top" title="E##nested_template" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L44" xlink:show="new" xlink:title="E##nested_template" xlink:type="simple">
<g id="elem_C_0000033637089897037832">
<rect codeLine="43" fill="#F1F1F1" height="64.7999" id="C_0000033637089897037832" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="213" x="748.5" y="52"/>
<ellipse cx="777" cy="68" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M772,69.1563 C772,71.6563 774.1406,73.4688 777.0625,73.4688 C778.2969,73.4688 779.4688,73.1719 780.2188,72.6563 C780.8281,72.2344 781.1563,71.8125 781.1563,71.4063 C781.1563,70.9375 780.7344,70.5313 780.2344,70.5313 C780,70.5313 779.7813,70.6094 779.5781,70.8125 C779.1406,71.25 779.1406,71.25 778.9688,71.3438 C778.5156,71.5781 777.875,71.7188 777.1094,71.7188 C775.1094,71.7188 773.8281,70.7031 773.8281,69.125 L773.8281,68.0781 C773.8281,66.375 775.0469,65.1719 776.75,65.1719 C777.3281,65.1719 777.9063,65.3125 778.375,65.5625 C778.8438,65.8281 779.0156,66.0156 779.0781,66.375 C779.2031,67.0469 779.4531,67.2969 779.9844,67.2969 C780.2656,67.2969 780.5469,67.1563 780.7344,66.9375 C780.8594,66.7656 780.9063,66.5938 780.9063,66.1563 L780.9063,64.7969 C780.9063,64.375 780.8906,64.2344 780.7656,64.0625 C780.5938,63.8125 780.3125,63.6563 779.9844,63.6563 C779.6719,63.6563 779.4688,63.7656 779.25,64.0313 C778.0781,63.5313 777.6406,63.4219 776.6875,63.4219 C774.0156,63.4219 772,65.4375 772,68.0625 L772,69.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="123" x="794" y="72.606">E::nested_template</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="26" x="938.5" y="49"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="24" x="939.5" y="63.2001">char</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="749.5" x2="960.5" y1="84" y2="84"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L47" target="_top" title="getDecl" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L47" xlink:show="new" xlink:title="getDecl" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="754.5" y="92.9"/>
<ellipse cx="759.5" cy="97.9" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L47" target="_top" title="getDecl" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L47" xlink:show="new" xlink:title="getDecl" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="187" x="768.5" y="101.0059">getDecl(char * c) : DeclType *</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="749.5" x2="960.5" y1="108.7999" y2="108.7999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L13" target="_top" title="reference" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L13" xlink:show="new" xlink:title="reference" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="88" x="26" y="100.6245">reference : T &amp;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L11" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L11" xlink:show="new" xlink:title="value" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="105.2188"/>
<ellipse cx="17" cy="110.2188" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L11" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L11" xlink:show="new" xlink:title="value" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="49" x="26" y="113.4292">value : T</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L14" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L14" xlink:show="new" xlink:title="values" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="118.0234"/>
<ellipse cx="17" cy="123.0234" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L14" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L14" xlink:show="new" xlink:title="values" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="135" x="26" y="126.2339">values : std::vector&lt;P&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L20" target="_top" title="Vector" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L20" xlink:show="new" xlink:title="Vector" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fuvfbzwyi1mac)" height="60.8047" id="C_0013419256118741442489" style="stroke: #A80036; stroke-width: 1.5;" width="161" x="250" y="40"/>
<ellipse cx="300.25" cy="56" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M303.2188,61.6406 Q302.6406,61.9375 302,62.0781 Q301.3594,62.2344 300.6563,62.2344 Q298.1563,62.2344 296.8281,60.5938 Q295.5156,58.9375 295.5156,55.8125 Q295.5156,52.6875 296.8281,51.0313 Q298.1563,49.375 300.6563,49.375 Q301.3594,49.375 302,49.5313 Q302.6563,49.6875 303.2188,49.9844 L303.2188,52.7031 Q302.5938,52.125 302,51.8594 Q301.4063,51.5781 300.7813,51.5781 Q299.4375,51.5781 298.75,52.6563 Q298.0625,53.7188 298.0625,55.8125 Q298.0625,57.9063 298.75,58.9844 Q299.4375,60.0469 300.7813,60.0469 Q301.4063,60.0469 302,59.7813 Q302.5938,59.5 303.2188,58.9219 L303.2188,61.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="41" x="320.75" y="60.1543">Vector</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="9" x="405" y="37"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="7" x="406" y="49.1387">T</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="251" x2="410" y1="72" y2="72"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="251" x2="410" y1="80" y2="80"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L21" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L21" xlink:show="new" xlink:title="values" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="256" y="86"/>
<ellipse cx="261" cy="91" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L21" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L21" xlink:show="new" xlink:title="values" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="135" x="270" y="94.2104">values : std::vector&lt;T&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L24" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L24" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fuvfbzwyi1mac)" height="60.8047" id="C_0015748606021494945899" style="stroke: #A80036; stroke-width: 1.5;" width="177" x="490" y="332"/>
<ellipse cx="548.75" cy="348" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M551.7188,353.6406 Q551.1406,353.9375 550.5,354.0781 Q549.8594,354.2344 549.1563,354.2344 Q546.6563,354.2344 545.3281,352.5938 Q544.0156,350.9375 544.0156,347.8125 Q544.0156,344.6875 545.3281,343.0313 Q546.6563,341.375 549.1563,341.375 Q549.8594,341.375 550.5,341.5313 Q551.1563,341.6875 551.7188,341.9844 L551.7188,344.7031 Q551.0938,344.125 550.5,343.8594 Q549.9063,343.5781 549.2813,343.5781 Q547.9375,343.5781 547.25,344.6563 Q546.5625,345.7188 546.5625,347.8125 Q546.5625,349.9063 547.25,350.9844 Q547.9375,352.0469 549.2813,352.0469 Q549.9063,352.0469 550.5,351.7813 Q551.0938,351.5 551.7188,350.9219 L551.7188,353.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="569.25" y="352.1543">B</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="41" x="629" y="329"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="39" x="630" y="341.1387">T,C&lt;&gt;</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="491" x2="666" y1="364" y2="364"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="491" x2="666" y1="372" y2="372"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L25" target="_top" title="template_template" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L25" xlink:show="new" xlink:title="template_template" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="496" y="378"/>
<ellipse cx="501" cy="383" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L25" target="_top" title="template_template" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L25" xlink:show="new" xlink:title="template_template" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="151" x="510" y="386.2104">template_template : C&lt;T&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L24" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L24" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fuvfbzwyi1mac)" height="48" id="C_0011593091325657631773" style="stroke: #A80036; stroke-width: 1.5;" width="105" x="526" y="216.5"/>
<ellipse cx="541" cy="232.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M543.9688,238.1406 Q543.3906,238.4375 542.75,238.5781 Q542.1094,238.7344 541.4063,238.7344 Q538.9063,238.7344 537.5781,237.0938 Q536.2656,235.4375 536.2656,232.3125 Q536.2656,229.1875 537.5781,227.5313 Q538.9063,225.875 541.4063,225.875 Q542.1094,225.875 542.75,226.0313 Q543.4063,226.1875 543.9688,226.4844 L543.9688,229.2031 Q543.3438,228.625 542.75,228.3594 Q542.1563,228.0781 541.5313,228.0781 Q540.1875,228.0781 539.5,229.1563 Q538.8125,230.2188 538.8125,232.3125 Q538.8125,234.4063 539.5,235.4844 Q540.1875,236.5469 541.5313,236.5469 Q542.1563,236.5469 542.75,236.2813 Q543.3438,236 543.9688,235.4219 L543.9688,238.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="555" y="236.6543">B</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="63" x="571" y="213.5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="61" x="572" y="225.6387">int,Vector</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="527" x2="630" y1="248.5" y2="248.5"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="527" x2="630" y1="256.5" y2="256.5"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L28" target="_top" title="D" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L28" xlink:show="new" xlink:title="D" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fuvfbzwyi1mac)" height="94.4141" id="C_0012499174870531358858" style="stroke: #A80036; stroke-width: 1.5;" width="265" x="446" y="23.5"/>
<ellipse cx="569.75" cy="39.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M572.7188,45.1406 Q572.1406,45.4375 571.5,45.5781 Q570.8594,45.7344 570.1563,45.7344 Q567.6563,45.7344 566.3281,44.0938 Q565.0156,42.4375 565.0156,39.3125 Q565.0156,36.1875 566.3281,34.5313 Q567.6563,32.875 570.1563,32.875 Q570.8594,32.875 571.5,33.0313 Q572.1563,33.1875 572.7188,33.4844 L572.7188,36.2031 Q572.0938,35.625 571.5,35.3594 Q570.9063,35.0781 570.2813,35.0781 Q568.9375,35.0781 568.25,36.1563 Q567.5625,37.2188 567.5625,39.3125 Q567.5625,41.4063 568.25,42.4844 Q568.9375,43.5469 570.2813,43.5469 Q570.9063,43.5469 571.5,43.2813 Q572.0938,43 572.7188,42.4219 L572.7188,45.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="9" x="590.25" y="43.6543">D</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="447" x2="710" y1="55.5" y2="55.5"/>
<ellipse cx="457" cy="66.5" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="239" x="466" y="69.7104">D&lt;Items...&gt;(std::tuple&lt;Items...&gt; *) : void</text>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="447" x2="710" y1="76.3047" y2="76.3047"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L33" target="_top" title="add" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L33" xlink:show="new" xlink:title="add" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="452" y="82.3047"/>
<ellipse cx="457" cy="87.3047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L33" target="_top" title="add" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L33" xlink:show="new" xlink:title="add" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="85" x="466" y="90.5151">add(int i) : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="447" x2="710" y1="97.1094" y2="97.1094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L29" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L29" xlink:show="new" xlink:title="ints" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="452" y="103.1094"/>
<ellipse cx="457" cy="108.1094" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L29" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L29" xlink:show="new" xlink:title="ints" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="113" x="466" y="111.3198">ints : B&lt;int,Vector&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L36" target="_top" title="E" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L36" xlink:show="new" xlink:title="E" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fuvfbzwyi1mac)" height="48" id="C_0014301267656419448926" style="stroke: #A80036; stroke-width: 1.5;" width="40" x="823.5" y="338.5"/>
<ellipse cx="838.5" cy="354.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M841.4688,360.1406 Q840.8906,360.4375 840.25,360.5781 Q839.6094,360.7344 838.9063,360.7344 Q836.4063,360.7344 835.0781,359.0938 Q833.7656,357.4375 833.7656,354.3125 Q833.7656,351.1875 835.0781,349.5313 Q836.4063,347.875 838.9063,347.875 Q839.6094,347.875 840.25,348.0313 Q840.9063,348.1875 841.4688,348.4844 L841.4688,351.2031 Q840.8438,350.625 840.25,350.3594 Q839.6563,350.0781 839.0313,350.0781 Q837.6875,350.0781 837,351.1563 Q836.3125,352.2188 836.3125,354.3125 Q836.3125,356.4063 837,357.4844 Q837.6875,358.5469 839.0313,358.5469 Q839.6563,358.5469 840.25,358.2813 Q840.8438,358 841.4688,357.4219 L841.4688,360.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="852.5" y="358.6543">E</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="824.5" x2="862.5" y1="370.5" y2="370.5"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="824.5" x2="862.5" y1="378.5" y2="378.5"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L37" target="_top" title="E##nested_template" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L37" xlink:show="new" xlink:title="E##nested_template" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fuvfbzwyi1mac)" height="60.8047" id="C_0012395353627920519248" style="stroke: #A80036; stroke-width: 1.5;" width="173" x="852" y="210"/>
<ellipse cx="867" cy="226" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M869.9688,231.6406 Q869.3906,231.9375 868.75,232.0781 Q868.1094,232.2344 867.4063,232.2344 Q864.9063,232.2344 863.5781,230.5938 Q862.2656,228.9375 862.2656,225.8125 Q862.2656,222.6875 863.5781,221.0313 Q864.9063,219.375 867.4063,219.375 Q868.1094,219.375 868.75,219.5313 Q869.4063,219.6875 869.9688,219.9844 L869.9688,222.7031 Q869.3438,222.125 868.75,221.8594 Q868.1563,221.5781 867.5313,221.5781 Q866.1875,221.5781 865.5,222.6563 Q864.8125,223.7188 864.8125,225.8125 Q864.8125,227.9063 865.5,228.9844 Q866.1875,230.0469 867.5313,230.0469 Q868.1563,230.0469 868.75,229.7813 Q869.3438,229.5 869.9688,228.9219 L869.9688,231.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="122" x="881" y="230.1543">E::nested_template</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="17" x="1011" y="207"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="15" x="1012" y="219.1387">ET</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="853" x2="1024" y1="242" y2="242"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L40" target="_top" title="get" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L40" xlink:show="new" xlink:title="get" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="858" y="248"/>
<ellipse cx="863" cy="253" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L40" target="_top" title="get" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L40" xlink:show="new" xlink:title="get" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="98" x="872" y="256.2104">get(ET * d) : DT *</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="853" x2="1024" y1="262.8047" y2="262.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L44" target="_top" title="E##nested_template" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L44" xlink:show="new" xlink:title="E##nested_template" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fuvfbzwyi1mac)" height="60.8047" id="C_0000269096719176302663" style="stroke: #A80036; stroke-width: 1.5;" width="194" x="746.5" y="40"/>
<ellipse cx="765.1" cy="56" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M768.0688,61.6406 Q767.4906,61.9375 766.85,62.0781 Q766.2094,62.2344 765.5063,62.2344 Q763.0063,62.2344 761.6781,60.5938 Q760.3656,58.9375 760.3656,55.8125 Q760.3656,52.6875 761.6781,51.0313 Q763.0063,49.375 765.5063,49.375 Q766.2094,49.375 766.85,49.5313 Q767.5063,49.6875 768.0688,49.9844 L768.0688,52.7031 Q767.4438,52.125 766.85,51.8594 Q766.2563,51.5781 765.6313,51.5781 Q764.2875,51.5781 763.6,52.6563 Q762.9125,53.7188 762.9125,55.8125 Q762.9125,57.9063 763.6,58.9844 Q764.2875,60.0469 765.6313,60.0469 Q766.2563,60.0469 766.85,59.7813 Q767.4438,59.5 768.0688,58.9219 L768.0688,61.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="122" x="779.9" y="60.1543">E::nested_template</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="30" x="913.5" y="37"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="28" x="914.5" y="49.1387">char</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="747.5" x2="939.5" y1="72" y2="72"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L47" target="_top" title="getDecl" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L47" xlink:show="new" xlink:title="getDecl" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="752.5" y="78"/>
<ellipse cx="757.5" cy="83" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L47" target="_top" title="getDecl" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L47" xlink:show="new" xlink:title="getDecl" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="168" x="766.5" y="86.2104">getDecl(char * c) : DeclType *</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="747.5" x2="939.5" y1="92.8047" y2="92.8047"/>
<path d="M578.5,264.64 C578.5,277.97 578.5,295.27 578.5,311.55 " fill="none" id="C_0011593091325657631773-&gt;C_0015748606021494945899" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="585.5,311.61,578.5,331.61,571.5,311.61,585.5,311.61" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M578.5,131.05 C578.5,160.58 578.5,194.53 578.5,216.46 " fill="none" id="C_0012499174870531358858&lt;-C_0011593091325657631773" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="578.5,117.85,574.5,123.85,578.5,129.85,582.5,123.85,578.5,117.85" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="584.5" cy="172.0664" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="23" x="591.5" y="176.0669">ints</text>
<path d="M915.02,271.16 C901.78,287.89 885.16,308.88 871.28,326.42 " fill="none" id="C_0012395353627920519248-&gt;C_0014301267656419448926" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="866.9278" cy="331.9193" fill="#FFFFFF" rx="8" ry="8" style="stroke: #A80036; stroke-width: 1.0;"/>
<line style="stroke: #A80036; stroke-width: 1.0;" x1="871.8955" x2="861.96" y1="325.6487" y2="338.19"/>
<line style="stroke: #A80036; stroke-width: 1.0;" x1="873.1984" x2="860.6571" y1="336.8871" y2="326.9516"/>
<path d="M840.4,101.25 C836.74,140.24 831.51,210.75 834.5,271 C835.36,288.27 837.13,307.32 838.87,323.47 " fill="none" id="C_0000269096719176302663-&gt;C_0014301267656419448926" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="839.6807" cy="330.5307" fill="#FFFFFF" rx="8" ry="8" style="stroke: #A80036; stroke-width: 1.0;"/>
<line style="stroke: #A80036; stroke-width: 1.0;" x1="838.7813" x2="840.58" y1="322.5814" y2="338.48"/>
<line style="stroke: #A80036; stroke-width: 1.0;" x1="847.6299" x2="831.7314" y1="329.6314" y2="331.4301"/>
<path d="M860.27,101.15 C874.53,126.38 895.29,163.08 911.83,192.34 " fill="none" id="C_0000269096719176302663-&gt;C_0012395353627920519248" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="917.99,189.01,921.74,209.87,905.8,195.9,917.99,189.01" style="stroke: #A80036; stroke-width: 1.0;"/>
<g id="link_C_0001449136415707203971_C_0001968575752686868237">
<path codeLine="47" d="M575,292.49 C575,311.96 575,321.92 575,343.41 " fill="none" id="C_0001449136415707203971-to-C_0001968575752686868237" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="575,361.41,581,343.41,569,343.41,575,361.41" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001562396858816419857_C_0001449136415707203971">
<path codeLine="48" d="M575,149.98 C575,185.01 575,217.33 575,243.91 " fill="none" id="C_0001562396858816419857-backto-C_0001449136415707203971" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="575,137.98,571,143.98,575,149.98,579,143.98,575,137.98" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="581" cy="198.1" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="21" x="588" y="201.877">ints</text>
</g>
<g id="link_C_0001549419203490064906_C_0001787658457052431115">
<path codeLine="49" d="M925.54,301.08 C909.04,322.57 897.4008,337.7468 882.5208,357.1368 " fill="none" id="C_0001549419203490064906-to-C_0001787658457052431115" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="877.6504" cy="363.4834" fill="#FFFFFF" rx="8" ry="8" style="stroke:#181818;stroke-width:1.0;"/>
<line style="stroke:#181818;stroke-width:1.0;" x1="882.5208" x2="872.78" y1="357.1368" y2="369.83"/>
<line style="stroke:#181818;stroke-width:1.0;" x1="883.997" x2="871.3038" y1="368.3538" y2="358.613"/>
</g>
<g id="link_C_0000033637089897037832_C_0001787658457052431115">
<path codeLine="50" d="M851.54,117.13 C847.41,159.12 841.48,235.43 845,300.6 C846.27,324.12 847.2884,335.0021 849.6984,353.6421 " fill="none" id="C_0000033637089897037832-to-C_0001787658457052431115" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="850.7242" cy="361.576" fill="#FFFFFF" rx="8" ry="8" style="stroke:#181818;stroke-width:1.0;"/>
<line style="stroke:#181818;stroke-width:1.0;" x1="849.6984" x2="851.75" y1="353.6421" y2="369.51"/>
<line style="stroke:#181818;stroke-width:1.0;" x1="858.6582" x2="842.7902" y1="360.5502" y2="362.6018"/>
</g>
<g id="link_C_0000033637089897037832_C_0001549419203490064906">
<path codeLine="51" d="M871.55,117.07 C888.93,150.33 907.7735,186.3969 925.1435,219.6369 " fill="none" id="C_0000033637089897037832-to-C_0001549419203490064906" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="933.48,235.59,930.4612,216.858,919.8258,222.4157,933.48,235.59" style="stroke:#181818;stroke-width:1.0;"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 35 KiB

View File

@@ -1,60 +1,65 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1075.48046875 481" style="max-width: 1075.48px; background-color: white;" width="1075.48046875" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1086.59375 481" style="max-width: 1086.59px; background-color: white;" width="1086.59375" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M618.796875,333L618.796875,339C618.796875,345,618.796875,357,618.796875,367.1666666666667C618.796875,377.3333333333333,618.796875,385.6666666666667,618.796875,389.8333333333333L618.796875,394"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M618.796875,164L618.796875,175.16666666666666C618.796875,186.33333333333334,618.796875,208.66666666666666,618.796875,227.33333333333334C618.796875,246,618.796875,261,618.796875,268.5L618.796875,276"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M861.4921875,122.9321591019065L850.1770833333334,140.94346591825544C838.8619791666666,158.95477273460435,816.2317708333334,194.9773863673022,804.9166666666666,225.2386931836511C793.6015625,255.5,793.6015625,280,793.6015625,303C793.6015625,326,793.6015625,347.5,798.8164567183462,362.4166666666667C804.0313509366924,377.3333333333333,814.461139373385,385.6666666666667,819.6760335917312,389.8333333333333L824.8909278100775,394"/>
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M887.1640625,124.18837639324053L897.6998697916666,141.99031366103378C908.2356770833334,159.79225092882703,929.3072916666666,195.39612546441353,939.8430989583334,218.86472939887344C950.37890625,242.33333333333334,950.37890625,253.66666666666666,950.37890625,259.3333333333333L950.37890625,265"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M950.37890625,344L950.37890625,348.1666666666667C950.37890625,352.3333333333333,950.37890625,360.6666666666667,945.4660650839793,369C940.5532239179587,377.3333333333333,930.7275415859173,385.6666666666667,925.8147004198967,389.8333333333333L920.901859253876,394"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M623.2421875,333L623.2421875,339C623.2421875,345,623.2421875,357,623.2421875,364.1666666666667C623.2421875,371.3333333333333,623.2421875,373.6666666666667,623.2421875,374.8333333333333L623.2421875,376"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M623.2421875,182L623.2421875,190.16666666666666C623.2421875,198.33333333333334,623.2421875,214.66666666666666,623.2421875,230.33333333333334C623.2421875,246,623.2421875,261,623.2421875,268.5L623.2421875,276"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M858.7560452999094,134.36355046037843L848.6378502499246,150.4696253836487C838.5196551999396,166.57570030691895,818.2832650999699,198.78785015345946,808.1650700499849,227.14392507672974C798.046875,255.5,798.046875,280,798.046875,303C798.046875,326,798.046875,347.5,803.2617692183462,362.4166666666667C808.4766634366924,377.3333333333333,818.906451873385,385.6666666666667,824.1213460917312,389.8333333333333L829.3362403100775,394"/>
<path marker-start="url(#my-svg_classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M898.6323276087663,135.10195872931308L908.3680855073053,151.0849656077609C918.1038434058443,167.06797248620873,937.5753592029222,199.03398624310435,947.311117101461,220.68365978821885C957.046875,242.33333333333334,957.046875,253.66666666666666,957.046875,259.3333333333333L957.046875,265"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M957.046875,344L957.046875,348.1666666666667C957.046875,352.3333333333333,957.046875,360.6666666666667,954.305668334283,367.0921817445679C951.564461668566,373.5176968224692,946.082048337132,378.03539364493844,943.3408416714151,380.294242056173L940.5996350056981,382.55309046740757"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -68,7 +73,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(618.796875, 231)" class="edgeLabel">
<g transform="translate(623.2421875, 231)" class="edgeLabel">
<g transform="translate(-17.125, -9)" class="label">
<foreignObject height="18" width="34.25">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -114,8 +119,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(129.0859375, 102.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L9">
<g title="A" id="classId-C_0018348137047180305042-0" class="node default clickable">
<a transform="translate(129.0859375, 102.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L9">
<g title="A" id="classId-C_0002293517130897538130-0" class="node default clickable">
<rect height="189" width="242.171875" y="-94.5" x="-121.0859375" class="outer title-state"/>
<line y2="-64.5" y1="-64.5" x2="121.0859375" x1="-121.0859375" class="divider"/>
<line y2="83.5" y1="83.5" x2="121.0859375" x1="-121.0859375" class="divider"/>
@@ -142,7 +147,7 @@
</foreignObject>
<foreignObject transform="translate( -113.5859375, -9)" height="18" width="81.375">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+pointer : T </span>
<span style="font-style:italic;" class="nodeLabel">+pointer : T</span>
</div>
</foreignObject>
<foreignObject transform="translate( -113.5859375, 13)" height="18" width="114.59375">
@@ -163,8 +168,8 @@
</g>
</g>
</a>
<a transform="translate(393.2734375, 102.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L20">
<g title="Vector" id="classId-C_0013419256118741442489-1" class="node default clickable">
<a transform="translate(393.2734375, 102.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L20">
<g title="Vector" id="classId-C_0001677407014842680311-1" class="node default clickable">
<rect height="79" width="186.203125" y="-39.5" x="-93.1015625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="93.1015625" x1="-93.1015625" class="divider"/>
<line y2="28.5" y1="28.5" x2="93.1015625" x1="-93.1015625" class="divider"/>
@@ -187,8 +192,8 @@
</g>
</g>
</a>
<a transform="translate(618.796875, 433.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L24">
<g title="B" id="classId-C_0015748606021494945899-2" class="node default clickable">
<a transform="translate(623.2421875, 433.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L24">
<g title="B" id="classId-C_0001968575752686868237-2" class="node default clickable">
<rect height="79" width="209.328125" y="-39.5" x="-104.6640625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="104.6640625" x1="-104.6640625" class="divider"/>
<line y2="28.5" y1="28.5" x2="104.6640625" x1="-104.6640625" class="divider"/>
@@ -211,8 +216,8 @@
</g>
</g>
</a>
<a transform="translate(618.796875, 304.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L24">
<g title="B" id="classId-C_0011593091325657631773-3" class="node default clickable">
<a transform="translate(623.2421875, 304.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L24">
<g title="B" id="classId-C_0001449136415707203971-3" class="node default clickable">
<rect height="57" width="118.15625" y="-28.5" x="-59.078125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="59.078125" x1="-59.078125" class="divider"/>
<line y2="17.5" y1="17.5" x2="59.078125" x1="-59.078125" class="divider"/>
@@ -230,11 +235,11 @@
</g>
</g>
</a>
<a transform="translate(618.796875, 102.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L28">
<g title="D" id="classId-C_0012499174870531358858-4" class="node default clickable">
<rect height="123" width="164.84375" y="-61.5" x="-82.421875" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="82.421875" x1="-82.421875" class="divider"/>
<line y2="6.5" y1="6.5" x2="82.421875" x1="-82.421875" class="divider"/>
<a transform="translate(623.2421875, 102.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L28">
<g title="D" id="classId-C_0001562396858816419857-4" class="node default clickable">
<rect height="123" width="173.734375" y="-61.5" x="-86.8671875" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="86.8671875" x1="-86.8671875" class="divider"/>
<line y2="6.5" y1="6.5" x2="86.8671875" x1="-86.8671875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -246,26 +251,26 @@
<span class="nodeLabel">D</span>
</div>
</foreignObject>
<foreignObject transform="translate( -74.921875, -20)" height="18" width="143.640625">
<foreignObject transform="translate( -79.3671875, -20)" height="18" width="143.640625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+ints : B&lt;int,Vector&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -74.921875, 14)" height="18" width="149.84375">
<foreignObject transform="translate( -79.3671875, 14)" height="18" width="158.734375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+D(std::tuple *) : void</span>
<span class="nodeLabel">+D(std::tuple *) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -74.921875, 36)" height="18" width="114.28125">
<foreignObject transform="translate( -79.3671875, 36)" height="18" width="123.171875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+add(int i) : void</span>
<span class="nodeLabel">+add(int i) : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(874.328125, 102.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L36">
<g title="E" id="classId-C_0014301267656419448926-5" class="node default clickable">
<a transform="translate(878.7734375, 102.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L36">
<g title="E" id="classId-C_0001787658457052431115-5" class="node default clickable">
<rect height="57" width="25.671875" y="-28.5" x="-12.8359375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="12.8359375" x1="-12.8359375" class="divider"/>
<line y2="17.5" y1="17.5" x2="12.8359375" x1="-12.8359375" class="divider"/>
@@ -283,8 +288,8 @@
</g>
</g>
</a>
<a transform="translate(874.328125, 433.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L37">
<g title="E##nested_template" id="classId-C_0012395353627920519248-6" class="node default clickable">
<a transform="translate(878.7734375, 433.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L37">
<g title="E##nested_template" id="classId-C_0001549419203490064906-6" class="node default clickable">
<rect height="79" width="201.734375" y="-39.5" x="-100.8671875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="100.8671875" x1="-100.8671875" class="divider"/>
<line y2="6.5" y1="6.5" x2="100.8671875" x1="-100.8671875" class="divider"/>
@@ -299,19 +304,19 @@
<span class="nodeLabel">E::nested_template&lt;ET&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -93.3671875, 14)" height="18" width="131.46875">
<foreignObject transform="translate( -93.3671875, 14)" height="18" width="140.359375">
<div xmlns="http://www.w3.org/1999/xhtml" style="text-decoration: underline; display: inline-block; white-space: nowrap;">
<span style="text-decoration:underline;" class="nodeLabel">+get(ET * d) : DT *</span>
<span style="text-decoration:underline;" class="nodeLabel">+get(ET * d) : : DT *</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(950.37890625, 304.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00008/t00008.cc#L44">
<g title="E##nested_template" id="classId-C_0000269096719176302663-7" class="node default clickable">
<rect height="79" width="234.203125" y="-39.5" x="-117.1015625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="117.1015625" x1="-117.1015625" class="divider"/>
<line y2="6.5" y1="6.5" x2="117.1015625" x1="-117.1015625" class="divider"/>
<a transform="translate(957.046875, 304.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00008/t00008.cc#L44">
<g title="E##nested_template" id="classId-C_0000033637089897037832-7" class="node default clickable">
<rect height="79" width="243.09375" y="-39.5" x="-121.546875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="121.546875" x1="-121.546875" class="divider"/>
<line y2="6.5" y1="6.5" x2="121.546875" x1="-121.546875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -323,9 +328,9 @@
<span class="nodeLabel">E::nested_template&lt;char&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -109.6015625, 14)" height="18" width="219.203125">
<foreignObject transform="translate( -114.046875, 14)" height="18" width="228.09375">
<div xmlns="http://www.w3.org/1999/xhtml" style="text-decoration: underline; display: inline-block; white-space: nowrap;">
<span style="text-decoration:underline;" class="nodeLabel">+getDecl(char * c) : DeclType *</span>
<span style="text-decoration:underline;" class="nodeLabel">+getDecl(char * c) : : DeclType *</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

View File

@@ -7,11 +7,6 @@ diagrams:
glob:
- t00009.cc
using_namespace: clanguml::t00009
plantuml:
style:
instantiation: up
association: up
aggregation: up
include:
namespaces:
- clanguml::t00009
@@ -52,8 +47,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "A<T>",
"id": "3297831912893280842",
"display_name": "clanguml::t00009::A<T>",
"id": "412228989111660105",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -94,8 +89,8 @@ public:
},
{
"bases": [],
"display_name": "A<int>",
"id": "15155099504347999",
"display_name": "clanguml::t00009::A<int>",
"id": "1894387438043499",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -123,8 +118,8 @@ public:
},
{
"bases": [],
"display_name": "A<std::string>",
"id": "10726345870745113562",
"display_name": "clanguml::t00009::A<std::string>",
"id": "1340793233843139195",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -152,8 +147,8 @@ public:
},
{
"bases": [],
"display_name": "A<std::vector<std::string>>",
"id": "10966470382097990802",
"display_name": "clanguml::t00009::A<std::vector<std::string>>",
"id": "1370808797762248850",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -188,8 +183,8 @@ public:
},
{
"bases": [],
"display_name": "B",
"id": "1409917715601978480",
"display_name": "clanguml::t00009::B",
"id": "176239714450247310",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -247,59 +242,44 @@ public:
}
],
"name": "t00009_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "3297831912893280842",
"source": "15155099504347999",
"destination": "412228989111660105",
"source": "1894387438043499",
"type": "instantiation"
},
{
"access": "public",
"destination": "3297831912893280842",
"source": "10726345870745113562",
"destination": "412228989111660105",
"source": "1340793233843139195",
"type": "instantiation"
},
{
"access": "public",
"destination": "3297831912893280842",
"source": "10966470382097990802",
"destination": "412228989111660105",
"source": "1370808797762248850",
"type": "instantiation"
},
{
"access": "public",
"destination": "15155099504347999",
"destination": "1894387438043499",
"label": "aint",
"source": "1409917715601978480",
"source": "176239714450247310",
"type": "aggregation"
},
{
"access": "public",
"destination": "10726345870745113562",
"destination": "1340793233843139195",
"label": "astring",
"source": "1409917715601978480",
"source": "176239714450247310",
"type": "association"
},
{
"access": "public",
"destination": "3297831912893280842",
"label": "astring",
"source": "1409917715601978480",
"type": "association"
},
{
"access": "public",
"destination": "10966470382097990802",
"destination": "1370808797762248850",
"label": "avector",
"source": "1409917715601978480",
"type": "association"
},
{
"access": "public",
"destination": "3297831912893280842",
"label": "avector",
"source": "1409917715601978480",
"source": "176239714450247310",
"type": "association"
}
],

View File

@@ -1,110 +1,123 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="352px" preserveAspectRatio="none" style="width:576px;height:352px;" version="1.1" viewBox="0 0 576 352" width="576px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="363px" preserveAspectRatio="none" style="width:410px;height:363px;background:#FFFFFF;" version="1.1" viewBox="0 0 410 363" width="410px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1lrrkaauop46f" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1lrrkaauop46f)" height="60.8047" id="C_0003297831912893280842" style="stroke: #A80036; stroke-width: 1.5;" width="75" x="366.5" y="8"/>
<ellipse cx="392.3" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M395.2688,29.6406 Q394.6906,29.9375 394.05,30.0781 Q393.4094,30.2344 392.7063,30.2344 Q390.2063,30.2344 388.8781,28.5938 Q387.5656,26.9375 387.5656,23.8125 Q387.5656,20.6875 388.8781,19.0313 Q390.2063,17.375 392.7063,17.375 Q393.4094,17.375 394.05,17.5313 Q394.7063,17.6875 395.2688,17.9844 L395.2688,20.7031 Q394.6438,20.125 394.05,19.8594 Q393.4563,19.5781 392.8313,19.5781 Q391.4875,19.5781 390.8,20.6563 Q390.1125,21.7188 390.1125,23.8125 Q390.1125,25.9063 390.8,26.9844 Q391.4875,28.0469 392.8313,28.0469 Q393.4563,28.0469 394.05,27.7813 Q394.6438,27.5 395.2688,26.9219 L395.2688,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="408.7" y="28.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="9" x="435.5" y="5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="7" x="436.5" y="17.1387">T</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="367.5" x2="440.5" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="367.5" x2="440.5" y1="48" y2="48"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0000412228989111660105">
<rect codeLine="2" fill="#F1F1F1" height="64.7999" id="C_0000412228989111660105" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="81" x="108.5" y="291.4"/>
<ellipse cx="136.55" cy="307.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M131.55,308.5563 C131.55,311.0563 133.6906,312.8688 136.6125,312.8688 C137.8469,312.8688 139.0188,312.5719 139.7688,312.0563 C140.3781,311.6344 140.7063,311.2125 140.7063,310.8063 C140.7063,310.3375 140.2844,309.9313 139.7844,309.9313 C139.55,309.9313 139.3313,310.0094 139.1281,310.2125 C138.6906,310.65 138.6906,310.65 138.5188,310.7438 C138.0656,310.9781 137.425,311.1188 136.6594,311.1188 C134.6594,311.1188 133.3781,310.1031 133.3781,308.525 L133.3781,307.4781 C133.3781,305.775 134.5969,304.5719 136.3,304.5719 C136.8781,304.5719 137.4563,304.7125 137.925,304.9625 C138.3938,305.2281 138.5656,305.4156 138.6281,305.775 C138.7531,306.4469 139.0031,306.6969 139.5344,306.6969 C139.8156,306.6969 140.0969,306.5563 140.2844,306.3375 C140.4094,306.1656 140.4563,305.9938 140.4563,305.5563 L140.4563,304.1969 C140.4563,303.775 140.4406,303.6344 140.3156,303.4625 C140.1438,303.2125 139.8625,303.0563 139.5344,303.0563 C139.2219,303.0563 139.0188,303.1656 138.8,303.4313 C137.6281,302.9313 137.1906,302.8219 136.2375,302.8219 C133.5656,302.8219 131.55,304.8375 131.55,307.4625 L131.55,308.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="153.45" y="312.006">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="9" x="183.5" y="288.4"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="7" x="184.5" y="302.6001">T</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="109.5" x2="188.5" y1="323.4" y2="323.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="109.5" x2="188.5" y1="331.4" y2="331.4"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L9" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L9" xlink:show="new" xlink:title="value" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="114.5" y="340.3"/>
<ellipse cx="119.5" cy="345.3" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L9" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L9" xlink:show="new" xlink:title="value" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="55" x="128.5" y="348.4059">value : T</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L9" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L9" xlink:show="new" xlink:title="value" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="372.5" y="54"/>
<ellipse cx="377.5" cy="59" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0000001894387438043499">
<rect codeLine="7" fill="#F1F1F1" height="48" id="C_0000001894387438043499" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="58" x="7" y="182.4"/>
<ellipse cx="22" cy="198.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M17,199.5562 C17,202.0562 19.1406,203.8687 22.0625,203.8687 C23.2969,203.8687 24.4688,203.5719 25.2188,203.0562 C25.8281,202.6344 26.1563,202.2125 26.1563,201.8062 C26.1563,201.3375 25.7344,200.9312 25.2344,200.9312 C25,200.9312 24.7813,201.0094 24.5781,201.2125 C24.1406,201.65 24.1406,201.65 23.9688,201.7437 C23.5156,201.9781 22.875,202.1187 22.1094,202.1187 C20.1094,202.1187 18.8281,201.1031 18.8281,199.525 L18.8281,198.4781 C18.8281,196.775 20.0469,195.5719 21.75,195.5719 C22.3281,195.5719 22.9063,195.7125 23.375,195.9625 C23.8438,196.2281 24.0156,196.4156 24.0781,196.775 C24.2031,197.4469 24.4531,197.6969 24.9844,197.6969 C25.2656,197.6969 25.5469,197.5562 25.7344,197.3375 C25.8594,197.1656 25.9063,196.9937 25.9063,196.5562 L25.9063,195.1969 C25.9063,194.775 25.8906,194.6344 25.7656,194.4625 C25.5938,194.2125 25.3125,194.0562 24.9844,194.0562 C24.6719,194.0562 24.4688,194.1656 24.25,194.4312 C23.0781,193.9312 22.6406,193.8219 21.6875,193.8219 C19.0156,193.8219 17,195.8375 17,198.4625 L17,199.5562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="36" y="203.006">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="15" x="53" y="179.4"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="13" x="54" y="193.6001">int</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="64" y1="214.4" y2="214.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="64" y1="222.4" y2="222.4"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L9" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L9" xlink:show="new" xlink:title="value" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="49" x="386.5" y="62.2104">value : T</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001340793233843139195">
<rect codeLine="11" fill="#F1F1F1" height="48" id="C_0001340793233843139195" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="97" x="100.5" y="182.4"/>
<ellipse cx="115.5" cy="198.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M110.5,199.5562 C110.5,202.0562 112.6406,203.8687 115.5625,203.8687 C116.7969,203.8687 117.9688,203.5719 118.7188,203.0562 C119.3281,202.6344 119.6563,202.2125 119.6563,201.8062 C119.6563,201.3375 119.2344,200.9312 118.7344,200.9312 C118.5,200.9312 118.2813,201.0094 118.0781,201.2125 C117.6406,201.65 117.6406,201.65 117.4688,201.7437 C117.0156,201.9781 116.375,202.1187 115.6094,202.1187 C113.6094,202.1187 112.3281,201.1031 112.3281,199.525 L112.3281,198.4781 C112.3281,196.775 113.5469,195.5719 115.25,195.5719 C115.8281,195.5719 116.4063,195.7125 116.875,195.9625 C117.3438,196.2281 117.5156,196.4156 117.5781,196.775 C117.7031,197.4469 117.9531,197.6969 118.4844,197.6969 C118.7656,197.6969 119.0469,197.5562 119.2344,197.3375 C119.3594,197.1656 119.4063,196.9937 119.4063,196.5562 L119.4063,195.1969 C119.4063,194.775 119.3906,194.6344 119.2656,194.4625 C119.0938,194.2125 118.8125,194.0562 118.4844,194.0562 C118.1719,194.0562 117.9688,194.1656 117.75,194.4312 C116.5781,193.9312 116.1406,193.8219 115.1875,193.8219 C112.5156,193.8219 110.5,195.8375 110.5,198.4625 L110.5,199.5562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="129.5" y="203.006">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="54" x="146.5" y="179.4"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="52" x="147.5" y="193.6001">std::string</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="101.5" x2="196.5" y1="214.4" y2="214.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="101.5" x2="196.5" y1="222.4" y2="222.4"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1lrrkaauop46f)" height="48" id="C_0000015155099504347999" style="stroke: #A80036; stroke-width: 1.5;" width="60" x="374" y="130"/>
<ellipse cx="389" cy="146" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M391.9688,151.6406 Q391.3906,151.9375 390.75,152.0781 Q390.1094,152.2344 389.4063,152.2344 Q386.9063,152.2344 385.5781,150.5938 Q384.2656,148.9375 384.2656,145.8125 Q384.2656,142.6875 385.5781,141.0313 Q386.9063,139.375 389.4063,139.375 Q390.1094,139.375 390.75,139.5313 Q391.4063,139.6875 391.9688,139.9844 L391.9688,142.7031 Q391.3438,142.125 390.75,141.8594 Q390.1563,141.5781 389.5313,141.5781 Q388.1875,141.5781 387.5,142.6563 Q386.8125,143.7188 386.8125,145.8125 Q386.8125,147.9063 387.5,148.9844 Q388.1875,150.0469 389.5313,150.0469 Q390.1563,150.0469 390.75,149.7813 Q391.3438,149.5 391.9688,148.9219 L391.9688,151.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="403" y="150.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="18" x="419" y="127"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="16" x="420" y="139.1387">int</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="375" x2="433" y1="162" y2="162"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="375" x2="433" y1="170" y2="170"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001370808797762248850">
<rect codeLine="15" fill="#F1F1F1" height="48" id="C_0001370808797762248850" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="166" x="233" y="182.4"/>
<ellipse cx="248" cy="198.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M243,199.5562 C243,202.0562 245.1406,203.8687 248.0625,203.8687 C249.2969,203.8687 250.4688,203.5719 251.2188,203.0562 C251.8281,202.6344 252.1563,202.2125 252.1563,201.8062 C252.1563,201.3375 251.7344,200.9312 251.2344,200.9312 C251,200.9312 250.7813,201.0094 250.5781,201.2125 C250.1406,201.65 250.1406,201.65 249.9688,201.7437 C249.5156,201.9781 248.875,202.1187 248.1094,202.1187 C246.1094,202.1187 244.8281,201.1031 244.8281,199.525 L244.8281,198.4781 C244.8281,196.775 246.0469,195.5719 247.75,195.5719 C248.3281,195.5719 248.9063,195.7125 249.375,195.9625 C249.8438,196.2281 250.0156,196.4156 250.0781,196.775 C250.2031,197.4469 250.4531,197.6969 250.9844,197.6969 C251.2656,197.6969 251.5469,197.5562 251.7344,197.3375 C251.8594,197.1656 251.9063,196.9937 251.9063,196.5562 L251.9063,195.1969 C251.9063,194.775 251.8906,194.6344 251.7656,194.4625 C251.5938,194.2125 251.3125,194.0562 250.9844,194.0562 C250.6719,194.0562 250.4688,194.1656 250.25,194.4312 C249.0781,193.9312 248.6406,193.8219 247.6875,193.8219 C245.0156,193.8219 243,195.8375 243,198.4625 L243,199.5562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="262" y="203.006">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="123" x="279" y="179.4"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="121" x="280" y="193.6001">std::vector&lt;std::string&gt;</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="234" x2="398" y1="214.4" y2="214.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="234" x2="398" y1="222.4" y2="222.4"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1lrrkaauop46f)" height="48" id="C_0010726345870745113562" style="stroke: #A80036; stroke-width: 1.5;" width="106" x="233" y="130"/>
<ellipse cx="248" cy="146" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M250.9688,151.6406 Q250.3906,151.9375 249.75,152.0781 Q249.1094,152.2344 248.4063,152.2344 Q245.9063,152.2344 244.5781,150.5938 Q243.2656,148.9375 243.2656,145.8125 Q243.2656,142.6875 244.5781,141.0313 Q245.9063,139.375 248.4063,139.375 Q249.1094,139.375 249.75,139.5313 Q250.4063,139.6875 250.9688,139.9844 L250.9688,142.7031 Q250.3438,142.125 249.75,141.8594 Q249.1563,141.5781 248.5313,141.5781 Q247.1875,141.5781 246.5,142.6563 Q245.8125,143.7188 245.8125,145.8125 Q245.8125,147.9063 246.5,148.9844 Q247.1875,150.0469 248.5313,150.0469 Q249.1563,150.0469 249.75,149.7813 Q250.3438,149.5 250.9688,148.9219 L250.9688,151.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="262" y="150.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="64" x="278" y="127"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="62" x="279" y="139.1387">std::string</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="234" x2="338" y1="162" y2="162"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="234" x2="338" y1="170" y2="170"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L12" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L12" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0000176239714450247310">
<rect codeLine="19" fill="#F1F1F1" height="98.3998" id="C_0000176239714450247310" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="267" x="15.5" y="7"/>
<ellipse cx="140.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M135.25,24.1563 C135.25,26.6563 137.3906,28.4688 140.3125,28.4688 C141.5469,28.4688 142.7188,28.1719 143.4688,27.6563 C144.0781,27.2344 144.4063,26.8125 144.4063,26.4063 C144.4063,25.9375 143.9844,25.5313 143.4844,25.5313 C143.25,25.5313 143.0313,25.6094 142.8281,25.8125 C142.3906,26.25 142.3906,26.25 142.2188,26.3438 C141.7656,26.5781 141.125,26.7188 140.3594,26.7188 C138.3594,26.7188 137.0781,25.7031 137.0781,24.125 L137.0781,23.0781 C137.0781,21.375 138.2969,20.1719 140,20.1719 C140.5781,20.1719 141.1563,20.3125 141.625,20.5625 C142.0938,20.8281 142.2656,21.0156 142.3281,21.375 C142.4531,22.0469 142.7031,22.2969 143.2344,22.2969 C143.5156,22.2969 143.7969,22.1563 143.9844,21.9375 C144.1094,21.7656 144.1563,21.5938 144.1563,21.1563 L144.1563,19.7969 C144.1563,19.375 144.1406,19.2344 144.0156,19.0625 C143.8438,18.8125 143.5625,18.6563 143.2344,18.6563 C142.9219,18.6563 142.7188,18.7656 142.5,19.0313 C141.3281,18.5313 140.8906,18.4219 139.9375,18.4219 C137.2656,18.4219 135.25,20.4375 135.25,23.0625 L135.25,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="160.75" y="27.606">B</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="16.5" x2="281.5" y1="39" y2="39"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="16.5" x2="281.5" y1="47" y2="47"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L14" target="_top" title="aint" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L14" xlink:show="new" xlink:title="aint" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="21.5" y="55.9"/>
<ellipse cx="26.5" cy="60.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L14" target="_top" title="aint" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L14" xlink:show="new" xlink:title="aint" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="75" x="35.5" y="64.0059">aint : A&lt;int&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L15" target="_top" title="astring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L15" xlink:show="new" xlink:title="astring" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="21.5" y="72.6999"/>
<ellipse cx="26.5" cy="77.6999" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L15" target="_top" title="astring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L15" xlink:show="new" xlink:title="astring" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="151" x="35.5" y="80.8059">astring : A&lt;std::string&gt; *</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L16" target="_top" title="avector" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L16" xlink:show="new" xlink:title="avector" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="21.5" y="89.4998"/>
<ellipse cx="26.5" cy="94.4998" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L16" target="_top" title="avector" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L16" xlink:show="new" xlink:title="avector" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="241" x="35.5" y="97.6058">avector : A&lt;std::vector&lt;std::string&gt;&gt; &amp;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1lrrkaauop46f)" height="48" id="C_0010966470382097990802" style="stroke: #A80036; stroke-width: 1.5;" width="192" x="6" y="130"/>
<ellipse cx="21" cy="146" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M23.9688,151.6406 Q23.3906,151.9375 22.75,152.0781 Q22.1094,152.2344 21.4063,152.2344 Q18.9063,152.2344 17.5781,150.5938 Q16.2656,148.9375 16.2656,145.8125 Q16.2656,142.6875 17.5781,141.0313 Q18.9063,139.375 21.4063,139.375 Q22.1094,139.375 22.75,139.5313 Q23.4063,139.6875 23.9688,139.9844 L23.9688,142.7031 Q23.3438,142.125 22.75,141.8594 Q22.1563,141.5781 21.5313,141.5781 Q20.1875,141.5781 19.5,142.6563 Q18.8125,143.7188 18.8125,145.8125 Q18.8125,147.9063 19.5,148.9844 Q20.1875,150.0469 21.5313,150.0469 Q22.1563,150.0469 22.75,149.7813 Q23.3438,149.5 23.9688,148.9219 L23.9688,151.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="35" y="150.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="150" x="51" y="127"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="148" x="52" y="139.1387">std::vector&lt;std::string&gt;</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="197" y1="162" y2="162"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="197" y1="170" y2="170"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L12" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L12" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1lrrkaauop46f)" height="86.4141" id="C_0001409917715601978480" style="stroke: #A80036; stroke-width: 1.5;" width="257" x="275.5" y="255"/>
<ellipse cx="395.75" cy="271" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M398.7188,276.6406 Q398.1406,276.9375 397.5,277.0781 Q396.8594,277.2344 396.1563,277.2344 Q393.6563,277.2344 392.3281,275.5938 Q391.0156,273.9375 391.0156,270.8125 Q391.0156,267.6875 392.3281,266.0313 Q393.6563,264.375 396.1563,264.375 Q396.8594,264.375 397.5,264.5313 Q398.1563,264.6875 398.7188,264.9844 L398.7188,267.7031 Q398.0938,267.125 397.5,266.8594 Q396.9063,266.5781 396.2813,266.5781 Q394.9375,266.5781 394.25,267.6563 Q393.5625,268.7188 393.5625,270.8125 Q393.5625,272.9063 394.25,273.9844 Q394.9375,275.0469 396.2813,275.0469 Q396.9063,275.0469 397.5,274.7813 Q398.0938,274.5 398.7188,273.9219 L398.7188,276.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="416.25" y="275.1543">B</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="276.5" x2="531.5" y1="287" y2="287"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="276.5" x2="531.5" y1="295" y2="295"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L14" target="_top" title="aint" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L14" xlink:show="new" xlink:title="aint" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="281.5" y="301"/>
<ellipse cx="286.5" cy="306" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L14" target="_top" title="aint" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L14" xlink:show="new" xlink:title="aint" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="72" x="295.5" y="309.2104">aint : A&lt;int&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L15" target="_top" title="astring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L15" xlink:show="new" xlink:title="astring" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="281.5" y="313.8047"/>
<ellipse cx="286.5" cy="318.8047" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L15" target="_top" title="astring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L15" xlink:show="new" xlink:title="astring" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="146" x="295.5" y="322.0151">astring : A&lt;std::string&gt; *</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L16" target="_top" title="avector" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L16" xlink:show="new" xlink:title="avector" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="281.5" y="326.6094"/>
<ellipse cx="286.5" cy="331.6094" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L16" target="_top" title="avector" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L16" xlink:show="new" xlink:title="avector" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="231" x="295.5" y="334.8198">avector : A&lt;std::vector&lt;std::string&gt;&gt; &amp;</text>
</a>
<path d="M404,89.43 C404,103.45 404,118.05 404,129.71 " fill="none" id="C_0003297831912893280842&lt;-C_0000015155099504347999" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="397,89.02,404,69.02,411,89.02,397,89.02" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M358.73,83.04 C342.22,98.92 324.19,116.26 310.22,129.71 " fill="none" id="C_0003297831912893280842&lt;-C_0010726345870745113562" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="354.04,77.84,373.3,69.02,363.74,87.93,354.04,77.84" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M347.63,60.68 C295.25,80.37 217.4,109.63 163.45,129.91 " fill="none" id="C_0003297831912893280842&lt;-C_0010966470382097990802" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="345.18,54.13,366.36,53.65,350.1,67.23,345.18,54.13" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M404,178.13 C404,195.39 404,219.72 404,241.88 " fill="none" id="C_0000015155099504347999-&gt;C_0001409917715601978480" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="404,254.95,408,248.95,404,242.95,400,248.95,404,254.95" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="405" y="221.0669">aint</text>
<path d="M308.55,182.14 C325.66,202.72 349.49,231.4 369.06,254.95 " fill="none" id="C_0010726345870745113562&lt;-C_0001409917715601978480" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="305.22,178.13,307.8845,187.6116,308.4111,181.9793,314.0433,182.5059,305.22,178.13" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="44" x="343" y="221.0669">astring</text>
<path d="M427.34,73.87 C437.01,90.14 447.09,110.28 452,130 C462.63,172.74 445.53,221.05 428.86,254.67 " fill="none" id="C_0003297831912893280842&lt;-C_0001409917715601978480" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="424.63,69.39,425.8927,79.1576,427.2297,73.661,432.7263,74.998,424.63,69.39" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="44" x="456" y="158.5669">astring</text>
<path d="M445.84,63.05 C469.13,78.7 495.97,101.58 509,130 C517.89,149.39 516.24,157.93 509,178 C498.39,207.42 476.54,234.14 455.52,254.78 " fill="none" id="C_0003297831912893280842&lt;-C_0001409917715601978480-1" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="441.54,60.21,446.8426,68.5096,445.7112,62.967,451.2538,61.8356,441.54,60.21" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="48" x="516" y="158.5669">avector</text>
<path d="M155.93,180.36 C199.93,201.05 263.03,230.72 314.58,254.95 " fill="none" id="C_0010966470382097990802&lt;-C_0001409917715601978480" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="151.19,178.13,157.6336,185.5785,155.7151,180.2569,161.0367,178.3384,151.19,178.13" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="48" x="245" y="221.0669">avector</text>
<g id="link_C_0000001894387438043499_C_0000412228989111660105">
<path codeLine="25" d="M58.87,230.75 C75.89,248.14 86.724,259.2115 105.434,278.3115 " fill="none" id="C_0000001894387438043499-to-C_0000412228989111660105" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="118.03,291.17,109.7202,274.1128,101.1479,282.5101,118.03,291.17" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001340793233843139195_C_0000412228989111660105">
<path codeLine="26" d="M149,230.75 C149,248.14 149,254.07 149,273.17 " fill="none" id="C_0001340793233843139195-to-C_0000412228989111660105" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="149,291.17,155,273.17,143,273.17,149,291.17" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001370808797762248850_C_0000412228989111660105">
<path codeLine="27" d="M282.21,230.75 C255.52,249.19 232.986,264.7537 204.636,284.3537 " fill="none" id="C_0001370808797762248850-to-C_0000412228989111660105" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="189.83,294.59,208.0481,289.2891,201.2239,279.4184,189.83,294.59" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000176239714450247310_C_0000001894387438043499">
<path codeLine="28" d="M104.7229,115.2717 C85.1529,140.9317 69.31,161.72 53.75,182.12 " fill="none" id="C_0000176239714450247310-backto-C_0000001894387438043499" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="112,105.73,105.1809,108.0751,104.7229,115.2717,111.542,112.9265,112,105.73" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="96" cy="144.7" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="21" x="103" y="148.477">aint</text>
</g>
<g id="link_C_0000176239714450247310_C_0001340793233843139195">
<path codeLine="29" d="M149,105.73 C149,131.39 149,155.72 149,176.12 " fill="none" id="C_0000176239714450247310-to-C_0001340793233843139195" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="149,182.12,153,173.12,149,177.12,145,173.12,149,182.12" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="155" cy="144.7" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="39" x="162" y="148.477">astring</text>
</g>
<g id="link_C_0000176239714450247310_C_0001370808797762248850">
<path codeLine="30" d="M203.68,105.73 C232.6,131.39 262.2812,157.7387 285.2812,178.1387 " fill="none" id="C_0000176239714450247310-to-C_0001370808797762248850" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="289.77,182.12,285.6911,173.1555,286.0294,178.8022,280.3826,179.1405,289.77,182.12" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="258" cy="144.7" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="43" x="265" y="148.477">avector</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -1,63 +1,66 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 705.046875 393" style="max-width: 705.047px; background-color: white;" width="705.046875" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 530.859375 393" style="max-width: 530.859px; background-color: white;" width="530.859375" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M40.3984375,256L40.3984375,260.1666666666667C40.3984375,264.3333333333333,40.3984375,272.6666666666667,94.88020833333333,286.3410697048483C149.36197916666666,300.0154727430299,258.3255208333333,319.03094548605975,312.8072916666667,328.53868185757466L367.2890625,338.0464182290896"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M184.96875,256L184.96875,260.1666666666667C184.96875,264.3333333333333,184.96875,272.6666666666667,215.35546875,285.5429830347637C245.7421875,298.41929940286076,306.515625,315.83859880572146,336.90234375,324.5482485071518L367.2890625,333.25789820858216"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M410,256L410,260.1666666666667C410,264.3333333333333,410,272.6666666666667,410,281C410,289.3333333333333,410,297.6666666666667,410,301.8333333333333L410,306"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M262.203125,107.68869559703228L225.23567708333334,117.24057966419356C188.26822916666666,126.79246373135486,114.33333333333333,145.89623186567744,77.36588541666667,161.1147825995054C40.3984375,176.33333333333334,40.3984375,187.66666666666666,40.3984375,193.33333333333334L40.3984375,199"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M265.0845876963351,131L251.73194808027927,136.66666666666666C238.3793084642234,142.33333333333334,211.6740292321117,153.66666666666666,198.32138961605585,165C184.96875,176.33333333333334,184.96875,187.66666666666666,184.96875,193.33333333333334L184.96875,199"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M523.692490183246,131L534.1682209860384,136.66666666666666C544.6439517888307,142.33333333333334,565.5954133944153,153.66666666666666,576.0711441972077,169.75C586.546875,185.83333333333334,586.546875,206.66666666666666,586.546875,226C586.546875,245.33333333333334,586.546875,263.1666666666667,564.2408854166666,280.23264964451135C541.9348958333334,297.29863262235597,497.3229166666667,313.59726524471193,475.0169270833333,321.7465815558899L452.7109375,329.8958978670679"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M410,131L410,136.66666666666666C410,142.33333333333334,410,153.66666666666666,410,165C410,176.33333333333334,410,187.66666666666666,410,193.33333333333334L410,199"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M557.796875,124.60489233209296L575.8541666666666,131.33741027674412C593.9114583333334,138.06992822139532,630.0260416666666,151.53496411069764,648.0833333333334,168.6841487220155C666.140625,185.83333333333334,666.140625,206.66666666666666,666.140625,226C666.140625,245.33333333333334,666.140625,263.1666666666667,630.5690104166666,281.0407923097257C594.9973958333334,298.9149179527847,523.8541666666666,316.82983590556944,488.2825520833333,325.7872948819618L452.7109375,334.74475385835416"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M40.3984375,256L40.3984375,260.1666666666667C40.3984375,264.3333333333333,40.3984375,272.6666666666667,54.63530201463541,283.1851060127621C68.87216652927081,293.7035453588576,97.34589555854164,306.4070907177152,111.58276007317704,312.758863397144L125.81962458781246,319.1106360765728"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M184.96875,256L184.96875,260.1666666666667C184.96875,264.3333333333333,184.96875,272.6666666666667,184.96875,278C184.96875,283.3333333333333,184.96875,285.6666666666667,184.96875,286.8333333333333L184.96875,288"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M410,256L410,260.1666666666667C410,264.3333333333333,410,272.6666666666667,382.49715688931127,284.71638682319053C354.9943137786225,296.7661069797144,299.988627557245,312.53221395942876,272.48578444655624,320.415267449286L244.9829413358675,328.29832093914314"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M76.84952080548504,140.92120819636588L70.77434025457087,144.93434016363824C64.69915970365669,148.9474721309106,52.548798601828345,156.9737360654553,46.473618050914176,166.65353469939433C40.3984375,176.33333333333334,40.3984375,187.66666666666666,40.3984375,193.33333333333334L40.3984375,199"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M184.96875,131L184.96875,136.66666666666666C184.96875,142.33333333333334,184.96875,153.66666666666666,184.96875,164C184.96875,174.33333333333334,184.96875,183.66666666666666,184.96875,188.33333333333334L184.96875,193"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M329.8841623036649,131L343.2368019197208,136.66666666666666C356.5894415357766,142.33333333333334,383.2947207678883,153.66666666666666,396.6473603839442,164C410,174.33333333333334,410,183.66666666666666,410,188.33333333333334L410,193"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -115,17 +118,6 @@
</foreignObject>
</g>
</g>
<g transform="translate(586.546875, 227.5)" class="edgeLabel">
<g transform="translate(-28.6875, -9)" class="label">
<foreignObject height="18" width="57.375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+astring</span>
</span>
</div>
</foreignObject>
</g>
</g>
<g transform="translate(410, 165)" class="edgeLabel">
<g transform="translate(-30.90625, -9)" class="label">
<foreignObject height="18" width="61.8125">
@@ -137,21 +129,10 @@
</foreignObject>
</g>
</g>
<g transform="translate(666.140625, 227.5)" class="edgeLabel">
<g transform="translate(-30.90625, -9)" class="label">
<foreignObject height="18" width="61.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+avector</span>
</span>
</div>
</foreignObject>
</g>
</g>
</g>
<g class="nodes">
<a transform="translate(410, 345.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7">
<g title="A" id="classId-C_0003297831912893280842-0" class="node default clickable">
<a transform="translate(184.96875, 345.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7">
<g title="A" id="classId-C_0000412228989111660105-0" class="node default clickable">
<rect height="79" width="85.421875" y="-39.5" x="-42.7109375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="42.7109375" x1="-42.7109375" class="divider"/>
<line y2="28.5" y1="28.5" x2="42.7109375" x1="-42.7109375" class="divider"/>
@@ -174,8 +155,8 @@
</g>
</g>
</a>
<a transform="translate(40.3984375, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7">
<g title="A" id="classId-C_0000015155099504347999-1" class="node default clickable">
<a transform="translate(40.3984375, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7">
<g title="A" id="classId-C_0000001894387438043499-1" class="node default clickable">
<rect height="57" width="64.796875" y="-28.5" x="-32.3984375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="32.3984375" x1="-32.3984375" class="divider"/>
<line y2="17.5" y1="17.5" x2="32.3984375" x1="-32.3984375" class="divider"/>
@@ -193,8 +174,8 @@
</g>
</g>
</a>
<a transform="translate(184.96875, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7">
<g title="A" id="classId-C_0010726345870745113562-2" class="node default clickable">
<a transform="translate(184.96875, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7">
<g title="A" id="classId-C_0001340793233843139195-2" class="node default clickable">
<rect height="57" width="124.34375" y="-28.5" x="-62.171875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="62.171875" x1="-62.171875" class="divider"/>
<line y2="17.5" y1="17.5" x2="62.171875" x1="-62.171875" class="divider"/>
@@ -212,8 +193,8 @@
</g>
</g>
</a>
<a transform="translate(410, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L7">
<g title="A" id="classId-C_0010966470382097990802-3" class="node default clickable">
<a transform="translate(410, 227.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L7">
<g title="A" id="classId-C_0001370808797762248850-3" class="node default clickable">
<rect height="57" width="225.71875" y="-28.5" x="-112.859375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="112.859375" x1="-112.859375" class="divider"/>
<line y2="17.5" y1="17.5" x2="112.859375" x1="-112.859375" class="divider"/>
@@ -231,8 +212,8 @@
</g>
</g>
</a>
<a transform="translate(410, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00009/t00009.cc#L12">
<g title="B" id="classId-C_0001409917715601978480-4" class="node default clickable">
<a transform="translate(184.96875, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00009/t00009.cc#L12">
<g title="B" id="classId-C_0000176239714450247310-4" class="node default clickable">
<rect height="123" width="295.59375" y="-61.5" x="-147.796875" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="147.796875" x1="-147.796875" class="divider"/>
<line y2="50.5" y1="50.5" x2="147.796875" x1="-147.796875" class="divider"/>
@@ -254,7 +235,7 @@
</foreignObject>
<foreignObject transform="translate( -140.296875, 2)" height="18" width="168.828125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+astring : A&lt;std::string&gt; </span>
<span style="font-style:italic;" class="nodeLabel">+astring : A&lt;std::string&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -140.296875, 24)" height="18" width="280.59375">

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -51,8 +51,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "A<T,P>",
"id": "17777732951236112797",
"display_name": "clanguml::t00010::A<T,P>",
"id": "2222216618904514099",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -111,8 +111,8 @@ public:
},
{
"bases": [],
"display_name": "A<T,std::string>",
"id": "14892165549935322401",
"display_name": "clanguml::t00010::A<T,std::string>",
"id": "1861520693741915300",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -146,8 +146,8 @@ public:
},
{
"bases": [],
"display_name": "B<T>",
"id": "18428891408661668669",
"display_name": "clanguml::t00010::B<T>",
"id": "2303611426082708583",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -188,8 +188,8 @@ public:
},
{
"bases": [],
"display_name": "B<int>",
"id": "11987015515847592796",
"display_name": "clanguml::t00010::B<int>",
"id": "1498376939480949099",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -217,8 +217,8 @@ public:
},
{
"bases": [],
"display_name": "C",
"id": "15047732631751140570",
"display_name": "clanguml::t00010::C",
"id": "1880966578968892571",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -252,32 +252,31 @@ public:
}
],
"name": "t00010_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "17777732951236112797",
"source": "14892165549935322401",
"destination": "2222216618904514099",
"source": "1861520693741915300",
"type": "instantiation"
},
{
"access": "public",
"destination": "14892165549935322401",
"destination": "1861520693741915300",
"label": "astring",
"source": "18428891408661668669",
"source": "2303611426082708583",
"type": "aggregation"
},
{
"access": "public",
"destination": "18428891408661668669",
"source": "11987015515847592796",
"destination": "2303611426082708583",
"source": "1498376939480949099",
"type": "instantiation"
},
{
"access": "public",
"destination": "11987015515847592796",
"destination": "1498376939480949099",
"label": "aintstring",
"source": "15047732631751140570",
"source": "1880966578968892571",
"type": "aggregation"
}
],

View File

@@ -1,101 +1,113 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="586px" preserveAspectRatio="none" style="width:193px;height:586px;" version="1.1" viewBox="0 0 193 586" width="193px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="597px" preserveAspectRatio="none" style="width:199px;height:597px;background:#FFFFFF;" version="1.1" viewBox="0 0 199 597" width="199px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f18nbvzi5eq0kg" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f18nbvzi5eq0kg)" height="73.6094" id="C_0017777732951236112797" style="stroke: #A80036; stroke-width: 1.5;" width="86" x="49.5" y="502"/>
<ellipse cx="75.3" cy="518" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M78.2688,523.6406 Q77.6906,523.9375 77.05,524.0781 Q76.4094,524.2344 75.7063,524.2344 Q73.2063,524.2344 71.8781,522.5938 Q70.5656,520.9375 70.5656,517.8125 Q70.5656,514.6875 71.8781,513.0313 Q73.2063,511.375 75.7063,511.375 Q76.4094,511.375 77.05,511.5313 Q77.7063,511.6875 78.2688,511.9844 L78.2688,514.7031 Q77.6438,514.125 77.05,513.8594 Q76.4563,513.5781 75.8313,513.5781 Q74.4875,513.5781 73.8,514.6563 Q73.1125,515.7188 73.1125,517.8125 Q73.1125,519.9063 73.8,520.9844 Q74.4875,522.0469 75.8313,522.0469 Q76.4563,522.0469 77.05,521.7813 Q77.6438,521.5 78.2688,520.9219 L78.2688,523.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="91.7" y="522.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="20" x="118.5" y="499"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="18" x="119.5" y="511.1387">T,P</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="50.5" x2="134.5" y1="534" y2="534"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="50.5" x2="134.5" y1="542" y2="542"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0002222216618904514099">
<rect codeLine="2" fill="#F1F1F1" height="81.5999" id="C_0002222216618904514099" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="93" x="51" y="508.6"/>
<ellipse cx="79.5" cy="524.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M74.5,525.7563 C74.5,528.2563 76.6406,530.0688 79.5625,530.0688 C80.7969,530.0688 81.9688,529.7719 82.7188,529.2563 C83.3281,528.8344 83.6563,528.4125 83.6563,528.0063 C83.6563,527.5375 83.2344,527.1313 82.7344,527.1313 C82.5,527.1313 82.2813,527.2094 82.0781,527.4125 C81.6406,527.85 81.6406,527.85 81.4688,527.9438 C81.0156,528.1781 80.375,528.3188 79.6094,528.3188 C77.6094,528.3188 76.3281,527.3031 76.3281,525.725 L76.3281,524.6781 C76.3281,522.975 77.5469,521.7719 79.25,521.7719 C79.8281,521.7719 80.4063,521.9125 80.875,522.1625 C81.3438,522.4281 81.5156,522.6156 81.5781,522.975 C81.7031,523.6469 81.9531,523.8969 82.4844,523.8969 C82.7656,523.8969 83.0469,523.7563 83.2344,523.5375 C83.3594,523.3656 83.4063,523.1938 83.4063,522.7563 L83.4063,521.3969 C83.4063,520.975 83.3906,520.8344 83.2656,520.6625 C83.0938,520.4125 82.8125,520.2563 82.4844,520.2563 C82.1719,520.2563 81.9688,520.3656 81.75,520.6313 C80.5781,520.1313 80.1406,520.0219 79.1875,520.0219 C76.5156,520.0219 74.5,522.0375 74.5,524.6625 L74.5,525.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="96.5" y="529.206">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="20" x="127" y="505.6"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="18" x="128" y="519.8001">T,P</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="52" x2="143" y1="540.6" y2="540.6"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="52" x2="143" y1="548.6" y2="548.6"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L9" target="_top" title="first" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L9" xlink:show="new" xlink:title="first" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="57" y="557.5"/>
<ellipse cx="62" cy="562.5" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L9" target="_top" title="first" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L9" xlink:show="new" xlink:title="first" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="44" x="71" y="565.6059">first : T</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L10" target="_top" title="second" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L10" xlink:show="new" xlink:title="second" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="57" y="574.2999"/>
<ellipse cx="62" cy="579.2999" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L10" target="_top" title="second" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L10" xlink:show="new" xlink:title="second" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="67" x="71" y="582.4059">second : P</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L9" target="_top" title="first" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L9" xlink:show="new" xlink:title="first" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="55.5" y="548"/>
<ellipse cx="60.5" cy="553" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001861520693741915300">
<rect codeLine="8" fill="#F1F1F1" height="48" id="C_0001861520693741915300" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="107" x="44" y="399.6"/>
<ellipse cx="59" cy="415.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M54,416.7563 C54,419.2563 56.1406,421.0688 59.0625,421.0688 C60.2969,421.0688 61.4688,420.7719 62.2188,420.2563 C62.8281,419.8344 63.1563,419.4125 63.1563,419.0063 C63.1563,418.5375 62.7344,418.1313 62.2344,418.1313 C62,418.1313 61.7813,418.2094 61.5781,418.4125 C61.1406,418.85 61.1406,418.85 60.9688,418.9438 C60.5156,419.1781 59.875,419.3188 59.1094,419.3188 C57.1094,419.3188 55.8281,418.3031 55.8281,416.725 L55.8281,415.6781 C55.8281,413.975 57.0469,412.7719 58.75,412.7719 C59.3281,412.7719 59.9063,412.9125 60.375,413.1625 C60.8438,413.4281 61.0156,413.6156 61.0781,413.975 C61.2031,414.6469 61.4531,414.8969 61.9844,414.8969 C62.2656,414.8969 62.5469,414.7563 62.7344,414.5375 C62.8594,414.3656 62.9063,414.1938 62.9063,413.7563 L62.9063,412.3969 C62.9063,411.975 62.8906,411.8344 62.7656,411.6625 C62.5938,411.4125 62.3125,411.2563 61.9844,411.2563 C61.6719,411.2563 61.4688,411.3656 61.25,411.6313 C60.0781,411.1313 59.6406,411.0219 58.6875,411.0219 C56.0156,411.0219 54,413.0375 54,415.6625 L54,416.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="73" y="420.206">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="64" x="90" y="396.6"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="62" x="91" y="410.8001">T,std::string</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="45" x2="150" y1="431.6" y2="431.6"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="45" x2="150" y1="439.6" y2="439.6"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L9" target="_top" title="first" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L9" xlink:show="new" xlink:title="first" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="42" x="69.5" y="556.2104">first : T</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L13" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L13" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0002303611426082708583">
<rect codeLine="12" fill="#F1F1F1" height="64.7999" id="C_0002303611426082708583" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="181" x="7" y="257.8"/>
<ellipse cx="83.25" cy="273.8" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M78.25,274.9563 C78.25,277.4563 80.3906,279.2688 83.3125,279.2688 C84.5469,279.2688 85.7188,278.9719 86.4688,278.4563 C87.0781,278.0344 87.4063,277.6125 87.4063,277.2063 C87.4063,276.7375 86.9844,276.3313 86.4844,276.3313 C86.25,276.3313 86.0313,276.4094 85.8281,276.6125 C85.3906,277.05 85.3906,277.05 85.2188,277.1438 C84.7656,277.3781 84.125,277.5188 83.3594,277.5188 C81.3594,277.5188 80.0781,276.5031 80.0781,274.925 L80.0781,273.8781 C80.0781,272.175 81.2969,270.9719 83,270.9719 C83.5781,270.9719 84.1563,271.1125 84.625,271.3625 C85.0938,271.6281 85.2656,271.8156 85.3281,272.175 C85.4531,272.8469 85.7031,273.0969 86.2344,273.0969 C86.5156,273.0969 86.7969,272.9563 86.9844,272.7375 C87.1094,272.5656 87.1563,272.3938 87.1563,271.9563 L87.1563,270.5969 C87.1563,270.175 87.1406,270.0344 87.0156,269.8625 C86.8438,269.6125 86.5625,269.4563 86.2344,269.4563 C85.9219,269.4563 85.7188,269.5656 85.5,269.8313 C84.3281,269.3313 83.8906,269.2219 82.9375,269.2219 C80.2656,269.2219 78.25,271.2375 78.25,273.8625 L78.25,274.9563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="103.75" y="278.406">B</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="9" x="182" y="254.8"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="7" x="183" y="269.0001">T</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="187" y1="289.8" y2="289.8"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="187" y1="297.8" y2="297.8"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L15" target="_top" title="astring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L15" xlink:show="new" xlink:title="astring" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="306.7"/>
<ellipse cx="18" cy="311.7" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L15" target="_top" title="astring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L15" xlink:show="new" xlink:title="astring" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="155" x="27" y="314.8059">astring : A&lt;T,std::string&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L10" target="_top" title="second" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L10" xlink:show="new" xlink:title="second" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="55.5" y="560.8047"/>
<ellipse cx="60.5" cy="565.8047" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L13" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L13" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0001498376939480949099">
<rect codeLine="17" fill="#F1F1F1" height="48" id="C_0001498376939480949099" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="58" x="68.5" y="148.8"/>
<ellipse cx="83.5" cy="164.8" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M78.5,165.9563 C78.5,168.4563 80.6406,170.2688 83.5625,170.2688 C84.7969,170.2688 85.9688,169.9719 86.7188,169.4563 C87.3281,169.0344 87.6563,168.6125 87.6563,168.2063 C87.6563,167.7375 87.2344,167.3313 86.7344,167.3313 C86.5,167.3313 86.2813,167.4094 86.0781,167.6125 C85.6406,168.05 85.6406,168.05 85.4688,168.1438 C85.0156,168.3781 84.375,168.5188 83.6094,168.5188 C81.6094,168.5188 80.3281,167.5031 80.3281,165.925 L80.3281,164.8781 C80.3281,163.175 81.5469,161.9719 83.25,161.9719 C83.8281,161.9719 84.4063,162.1125 84.875,162.3625 C85.3438,162.6281 85.5156,162.8156 85.5781,163.175 C85.7031,163.8469 85.9531,164.0969 86.4844,164.0969 C86.7656,164.0969 87.0469,163.9563 87.2344,163.7375 C87.3594,163.5656 87.4063,163.3938 87.4063,162.9563 L87.4063,161.5969 C87.4063,161.175 87.3906,161.0344 87.2656,160.8625 C87.0938,160.6125 86.8125,160.4563 86.4844,160.4563 C86.1719,160.4563 85.9688,160.5656 85.75,160.8313 C84.5781,160.3313 84.1406,160.2219 83.1875,160.2219 C80.5156,160.2219 78.5,162.2375 78.5,164.8625 L78.5,165.9563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="97.5" y="169.406">B</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="15" x="114.5" y="145.8"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="13" x="115.5" y="160.0001">int</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="69.5" x2="125.5" y1="180.8" y2="180.8"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="69.5" x2="125.5" y1="188.8" y2="188.8"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L10" target="_top" title="second" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L10" xlink:show="new" xlink:title="second" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="60" x="69.5" y="569.0151">second : P</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L18" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L18" xlink:show="new" xlink:title="C" xlink:type="simple">
<g id="elem_C_0001880966578968892571">
<rect codeLine="21" fill="#F1F1F1" height="64.7999" id="C_0001880966578968892571" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="136" x="29.5" y="7"/>
<ellipse cx="88.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M83.25,24.1563 C83.25,26.6563 85.3906,28.4688 88.3125,28.4688 C89.5469,28.4688 90.7188,28.1719 91.4688,27.6563 C92.0781,27.2344 92.4063,26.8125 92.4063,26.4063 C92.4063,25.9375 91.9844,25.5313 91.4844,25.5313 C91.25,25.5313 91.0313,25.6094 90.8281,25.8125 C90.3906,26.25 90.3906,26.25 90.2188,26.3438 C89.7656,26.5781 89.125,26.7188 88.3594,26.7188 C86.3594,26.7188 85.0781,25.7031 85.0781,24.125 L85.0781,23.0781 C85.0781,21.375 86.2969,20.1719 88,20.1719 C88.5781,20.1719 89.1563,20.3125 89.625,20.5625 C90.0938,20.8281 90.2656,21.0156 90.3281,21.375 C90.4531,22.0469 90.7031,22.2969 91.2344,22.2969 C91.5156,22.2969 91.7969,22.1563 91.9844,21.9375 C92.1094,21.7656 92.1563,21.5938 92.1563,21.1563 L92.1563,19.7969 C92.1563,19.375 92.1406,19.2344 92.0156,19.0625 C91.8438,18.8125 91.5625,18.6563 91.2344,18.6563 C90.9219,18.6563 90.7188,18.7656 90.5,19.0313 C89.3281,18.5313 88.8906,18.4219 87.9375,18.4219 C85.2656,18.4219 83.25,20.4375 83.25,23.0625 L83.25,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="108.75" y="27.606">C</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="30.5" x2="164.5" y1="39" y2="39"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="30.5" x2="164.5" y1="47" y2="47"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L20" target="_top" title="aintstring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L20" xlink:show="new" xlink:title="aintstring" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="35.5" y="55.9"/>
<ellipse cx="40.5" cy="60.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L20" target="_top" title="aintstring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L20" xlink:show="new" xlink:title="aintstring" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="110" x="49.5" y="64.0059">aintstring : B&lt;int&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L7" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L7" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f18nbvzi5eq0kg)" height="48" id="C_0014892165549935322401" style="stroke: #A80036; stroke-width: 1.5;" width="117" x="34" y="393"/>
<ellipse cx="49" cy="409" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M51.9688,414.6406 Q51.3906,414.9375 50.75,415.0781 Q50.1094,415.2344 49.4063,415.2344 Q46.9063,415.2344 45.5781,413.5938 Q44.2656,411.9375 44.2656,408.8125 Q44.2656,405.6875 45.5781,404.0313 Q46.9063,402.375 49.4063,402.375 Q50.1094,402.375 50.75,402.5313 Q51.4063,402.6875 51.9688,402.9844 L51.9688,405.7031 Q51.3438,405.125 50.75,404.8594 Q50.1563,404.5781 49.5313,404.5781 Q48.1875,404.5781 47.5,405.6563 Q46.8125,406.7188 46.8125,408.8125 Q46.8125,410.9063 47.5,411.9844 Q48.1875,413.0469 49.5313,413.0469 Q50.1563,413.0469 50.75,412.7813 Q51.3438,412.5 51.9688,411.9219 L51.9688,414.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="63" y="413.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="75" x="79" y="390"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="73" x="80" y="402.1387">T,std::string</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="35" x2="150" y1="425" y2="425"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="35" x2="150" y1="433" y2="433"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L13" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L13" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f18nbvzi5eq0kg)" height="60.8047" id="C_0018428891408661668669" style="stroke: #A80036; stroke-width: 1.5;" width="173" x="6" y="255"/>
<ellipse cx="78.75" cy="271" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M81.7188,276.6406 Q81.1406,276.9375 80.5,277.0781 Q79.8594,277.2344 79.1563,277.2344 Q76.6563,277.2344 75.3281,275.5938 Q74.0156,273.9375 74.0156,270.8125 Q74.0156,267.6875 75.3281,266.0313 Q76.6563,264.375 79.1563,264.375 Q79.8594,264.375 80.5,264.5313 Q81.1563,264.6875 81.7188,264.9844 L81.7188,267.7031 Q81.0938,267.125 80.5,266.8594 Q79.9063,266.5781 79.2813,266.5781 Q77.9375,266.5781 77.25,267.6563 Q76.5625,268.7188 76.5625,270.8125 Q76.5625,272.9063 77.25,273.9844 Q77.9375,275.0469 79.2813,275.0469 Q79.9063,275.0469 80.5,274.7813 Q81.0938,274.5 81.7188,273.9219 L81.7188,276.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="99.25" y="275.1543">B</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="9" x="173" y="252"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="7" x="174" y="264.1387">T</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="178" y1="287" y2="287"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="178" y1="295" y2="295"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L15" target="_top" title="astring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L15" xlink:show="new" xlink:title="astring" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="301"/>
<ellipse cx="17" cy="306" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L15" target="_top" title="astring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L15" xlink:show="new" xlink:title="astring" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="147" x="26" y="309.2104">astring : A&lt;T,std::string&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L13" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L13" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f18nbvzi5eq0kg)" height="48" id="C_0011987015515847592796" style="stroke: #A80036; stroke-width: 1.5;" width="60" x="62.5" y="146"/>
<ellipse cx="77.5" cy="162" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M80.4688,167.6406 Q79.8906,167.9375 79.25,168.0781 Q78.6094,168.2344 77.9063,168.2344 Q75.4063,168.2344 74.0781,166.5938 Q72.7656,164.9375 72.7656,161.8125 Q72.7656,158.6875 74.0781,157.0313 Q75.4063,155.375 77.9063,155.375 Q78.6094,155.375 79.25,155.5313 Q79.9063,155.6875 80.4688,155.9844 L80.4688,158.7031 Q79.8438,158.125 79.25,157.8594 Q78.6563,157.5781 78.0313,157.5781 Q76.6875,157.5781 76,158.6563 Q75.3125,159.7188 75.3125,161.8125 Q75.3125,163.9063 76,164.9844 Q76.6875,166.0469 78.0313,166.0469 Q78.6563,166.0469 79.25,165.7813 Q79.8438,165.5 80.4688,164.9219 L80.4688,167.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="91.5" y="166.1543">B</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="18" x="107.5" y="143"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="16" x="108.5" y="155.1387">int</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="63.5" x2="121.5" y1="178" y2="178"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="63.5" x2="121.5" y1="186" y2="186"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L18" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L18" xlink:show="new" xlink:title="C" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f18nbvzi5eq0kg)" height="60.8047" id="C_0015047732631751140570" style="stroke: #A80036; stroke-width: 1.5;" width="132" x="26.5" y="8"/>
<ellipse cx="84.25" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M87.2188,29.6406 Q86.6406,29.9375 86,30.0781 Q85.3594,30.2344 84.6563,30.2344 Q82.1563,30.2344 80.8281,28.5938 Q79.5156,26.9375 79.5156,23.8125 Q79.5156,20.6875 80.8281,19.0313 Q82.1563,17.375 84.6563,17.375 Q85.3594,17.375 86,17.5313 Q86.6563,17.6875 87.2188,17.9844 L87.2188,20.7031 Q86.5938,20.125 86,19.8594 Q85.4063,19.5781 84.7813,19.5781 Q83.4375,19.5781 82.75,20.6563 Q82.0625,21.7188 82.0625,23.8125 Q82.0625,25.9063 82.75,26.9844 Q83.4375,28.0469 84.7813,28.0469 Q85.4063,28.0469 86,27.7813 Q86.5938,27.5 87.2188,26.9219 L87.2188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="104.75" y="28.1543">C</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="27.5" x2="157.5" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="27.5" x2="157.5" y1="48" y2="48"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L20" target="_top" title="aintstring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L20" xlink:show="new" xlink:title="aintstring" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="32.5" y="54"/>
<ellipse cx="37.5" cy="59" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L20" target="_top" title="aintstring" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L20" xlink:show="new" xlink:title="aintstring" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="106" x="46.5" y="62.2104">aintstring : B&lt;int&gt;</text>
</a>
<path d="M92.5,441.14 C92.5,452.67 92.5,467.17 92.5,481.41 " fill="none" id="C_0014892165549935322401-&gt;C_0017777732951236112797" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="99.5,481.71,92.5,501.71,85.5,481.71,99.5,481.71" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M92.5,329.5 C92.5,350.65 92.5,375.32 92.5,392.88 " fill="none" id="C_0018428891408661668669&lt;-C_0014892165549935322401" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="92.5,316.21,88.5,322.21,92.5,328.21,96.5,322.21,92.5,316.21" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="98.5" cy="355.0664" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="44" x="105.5" y="359.0669">astring</text>
<path d="M92.5,194.24 C92.5,205.87 92.5,220.42 92.5,234.43 " fill="none" id="C_0011987015515847592796-&gt;C_0018428891408661668669" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="99.5,234.81,92.5,254.81,85.5,234.81,99.5,234.81" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M92.5,82.5 C92.5,103.65 92.5,128.32 92.5,145.88 " fill="none" id="C_0015047732631751140570&lt;-C_0011987015515847592796" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="92.5,69.21,88.5,75.21,92.5,81.21,96.5,75.21,92.5,69.21" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="98.5" cy="108.0664" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="60" x="105.5" y="112.0669">aintstring</text>
<g id="link_C_0001861520693741915300_C_0002222216618904514099">
<path codeLine="25" d="M97.5,447.89 C97.5,464.84 97.5,470.22 97.5,490.17 " fill="none" id="C_0001861520693741915300-to-C_0002222216618904514099" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="97.5,508.17,103.5,490.17,91.5,490.17,97.5,508.17" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002303611426082708583_C_0001861520693741915300">
<path codeLine="26" d="M97.5,335.01 C97.5,358.55 97.5,378.1 97.5,399.32 " fill="none" id="C_0002303611426082708583-backto-C_0001861520693741915300" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="97.5,323.01,93.5,329.01,97.5,335.01,101.5,329.01,97.5,323.01" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="103.5" cy="361.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="39" x="110.5" y="365.677">astring</text>
</g>
<g id="link_C_0001498376939480949099_C_0002303611426082708583">
<path codeLine="27" d="M97.5,197.15 C97.5,214.54 97.5,220.47 97.5,239.57 " fill="none" id="C_0001498376939480949099-to-C_0002303611426082708583" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="97.5,257.57,103.5,239.57,91.5,239.57,97.5,257.57" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001880966578968892571_C_0001498376939480949099">
<path codeLine="28" d="M97.5,84.21 C97.5,107.75 97.5,127.3 97.5,148.52 " fill="none" id="C_0001880966578968892571-backto-C_0001498376939480949099" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="97.5,72.21,93.5,78.21,97.5,84.21,101.5,78.21,97.5,72.21" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="103.5" cy="111.1" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="53" x="110.5" y="114.877">aintstring</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -1,59 +1,64 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 211.984375 625" style="max-width: 211.984px; background-color: white;" width="211.984375" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M105.9921875,466L105.9921875,470.1666666666667C105.9921875,474.3333333333333,105.9921875,482.6666666666667,105.9921875,491C105.9921875,499.3333333333333,105.9921875,507.6666666666667,105.9921875,511.8333333333333L105.9921875,516"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M105.9921875,341L105.9921875,346.6666666666667C105.9921875,352.3333333333333,105.9921875,363.6666666666667,105.9921875,375C105.9921875,386.3333333333333,105.9921875,397.6666666666667,105.9921875,403.3333333333333L105.9921875,409"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M105.9921875,212L105.9921875,216.16666666666666C105.9921875,220.33333333333334,105.9921875,228.66666666666666,105.9921875,237C105.9921875,245.33333333333334,105.9921875,253.66666666666666,105.9921875,257.8333333333333L105.9921875,262"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M105.9921875,87L105.9921875,92.66666666666667C105.9921875,98.33333333333333,105.9921875,109.66666666666667,105.9921875,121C105.9921875,132.33333333333334,105.9921875,143.66666666666666,105.9921875,149.33333333333334L105.9921875,155"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M105.9921875,466L105.9921875,470.1666666666667C105.9921875,474.3333333333333,105.9921875,482.6666666666667,105.9921875,488C105.9921875,493.3333333333333,105.9921875,495.6666666666667,105.9921875,496.8333333333333L105.9921875,498"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M105.9921875,359L105.9921875,361.6666666666667C105.9921875,364.3333333333333,105.9921875,369.6666666666667,105.9921875,378C105.9921875,386.3333333333333,105.9921875,397.6666666666667,105.9921875,403.3333333333333L105.9921875,409"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M105.9921875,212L105.9921875,216.16666666666666C105.9921875,220.33333333333334,105.9921875,228.66666666666666,105.9921875,234C105.9921875,239.33333333333334,105.9921875,241.66666666666666,105.9921875,242.83333333333334L105.9921875,244"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M105.9921875,105L105.9921875,107.66666666666667C105.9921875,110.33333333333333,105.9921875,115.66666666666667,105.9921875,124C105.9921875,132.33333333333334,105.9921875,143.66666666666666,105.9921875,149.33333333333334L105.9921875,155"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -102,8 +107,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(105.9921875, 566.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L7">
<g title="A" id="classId-C_0017777732951236112797-0" class="node default clickable">
<a transform="translate(105.9921875, 566.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L7">
<g title="A" id="classId-C_0002222216618904514099-0" class="node default clickable">
<rect height="101" width="99.953125" y="-50.5" x="-49.9765625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="49.9765625" x1="-49.9765625" class="divider"/>
<line y2="39.5" y1="39.5" x2="49.9765625" x1="-49.9765625" class="divider"/>
@@ -131,8 +136,8 @@
</g>
</g>
</a>
<a transform="translate(105.9921875, 437.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L7">
<g title="A" id="classId-C_0014892165549935322401-1" class="node default clickable">
<a transform="translate(105.9921875, 437.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L7">
<g title="A" id="classId-C_0001861520693741915300-1" class="node default clickable">
<rect height="57" width="136.796875" y="-28.5" x="-68.3984375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="68.3984375" x1="-68.3984375" class="divider"/>
<line y2="17.5" y1="17.5" x2="68.3984375" x1="-68.3984375" class="divider"/>
@@ -150,8 +155,8 @@
</g>
</g>
</a>
<a transform="translate(105.9921875, 301.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L13">
<g title="B" id="classId-C_0018428891408661668669-2" class="node default clickable">
<a transform="translate(105.9921875, 301.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L13">
<g title="B" id="classId-C_0002303611426082708583-2" class="node default clickable">
<rect height="79" width="195.984375" y="-39.5" x="-97.9921875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="97.9921875" x1="-97.9921875" class="divider"/>
<line y2="28.5" y1="28.5" x2="97.9921875" x1="-97.9921875" class="divider"/>
@@ -174,8 +179,8 @@
</g>
</g>
</a>
<a transform="translate(105.9921875, 183.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L13">
<g title="B" id="classId-C_0011987015515847592796-3" class="node default clickable">
<a transform="translate(105.9921875, 183.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L13">
<g title="B" id="classId-C_0001498376939480949099-3" class="node default clickable">
<rect height="57" width="64.796875" y="-28.5" x="-32.3984375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="32.3984375" x1="-32.3984375" class="divider"/>
<line y2="17.5" y1="17.5" x2="32.3984375" x1="-32.3984375" class="divider"/>
@@ -193,8 +198,8 @@
</g>
</g>
</a>
<a transform="translate(105.9921875, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00010/t00010.cc#L18">
<g title="C" id="classId-C_0015047732631751140570-4" class="node default clickable">
<a transform="translate(105.9921875, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00010/t00010.cc#L18">
<g title="C" id="classId-C_0001880966578968892571-4" class="node default clickable">
<rect height="79" width="148.859375" y="-39.5" x="-74.4296875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="74.4296875" x1="-74.4296875" class="divider"/>
<line y2="28.5" y1="28.5" x2="74.4296875" x1="-74.4296875" class="divider"/>

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -60,8 +60,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "D<T>",
"id": "9205119221984418212",
"display_name": "clanguml::t00011::D<T>",
"id": "1150639902748052276",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -102,8 +102,8 @@ public:
},
{
"bases": [],
"display_name": "A",
"id": "11364135622862429756",
"display_name": "clanguml::t00011::A",
"id": "1420516952857803719",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -113,7 +113,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "foo",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -136,7 +135,6 @@ public:
"line": 16,
"translation_unit": "t00011.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -153,8 +151,8 @@ public:
},
{
"bases": [],
"display_name": "B",
"id": "13499420831616398636",
"display_name": "clanguml::t00011::B",
"id": "1687427603952049829",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -177,7 +175,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "foo",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -200,7 +197,6 @@ public:
"line": 28,
"translation_unit": "t00011.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -217,20 +213,19 @@ public:
}
],
"name": "t00011_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "13499420831616398636",
"destination": "1687427603952049829",
"label": "<<friend>>",
"source": "11364135622862429756",
"source": "1420516952857803719",
"type": "friendship"
},
{
"access": "public",
"destination": "11364135622862429756",
"destination": "1420516952857803719",
"label": "m_a",
"source": "13499420831616398636",
"source": "1687427603952049829",
"type": "association"
}
],

View File

@@ -1,75 +1,79 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="230px" preserveAspectRatio="none" style="width:226px;height:230px;" version="1.1" viewBox="0 0 226 230" width="226px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="240px" preserveAspectRatio="none" style="width:228px;height:240px;background:#FFFFFF;" version="1.1" viewBox="0 0 228 240" width="228px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="fe7sfpmlwt7ae" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L10" target="_top" title="D" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L10" xlink:show="new" xlink:title="D" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fe7sfpmlwt7ae)" height="60.8047" id="C_0009205119221984418212" style="stroke: #A80036; stroke-width: 1.5;" width="75" x="6" y="8"/>
<ellipse cx="31.35" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M34.3188,29.6406 Q33.7406,29.9375 33.1,30.0781 Q32.4594,30.2344 31.7563,30.2344 Q29.2563,30.2344 27.9281,28.5938 Q26.6156,26.9375 26.6156,23.8125 Q26.6156,20.6875 27.9281,19.0313 Q29.2563,17.375 31.7563,17.375 Q32.4594,17.375 33.1,17.5313 Q33.7563,17.6875 34.3188,17.9844 L34.3188,20.7031 Q33.6938,20.125 33.1,19.8594 Q32.5063,19.5781 31.8813,19.5781 Q30.5375,19.5781 29.85,20.6563 Q29.1625,21.7188 29.1625,23.8125 Q29.1625,25.9063 29.85,26.9844 Q30.5375,28.0469 31.8813,28.0469 Q32.5063,28.0469 33.1,27.7813 Q33.6938,27.5 34.3188,26.9219 L34.3188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="9" x="47.65" y="28.1543">D</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="9" x="75" y="5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="7" x="76" y="17.1387">T</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="80" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="80" y1="48" y2="48"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L10" target="_top" title="D" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L10" xlink:show="new" xlink:title="D" xlink:type="simple">
<g id="elem_C_0001150639902748052276">
<rect codeLine="2" fill="#F1F1F1" height="64.7999" id="C_0001150639902748052276" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="81" x="7" y="10"/>
<ellipse cx="34.6" cy="26" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M29.6,27.1563 C29.6,29.6563 31.7406,31.4688 34.6625,31.4688 C35.8969,31.4688 37.0688,31.1719 37.8188,30.6563 C38.4281,30.2344 38.7563,29.8125 38.7563,29.4063 C38.7563,28.9375 38.3344,28.5313 37.8344,28.5313 C37.6,28.5313 37.3813,28.6094 37.1781,28.8125 C36.7406,29.25 36.7406,29.25 36.5688,29.3438 C36.1156,29.5781 35.475,29.7188 34.7094,29.7188 C32.7094,29.7188 31.4281,28.7031 31.4281,27.125 L31.4281,26.0781 C31.4281,24.375 32.6469,23.1719 34.35,23.1719 C34.9281,23.1719 35.5063,23.3125 35.975,23.5625 C36.4438,23.8281 36.6156,24.0156 36.6781,24.375 C36.8031,25.0469 37.0531,25.2969 37.5844,25.2969 C37.8656,25.2969 38.1469,25.1563 38.3344,24.9375 C38.4594,24.7656 38.5063,24.5938 38.5063,24.1563 L38.5063,22.7969 C38.5063,22.375 38.4906,22.2344 38.3656,22.0625 C38.1938,21.8125 37.9125,21.6563 37.5844,21.6563 C37.2719,21.6563 37.0688,21.7656 36.85,22.0313 C35.6781,21.5313 35.2406,21.4219 34.2875,21.4219 C31.6156,21.4219 29.6,23.4375 29.6,26.0625 L29.6,27.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="51.4" y="30.606">D</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="9" x="82" y="7"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="7" x="83" y="21.2001">T</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="87" y1="42" y2="42"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="87" y1="50" y2="50"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L11" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L11" xlink:show="new" xlink:title="value" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="58.9"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="60.9"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L11" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L11" xlink:show="new" xlink:title="value" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="55" x="27" y="67.0059">value : T</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L11" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L11" xlink:show="new" xlink:title="value" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="54"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="14" y="56"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L14" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L14" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001420516952857803719">
<rect codeLine="7" fill="#F1F1F1" height="64.7999" id="C_0001420516952857803719" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="94" x="123.5" y="10"/>
<ellipse cx="162.35" cy="26" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M157.35,27.1563 C157.35,29.6563 159.4906,31.4688 162.4125,31.4688 C163.6469,31.4688 164.8188,31.1719 165.5688,30.6563 C166.1781,30.2344 166.5063,29.8125 166.5063,29.4063 C166.5063,28.9375 166.0844,28.5313 165.5844,28.5313 C165.35,28.5313 165.1313,28.6094 164.9281,28.8125 C164.4906,29.25 164.4906,29.25 164.3188,29.3438 C163.8656,29.5781 163.225,29.7188 162.4594,29.7188 C160.4594,29.7188 159.1781,28.7031 159.1781,27.125 L159.1781,26.0781 C159.1781,24.375 160.3969,23.1719 162.1,23.1719 C162.6781,23.1719 163.2563,23.3125 163.725,23.5625 C164.1938,23.8281 164.3656,24.0156 164.4281,24.375 C164.5531,25.0469 164.8031,25.2969 165.3344,25.2969 C165.6156,25.2969 165.8969,25.1563 166.0844,24.9375 C166.2094,24.7656 166.2563,24.5938 166.2563,24.1563 L166.2563,22.7969 C166.2563,22.375 166.2406,22.2344 166.1156,22.0625 C165.9438,21.8125 165.6625,21.6563 165.3344,21.6563 C165.0219,21.6563 164.8188,21.7656 164.6,22.0313 C163.4281,21.5313 162.9906,21.4219 162.0375,21.4219 C159.3656,21.4219 157.35,23.4375 157.35,26.0625 L157.35,27.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="181.65" y="30.606">A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="124.5" x2="216.5" y1="42" y2="42"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L16" target="_top" title="foo" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L16" xlink:show="new" xlink:title="foo" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="129.5" y="50.9"/>
<ellipse cx="134.5" cy="55.9" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L16" target="_top" title="foo" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L16" xlink:show="new" xlink:title="foo" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="143.5" y="59.0059">foo() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="124.5" x2="216.5" y1="66.7999" y2="66.7999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L11" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L11" xlink:show="new" xlink:title="value" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="49" x="26" y="62.2104">value : T</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L26" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L26" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0001687427603952049829">
<rect codeLine="12" fill="#F1F1F1" height="81.5999" id="C_0001687427603952049829" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="94" x="123.5" y="151.8"/>
<ellipse cx="162.35" cy="167.8" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M157.35,168.9563 C157.35,171.4563 159.4906,173.2688 162.4125,173.2688 C163.6469,173.2688 164.8188,172.9719 165.5688,172.4563 C166.1781,172.0344 166.5063,171.6125 166.5063,171.2063 C166.5063,170.7375 166.0844,170.3313 165.5844,170.3313 C165.35,170.3313 165.1313,170.4094 164.9281,170.6125 C164.4906,171.05 164.4906,171.05 164.3188,171.1438 C163.8656,171.3781 163.225,171.5188 162.4594,171.5188 C160.4594,171.5188 159.1781,170.5031 159.1781,168.925 L159.1781,167.8781 C159.1781,166.175 160.3969,164.9719 162.1,164.9719 C162.6781,164.9719 163.2563,165.1125 163.725,165.3625 C164.1938,165.6281 164.3656,165.8156 164.4281,166.175 C164.5531,166.8469 164.8031,167.0969 165.3344,167.0969 C165.6156,167.0969 165.8969,166.9563 166.0844,166.7375 C166.2094,166.5656 166.2563,166.3938 166.2563,165.9563 L166.2563,164.5969 C166.2563,164.175 166.2406,164.0344 166.1156,163.8625 C165.9438,163.6125 165.6625,163.4563 165.3344,163.4563 C165.0219,163.4563 164.8188,163.5656 164.6,163.8313 C163.4281,163.3313 162.9906,163.2219 162.0375,163.2219 C159.3656,163.2219 157.35,165.2375 157.35,167.8625 L157.35,168.9563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="181.65" y="172.406">B</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="124.5" x2="216.5" y1="183.8" y2="183.8"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L28" target="_top" title="foo" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L28" xlink:show="new" xlink:title="foo" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="129.5" y="192.7"/>
<ellipse cx="134.5" cy="197.7" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L28" target="_top" title="foo" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L28" xlink:show="new" xlink:title="foo" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="143.5" y="200.8059">foo() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="124.5" x2="216.5" y1="208.5999" y2="208.5999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L29" target="_top" title="m_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L29" xlink:show="new" xlink:title="m_a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="129.5" y="217.4999"/>
<ellipse cx="134.5" cy="222.4999" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L29" target="_top" title="m_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L29" xlink:show="new" xlink:title="m_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="58" x="143.5" y="225.6059">m_a : A *</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L14" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L14" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fe7sfpmlwt7ae)" height="60.8047" id="C_0011364135622862429756" style="stroke: #A80036; stroke-width: 1.5;" width="87" x="116" y="8"/>
<ellipse cx="152.15" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M155.1188,29.6406 Q154.5406,29.9375 153.9,30.0781 Q153.2594,30.2344 152.5563,30.2344 Q150.0563,30.2344 148.7281,28.5938 Q147.4156,26.9375 147.4156,23.8125 Q147.4156,20.6875 148.7281,19.0313 Q150.0563,17.375 152.5563,17.375 Q153.2594,17.375 153.9,17.5313 Q154.5563,17.6875 155.1188,17.9844 L155.1188,20.7031 Q154.4938,20.125 153.9,19.8594 Q153.3063,19.5781 152.6813,19.5781 Q151.3375,19.5781 150.65,20.6563 Q149.9625,21.7188 149.9625,23.8125 Q149.9625,25.9063 150.65,26.9844 Q151.3375,28.0469 152.6813,28.0469 Q153.3063,28.0469 153.9,27.7813 Q154.4938,27.5 155.1188,26.9219 L155.1188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="170.85" y="28.1543">A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="117" x2="202" y1="40" y2="40"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L16" target="_top" title="foo" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L16" xlink:show="new" xlink:title="foo" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="122" y="46"/>
<ellipse cx="127" cy="51" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L16" target="_top" title="foo" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L16" xlink:show="new" xlink:title="foo" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="136" y="54.2104">foo() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="117" x2="202" y1="60.8047" y2="60.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L26" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L26" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fe7sfpmlwt7ae)" height="73.6094" id="C_0013499420831616398636" style="stroke: #A80036; stroke-width: 1.5;" width="87" x="116" y="146"/>
<ellipse cx="152.15" cy="162" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M155.1188,167.6406 Q154.5406,167.9375 153.9,168.0781 Q153.2594,168.2344 152.5563,168.2344 Q150.0563,168.2344 148.7281,166.5938 Q147.4156,164.9375 147.4156,161.8125 Q147.4156,158.6875 148.7281,157.0313 Q150.0563,155.375 152.5563,155.375 Q153.2594,155.375 153.9,155.5313 Q154.5563,155.6875 155.1188,155.9844 L155.1188,158.7031 Q154.4938,158.125 153.9,157.8594 Q153.3063,157.5781 152.6813,157.5781 Q151.3375,157.5781 150.65,158.6563 Q149.9625,159.7188 149.9625,161.8125 Q149.9625,163.9063 150.65,164.9844 Q151.3375,166.0469 152.6813,166.0469 Q153.3063,166.0469 153.9,165.7813 Q154.4938,165.5 155.1188,164.9219 L155.1188,167.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="170.85" y="166.1543">B</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="117" x2="202" y1="178" y2="178"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L28" target="_top" title="foo" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L28" xlink:show="new" xlink:title="foo" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="122" y="184"/>
<ellipse cx="127" cy="189" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L28" target="_top" title="foo" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L28" xlink:show="new" xlink:title="foo" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="136" y="192.2104">foo() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="117" x2="202" y1="198.8047" y2="198.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L29" target="_top" title="m_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L29" xlink:show="new" xlink:title="m_a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="122" y="204.8047"/>
<ellipse cx="127" cy="209.8047" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L29" target="_top" title="m_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L29" xlink:show="new" xlink:title="m_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="53" x="136" y="213.0151">m_a : A *</text>
</a>
<path d="M116.04,73.01 C105.09,85.59 97.85,100.6 103.5,116 C107.44,126.72 113.97,136.89 121.21,145.9 " fill="none" id="C_0011364135622862429756&lt;-C_0013499420831616398636" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="119.54,69.18,110.5057,73.102,116.1575,72.8622,116.3973,78.514,119.54,69.18" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="109.5" cy="108.0664" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="52" x="116.5" y="112.0669">«friend»</text>
<path d="M170.13,145.75 C173.19,131.26 175.29,114.39 173.5,99 C172.56,90.88 170.92,82.26 169.08,74.18 " fill="none" id="C_0013499420831616398636-&gt;C_0011364135622862429756" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="167.92,69.22,166.0877,78.8969,169.0652,74.0871,173.875,77.0646,167.92,69.22" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="179.5" cy="108.0664" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="28" x="186.5" y="112.0669">m_a</text>
<g id="link_C_0001420516952857803719_C_0001687427603952049829">
<path codeLine="17" d="M127.9244,79.7762 C116.3144,93.2562 111.89,105.14 117.5,121.8 C121,132.18 126.72,142.25 133.14,151.35 " fill="none" id="C_0001420516952857803719-backto-C_0001687427603952049829" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="131.84,75.23,122.9358,79.439,128.577,79.0185,128.9975,84.6597,131.84,75.23" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="123.5" cy="114.1" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="46" x="130.5" y="117.877">«friend»</text>
</g>
<g id="link_C_0001687427603952049829_C_0001420516952857803719">
<path codeLine="18" d="M179.21,151.48 C181.43,136.82 182.86,120.08 181.5,104.8 C180.64,95.09 180.095,90.5229 178.365,81.0229 " fill="none" id="C_0001687427603952049829-to-C_0001420516952857803719" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="177.29,75.12,174.9671,84.691,178.1858,80.0391,182.8377,83.2577,177.29,75.12" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="188.5" cy="114.1" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="25" x="195.5" y="117.877">m_a</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -1,60 +1,65 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 252.29296875 264" style="max-width: 252.293px; background-color: white;" width="252.29296875" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 256.73828125 264" style="max-width: 256.738px; background-color: white;" width="256.73828125" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-dependencyStart)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M170.73551764455783,87L168.0614990787982,92.66666666666667C165.38748051303855,98.33333333333333,160.03944338151928,109.66666666666667,159.69134629011862,121C159.34324919871793,132.33333333333334,163.99509214743588,143.66666666666666,166.32101362179486,149.33333333333334L168.64693509615384,155"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M210.10306490384616,155L212.4289863782051,149.33333333333334C214.75490785256412,143.66666666666666,219.40675080128207,132.33333333333334,219.05865370988138,121C218.71055661848072,109.66666666666667,213.36251948696145,98.33333333333333,210.6885009212018,92.66666666666667L208.01448235544217,87"/>
<path marker-start="url(#my-svg_classDiagram-dependencyStart)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M172.62028580978097,92.42619689189787L170.3730246331508,97.18849740991489C168.12576345652064,101.9507979279319,163.63124110326032,111.47539896396596,163.70990140098914,121.90436614864966C163.78856169871793,132.33333333333334,168.44040464743588,143.66666666666666,170.7663261217949,149.33333333333334L173.09224759615384,155"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M214.54837740384616,155L216.8742988782051,149.33333333333334C219.20022035256412,143.66666666666666,223.85206330128207,132.33333333333334,223.9307235990109,121.90436614864966C224.00938389673968,111.47539896396596,219.51486154347936,101.9507979279319,217.26760036684922,97.18849740991489L215.02033919021903,92.42619689189787"/>
</g>
<g class="edgeLabels">
<g transform="translate(154.69140625, 121)" class="edgeLabel">
<g transform="translate(159.13671875, 121)" class="edgeLabel">
<g transform="translate(-29.1328125, -9)" class="label">
<foreignObject height="18" width="58.265625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -65,7 +70,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(224.05859375, 121)" class="edgeLabel">
<g transform="translate(228.50390625, 121)" class="edgeLabel">
<g transform="translate(-20.234375, -9)" class="label">
<foreignObject height="18" width="40.46875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -78,8 +83,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(48.703125, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L10">
<g title="D" id="classId-C_0009205119221984418212-0" class="node default clickable">
<a transform="translate(48.703125, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L10">
<g title="D" id="classId-C_0001150639902748052276-0" class="node default clickable">
<rect height="79" width="81.40625" y="-39.5" x="-40.703125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="40.703125" x1="-40.703125" class="divider"/>
<line y2="28.5" y1="28.5" x2="40.703125" x1="-40.703125" class="divider"/>
@@ -102,11 +107,11 @@
</g>
</g>
</a>
<a transform="translate(189.375, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L14">
<g title="A" id="classId-C_0011364135622862429756-1" class="node default clickable">
<rect height="79" width="99.9375" y="-39.5" x="-49.96875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="49.96875" x1="-49.96875" class="divider"/>
<line y2="6.5" y1="6.5" x2="49.96875" x1="-49.96875" class="divider"/>
<a transform="translate(193.8203125, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L14">
<g title="A" id="classId-C_0001420516952857803719-1" class="node default clickable">
<rect height="79" width="108.828125" y="-39.5" x="-54.4140625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="54.4140625" x1="-54.4140625" class="divider"/>
<line y2="6.5" y1="6.5" x2="54.4140625" x1="-54.4140625" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -118,19 +123,19 @@
<span class="nodeLabel">A</span>
</div>
</foreignObject>
<foreignObject transform="translate( -42.46875, 14)" height="18" width="84.9375">
<foreignObject transform="translate( -46.9140625, 14)" height="18" width="93.828125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo() : void</span>
<span class="nodeLabel">+foo() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(189.375, 205.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00011/t00011.cc#L26">
<g title="B" id="classId-C_0013499420831616398636-2" class="node default clickable">
<rect height="101" width="99.9375" y="-50.5" x="-49.96875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="49.96875" x1="-49.96875" class="divider"/>
<line y2="17.5" y1="17.5" x2="49.96875" x1="-49.96875" class="divider"/>
<a transform="translate(193.8203125, 205.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00011/t00011.cc#L26">
<g title="B" id="classId-C_0001687427603952049829-2" class="node default clickable">
<rect height="101" width="108.828125" y="-50.5" x="-54.4140625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="54.4140625" x1="-54.4140625" class="divider"/>
<line y2="17.5" y1="17.5" x2="54.4140625" x1="-54.4140625" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -142,14 +147,14 @@
<span class="nodeLabel">B</span>
</div>
</foreignObject>
<foreignObject transform="translate( -42.46875, -9)" height="18" width="63.890625">
<foreignObject transform="translate( -46.9140625, -9)" height="18" width="63.890625">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+m_a : A </span>
<span style="font-style:italic;" class="nodeLabel">+m_a : A</span>
</div>
</foreignObject>
<foreignObject transform="translate( -42.46875, 25)" height="18" width="84.9375">
<foreignObject transform="translate( -46.9140625, 25)" height="18" width="93.828125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+foo() : void</span>
<span class="nodeLabel">+foo() : : void</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -67,8 +67,8 @@ class R {
"elements": [
{
"bases": [],
"display_name": "A<T,Ts...>",
"id": "14186399120185058260",
"display_name": "clanguml::t00012::A<T,Ts...>",
"id": "1773299890023132282",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -127,8 +127,8 @@ class R {
},
{
"bases": [],
"display_name": "B<int... Is>",
"id": "16489368620538237973",
"display_name": "clanguml::t00012::B<int... Is>",
"id": "2061171077567279746",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -170,8 +170,8 @@ class R {
},
{
"bases": [],
"display_name": "C<T,int... Is>",
"id": "5022476627261205034",
"display_name": "clanguml::t00012::C<T,int... Is>",
"id": "627809578407650629",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -219,8 +219,8 @@ class R {
},
{
"bases": [],
"display_name": "A<int,std::string,float>",
"id": "2295779191536043659",
"display_name": "clanguml::t00012::A<int,std::string,float>",
"id": "286972398942005457",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -260,8 +260,8 @@ class R {
},
{
"bases": [],
"display_name": "A<int,std::string,bool>",
"id": "2395729448786407708",
"display_name": "clanguml::t00012::A<int,std::string,bool>",
"id": "299466181098300963",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -301,8 +301,8 @@ class R {
},
{
"bases": [],
"display_name": "B<3,2,1>",
"id": "3912506223772908750",
"display_name": "clanguml::t00012::B<3,2,1>",
"id": "489063277971613593",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -342,8 +342,8 @@ class R {
},
{
"bases": [],
"display_name": "B<1,1,1,1>",
"id": "113858899865604792",
"display_name": "clanguml::t00012::B<1,1,1,1>",
"id": "14232362483200599",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -389,8 +389,8 @@ class R {
},
{
"bases": [],
"display_name": "C<std::map<int,std::vector<std::vector<std::vector<std::string>>>>,3,3,3>",
"id": "11825915317057918032",
"display_name": "clanguml::t00012::C<std::map<int,std::vector<std::vector<std::vector<std::string>>>>,3,3,3>",
"id": "1478239414632239754",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -470,8 +470,8 @@ class R {
},
{
"bases": [],
"display_name": "R",
"id": "4474107085863083753",
"display_name": "clanguml::t00012::R",
"id": "559263385732885469",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -553,71 +553,70 @@ class R {
}
],
"name": "t00012_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "14186399120185058260",
"source": "2295779191536043659",
"destination": "1773299890023132282",
"source": "286972398942005457",
"type": "instantiation"
},
{
"access": "public",
"destination": "14186399120185058260",
"source": "2395729448786407708",
"destination": "1773299890023132282",
"source": "299466181098300963",
"type": "instantiation"
},
{
"access": "public",
"destination": "16489368620538237973",
"source": "3912506223772908750",
"destination": "2061171077567279746",
"source": "489063277971613593",
"type": "instantiation"
},
{
"access": "public",
"destination": "16489368620538237973",
"source": "113858899865604792",
"destination": "2061171077567279746",
"source": "14232362483200599",
"type": "instantiation"
},
{
"access": "public",
"destination": "5022476627261205034",
"source": "11825915317057918032",
"destination": "627809578407650629",
"source": "1478239414632239754",
"type": "instantiation"
},
{
"access": "private",
"destination": "2295779191536043659",
"destination": "286972398942005457",
"label": "a1",
"source": "4474107085863083753",
"source": "559263385732885469",
"type": "aggregation"
},
{
"access": "private",
"destination": "2395729448786407708",
"destination": "299466181098300963",
"label": "a2",
"source": "4474107085863083753",
"source": "559263385732885469",
"type": "aggregation"
},
{
"access": "private",
"destination": "3912506223772908750",
"destination": "489063277971613593",
"label": "b1",
"source": "4474107085863083753",
"source": "559263385732885469",
"type": "aggregation"
},
{
"access": "private",
"destination": "113858899865604792",
"destination": "14232362483200599",
"label": "b2",
"source": "4474107085863083753",
"source": "559263385732885469",
"type": "aggregation"
},
{
"access": "private",
"destination": "11825915317057918032",
"destination": "1478239414632239754",
"label": "c1",
"source": "4474107085863083753",
"source": "559263385732885469",
"type": "aggregation"
}
],

View File

@@ -1,197 +1,231 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="390px" preserveAspectRatio="none" style="width:1362px;height:390px;" version="1.1" viewBox="0 0 1362 390" width="1362px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="413px" preserveAspectRatio="none" style="width:1220px;height:413px;background:#FFFFFF;" version="1.1" viewBox="0 0 1220 413" width="1220px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1utp2iqmy6bb3" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="73.6094" id="C_0014186399120185058260" style="stroke: #A80036; stroke-width: 1.5;" width="184" x="822" y="306"/>
<ellipse cx="885.75" cy="322" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M888.7188,327.6406 Q888.1406,327.9375 887.5,328.0781 Q886.8594,328.2344 886.1563,328.2344 Q883.6563,328.2344 882.3281,326.5938 Q881.0156,324.9375 881.0156,321.8125 Q881.0156,318.6875 882.3281,317.0313 Q883.6563,315.375 886.1563,315.375 Q886.8594,315.375 887.5,315.5313 Q888.1563,315.6875 888.7188,315.9844 L888.7188,318.7031 Q888.0938,318.125 887.5,317.8594 Q886.9063,317.5781 886.2813,317.5781 Q884.9375,317.5781 884.25,318.6563 Q883.5625,319.7188 883.5625,321.8125 Q883.5625,323.9063 884.25,324.9844 Q884.9375,326.0469 886.2813,326.0469 Q886.9063,326.0469 887.5,325.7813 Q888.0938,325.5 888.7188,324.9219 L888.7188,327.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="906.25" y="326.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="38" x="971" y="303"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="36" x="972" y="315.1387">T,Ts...</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="823" x2="1005" y1="338" y2="338"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="823" x2="1005" y1="346" y2="346"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001773299890023132282">
<rect codeLine="2" fill="#F1F1F1" height="81.5999" id="C_0001773299890023132282" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="193" x="698" y="325"/>
<ellipse cx="767.75" cy="341" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M762.75,342.1563 C762.75,344.6563 764.8906,346.4688 767.8125,346.4688 C769.0469,346.4688 770.2188,346.1719 770.9688,345.6563 C771.5781,345.2344 771.9063,344.8125 771.9063,344.4063 C771.9063,343.9375 771.4844,343.5313 770.9844,343.5313 C770.75,343.5313 770.5313,343.6094 770.3281,343.8125 C769.8906,344.25 769.8906,344.25 769.7188,344.3438 C769.2656,344.5781 768.625,344.7188 767.8594,344.7188 C765.8594,344.7188 764.5781,343.7031 764.5781,342.125 L764.5781,341.0781 C764.5781,339.375 765.7969,338.1719 767.5,338.1719 C768.0781,338.1719 768.6563,338.3125 769.125,338.5625 C769.5938,338.8281 769.7656,339.0156 769.8281,339.375 C769.9531,340.0469 770.2031,340.2969 770.7344,340.2969 C771.0156,340.2969 771.2969,340.1563 771.4844,339.9375 C771.6094,339.7656 771.6563,339.5938 771.6563,339.1563 L771.6563,337.7969 C771.6563,337.375 771.6406,337.2344 771.5156,337.0625 C771.3438,336.8125 771.0625,336.6563 770.7344,336.6563 C770.4219,336.6563 770.2188,336.7656 770,337.0313 C768.8281,336.5313 768.3906,336.4219 767.4375,336.4219 C764.7656,336.4219 762.75,338.4375 762.75,341.0625 L762.75,342.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="788.25" y="345.606">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="34" x="860" y="322"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="32" x="861" y="336.2001">T,Ts...</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="699" x2="890" y1="357" y2="357"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="699" x2="890" y1="365" y2="365"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L12" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L12" xlink:show="new" xlink:title="value" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="704" y="373.9"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="706" y="375.9"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L12" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L12" xlink:show="new" xlink:title="value" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="55" x="718" y="382.0059">value : T</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L13" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L13" xlink:show="new" xlink:title="values" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="704" y="390.6999"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="706" y="392.6999"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L13" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L13" xlink:show="new" xlink:title="values" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="167" x="718" y="398.8059">values : std::variant&lt;Ts...&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L12" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L12" xlink:show="new" xlink:title="value" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="828" y="352"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="830" y="354"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0002061171077567279746">
<rect codeLine="8" fill="#F1F1F1" height="64.7999" id="C_0002061171077567279746" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="225" x="984" y="333.4"/>
<ellipse cx="1068.75" cy="349.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M1063.75,350.5563 C1063.75,353.0563 1065.8906,354.8688 1068.8125,354.8688 C1070.0469,354.8688 1071.2188,354.5719 1071.9688,354.0563 C1072.5781,353.6344 1072.9063,353.2125 1072.9063,352.8063 C1072.9063,352.3375 1072.4844,351.9313 1071.9844,351.9313 C1071.75,351.9313 1071.5313,352.0094 1071.3281,352.2125 C1070.8906,352.65 1070.8906,352.65 1070.7188,352.7438 C1070.2656,352.9781 1069.625,353.1188 1068.8594,353.1188 C1066.8594,353.1188 1065.5781,352.1031 1065.5781,350.525 L1065.5781,349.4781 C1065.5781,347.775 1066.7969,346.5719 1068.5,346.5719 C1069.0781,346.5719 1069.6563,346.7125 1070.125,346.9625 C1070.5938,347.2281 1070.7656,347.4156 1070.8281,347.775 C1070.9531,348.4469 1071.2031,348.6969 1071.7344,348.6969 C1072.0156,348.6969 1072.2969,348.5563 1072.4844,348.3375 C1072.6094,348.1656 1072.6563,347.9938 1072.6563,347.5563 L1072.6563,346.1969 C1072.6563,345.775 1072.6406,345.6344 1072.5156,345.4625 C1072.3438,345.2125 1072.0625,345.0563 1071.7344,345.0563 C1071.4219,345.0563 1071.2188,345.1656 1071,345.4313 C1069.8281,344.9313 1069.3906,344.8219 1068.4375,344.8219 C1065.7656,344.8219 1063.75,346.8375 1063.75,349.4625 L1063.75,350.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="1089.25" y="354.006">B</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="36" x="1176" y="330.4"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="34" x="1177" y="344.6001">int... Is</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="985" x2="1208" y1="365.4" y2="365.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="985" x2="1208" y1="373.4" y2="373.4"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L17" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L17" xlink:show="new" xlink:title="ints" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="990" y="382.3"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="992" y="384.3"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L17" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L17" xlink:show="new" xlink:title="ints" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="199" x="1004" y="390.4059">ints : std::array&lt;int,sizeof...(Is)&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L12" target="_top" title="value" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L12" xlink:show="new" xlink:title="value" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="49" x="842" y="360.2104">value : T</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L20" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L20" xlink:show="new" xlink:title="C" xlink:type="simple">
<g id="elem_C_0000627809578407650629">
<rect codeLine="13" fill="#F1F1F1" height="64.7999" id="C_0000627809578407650629" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="219" x="103" y="333.4"/>
<ellipse cx="179.25" cy="349.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M174.25,350.5563 C174.25,353.0563 176.3906,354.8688 179.3125,354.8688 C180.5469,354.8688 181.7188,354.5719 182.4688,354.0563 C183.0781,353.6344 183.4063,353.2125 183.4063,352.8063 C183.4063,352.3375 182.9844,351.9313 182.4844,351.9313 C182.25,351.9313 182.0313,352.0094 181.8281,352.2125 C181.3906,352.65 181.3906,352.65 181.2188,352.7438 C180.7656,352.9781 180.125,353.1188 179.3594,353.1188 C177.3594,353.1188 176.0781,352.1031 176.0781,350.525 L176.0781,349.4781 C176.0781,347.775 177.2969,346.5719 179,346.5719 C179.5781,346.5719 180.1563,346.7125 180.625,346.9625 C181.0938,347.2281 181.2656,347.4156 181.3281,347.775 C181.4531,348.4469 181.7031,348.6969 182.2344,348.6969 C182.5156,348.6969 182.7969,348.5563 182.9844,348.3375 C183.1094,348.1656 183.1563,347.9938 183.1563,347.5563 L183.1563,346.1969 C183.1563,345.775 183.1406,345.6344 183.0156,345.4625 C182.8438,345.2125 182.5625,345.0563 182.2344,345.0563 C181.9219,345.0563 181.7188,345.1656 181.5,345.4313 C180.3281,344.9313 179.8906,344.8219 178.9375,344.8219 C176.2656,344.8219 174.25,346.8375 174.25,349.4625 L174.25,350.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="199.75" y="354.006">C</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="46" x="279" y="330.4"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="44" x="280" y="344.6001">T,int... Is</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="104" x2="321" y1="365.4" y2="365.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="104" x2="321" y1="373.4" y2="373.4"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L21" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L21" xlink:show="new" xlink:title="ints" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="109" y="382.3"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="111" y="384.3"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L21" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L21" xlink:show="new" xlink:title="ints" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="193" x="123" y="390.4059">ints : std::array&lt;T,sizeof...(Is)&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L13" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L13" xlink:show="new" xlink:title="values" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="828" y="364.8047"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="830" y="366.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0000286972398942005457">
<rect codeLine="18" fill="#F1F1F1" height="48" id="C_0000286972398942005457" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="139" x="655" y="216"/>
<ellipse cx="670" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M665,233.1563 C665,235.6563 667.1406,237.4688 670.0625,237.4688 C671.2969,237.4688 672.4688,237.1719 673.2188,236.6563 C673.8281,236.2344 674.1563,235.8125 674.1563,235.4063 C674.1563,234.9375 673.7344,234.5313 673.2344,234.5313 C673,234.5313 672.7813,234.6094 672.5781,234.8125 C672.1406,235.25 672.1406,235.25 671.9688,235.3438 C671.5156,235.5781 670.875,235.7188 670.1094,235.7188 C668.1094,235.7188 666.8281,234.7031 666.8281,233.125 L666.8281,232.0781 C666.8281,230.375 668.0469,229.1719 669.75,229.1719 C670.3281,229.1719 670.9063,229.3125 671.375,229.5625 C671.8438,229.8281 672.0156,230.0156 672.0781,230.375 C672.2031,231.0469 672.4531,231.2969 672.9844,231.2969 C673.2656,231.2969 673.5469,231.1563 673.7344,230.9375 C673.8594,230.7656 673.9063,230.5938 673.9063,230.1563 L673.9063,228.7969 C673.9063,228.375 673.8906,228.2344 673.7656,228.0625 C673.5938,227.8125 673.3125,227.6563 672.9844,227.6563 C672.6719,227.6563 672.4688,227.7656 672.25,228.0313 C671.0781,227.5313 670.6406,227.4219 669.6875,227.4219 C667.0156,227.4219 665,229.4375 665,232.0625 L665,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="684" y="236.606">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="96" x="701" y="213"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="94" x="702" y="227.2001">int,std::string,float</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="656" x2="793" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="656" x2="793" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L13" target="_top" title="values" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L13" xlink:show="new" xlink:title="values" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="158" x="842" y="373.0151">values : std::variant&lt;Ts...&gt;</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0000299466181098300963">
<rect codeLine="22" fill="#F1F1F1" height="48" id="C_0000299466181098300963" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="140" x="829.5" y="216"/>
<ellipse cx="844.5" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M839.5,233.1563 C839.5,235.6563 841.6406,237.4688 844.5625,237.4688 C845.7969,237.4688 846.9688,237.1719 847.7188,236.6563 C848.3281,236.2344 848.6563,235.8125 848.6563,235.4063 C848.6563,234.9375 848.2344,234.5313 847.7344,234.5313 C847.5,234.5313 847.2813,234.6094 847.0781,234.8125 C846.6406,235.25 846.6406,235.25 846.4688,235.3438 C846.0156,235.5781 845.375,235.7188 844.6094,235.7188 C842.6094,235.7188 841.3281,234.7031 841.3281,233.125 L841.3281,232.0781 C841.3281,230.375 842.5469,229.1719 844.25,229.1719 C844.8281,229.1719 845.4063,229.3125 845.875,229.5625 C846.3438,229.8281 846.5156,230.0156 846.5781,230.375 C846.7031,231.0469 846.9531,231.2969 847.4844,231.2969 C847.7656,231.2969 848.0469,231.1563 848.2344,230.9375 C848.3594,230.7656 848.4063,230.5938 848.4063,230.1563 L848.4063,228.7969 C848.4063,228.375 848.3906,228.2344 848.2656,228.0625 C848.0938,227.8125 847.8125,227.6563 847.4844,227.6563 C847.1719,227.6563 846.9688,227.7656 846.75,228.0313 C845.5781,227.5313 845.1406,227.4219 844.1875,227.4219 C841.5156,227.4219 839.5,229.4375 839.5,232.0625 L839.5,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="858.5" y="236.606">A</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="97" x="875.5" y="213"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="95" x="876.5" y="227.2001">int,std::string,bool</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="830.5" x2="968.5" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="830.5" x2="968.5" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="60.8047" id="C_0016489368620538237973" style="stroke: #A80036; stroke-width: 1.5;" width="214" x="1134" y="312.5"/>
<ellipse cx="1209.75" cy="328.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M1212.7188,334.1406 Q1212.1406,334.4375 1211.5,334.5781 Q1210.8594,334.7344 1210.1563,334.7344 Q1207.6563,334.7344 1206.3281,333.0938 Q1205.0156,331.4375 1205.0156,328.3125 Q1205.0156,325.1875 1206.3281,323.5313 Q1207.6563,321.875 1210.1563,321.875 Q1210.8594,321.875 1211.5,322.0313 Q1212.1563,322.1875 1212.7188,322.4844 L1212.7188,325.2031 Q1212.0938,324.625 1211.5,324.3594 Q1210.9063,324.0781 1210.2813,324.0781 Q1208.9375,324.0781 1208.25,325.1563 Q1207.5625,326.2188 1207.5625,328.3125 Q1207.5625,330.4063 1208.25,331.4844 Q1208.9375,332.5469 1210.2813,332.5469 Q1210.9063,332.5469 1211.5,332.2813 Q1212.0938,332 1212.7188,331.4219 L1212.7188,334.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="1230.25" y="332.6543">B</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="44" x="1307" y="309.5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="42" x="1308" y="321.6387">int... Is</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="1135" x2="1347" y1="344.5" y2="344.5"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="1135" x2="1347" y1="352.5" y2="352.5"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0000489063277971613593">
<rect codeLine="26" fill="#F1F1F1" height="48" id="C_0000489063277971613593" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="72" x="1004.5" y="216"/>
<ellipse cx="1019.5" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M1014.5,233.1563 C1014.5,235.6563 1016.6406,237.4688 1019.5625,237.4688 C1020.7969,237.4688 1021.9688,237.1719 1022.7188,236.6563 C1023.3281,236.2344 1023.6563,235.8125 1023.6563,235.4063 C1023.6563,234.9375 1023.2344,234.5313 1022.7344,234.5313 C1022.5,234.5313 1022.2813,234.6094 1022.0781,234.8125 C1021.6406,235.25 1021.6406,235.25 1021.4688,235.3438 C1021.0156,235.5781 1020.375,235.7188 1019.6094,235.7188 C1017.6094,235.7188 1016.3281,234.7031 1016.3281,233.125 L1016.3281,232.0781 C1016.3281,230.375 1017.5469,229.1719 1019.25,229.1719 C1019.8281,229.1719 1020.4063,229.3125 1020.875,229.5625 C1021.3438,229.8281 1021.5156,230.0156 1021.5781,230.375 C1021.7031,231.0469 1021.9531,231.2969 1022.4844,231.2969 C1022.7656,231.2969 1023.0469,231.1563 1023.2344,230.9375 C1023.3594,230.7656 1023.4063,230.5938 1023.4063,230.1563 L1023.4063,228.7969 C1023.4063,228.375 1023.3906,228.2344 1023.2656,228.0625 C1023.0938,227.8125 1022.8125,227.6563 1022.4844,227.6563 C1022.1719,227.6563 1021.9688,227.7656 1021.75,228.0313 C1020.5781,227.5313 1020.1406,227.4219 1019.1875,227.4219 C1016.5156,227.4219 1014.5,229.4375 1014.5,232.0625 L1014.5,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="1033.5" y="236.606">B</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="29" x="1050.5" y="213"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="27" x="1051.5" y="227.2001">3,2,1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="1005.5" x2="1075.5" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="1005.5" x2="1075.5" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L17" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L17" xlink:show="new" xlink:title="ints" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="1140" y="358.5"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="1142" y="360.5"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0000014232362483200599">
<rect codeLine="30" fill="#F1F1F1" height="48" id="C_0000014232362483200599" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="82" x="1111.5" y="216"/>
<ellipse cx="1126.5" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M1121.5,233.1563 C1121.5,235.6563 1123.6406,237.4688 1126.5625,237.4688 C1127.7969,237.4688 1128.9688,237.1719 1129.7188,236.6563 C1130.3281,236.2344 1130.6563,235.8125 1130.6563,235.4063 C1130.6563,234.9375 1130.2344,234.5313 1129.7344,234.5313 C1129.5,234.5313 1129.2813,234.6094 1129.0781,234.8125 C1128.6406,235.25 1128.6406,235.25 1128.4688,235.3438 C1128.0156,235.5781 1127.375,235.7188 1126.6094,235.7188 C1124.6094,235.7188 1123.3281,234.7031 1123.3281,233.125 L1123.3281,232.0781 C1123.3281,230.375 1124.5469,229.1719 1126.25,229.1719 C1126.8281,229.1719 1127.4063,229.3125 1127.875,229.5625 C1128.3438,229.8281 1128.5156,230.0156 1128.5781,230.375 C1128.7031,231.0469 1128.9531,231.2969 1129.4844,231.2969 C1129.7656,231.2969 1130.0469,231.1563 1130.2344,230.9375 C1130.3594,230.7656 1130.4063,230.5938 1130.4063,230.1563 L1130.4063,228.7969 C1130.4063,228.375 1130.3906,228.2344 1130.2656,228.0625 C1130.0938,227.8125 1129.8125,227.6563 1129.4844,227.6563 C1129.1719,227.6563 1128.9688,227.7656 1128.75,228.0313 C1127.5781,227.5313 1127.1406,227.4219 1126.1875,227.4219 C1123.5156,227.4219 1121.5,229.4375 1121.5,232.0625 L1121.5,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="1140.5" y="236.606">B</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="39" x="1157.5" y="213"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="37" x="1158.5" y="227.2001">1,1,1,1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="1112.5" x2="1192.5" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="1112.5" x2="1192.5" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L17" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L17" xlink:show="new" xlink:title="ints" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="188" x="1154" y="366.7104">ints : std::array&lt;int,sizeof...(Is)&gt;</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L20" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L20" xlink:show="new" xlink:title="C" xlink:type="simple">
<g id="elem_C_0001478239414632239754">
<rect codeLine="34" fill="#F1F1F1" height="48" id="C_0001478239414632239754" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="411" x="7" y="216"/>
<ellipse cx="22" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M17,233.1563 C17,235.6563 19.1406,237.4688 22.0625,237.4688 C23.2969,237.4688 24.4688,237.1719 25.2188,236.6563 C25.8281,236.2344 26.1563,235.8125 26.1563,235.4063 C26.1563,234.9375 25.7344,234.5313 25.2344,234.5313 C25,234.5313 24.7813,234.6094 24.5781,234.8125 C24.1406,235.25 24.1406,235.25 23.9688,235.3438 C23.5156,235.5781 22.875,235.7188 22.1094,235.7188 C20.1094,235.7188 18.8281,234.7031 18.8281,233.125 L18.8281,232.0781 C18.8281,230.375 20.0469,229.1719 21.75,229.1719 C22.3281,229.1719 22.9063,229.3125 23.375,229.5625 C23.8438,229.8281 24.0156,230.0156 24.0781,230.375 C24.2031,231.0469 24.4531,231.2969 24.9844,231.2969 C25.2656,231.2969 25.5469,231.1563 25.7344,230.9375 C25.8594,230.7656 25.9063,230.5938 25.9063,230.1563 L25.9063,228.7969 C25.9063,228.375 25.8906,228.2344 25.7656,228.0625 C25.5938,227.8125 25.3125,227.6563 24.9844,227.6563 C24.6719,227.6563 24.4688,227.7656 24.25,228.0313 C23.0781,227.5313 22.6406,227.4219 21.6875,227.4219 C19.0156,227.4219 17,229.4375 17,232.0625 L17,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="36" y="236.606">C</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="367" x="54" y="213"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="365" x="55" y="227.2001">std::map&lt;int,std::vector&lt;std::vector&lt;std::vector&lt;std::string&gt;&gt;&gt;&gt;,3,3,3</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="417" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="417" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L20" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L20" xlink:show="new" xlink:title="C" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="60.8047" id="C_0005022476627261205034" style="stroke: #A80036; stroke-width: 1.5;" width="207" x="149.5" y="312.5"/>
<ellipse cx="216.25" cy="328.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M219.2188,334.1406 Q218.6406,334.4375 218,334.5781 Q217.3594,334.7344 216.6563,334.7344 Q214.1563,334.7344 212.8281,333.0938 Q211.5156,331.4375 211.5156,328.3125 Q211.5156,325.1875 212.8281,323.5313 Q214.1563,321.875 216.6563,321.875 Q217.3594,321.875 218,322.0313 Q218.6563,322.1875 219.2188,322.4844 L219.2188,325.2031 Q218.5938,324.625 218,324.3594 Q217.4063,324.0781 216.7813,324.0781 Q215.4375,324.0781 214.75,325.1563 Q214.0625,326.2188 214.0625,328.3125 Q214.0625,330.4063 214.75,331.4844 Q215.4375,332.5469 216.7813,332.5469 Q217.4063,332.5469 218,332.2813 Q218.5938,332 219.2188,331.4219 L219.2188,334.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="236.75" y="332.6543">C</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="55" x="304.5" y="309.5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="53" x="305.5" y="321.6387">T,int... Is</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="150.5" x2="355.5" y1="344.5" y2="344.5"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="150.5" x2="355.5" y1="352.5" y2="352.5"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L24" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L24" xlink:show="new" xlink:title="R" xlink:type="simple">
<g id="elem_C_0000559263385732885469">
<rect codeLine="38" fill="#F1F1F1" height="131.9996" id="C_0000559263385732885469" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="513" x="643" y="7"/>
<ellipse cx="890.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M885.25,24.1563 C885.25,26.6563 887.3906,28.4688 890.3125,28.4688 C891.5469,28.4688 892.7188,28.1719 893.4688,27.6563 C894.0781,27.2344 894.4063,26.8125 894.4063,26.4063 C894.4063,25.9375 893.9844,25.5313 893.4844,25.5313 C893.25,25.5313 893.0313,25.6094 892.8281,25.8125 C892.3906,26.25 892.3906,26.25 892.2188,26.3438 C891.7656,26.5781 891.125,26.7188 890.3594,26.7188 C888.3594,26.7188 887.0781,25.7031 887.0781,24.125 L887.0781,23.0781 C887.0781,21.375 888.2969,20.1719 890,20.1719 C890.5781,20.1719 891.1563,20.3125 891.625,20.5625 C892.0938,20.8281 892.2656,21.0156 892.3281,21.375 C892.4531,22.0469 892.7031,22.2969 893.2344,22.2969 C893.5156,22.2969 893.7969,22.1563 893.9844,21.9375 C894.1094,21.7656 894.1563,21.5938 894.1563,21.1563 L894.1563,19.7969 C894.1563,19.375 894.1406,19.2344 894.0156,19.0625 C893.8438,18.8125 893.5625,18.6563 893.2344,18.6563 C892.9219,18.6563 892.7188,18.7656 892.5,19.0313 C891.3281,18.5313 890.8906,18.4219 889.9375,18.4219 C887.2656,18.4219 885.25,20.4375 885.25,23.0625 L885.25,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="910.75" y="27.606">R</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="644" x2="1155" y1="39" y2="39"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="644" x2="1155" y1="47" y2="47"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L25" target="_top" title="a1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L25" xlink:show="new" xlink:title="a1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="649" y="55.9"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="651" y="57.9"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L25" target="_top" title="a1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L25" xlink:show="new" xlink:title="a1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="165" x="663" y="64.0059">a1 : A&lt;int,std::string,float&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L26" target="_top" title="a2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L26" xlink:show="new" xlink:title="a2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="649" y="72.6999"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="651" y="74.6999"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L26" target="_top" title="a2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L26" xlink:show="new" xlink:title="a2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="165" x="663" y="80.8059">a2 : A&lt;int,std::string,bool&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L28" target="_top" title="b1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L28" xlink:show="new" xlink:title="b1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="649" y="89.4998"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="651" y="91.4998"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L28" target="_top" title="b1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L28" xlink:show="new" xlink:title="b1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="85" x="663" y="97.6058">b1 : B&lt;3,2,1&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L29" target="_top" title="b2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L29" xlink:show="new" xlink:title="b2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="649" y="106.2997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="651" y="108.2997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L29" target="_top" title="b2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L29" xlink:show="new" xlink:title="b2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="97" x="663" y="114.4057">b2 : B&lt;1,1,1,1&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L33" target="_top" title="c1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L33" xlink:show="new" xlink:title="c1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="649" y="123.0997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="651" y="125.0997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L33" target="_top" title="c1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L33" xlink:show="new" xlink:title="c1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="487" x="663" y="131.2057">c1 : C&lt;std::map&lt;int,std::vector&lt;std::vector&lt;std::vector&lt;std::string&gt;&gt;&gt;&gt;,3,3,3&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L21" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L21" xlink:show="new" xlink:title="ints" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="155.5" y="358.5"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="157.5" y="360.5"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L21" target="_top" title="ints" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L21" xlink:show="new" xlink:title="ints" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="181" x="169.5" y="366.7104">ints : std::array&lt;T,sizeof...(Is)&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="48" id="C_0002295779191536043659" style="stroke: #A80036; stroke-width: 1.5;" width="158" x="758" y="197"/>
<ellipse cx="773" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M775.9688,218.6406 Q775.3906,218.9375 774.75,219.0781 Q774.1094,219.2344 773.4063,219.2344 Q770.9063,219.2344 769.5781,217.5938 Q768.2656,215.9375 768.2656,212.8125 Q768.2656,209.6875 769.5781,208.0313 Q770.9063,206.375 773.4063,206.375 Q774.1094,206.375 774.75,206.5313 Q775.4063,206.6875 775.9688,206.9844 L775.9688,209.7031 Q775.3438,209.125 774.75,208.8594 Q774.1563,208.5781 773.5313,208.5781 Q772.1875,208.5781 771.5,209.6563 Q770.8125,210.7188 770.8125,212.8125 Q770.8125,214.9063 771.5,215.9844 Q772.1875,217.0469 773.5313,217.0469 Q774.1563,217.0469 774.75,216.7813 Q775.3438,216.5 775.9688,215.9219 L775.9688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="787" y="217.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="116" x="803" y="194"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="114" x="804" y="206.1387">int,std::string,float</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="759" x2="915" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="759" x2="915" y1="237" y2="237"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="48" id="C_0002395729448786407708" style="stroke: #A80036; stroke-width: 1.5;" width="157" x="951.5" y="197"/>
<ellipse cx="966.5" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M969.4688,218.6406 Q968.8906,218.9375 968.25,219.0781 Q967.6094,219.2344 966.9063,219.2344 Q964.4063,219.2344 963.0781,217.5938 Q961.7656,215.9375 961.7656,212.8125 Q961.7656,209.6875 963.0781,208.0313 Q964.4063,206.375 966.9063,206.375 Q967.6094,206.375 968.25,206.5313 Q968.9063,206.6875 969.4688,206.9844 L969.4688,209.7031 Q968.8438,209.125 968.25,208.8594 Q967.6563,208.5781 967.0313,208.5781 Q965.6875,208.5781 965,209.6563 Q964.3125,210.7188 964.3125,212.8125 Q964.3125,214.9063 965,215.9844 Q965.6875,217.0469 967.0313,217.0469 Q967.6563,217.0469 968.25,216.7813 Q968.8438,216.5 969.4688,215.9219 L969.4688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="980.5" y="217.1543">A</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="115" x="996.5" y="194"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="113" x="997.5" y="206.1387">int,std::string,bool</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="952.5" x2="1107.5" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="952.5" x2="1107.5" y1="237" y2="237"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="48" id="C_0003912506223772908750" style="stroke: #A80036; stroke-width: 1.5;" width="76" x="1144" y="197"/>
<ellipse cx="1159" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M1161.9688,218.6406 Q1161.3906,218.9375 1160.75,219.0781 Q1160.1094,219.2344 1159.4063,219.2344 Q1156.9063,219.2344 1155.5781,217.5938 Q1154.2656,215.9375 1154.2656,212.8125 Q1154.2656,209.6875 1155.5781,208.0313 Q1156.9063,206.375 1159.4063,206.375 Q1160.1094,206.375 1160.75,206.5313 Q1161.4063,206.6875 1161.9688,206.9844 L1161.9688,209.7031 Q1161.3438,209.125 1160.75,208.8594 Q1160.1563,208.5781 1159.5313,208.5781 Q1158.1875,208.5781 1157.5,209.6563 Q1156.8125,210.7188 1156.8125,212.8125 Q1156.8125,214.9063 1157.5,215.9844 Q1158.1875,217.0469 1159.5313,217.0469 Q1160.1563,217.0469 1160.75,216.7813 Q1161.3438,216.5 1161.9688,215.9219 L1161.9688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="1173" y="217.1543">B</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="34" x="1189" y="194"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="32" x="1190" y="206.1387">3,2,1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="1145" x2="1219" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="1145" x2="1219" y1="237" y2="237"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="48" id="C_0000113858899865604792" style="stroke: #A80036; stroke-width: 1.5;" width="88" x="1255" y="197"/>
<ellipse cx="1270" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M1272.9688,218.6406 Q1272.3906,218.9375 1271.75,219.0781 Q1271.1094,219.2344 1270.4063,219.2344 Q1267.9063,219.2344 1266.5781,217.5938 Q1265.2656,215.9375 1265.2656,212.8125 Q1265.2656,209.6875 1266.5781,208.0313 Q1267.9063,206.375 1270.4063,206.375 Q1271.1094,206.375 1271.75,206.5313 Q1272.4063,206.6875 1272.9688,206.9844 L1272.9688,209.7031 Q1272.3438,209.125 1271.75,208.8594 Q1271.1563,208.5781 1270.5313,208.5781 Q1269.1875,208.5781 1268.5,209.6563 Q1267.8125,210.7188 1267.8125,212.8125 Q1267.8125,214.9063 1268.5,215.9844 Q1269.1875,217.0469 1270.5313,217.0469 Q1271.1563,217.0469 1271.75,216.7813 Q1272.3438,216.5 1272.9688,215.9219 L1272.9688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="1284" y="217.1543">B</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="46" x="1300" y="194"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="44" x="1301" y="206.1387">1,1,1,1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="1256" x2="1342" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="1256" x2="1342" y1="237" y2="237"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L20" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L20" xlink:show="new" xlink:title="C" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="48" id="C_0011825915317057918032" style="stroke: #A80036; stroke-width: 1.5;" width="494" x="6" y="197"/>
<ellipse cx="21" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M23.9688,218.6406 Q23.3906,218.9375 22.75,219.0781 Q22.1094,219.2344 21.4063,219.2344 Q18.9063,219.2344 17.5781,217.5938 Q16.2656,215.9375 16.2656,212.8125 Q16.2656,209.6875 17.5781,208.0313 Q18.9063,206.375 21.4063,206.375 Q22.1094,206.375 22.75,206.5313 Q23.4063,206.6875 23.9688,206.9844 L23.9688,209.7031 Q23.3438,209.125 22.75,208.8594 Q22.1563,208.5781 21.5313,208.5781 Q20.1875,208.5781 19.5,209.6563 Q18.8125,210.7188 18.8125,212.8125 Q18.8125,214.9063 19.5,215.9844 Q20.1875,217.0469 21.5313,217.0469 Q22.1563,217.0469 22.75,216.7813 Q23.3438,216.5 23.9688,215.9219 L23.9688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="35" y="217.1543">C</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="452" x="51" y="194"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="450" x="52" y="206.1387">std::map&lt;int,std::vector&lt;std::vector&lt;std::vector&lt;std::string&gt;&gt;&gt;&gt;,3,3,3</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="499" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="499" y1="237" y2="237"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L24" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L24" xlink:show="new" xlink:title="R" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1utp2iqmy6bb3)" height="112.0234" id="C_0004474107085863083753" style="stroke: #A80036; stroke-width: 1.5;" width="493" x="783.5" y="8"/>
<ellipse cx="1021.75" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M1024.7188,29.6406 Q1024.1406,29.9375 1023.5,30.0781 Q1022.8594,30.2344 1022.1563,30.2344 Q1019.6563,30.2344 1018.3281,28.5938 Q1017.0156,26.9375 1017.0156,23.8125 Q1017.0156,20.6875 1018.3281,19.0313 Q1019.6563,17.375 1022.1563,17.375 Q1022.8594,17.375 1023.5,17.5313 Q1024.1563,17.6875 1024.7188,17.9844 L1024.7188,20.7031 Q1024.0938,20.125 1023.5,19.8594 Q1022.9063,19.5781 1022.2813,19.5781 Q1020.9375,19.5781 1020.25,20.6563 Q1019.5625,21.7188 1019.5625,23.8125 Q1019.5625,25.9063 1020.25,26.9844 Q1020.9375,28.0469 1022.2813,28.0469 Q1022.9063,28.0469 1023.5,27.7813 Q1024.0938,27.5 1024.7188,26.9219 L1024.7188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="1042.25" y="28.1543">R</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="784.5" x2="1275.5" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="784.5" x2="1275.5" y1="48" y2="48"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L25" target="_top" title="a1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L25" xlink:show="new" xlink:title="a1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="789.5" y="54"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="791.5" y="56"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L25" target="_top" title="a1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L25" xlink:show="new" xlink:title="a1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="157" x="803.5" y="62.2104">a1 : A&lt;int,std::string,float&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L26" target="_top" title="a2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L26" xlink:show="new" xlink:title="a2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="789.5" y="66.8047"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="791.5" y="68.8047"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L26" target="_top" title="a2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L26" xlink:show="new" xlink:title="a2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="156" x="803.5" y="75.0151">a2 : A&lt;int,std::string,bool&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L28" target="_top" title="b1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L28" xlink:show="new" xlink:title="b1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="789.5" y="79.6094"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="791.5" y="81.6094"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L28" target="_top" title="b1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L28" xlink:show="new" xlink:title="b1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="81" x="803.5" y="87.8198">b1 : B&lt;3,2,1&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L29" target="_top" title="b2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L29" xlink:show="new" xlink:title="b2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="789.5" y="92.4141"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="791.5" y="94.4141"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L29" target="_top" title="b2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L29" xlink:show="new" xlink:title="b2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="92" x="803.5" y="100.6245">b2 : B&lt;1,1,1,1&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L33" target="_top" title="c1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L33" xlink:show="new" xlink:title="c1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="789.5" y="105.2188"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="791.5" y="107.2188"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L33" target="_top" title="c1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L33" xlink:show="new" xlink:title="c1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="467" x="803.5" y="113.4292">c1 : C&lt;std::map&lt;int,std::vector&lt;std::vector&lt;std::vector&lt;std::string&gt;&gt;&gt;&gt;,3,3,3&gt;</text>
</a>
<path d="M535.5,208.5 L535.5,217 L500.12,221 L535.5,225 L535.5,233.6328 A0,0 0 0 0 535.5,233.6328 L722.5,233.6328 A0,0 0 0 0 722.5,233.6328 L722.5,218.5 L712.5,208.5 L535.5,208.5 A0,0 0 0 0 535.5,208.5 " fill="#FBFB77" filter="url(#f1utp2iqmy6bb3)" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M712.5,208.5 L712.5,218.5 L722.5,218.5 L712.5,208.5 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="166" x="541.5" y="225.5669">Long template annotation</text>
<path d="M851.85,245.14 C859.85,257.61 870.07,273.55 879.91,288.88 " fill="none" id="C_0002295779191536043659-&gt;C_0014186399120185058260" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="885.81,285.1,890.71,305.71,874.02,292.66,885.81,285.1" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M1007.63,245.14 C995.06,258.14 978.84,274.92 963.44,290.85 " fill="none" id="C_0002395729448786407708-&gt;C_0014186399120185058260" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="968.01,296.2,949.08,305.71,957.95,286.47,968.01,296.2" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M1193.38,245.14 C1200.19,258.99 1209.11,277.13 1217.38,293.96 " fill="none" id="C_0003912506223772908750-&gt;C_0016489368620538237973" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="1223.76,291.07,1226.3,312.11,1211.2,297.25,1223.76,291.07" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M1287.82,245.14 C1281.12,258.99 1272.35,277.13 1264.22,293.96 " fill="none" id="C_0000113858899865604792-&gt;C_0016489368620538237973" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="1270.45,297.14,1255.45,312.11,1257.85,291.05,1270.45,297.14" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M253,245.14 C253,258.47 253,275.77 253,292.05 " fill="none" id="C_0011825915317057918032-&gt;C_0005022476627261205034" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="260,292.11,253,312.11,246,292.11,260,292.11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M950.89,128.54 C920.8,152.7 888.38,178.73 865.86,196.83 " fill="none" id="C_0004474107085863083753&lt;-C_0002295779191536043659" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="961.41,120.08,954.2275,120.722,952.0576,127.5988,959.2401,126.9569,961.41,120.08" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="925" y="156.0664"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="935" y="163.0669">a1</text>
<path d="M1030,133.26 C1030,155.95 1030,179.72 1030,196.62 " fill="none" id="C_0004474107085863083753&lt;-C_0002395729448786407708" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="1030,120.08,1026,126.08,1030,132.08,1034,126.08,1030,120.08" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="1033" y="156.0664"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="1043" y="163.0669">a2</text>
<path d="M1093.21,129.46 C1116.56,153.27 1141.57,178.77 1159.08,196.62 " fill="none" id="C_0004474107085863083753&lt;-C_0003912506223772908750" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="1084.02,120.08,1085.3627,127.165,1092.4191,128.6506,1091.0764,121.5656,1084.02,120.08" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="1132" y="156.0664"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="1142" y="163.0669">b1</text>
<path d="M1136.98,126.64 C1179.82,151.33 1226.56,178.26 1258.78,196.83 " fill="none" id="C_0004474107085863083753&lt;-C_0000113858899865604792" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="1125.6,120.08,1128.8056,126.5394,1136.001,126.0649,1132.7955,119.6054,1125.6,120.08" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="1207" y="156.0664"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="1217" y="163.0669">b2</text>
<path d="M770.25,116.82 C634.09,143.98 474.14,175.89 368.56,196.95 " fill="none" id="C_0004474107085863083753&lt;-C_0011825915317057918032" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="783.35,114.2,776.6838,111.4501,771.5815,116.5458,778.2477,119.2957,783.35,114.2" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="598" y="156.0664"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="15" x="608" y="163.0669">c1</text>
<g id="elem_GMN21">
<path d="M453,227.2 L453,236 L418.48,240 L453,244 L453,252.8 A0,0 0 0 0 453,252.8 L620,252.8 A0,0 0 0 0 620,252.8 L620,237.2 L610,227.2 L453,227.2 A0,0 0 0 0 453,227.2 " fill="#FEFFDD" style="stroke:#181818;stroke-width:0.5;"/>
<path d="M610,227.2 L610,237.2 L620,237.2 L610,227.2 " fill="#FEFFDD" style="stroke:#181818;stroke-width:0.5;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="146" x="459" y="244.277">Long template annotation</text>
</g>
<g id="link_C_0000286972398942005457_C_0001773299890023132282">
<path codeLine="46" d="M737.67,264.29 C747.25,281.24 751.6106,288.9512 762.8906,308.9012 " fill="none" id="C_0000286972398942005457-to-C_0001773299890023132282" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="771.75,324.57,768.1136,305.9481,757.6677,311.8543,771.75,324.57" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000299466181098300963_C_0001773299890023132282">
<path codeLine="47" d="M879.75,264.29 C865.37,281.24 857.1827,290.8924 840.2627,310.8424 " fill="none" id="C_0000299466181098300963-to-C_0001773299890023132282" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="828.62,324.57,844.8386,314.7233,835.6868,306.9615,828.62,324.57" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000489063277971613593_C_0002061171077567279746">
<path codeLine="48" d="M1051.03,264.29 C1059.84,283.76 1065.072,295.3196 1074.792,316.8096 " fill="none" id="C_0000489063277971613593-to-C_0002061171077567279746" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="1082.21,333.21,1080.2588,314.3369,1069.3252,319.2822,1082.21,333.21" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000014232362483200599_C_0002061171077567279746">
<path codeLine="49" d="M1141.97,264.29 C1133.16,283.76 1127.928,295.3196 1118.208,316.8096 " fill="none" id="C_0000014232362483200599-to-C_0002061171077567279746" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="1110.79,333.21,1123.6748,319.2822,1112.7412,314.3369,1110.79,333.21" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001478239414632239754_C_0000627809578407650629">
<path codeLine="50" d="M212.5,264.29 C212.5,283.76 212.5,293.72 212.5,315.21 " fill="none" id="C_0001478239414632239754-to-C_0000627809578407650629" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="212.5,333.21,218.5,315.21,206.5,315.21,212.5,333.21" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000559263385732885469_C_0000286972398942005457">
<path codeLine="51" d="M821.3498,147.683 C792.7298,174.673 770.13,195.98 749.09,215.81 " fill="none" id="C_0000559263385732885469-backto-C_0000286972398942005457" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="830.08,139.45,822.9705,140.6564,821.3498,147.683,828.4592,146.4766,830.08,139.45" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="799.5" y="175.3"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="14" x="809.5" y="182.077">a1</text>
</g>
<g id="link_C_0000559263385732885469_C_0000299466181098300963">
<path codeLine="52" d="M899.5,151.21 C899.5,178.24 899.5,195.85 899.5,215.74 " fill="none" id="C_0000559263385732885469-backto-C_0000299466181098300963" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="899.5,139.21,895.5,145.21,899.5,151.21,903.5,145.21,899.5,139.21" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="902.5" y="175.3"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="14" x="912.5" y="182.077">a2</text>
</g>
<g id="link_C_0000559263385732885469_C_0000489063277971613593">
<path codeLine="53" d="M963.0242,148.3342 C986.1142,175.3642 1003.63,195.85 1020.63,215.74 " fill="none" id="C_0000559263385732885469-backto-C_0000489063277971613593" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="955.23,139.21,956.0857,146.3702,963.0242,148.3342,962.1685,141.174,955.23,139.21" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="998.5" y="175.3"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="14" x="1008.5" y="182.077">b1</text>
</g>
<g id="link_C_0000559263385732885469_C_0000014232362483200599">
<path codeLine="54" d="M1009.9116,146.0048 C1051.1616,172.9048 1086.23,195.78 1116.64,215.62 " fill="none" id="C_0000559263385732885469-backto-C_0000014232362483200599" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="999.86,139.45,1002.7008,146.0779,1009.9116,146.0048,1007.0707,139.3769,999.86,139.45" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="1073.5" y="175.3"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="14" x="1083.5" y="182.077">b2</text>
</g>
<g id="link_C_0000559263385732885469_C_0001478239414632239754">
<path codeLine="55" d="M631.042,138.4731 C514.992,166.3531 396.48,194.81 310.03,215.58 " fill="none" id="C_0000559263385732885469-backto-C_0001478239414632239754" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="642.71,135.67,635.9416,133.1822,631.042,138.4731,637.8104,140.9609,642.71,135.67" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="497.5" y="175.3"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="14" x="507.5" y="182.077">c1</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -1,65 +1,70 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1342.828125 459" style="max-width: 1342.83px; background-color: white;" width="1342.828125" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M101.28125,300L101.28125,304.1666666666667C101.28125,308.3333333333333,101.28125,316.6666666666667,107.8086972268212,325C114.33614445364238,333.3333333333333,127.39103890728477,341.6666666666667,133.91848613410596,345.8333333333333L140.44593336092714,350"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M337.8359375,300L337.8359375,304.1666666666667C337.8359375,308.3333333333333,337.8359375,316.6666666666667,331.30849027317885,325C324.78104304635764,333.3333333333333,311.7261485927152,341.6666666666667,305.19870136589407,345.8333333333333L298.67125413907286,350"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M521.5234375,300L521.5234375,304.1666666666667C521.5234375,308.3333333333333,521.5234375,316.6666666666667,526.9870136589403,326.8333333333333C532.4505898178808,337,543.3777421357617,349,548.841318294702,355L554.3048944536424,361"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M659.0234375,300L659.0234375,304.1666666666667C659.0234375,308.3333333333333,659.0234375,316.6666666666667,653.5598613410597,326.8333333333333C648.0962851821192,337,637.1691328642383,349,631.705556705298,355L626.2419805463576,361"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M1045.46875,300L1045.46875,304.1666666666667C1045.46875,308.3333333333333,1045.46875,316.6666666666667,1045.46875,326.8333333333333C1045.46875,337,1045.46875,349,1045.46875,355L1045.46875,361"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M236.9921875,171.05513004034134L214.37369791666666,177.37927503361777C191.75520833333334,183.70342002689424,146.51822916666666,196.3517100134471,123.89973958333333,208.34252167339022C101.28125,220.33333333333334,101.28125,231.66666666666666,101.28125,237.33333333333334L101.28125,243"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M390.9880651595745,175L382.1293772163121,180.66666666666666C373.27068927304964,186.33333333333334,355.55331338652485,197.66666666666666,346.6946254432624,209C337.8359375,220.33333333333334,337.8359375,231.66666666666666,337.8359375,237.33333333333334L337.8359375,243"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M521.5234375,175L521.5234375,180.66666666666666C521.5234375,186.33333333333334,521.5234375,197.66666666666666,521.5234375,209C521.5234375,220.33333333333334,521.5234375,231.66666666666666,521.5234375,237.33333333333334L521.5234375,243"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M619.2362034574468,175L625.8674091312056,180.66666666666666C632.4986148049645,186.33333333333334,645.7610261524823,197.66666666666666,652.3922318262411,209C659.0234375,220.33333333333334,659.0234375,231.66666666666666,659.0234375,237.33333333333334L659.0234375,243"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M806.0546875,155.30899127711922L845.95703125,164.25749273093268C885.859375,173.20599418474615,965.6640625,191.1029970923731,1005.56640625,205.71816521285322C1045.46875,220.33333333333334,1045.46875,231.66666666666666,1045.46875,237.33333333333334L1045.46875,243"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M101.28125,300L101.28125,304.1666666666667C101.28125,308.3333333333333,101.28125,316.6666666666667,105.27996766846813,323.3858355657767C109.27868533693625,330.1050044648867,117.27612067387251,335.2100089297734,121.27483834234063,337.76251116221675L125.27355601080875,340.31501339466007"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M337.8359375,300L337.8359375,304.1666666666667C337.8359375,308.3333333333333,337.8359375,316.6666666666667,333.83721983153185,323.3858355657767C329.83850216306377,330.1050044648867,321.8410668261275,335.2100089297734,317.8423491576594,337.76251116221675L313.84363148919124,340.31501339466007"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M521.5234375,300L521.5234375,304.1666666666667C521.5234375,308.3333333333333,521.5234375,316.6666666666667,524.9671680465517,324.61517560627374C528.4108985931034,332.5636845458808,535.2983596862068,340.12736909176164,538.7420902327585,343.90921136470206L542.1858207793102,347.6910536376425"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M659.0234375,300L659.0234375,304.1666666666667C659.0234375,308.3333333333333,659.0234375,316.6666666666667,655.5797069534483,324.61517560627374C652.1359764068966,332.5636845458808,645.2485153137932,340.12736909176164,641.8047847672415,343.90921136470206L638.3610542206898,347.6910536376425"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M1045.46875,300L1045.46875,304.1666666666667C1045.46875,308.3333333333333,1045.46875,316.6666666666667,1045.46875,323.8333333333333C1045.46875,331,1045.46875,337,1045.46875,340L1045.46875,343"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M219.65703899316415,175.9020492934285L199.92774082763677,181.4183744111904C180.19844266210944,186.93469952895234,140.73984633105474,197.96734976447615,121.01054816552737,209.15034154890475C101.28125,220.33333333333334,101.28125,231.66666666666666,101.28125,237.33333333333334L101.28125,243"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M375.8249315866398,184.69945257472511L369.4934325721999,188.7495438122709C363.16193355775994,192.79963504981674,350.49893552887994,200.89981752490837,344.16743651443994,210.61657542912084C337.8359375,220.33333333333334,337.8359375,231.66666666666666,337.8359375,237.33333333333334L337.8359375,243"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M521.5234375,193L521.5234375,195.66666666666666C521.5234375,198.33333333333334,521.5234375,203.66666666666666,521.5234375,212C521.5234375,220.33333333333334,521.5234375,231.66666666666666,521.5234375,237.33333333333334L521.5234375,243"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M632.9203695065175,186.69374189647863L637.2708808387646,190.41145158039885C641.6213921710117,194.1291612643191,650.3224148355058,201.56458063215953,654.672926167753,210.9489569827464C659.0234375,220.33333333333334,659.0234375,231.66666666666666,659.0234375,237.33333333333334L659.0234375,243"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M823.6184420318964,159.24783968030601L860.5934933599137,167.53986640025502C897.568544687931,175.831893120204,971.5186473439654,192.41594656010201,1008.4936986719828,206.37463994671768C1045.46875,220.33333333333334,1045.46875,231.66666666666666,1045.46875,237.33333333333334L1045.46875,243"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -174,8 +179,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(219.55859375, 400.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11">
<g title="A" id="classId-C_0014186399120185058260-0" class="node default clickable">
<a transform="translate(219.55859375, 400.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11">
<g title="A" id="classId-C_0001773299890023132282-0" class="node default clickable">
<rect height="101" width="206.203125" y="-50.5" x="-103.1015625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="103.1015625" x1="-103.1015625" class="divider"/>
<line y2="39.5" y1="39.5" x2="103.1015625" x1="-103.1015625" class="divider"/>
@@ -203,8 +208,8 @@
</g>
</g>
</a>
<a transform="translate(590.2734375, 400.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16">
<g title="B" id="classId-C_0016489368620538237973-1" class="node default clickable">
<a transform="translate(590.2734375, 400.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16">
<g title="B" id="classId-C_0002061171077567279746-1" class="node default clickable">
<rect height="79" width="243.515625" y="-39.5" x="-121.7578125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="121.7578125" x1="-121.7578125" class="divider"/>
<line y2="28.5" y1="28.5" x2="121.7578125" x1="-121.7578125" class="divider"/>
@@ -227,8 +232,8 @@
</g>
</g>
</a>
<a transform="translate(1045.46875, 400.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L20">
<g title="C" id="classId-C_0005022476627261205034-2" class="node default clickable">
<a transform="translate(1045.46875, 400.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L20">
<g title="C" id="classId-C_0000627809578407650629-2" class="node default clickable">
<rect height="79" width="234.625" y="-39.5" x="-117.3125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="117.3125" x1="-117.3125" class="divider"/>
<line y2="28.5" y1="28.5" x2="117.3125" x1="-117.3125" class="divider"/>
@@ -251,8 +256,8 @@
</g>
</g>
</a>
<a transform="translate(101.28125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11">
<g title="A" id="classId-C_0002295779191536043659-3" class="node default clickable">
<a transform="translate(101.28125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11">
<g title="A" id="classId-C_0000286972398942005457-3" class="node default clickable">
<rect height="57" width="186.5625" y="-28.5" x="-93.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="93.28125" x1="-93.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="93.28125" x1="-93.28125" class="divider"/>
@@ -270,8 +275,8 @@
</g>
</g>
</a>
<a transform="translate(337.8359375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L11">
<g title="A" id="classId-C_0002395729448786407708-4" class="node default clickable">
<a transform="translate(337.8359375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L11">
<g title="A" id="classId-C_0000299466181098300963-4" class="node default clickable">
<rect height="57" width="186.546875" y="-28.5" x="-93.2734375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="93.2734375" x1="-93.2734375" class="divider"/>
<line y2="17.5" y1="17.5" x2="93.2734375" x1="-93.2734375" class="divider"/>
@@ -289,8 +294,8 @@
</g>
</g>
</a>
<a transform="translate(521.5234375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16">
<g title="B" id="classId-C_0003912506223772908750-5" class="node default clickable">
<a transform="translate(521.5234375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16">
<g title="B" id="classId-C_0000489063277971613593-5" class="node default clickable">
<rect height="57" width="80.828125" y="-28.5" x="-40.4140625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="40.4140625" x1="-40.4140625" class="divider"/>
<line y2="17.5" y1="17.5" x2="40.4140625" x1="-40.4140625" class="divider"/>
@@ -308,8 +313,8 @@
</g>
</g>
</a>
<a transform="translate(659.0234375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L16">
<g title="B" id="classId-C_0000113858899865604792-6" class="node default clickable">
<a transform="translate(659.0234375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L16">
<g title="B" id="classId-C_0000014232362483200599-6" class="node default clickable">
<rect height="57" width="94.171875" y="-28.5" x="-47.0859375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="47.0859375" x1="-47.0859375" class="divider"/>
<line y2="17.5" y1="17.5" x2="47.0859375" x1="-47.0859375" class="divider"/>
@@ -327,8 +332,8 @@
</g>
</g>
</a>
<a transform="translate(1045.46875, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L20">
<g title="C" id="classId-C_0011825915317057918032-7" class="node default clickable">
<a transform="translate(1045.46875, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L20">
<g title="C" id="classId-C_0001478239414632239754-7" class="node default clickable">
<rect height="57" width="578.71875" y="-28.5" x="-289.359375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="289.359375" x1="-289.359375" class="divider"/>
<line y2="17.5" y1="17.5" x2="289.359375" x1="-289.359375" class="divider"/>
@@ -346,8 +351,8 @@
</g>
</g>
</a>
<a transform="translate(521.5234375, 91.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00012/t00012.cc#L24">
<g title="R" id="classId-C_0004474107085863083753-8" class="node default clickable">
<a transform="translate(521.5234375, 91.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00012/t00012.cc#L24">
<g title="R" id="classId-C_0000559263385732885469-8" class="node default clickable">
<rect height="167" width="569.0625" y="-83.5" x="-284.53125" class="outer title-state"/>
<line y2="-53.5" y1="-53.5" x2="284.53125" x1="-284.53125" class="divider"/>
<line y2="72.5" y1="72.5" x2="284.53125" x1="-284.53125" class="divider"/>

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

@@ -96,7 +96,7 @@ private:
{
"bases": [],
"display_name": "ABCD::F<T>",
"id": "7622165842529918021",
"id": "952770730316239752",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -138,7 +138,7 @@ private:
{
"bases": [],
"display_name": "ABCD::F<int>",
"id": "18433723755227114832",
"id": "2304215469403389354",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -166,8 +166,8 @@ private:
},
{
"bases": [],
"display_name": "A",
"id": "4159963889899419835",
"display_name": "clanguml::t00013::A",
"id": "519995486237427479",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -201,8 +201,8 @@ private:
},
{
"bases": [],
"display_name": "B",
"id": "9419901228781203525",
"display_name": "clanguml::t00013::B",
"id": "1177487653597650440",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -236,8 +236,8 @@ private:
},
{
"bases": [],
"display_name": "C",
"id": "8225966544585026866",
"display_name": "clanguml::t00013::C",
"id": "1028245818073128358",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -271,8 +271,8 @@ private:
},
{
"bases": [],
"display_name": "D",
"id": "3274990964975455007",
"display_name": "clanguml::t00013::D",
"id": "409373870621931875",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -295,7 +295,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "print",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -323,7 +322,6 @@ private:
"line": 30,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -340,8 +338,8 @@ private:
},
{
"bases": [],
"display_name": "E<T>",
"id": "6912447950043513847",
"display_name": "clanguml::t00013::E<T>",
"id": "864055993755439230",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -382,8 +380,8 @@ private:
},
{
"bases": [],
"display_name": "G<T,Args...>",
"id": "1647416153016220941",
"display_name": "clanguml::t00013::G<T,Args...>",
"id": "205927019127027617",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -442,8 +440,8 @@ private:
},
{
"bases": [],
"display_name": "E<int>",
"id": "15819890550396525783",
"display_name": "clanguml::t00013::E<int>",
"id": "1977486318799565722",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -471,8 +469,8 @@ private:
},
{
"bases": [],
"display_name": "G<int,float,std::string>",
"id": "12213866196910576114",
"display_name": "clanguml::t00013::G<int,float,std::string>",
"id": "1526733274613822014",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -512,8 +510,8 @@ private:
},
{
"bases": [],
"display_name": "E<std::string>",
"id": "4252185767324461489",
"display_name": "clanguml::t00013::E<std::string>",
"id": "531523220915557686",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -541,8 +539,8 @@ private:
},
{
"bases": [],
"display_name": "R",
"id": "17589493410844590756",
"display_name": "clanguml::t00013::R",
"id": "2198686676355573844",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -577,7 +575,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "get_a",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -605,12 +602,10 @@ private:
"line": 45,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_b",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -638,12 +633,10 @@ private:
"line": 46,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_const_b",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -671,12 +664,10 @@ private:
"line": 47,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_c",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -704,12 +695,10 @@ private:
"line": 48,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_d",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -737,12 +726,10 @@ private:
"line": 49,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_d2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -770,12 +757,10 @@ private:
"line": 51,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_int_e",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -803,12 +788,10 @@ private:
"line": 54,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_int_e2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -836,12 +819,10 @@ private:
"line": 55,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_int_f",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -869,12 +850,10 @@ private:
"line": 58,
"translation_unit": "t00013.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "public",
"display_name": "get_e<T>",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -896,19 +875,10 @@ private:
"type": "E<T>"
}
],
"template_parameters": [
{
"is_variadic": false,
"kind": "template_type",
"name": "T",
"template_parameters": []
}
],
"type": "T"
},
{
"access": "public",
"display_name": "get_f<T>",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -930,14 +900,6 @@ private:
"type": "const F<T> &"
}
],
"template_parameters": [
{
"is_variadic": false,
"kind": "template_type",
"name": "T",
"template_parameters": []
}
],
"type": "T"
}
],
@@ -954,110 +916,97 @@ private:
}
],
"name": "t00013_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "7622165842529918021",
"source": "18433723755227114832",
"destination": "952770730316239752",
"source": "2304215469403389354",
"type": "instantiation"
},
{
"access": "public",
"destination": "17589493410844590756",
"source": "3274990964975455007",
"destination": "2198686676355573844",
"source": "409373870621931875",
"type": "dependency"
},
{
"access": "public",
"destination": "6912447950043513847",
"source": "15819890550396525783",
"destination": "864055993755439230",
"source": "1977486318799565722",
"type": "instantiation"
},
{
"access": "public",
"destination": "1647416153016220941",
"source": "12213866196910576114",
"destination": "205927019127027617",
"source": "1526733274613822014",
"type": "instantiation"
},
{
"access": "public",
"destination": "6912447950043513847",
"source": "4252185767324461489",
"destination": "864055993755439230",
"source": "531523220915557686",
"type": "instantiation"
},
{
"access": "public",
"destination": "4159963889899419835",
"source": "17589493410844590756",
"destination": "519995486237427479",
"source": "2198686676355573844",
"type": "dependency"
},
{
"access": "public",
"destination": "9419901228781203525",
"source": "17589493410844590756",
"destination": "1177487653597650440",
"source": "2198686676355573844",
"type": "dependency"
},
{
"access": "public",
"destination": "8225966544585026866",
"source": "17589493410844590756",
"destination": "1028245818073128358",
"source": "2198686676355573844",
"type": "dependency"
},
{
"access": "public",
"destination": "3274990964975455007",
"source": "17589493410844590756",
"destination": "409373870621931875",
"source": "2198686676355573844",
"type": "dependency"
},
{
"access": "public",
"destination": "15819890550396525783",
"source": "17589493410844590756",
"destination": "1977486318799565722",
"source": "2198686676355573844",
"type": "dependency"
},
{
"access": "public",
"destination": "6912447950043513847",
"source": "17589493410844590756",
"destination": "2304215469403389354",
"source": "2198686676355573844",
"type": "dependency"
},
{
"access": "public",
"destination": "18433723755227114832",
"source": "17589493410844590756",
"destination": "864055993755439230",
"source": "2198686676355573844",
"type": "dependency"
},
{
"access": "public",
"destination": "7622165842529918021",
"source": "17589493410844590756",
"destination": "952770730316239752",
"source": "2198686676355573844",
"type": "dependency"
},
{
"access": "public",
"destination": "6912447950043513847",
"source": "17589493410844590756",
"type": "dependency"
},
{
"access": "public",
"destination": "7622165842529918021",
"source": "17589493410844590756",
"type": "dependency"
},
{
"access": "public",
"destination": "12213866196910576114",
"destination": "1526733274613822014",
"label": "gintstring",
"source": "17589493410844590756",
"source": "2198686676355573844",
"type": "aggregation"
},
{
"access": "private",
"destination": "4252185767324461489",
"destination": "531523220915557686",
"label": "estring",
"source": "17589493410844590756",
"source": "2198686676355573844",
"type": "aggregation"
}
],

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 58 KiB

View File

@@ -1,70 +1,75 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1083.6953125 808" style="max-width: 1083.7px; background-color: white;" width="1083.6953125" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M714.8671875,638L714.8671875,644C714.8671875,650,714.8671875,662,718.639848923841,674C722.4125103476821,686,729.9578331953643,698,733.7304946192053,704L737.5031560430464,710"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M516.4987582781457,109L515.9468818984548,113.16666666666667C515.3950055187638,117.33333333333333,514.2912527593819,125.66666666666667,513.9514204848648,134C513.6115882103478,142.33333333333334,514.0356764206955,150.66666666666666,514.2477205258693,154.83333333333334L514.4597646310433,159"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M39.953125,638L39.953125,644C39.953125,650,39.953125,662,115.8203125,679.8534047919294C191.6875,697.7068095838587,343.421875,721.4136191677175,419.2890625,733.2670239596468L495.15625,745.1204287515762"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M976.3671875,638L976.3671875,644C976.3671875,650,976.3671875,662,976.3671875,672.1666666666666C976.3671875,682.3333333333334,976.3671875,690.6666666666666,976.3671875,694.8333333333334L976.3671875,699"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M523.1875,638L523.1875,644C523.1875,650,523.1875,662,523.1875,674C523.1875,686,523.1875,698,523.1875,704L523.1875,710"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M393.625,402.5494704128877L353.62890625,424.7912253440731C313.6328125,447.03298027525847,233.640625,491.51649013762926,193.64453125,519.4249117354813C153.6484375,547.3333333333334,153.6484375,558.6666666666666,153.6484375,564.3333333333334L153.6484375,570"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id7" d="M393.625,434.4820594965675L372.54296875,451.4017162471396C351.4609375,468.32137299771165,309.296875,502.1606864988558,288.21484375,524.7470099160946C267.1328125,547.3333333333334,267.1328125,558.6666666666666,267.1328125,564.3333333333334L267.1328125,570"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id8" d="M403.82730763381994,502L399.88343344484997,507.6666666666667C395.93955925587994,513.3333333333334,388.05181087794,524.6666666666666,384.10793668897,536C380.1640625,547.3333333333334,380.1640625,558.6666666666666,380.1640625,564.3333333333334L380.1640625,570"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id9" d="M531.9152353689567,159L532.1272794741307,154.83333333333334C532.3393235793045,150.66666666666666,532.7634117896522,142.33333333333334,532.4235795151352,134C532.0837472406181,125.66666666666667,530.9799944812362,117.33333333333333,530.4281181015452,113.16666666666667L529.8762417218543,109"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id10" d="M393.625,385.5976816374042L334.6796875,410.6647346978368C275.734375,435.7317877582695,157.84375,485.8658938791347,98.8984375,518.4329469395674C39.953125,551,39.953125,566,39.953125,573.5L39.953125,581"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id11" d="M603.9171608880779,502L606.5846132400649,507.6666666666667C609.252065592052,513.3333333333334,614.5869702960259,524.6666666666666,617.254422648013,542.5833333333334C619.921875,560.5,619.921875,585,619.921875,608C619.921875,631,619.921875,652.5,608.4713541666666,672.1869918699186C597.0208333333334,691.8739837398374,574.1197916666666,709.7479674796747,562.6692708333334,718.6849593495936L551.21875,727.6219512195122"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id12" d="M652.75,469.4040961891176L663.1028645833334,480.50341349093134C673.4557291666666,491.60273079274504,694.1614583333334,513.8013653963725,704.5143229166666,532.4006826981863C714.8671875,551,714.8671875,566,714.8671875,573.5L714.8671875,581"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id13" d="M652.75,423.3917357174008L678.9270833333334,442.1597797645007C705.1041666666666,460.92782381160055,757.4583333333334,498.46391190580033,783.6354166666666,529.4819559529002C809.8125,560.5,809.8125,585,809.8125,608C809.8125,631,809.8125,652.5,806.039838576159,669.25C802.2671771523179,686,794.7218543046357,698,790.9491928807947,704L787.1765314569536,710"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id14" d="M652.75,389.25173685934453L706.6861979166666,413.7097807161204C760.6223958333334,438.16782457289634,868.4947916666666,487.08391228644814,922.4309895833334,519.0419561432241C976.3671875,551,976.3671875,566,976.3671875,573.5L976.3671875,581"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id15" d="M523.1875,502L523.1875,507.6666666666667C523.1875,513.3333333333334,523.1875,524.6666666666666,523.1875,537.8333333333334C523.1875,551,523.1875,566,523.1875,573.5L523.1875,581"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M714.8671875,638L714.8671875,644C714.8671875,650,714.8671875,662,717.0429602535486,671.4603254982791C719.2187330070971,680.9206509965583,723.5702785141942,687.8413019931164,725.7460512677426,691.3016274913954L727.9218240212912,694.7619529896746"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M516.4987582781457,109L515.9468818984548,113.16666666666667C515.3950055187638,117.33333333333333,514.2912527593819,125.66666666666667,513.9005956714298,133.00129241599993C513.5099385834775,140.33591816533317,513.8323771669551,146.67183633066634,513.9935964586938,149.83979541333292L514.1548157504326,153.0077544959995"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M39.953125,638L39.953125,644C39.953125,650,39.953125,662,112.85627137394931,679.3903063109556C185.75941774789862,696.7806126219111,331.5657104957973,719.5612252438223,404.4688568697466,730.9515315547778L477.37200324369593,742.3418378657334"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M976.3671875,638L976.3671875,644C976.3671875,650,976.3671875,662,976.3671875,669.1666666666666C976.3671875,676.3333333333334,976.3671875,678.6666666666666,976.3671875,679.8333333333334L976.3671875,681"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M523.1875,638L523.1875,644C523.1875,650,523.1875,662,523.1875,671C523.1875,680,523.1875,686,523.1875,689L523.1875,692"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M390.96875,404.0266062028287L351.4153645833333,426.0221718356906C311.8619791666667,448.01773746855247,232.75520833333334,492.0088687342762,193.20182291666666,518.6711010338048C153.6484375,545.3333333333334,153.6484375,554.6666666666666,153.6484375,559.3333333333334L153.6484375,564"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id7" d="M390.96875,436.61386727688785L370.3294270833333,453.1782227307399C349.6901041666667,469.7425781845919,308.4114583333333,502.87128909229597,287.7721354166667,524.1023112128147C267.1328125,545.3333333333334,267.1328125,554.6666666666666,267.1328125,559.3333333333334L267.1328125,564"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id8" d="M403.82730763381994,502L399.88343344484997,507.6666666666667C395.93955925587994,513.3333333333334,388.05181087794,524.6666666666666,384.10793668897,535C380.1640625,545.3333333333334,380.1640625,554.6666666666666,380.1640625,559.3333333333334L380.1640625,564"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id9" d="M531.9152353689567,159L532.1272794741307,154.83333333333334C532.3393235793045,150.66666666666666,532.7634117896522,142.33333333333334,532.5548831182064,134.99134220318743C532.3463544467604,127.64935107304154,531.505208893521,121.29870214608309,531.0846361169012,118.12337768260386L530.6640633402814,114.94805321912463"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id10" d="M390.96875,386.7272771364827L332.4661458333333,411.6060642804023C273.9635416666667,436.4848514243218,156.95833333333334,486.2424257121609,98.45572916666667,517.6212128560804C39.953125,549,39.953125,562,39.953125,568.5L39.953125,575"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id11" d="M655.40625,472.25186468310574L665.31640625,482.8765539025881C675.2265625,493.5012431220705,695.046875,514.7506215610352,704.95703125,531.8753107805177C714.8671875,549,714.8671875,562,714.8671875,568.5L714.8671875,575"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id12" d="M603.9171608880779,502L606.5846132400649,507.6666666666667C609.252065592052,513.3333333333334,614.5869702960259,524.6666666666666,617.254422648013,542.5833333333334C619.921875,560.5,619.921875,585,619.921875,608C619.921875,631,619.921875,652.5,609.2596699501518,671.5717210145157C598.5974649003034,690.6434420290315,577.2730548006069,707.2868840580628,566.6108497507587,715.6086050725786L555.9486447009104,723.9303260870943"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id13" d="M655.40625,425.29617313563017L681.140625,443.74681094635844C706.875,462.19744875708676,758.34375,499.0987243785434,784.078125,529.7993621892716C809.8125,560.5,809.8125,585,809.8125,608C809.8125,631,809.8125,652.5,806.5721347995899,668.4034418327597C803.3317695991796,684.3068836655193,796.8510391983591,694.6137673310387,793.610673997949,699.7672091637984L790.3703087975387,704.9206509965582"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id14" d="M671.7995277476867,397.8899835860354L722.5608043730723,420.9083196550295C773.3220809984577,443.92665572402365,874.8446342492289,489.9633278620118,925.6059108746144,520.4816639310059C976.3671875,551,976.3671875,566,976.3671875,573.5L976.3671875,581"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id15" d="M523.1875,520L523.1875,522.6666666666666C523.1875,525.3333333333334,523.1875,530.6666666666666,523.1875,540.8333333333334C523.1875,551,523.1875,566,523.1875,573.5L523.1875,581"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -234,8 +239,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(762.33984375, 749.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L7">
<g title="F" id="classId-C_0007622165842529918021-0" class="node default clickable">
<a transform="translate(762.33984375, 749.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L7">
<g title="F" id="classId-C_0000952770730316239752-0" class="node default clickable">
<rect height="79" width="110.109375" y="-39.5" x="-55.0546875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="55.0546875" x1="-55.0546875" class="divider"/>
<line y2="28.5" y1="28.5" x2="55.0546875" x1="-55.0546875" class="divider"/>
@@ -258,8 +263,8 @@
</g>
</g>
</a>
<a transform="translate(714.8671875, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L7">
<g title="F" id="classId-C_0018433723755227114832-1" class="node default clickable">
<a transform="translate(714.8671875, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L7">
<g title="F" id="classId-C_0002304215469403389354-1" class="node default clickable">
<rect height="57" width="119.890625" y="-28.5" x="-59.9453125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="59.9453125" x1="-59.9453125" class="divider"/>
<line y2="17.5" y1="17.5" x2="59.9453125" x1="-59.9453125" class="divider"/>
@@ -277,8 +282,8 @@
</g>
</g>
</a>
<a transform="translate(153.6484375, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L14">
<g title="A" id="classId-C_0004159963889899419835-2" class="node default clickable">
<a transform="translate(153.6484375, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L14">
<g title="A" id="classId-C_0000519995486237427479-2" class="node default clickable">
<rect height="79" width="63.484375" y="-39.5" x="-31.7421875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="31.7421875" x1="-31.7421875" class="divider"/>
<line y2="28.5" y1="28.5" x2="31.7421875" x1="-31.7421875" class="divider"/>
@@ -301,8 +306,8 @@
</g>
</g>
</a>
<a transform="translate(267.1328125, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L18">
<g title="B" id="classId-C_0009419901228781203525-3" class="node default clickable">
<a transform="translate(267.1328125, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L18">
<g title="B" id="classId-C_0001177487653597650440-3" class="node default clickable">
<rect height="79" width="63.484375" y="-39.5" x="-31.7421875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="31.7421875" x1="-31.7421875" class="divider"/>
<line y2="28.5" y1="28.5" x2="31.7421875" x1="-31.7421875" class="divider"/>
@@ -325,8 +330,8 @@
</g>
</g>
</a>
<a transform="translate(380.1640625, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L22">
<g title="C" id="classId-C_0008225966544585026866-4" class="node default clickable">
<a transform="translate(380.1640625, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L22">
<g title="C" id="classId-C_0001028245818073128358-4" class="node default clickable">
<rect height="79" width="62.578125" y="-39.5" x="-31.2890625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="31.2890625" x1="-31.2890625" class="divider"/>
<line y2="28.5" y1="28.5" x2="31.2890625" x1="-31.2890625" class="divider"/>
@@ -349,11 +354,11 @@
</g>
</g>
</a>
<a transform="translate(523.1875, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L28">
<g title="D" id="classId-C_0003274990964975455007-5" class="node default clickable">
<rect height="101" width="140.8125" y="-50.5" x="-70.40625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="70.40625" x1="-70.40625" class="divider"/>
<line y2="17.5" y1="17.5" x2="70.40625" x1="-70.40625" class="divider"/>
<a transform="translate(523.1875, 58.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L28">
<g title="D" id="classId-C_0000409373870621931875-5" class="node default clickable">
<rect height="101" width="149.703125" y="-50.5" x="-74.8515625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="74.8515625" x1="-74.8515625" class="divider"/>
<line y2="17.5" y1="17.5" x2="74.8515625" x1="-74.8515625" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -365,21 +370,21 @@
<span class="nodeLabel">D</span>
</div>
</foreignObject>
<foreignObject transform="translate( -62.90625, -9)" height="18" width="48.484375">
<foreignObject transform="translate( -67.3515625, -9)" height="18" width="48.484375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+d : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -62.90625, 25)" height="18" width="125.8125">
<foreignObject transform="translate( -67.3515625, 25)" height="18" width="134.703125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+print(R * r) : void</span>
<span class="nodeLabel">+print(R * r) : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(523.1875, 749.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L33">
<g title="E" id="classId-C_0006912447950043513847-6" class="node default clickable">
<a transform="translate(523.1875, 749.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L33">
<g title="E" id="classId-C_0000864055993755439230-6" class="node default clickable">
<rect height="79" width="56.0625" y="-39.5" x="-28.03125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="28.03125" x1="-28.03125" class="divider"/>
<line y2="28.5" y1="28.5" x2="28.03125" x1="-28.03125" class="divider"/>
@@ -402,8 +407,8 @@
</g>
</g>
</a>
<a transform="translate(976.3671875, 749.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L37">
<g title="G" id="classId-C_0001647416153016220941-7" class="node default clickable">
<a transform="translate(976.3671875, 749.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L37">
<g title="G" id="classId-C_0000205927019127027617-7" class="node default clickable">
<rect height="101" width="198.65625" y="-50.5" x="-99.328125" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="99.328125" x1="-99.328125" class="divider"/>
<line y2="39.5" y1="39.5" x2="99.328125" x1="-99.328125" class="divider"/>
@@ -431,8 +436,8 @@
</g>
</g>
</a>
<a transform="translate(39.953125, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L33">
<g title="E" id="classId-C_0015819890550396525783-8" class="node default clickable">
<a transform="translate(39.953125, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L33">
<g title="E" id="classId-C_0001977486318799565722-8" class="node default clickable">
<rect height="57" width="63.90625" y="-28.5" x="-31.953125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="31.953125" x1="-31.953125" class="divider"/>
<line y2="17.5" y1="17.5" x2="31.953125" x1="-31.953125" class="divider"/>
@@ -450,8 +455,8 @@
</g>
</g>
</a>
<a transform="translate(976.3671875, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L37">
<g title="G" id="classId-C_0012213866196910576114-9" class="node default clickable">
<a transform="translate(976.3671875, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L37">
<g title="G" id="classId-C_0001526733274613822014-9" class="node default clickable">
<rect height="57" width="187.453125" y="-28.5" x="-93.7265625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="93.7265625" x1="-93.7265625" class="divider"/>
<line y2="17.5" y1="17.5" x2="93.7265625" x1="-93.7265625" class="divider"/>
@@ -469,8 +474,8 @@
</g>
</g>
</a>
<a transform="translate(523.1875, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L33">
<g title="E" id="classId-C_0004252185767324461489-10" class="node default clickable">
<a transform="translate(523.1875, 609.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L33">
<g title="E" id="classId-C_0000531523220915557686-10" class="node default clickable">
<rect height="57" width="123.46875" y="-28.5" x="-61.734375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="61.734375" x1="-61.734375" class="divider"/>
<line y2="17.5" y1="17.5" x2="61.734375" x1="-61.734375" class="divider"/>
@@ -488,11 +493,11 @@
</g>
</g>
</a>
<a transform="translate(523.1875, 330.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00013/t00013.cc#L43">
<g title="R" id="classId-C_0017589493410844590756-11" class="node default clickable">
<rect height="343" width="259.125" y="-171.5" x="-129.5625" class="outer title-state"/>
<line y2="-141.5" y1="-141.5" x2="129.5625" x1="-129.5625" class="divider"/>
<line y2="-81.5" y1="-81.5" x2="129.5625" x1="-129.5625" class="divider"/>
<a transform="translate(523.1875, 330.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00013/t00013.cc#L43">
<g title="R" id="classId-C_0002198686676355573844-11" class="node default clickable">
<rect height="343" width="264.4375" y="-171.5" x="-132.21875" class="outer title-state"/>
<line y2="-141.5" y1="-141.5" x2="132.21875" x1="-132.21875" class="divider"/>
<line y2="-81.5" y1="-81.5" x2="132.21875" x1="-132.21875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -504,69 +509,69 @@
<span class="nodeLabel">R</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, -130)" height="18" width="165.40625">
<foreignObject transform="translate( -124.71875, -130)" height="18" width="165.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-estring : E&lt;std::string&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, -108)" height="18" width="244.125">
<foreignObject transform="translate( -124.71875, -108)" height="18" width="244.125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+gintstring : G&lt;int,float,std::string&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, -74)" height="18" width="124.078125">
<foreignObject transform="translate( -124.71875, -74)" height="18" width="132.96875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_a(A * a) : int</span>
<span class="nodeLabel">+get_a(A * a) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, -52)" height="18" width="129.40625">
<foreignObject transform="translate( -124.71875, -52)" height="18" width="138.296875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_b(B &amp; b) : int</span>
<span class="nodeLabel">+get_b(B &amp; b) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, -30)" height="18" width="113.375">
<foreignObject transform="translate( -124.71875, -30)" height="18" width="122.265625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_c(C c) : int</span>
<span class="nodeLabel">+get_c(C c) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, -8)" height="18" width="219.234375">
<foreignObject transform="translate( -124.71875, -8)" height="18" width="228.125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_const_b(const B &amp; b) : int</span>
<span class="nodeLabel">+get_const_b(const B &amp; b) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, 14)" height="18" width="140.96875">
<foreignObject transform="translate( -124.71875, 14)" height="18" width="149.859375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_d(D &amp;&amp; d) : int</span>
<span class="nodeLabel">+get_d(D &amp;&amp; d) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, 36)" height="18" width="149.859375">
<foreignObject transform="translate( -124.71875, 36)" height="18" width="158.75">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_d2(D &amp;&amp; d) : int</span>
<span class="nodeLabel">+get_d2(D &amp;&amp; d) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, 58)" height="18" width="106.875">
<foreignObject transform="translate( -124.71875, 58)" height="18" width="115.765625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_e(E e) : T</span>
<span class="nodeLabel">+get_e(E e) : : T</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, 80)" height="18" width="154.875">
<foreignObject transform="translate( -124.71875, 80)" height="18" width="163.765625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_f(const F &amp; f) : T</span>
<span class="nodeLabel">+get_f(const F &amp; f) : : T</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, 102)" height="18" width="197.890625">
<foreignObject transform="translate( -124.71875, 102)" height="18" width="206.78125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_int_e(const E &amp; e) : int</span>
<span class="nodeLabel">+get_int_e(const E &amp; e) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, 124)" height="18" width="164.109375">
<foreignObject transform="translate( -124.71875, 124)" height="18" width="173">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_int_e2(E &amp; e) : int</span>
<span class="nodeLabel">+get_int_e2(E &amp; e) : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -122.0625, 146)" height="18" width="240.546875">
<foreignObject transform="translate( -124.71875, 146)" height="18" width="249.4375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+get_int_f(const ABCD::F &amp; f) : int</span>
<span class="nodeLabel">+get_int_f(const ABCD::F &amp; f) : : int</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 86 KiB

View File

@@ -1,90 +1,95 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1199.421875 1349.5" style="max-width: 1199.42px; background-color: white;" width="1199.421875" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M1005.0625,406L1020.5625,406C1036.0625,406,1067.0625,406,1091.2620062426986,468.9166666666667C1115.4615124853972,531.8333333333334,1132.8605249707944,657.6666666666666,1141.560031213493,720.5833333333334L1150.2595374561915,783.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M1073.0625,725L1077.2291666666667,725C1081.3958333333333,725,1089.7291666666667,725,1099.1894292335626,734.75C1108.6496918004586,744.5,1119.2368836009175,764,1124.5304795011468,773.75L1129.8240754013761,783.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M983.28125,941L1002.4114583333334,941C1021.5416666666666,941,1059.8020833333333,941,1084.140472887461,931.5833333333334C1108.4788624415887,922.1666666666666,1118.8952248831777,903.3333333333334,1124.103406103972,893.9166666666666L1129.3115873247664,884.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M992.6171875,1262L1010.19140625,1262C1027.765625,1262,1062.9140625,1262,1089.1877874926986,1199.0833333333333C1115.4615124853972,1136.1666666666667,1132.8605249707944,1010.3333333333334,1141.560031213493,947.4166666666666L1150.2595374561915,884.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M648.484375,832L669.6145833333334,832C690.7447916666666,832,733.0052083333334,832,774.0017381020642,845.4166666666666C814.9982678707951,858.8333333333334,854.7309107415903,885.6666666666666,874.5972321769877,899.0833333333334L894.4635536123853,912.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M659.5859375,939L678.8658854166666,939C698.1458333333334,939,736.7057291666666,939,775.1158854166666,939.2370556819466C813.5260416666666,939.474111363893,851.7864583333334,939.9482227277862,870.9166666666666,940.1852784097327L890.046875,940.4223340916792"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id7" d="M668.921875,1153L686.6458333333334,1153C704.3697916666666,1153,739.8177083333334,1153,777.4079881020642,1166.4166666666667C814.9982678707951,1179.8333333333333,854.7309107415903,1206.6666666666667,874.5972321769877,1220.0833333333333L894.4635536123853,1233.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id8" d="M659.59375,1046L678.8723958333334,1046C698.1510416666666,1046,736.7083333333334,1046,775.5853608630952,1033.25C814.4623883928571,1020.5,853.6591517857142,995,873.2575334821428,982.25L892.8559151785714,969.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id9" d="M668.9296875,1260L686.65234375,1260C704.375,1260,739.8203125,1260,775.1171875,1260.2177743356406C810.4140625,1260.4355486712814,845.5625,1260.8710973425625,863.13671875,1261.088871678203L880.7109375,1261.3066460138439"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id10" d="M682.2578125,190L697.7591145833334,190C713.2604166666666,190,744.2630208333334,190,783.1147913049768,221.25C821.9665617766204,252.5,868.6674985532408,315,892.017966941551,346.25L915.3684353298611,377.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id11" d="M750.265625,725L754.4322916666666,725C758.5989583333334,725,766.9322916666666,725,775.265625,725C783.5989583333334,725,791.9322916666666,725,796.0989583333334,725L800.265625,725"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id12" d="M675.1484375,297L691.8346354166666,297C708.5208333333334,297,741.8932291666666,297,778.4457485187309,310.4166666666667C814.9982678707951,323.8333333333333,854.7309107415903,350.6666666666667,874.5972321769877,364.0833333333333L894.4635536123853,377.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id13" d="M704.921875,404L716.6458333333334,404C728.3697916666666,404,751.8177083333334,404,779.0416666666666,404.19207125223875C806.265625,404.3841425044775,837.265625,404.768285008955,852.765625,404.9603562611937L868.265625,405.15242751343243"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id14" d="M681.828125,511L697.4010416666666,511C712.9739583333334,511,744.1197916666666,511,779.2910900297619,498.25C814.4623883928571,485.5,853.6591517857142,460,873.2575334821428,447.25L892.8559151785714,434.5"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id15" d="M695.609375,618L708.8854166666666,618C722.1614583333334,618,748.7135416666666,618,785.2730843406054,587.4166666666666C821.8326270145441,556.8333333333334,868.399629029088,495.6666666666667,891.6831300363601,465.0833333333333L914.9666310436321,434.5"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id16" d="M241.46374857305938,360L264.6273425608828,302.8333333333333C287.79093654870627,245.66666666666666,334.1181245243531,131.33333333333334,381.9288539288432,80.31360705682302C429.7395833333333,29.29388078031269,479.0338541666667,41.58776156062538,503.6809895833333,47.73470195078173L528.328125,53.88164234093807"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id17" d="M279.74187458277703,769L296.5257809023142,797.3333333333334C313.30968722185133,825.6666666666666,346.87749986092564,882.3333333333334,390.64838534712953,910.6666666666666C434.4192708333333,939,488.3932291666667,939,515.3802083333334,939L542.3671875,939"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id18" d="M240.49153880866425,769L263.8171677572202,827.25C287.14279670577616,885.5,333.7940546028881,1002,382.55067313477736,1064.2284345330877C431.3072916666667,1126.4568690661754,482.1692708333333,1134.413738132351,507.6002604166667,1138.3921726654387L533.03125,1142.3706071985264"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id19" d="M231.4218624598716,769L256.25910413322634,838.75C281.09634580658104,908.5,330.77082915329055,1048,381.0390604099786,1113.7715654669123C431.3072916666667,1179.5431309338246,482.1692708333333,1171.586261867649,507.6002604166667,1167.6078273345613L533.03125,1163.6293928014736"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id20" d="M260.0938373881432,769L280.1524165734526,809.4166666666666C300.2109957587621,849.8333333333334,340.32815412938106,930.6666666666666,387.3724103980239,975.3049838222096C434.4166666666667,1019.9433009777525,488.3880208333333,1028.386601955505,515.3736979166666,1032.6082524443814L542.359375,1036.8299029332577"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id21" d="M223.83096131380302,769L249.9333531781692,850.8333333333334C276.0357450425353,932.6666666666666,328.2405287712677,1096.3333333333333,379.77260813563385,1178.1666666666667C431.3046875,1260,482.1640625,1260,507.59375,1260L533.0234375,1260"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id22" d="M279.74187458277703,360L296.5257809023142,331.6666666666667C313.30968722185133,303.3333333333333,346.87749986092564,246.66666666666666,386.8697395137962,218.33333333333334C426.8619791666667,190,473.2786458333333,190,496.4869791666667,190L519.6953125,190"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id23" d="M309.203125,673.4575468375828L321.0768229166667,682.0479556979857C332.9505208333333,690.6383645583886,356.6979166666667,707.8191822791943,380.4453125,716.4095911395971C404.1927083333333,725,427.9401041666667,725,439.8138020833333,725L451.6875,725"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id24" d="M309.203125,382.90408860402874L321.0768229166667,368.5867405033573C332.9505208333333,354.2693924026858,356.6979166666667,325.63469620134293,392.96484375,311.3173481006715C429.2317708333333,297,478.0182291666667,297,502.4114583333333,297L526.8046875,297"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id25" d="M309.203125,432.12167206648826L321.0768229166667,421.68472672207355C332.9505208333333,411.24778137765884,356.6979166666667,390.3738906888295,388.0026041666667,382.9767373948611C419.3072916666667,375.57958410089276,458.1692708333333,381.65916820178546,477.6002604166667,384.69896025223187L497.03125,387.7387523026782"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id26" d="M309.203125,482.0181187491196L321.0768229166667,475.5150989575997C332.9505208333333,469.01207916607973,356.6979166666667,456.00603958303986,388.0026041666667,446.066733125798C419.3072916666667,436.1274266685561,458.1692708333333,429.2548533371121,477.6002604166667,425.8185666713901L497.03125,422.3822800056681"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id27" d="M217.6732381184896,769L244.80191718207467,862.9166666666666C271.93059624565973,956.8333333333334,326.1879543728299,1144.6666666666667,390.07184176974823,1238.5833333333333C453.9557291666667,1332.5,527.4661458333334,1332.5,593.26953125,1332.5C659.0729166666666,1332.5,717.1692708333334,1332.5,763.7916666666666,1324.8234546686674C810.4140625,1317.1469093373348,845.5625,1301.7938186746696,863.13671875,1294.117273343337L880.7109375,1286.4407280120045"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id28" d="M246.5221959786822,769L268.8427153989018,820.9166666666666C291.16323481912144,872.8333333333334,335.80427365956075,976.6666666666666,385.1104701631137,1024.3616828444572C434.4166666666667,1072.0566990222476,488.3880208333333,1063.613398044495,515.3736979166666,1059.3917475556186L542.359375,1055.1700970667423"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id29" d="M247.64385273552503,360L269.77742936293754,309.1666666666667C291.91100599035,258.3333333333333,336.178159245175,156.66666666666666,382.95887128925415,107.73329672665439C429.7395833333333,58.7999267866421,479.0338541666667,62.59985357328421,503.6809895833333,64.49981696660525L528.328125,66.39978035992631"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id30" d="M254.82011366648993,360L275.7576468054083,315.5C296.69517994432664,271,338.57024622216335,182,384.1549147777484,135.15298639648577C429.7395833333333,88.30597279297153,479.0338541666667,83.61194558594303,503.6809895833333,81.26493198242879L528.328125,78.91791837891455"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id31" d="M309.203125,501.7051521341034L321.0768229166667,496.7542934450862C332.9505208333333,491.80343475606895,356.6979166666667,481.90171737803445,391.8515625,481.0678170282549C427.0052083333333,480.2339166784753,473.5651041666667,488.4678333569505,496.8450520833333,492.5847916961882L520.125,496.7017500354258"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id32" d="M309.203125,554.6564833075081L321.0768229166667,553.8804027562568C332.9505208333333,553.1043222050054,356.6979166666667,551.5521611025027,391.8515625,546.6591222120137C427.0052083333333,541.7660833215247,473.5651041666667,533.5321666430494,496.8450520833333,529.4152083038118L520.125,525.2982499645742"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id33" d="M309.203125,574.3435166924919L321.0768229166667,575.1195972437432C332.9505208333333,575.8956777949946,356.6979166666667,577.4478388974973,389.5546875,581.934685354941C422.4114583333333,586.4215318123848,464.3776041666667,593.8430636247698,485.3606770833333,597.5538295309622L506.34375,601.2645954371546"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id34" d="M309.203125,624.2399633751232L321.0768229166667,628.9499694792694C332.9505208333333,633.6599755834155,356.6979166666667,643.0799877917078,389.5546875,644.5073932865298C422.4114583333333,645.9347987813518,464.3776041666667,639.3695975627037,485.3606770833333,636.0869969533796L506.34375,632.8043963440556"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id35" d="M263.2544964677047,360L282.7862991397539,321.8333333333333C302.31810181180316,283.6666666666667,341.38170715590155,207.33333333333334,385.56064524461743,162.57267606631714C429.7395833333333,117.81201879930093,479.0338541666667,104.62403759860187,503.6809895833333,98.03004699825232L528.328125,91.43605639790279"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M1005.0625,406L1020.5625,406C1036.0625,406,1067.0625,406,1090.851104698673,465.94493990918755C1114.6397093973458,525.8898798183751,1131.2169187946915,645.7797596367502,1139.5055234933645,705.7246995459377L1147.7941281920373,765.6696394551253"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M1073.0625,725L1077.2291666666667,725C1081.3958333333333,725,1089.7291666666667,725,1097.7579993515283,732.11352347008C1105.7868320363898,739.22704694016,1113.5111640727798,753.4540938803199,1117.3733300909748,760.5676173503999L1121.2354961091698,767.68114082048"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M983.28125,941L1002.4114583333334,941C1021.5416666666666,941,1059.8020833333333,941,1082.6885104460423,934.2085580987027C1105.574937558751,927.4171161974054,1113.087375117502,913.8342323948109,1116.8435938968776,907.0427904935136L1120.599812676253,900.2513485922165"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M992.6171875,1262L1010.19140625,1262C1027.765625,1262,1062.9140625,1262,1088.776885948673,1202.0550600908125C1114.6397093973458,1142.1101201816248,1131.2169187946915,1022.2202403632497,1139.5055234933645,962.2753004540622L1147.7941281920373,902.3303605448747"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M648.484375,832L669.6145833333334,832C690.7447916666666,832,733.0052083333334,832,771.5155925500004,843.7376549651132C810.0259767666676,855.4753099302264,844.7863285333351,878.9506198604527,862.1665044166689,890.6882748255658L879.5466803000028,902.425929790679"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M659.5859375,939L678.8658854166666,939C698.1458333333334,939,736.7057291666666,939,772.1161157212528,939.199883454732C807.5265022758389,939.3997669094639,839.7873795516775,939.7995338189279,855.9178181895969,939.9994172736598L872.0482568275163,940.1993007283917"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id7" d="M668.921875,1153L686.6458333333334,1153C704.3697916666666,1153,739.8177083333334,1153,774.9218425500004,1164.7376549651133C810.0259767666676,1176.4753099302263,844.7863285333351,1199.9506198604527,862.1665044166689,1211.688274825566L879.5466803000028,1223.425929790679"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id8" d="M659.59375,1046L678.8723958333334,1046C698.1510416666666,1046,736.7083333333334,1046,773.0706781906943,1034.8859618140796C809.4330230480551,1023.7719236281591,843.6004210961104,1001.5438472563181,860.6841201201379,990.4298090703977L877.7678191441656,979.3157708844772"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id9" d="M668.9296875,1260L686.65234375,1260C704.375,1260,739.8203125,1260,772.1174178045861,1260.180602108426C804.4145231091721,1260.3612042168522,833.5634212183442,1260.7224084337042,848.1378702729303,1260.9030105421305L862.7123193275163,1261.0836126505565"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id10" d="M682.2578125,190L697.7591145833334,190C713.2604166666666,190,744.2630208333334,190,781.3190776690757,218.8467911997001C818.3751345048181,247.69358239940027,861.4846440096362,305.38716479880054,883.0393987620452,334.2339559985007L904.5941535144542,363.0807471982008"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id11" d="M750.265625,725L754.4322916666666,725C758.5989583333334,725,766.9322916666666,725,772.265625,725C777.5989583333334,725,779.9322916666666,725,781.0989583333334,725L782.265625,725"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id12" d="M675.1484375,297L691.8346354166666,297C708.5208333333334,297,741.8932291666666,297,775.9596029666671,308.73765496511317C810.0259767666676,320.47530993022633,844.7863285333351,343.95061986045266,862.1665044166689,355.6882748255659L879.5466803000028,367.42592979067905"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id13" d="M704.921875,404L716.6458333333334,404C728.3697916666666,404,751.8177083333334,404,776.0418969712528,404.1548990250242C800.2660856091721,404.30979805004836,825.2665462183442,404.61959610009666,837.7667765229303,404.77449512512084L850.2670068275163,404.92939415014496"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id14" d="M681.828125,511L697.4010416666666,511C712.9739583333334,511,744.1197916666666,511,776.7764073573609,499.88596181407956C809.4330230480551,488.7719236281591,843.6004210961104,466.5438472563181,860.6841201201379,455.42980907039765L877.7678191441656,444.31577088447716"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id15" d="M695.609375,618L708.8854166666666,618C722.1614583333334,618,748.7135416666666,618,783.455847960115,589.8036421456824C818.1981542535633,561.6072842913649,861.1306835071267,505.21456858272956,882.5969481339083,477.018210728412L904.06321276069,448.82185287409436"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id16" d="M248.22341237694872,343.3174658622142L270.2603957307906,288.93122155184517C292.2973790846325,234.54497724147612,336.3713457923163,125.77248862073806,383.05546456282474,77.53318470052538C429.7395833333333,29.29388078031269,479.0338541666667,41.58776156062538,503.6809895833333,47.73470195078173L528.328125,53.88164234093807"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id17" d="M288.9158024522113,784.4867377922666L304.1707207935094,810.2389481602222C319.42563913480757,835.9911585281776,349.93547581740376,887.4955792640889,392.17737332536854,913.2477896320444C434.4192708333333,939,488.3932291666667,939,515.3802083333334,939L542.3671875,939"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id18" d="M247.1829085348524,785.7100440211105L269.39330919571034,841.1750366842589C291.6037098565683,896.6400293474071,336.0245111782842,1007.5700146737036,383.66590142247543,1067.0134418699395C431.3072916666667,1126.4568690661754,482.1692708333333,1134.413738132351,507.6002604166667,1138.3921726654387L533.03125,1142.3706071985264"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id19" d="M237.4600735386465,785.9570046579034L261.2909466988721,852.8808372149196C285.1218198590977,919.8046697719356,332.7835661795488,1053.6523348859678,382.04542892310775,1116.5977329098962C431.3072916666667,1179.5431309338246,482.1692708333333,1171.586261867649,507.6002604166667,1167.6078273345613L533.03125,1163.6293928014736"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id20" d="M268.0958532197089,785.1235152070313L286.8207630997574,822.8529293391927C305.54567297980594,860.5823434713542,342.995492739903,936.041171735677,388.70607970328484,977.9922363567148C434.4166666666667,1019.9433009777525,488.3880208333333,1028.386601955505,515.3736979166666,1032.6082524443814L542.359375,1036.8299029332577"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id21" d="M223.83096131380302,769L249.9333531781692,850.8333333333334C276.0357450425353,932.6666666666666,328.2405287712677,1096.3333333333333,378.77260813563385,1178.1666666666667C429.3046875,1260,478.1640625,1260,502.59375,1260L527.0234375,1260"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id22" d="M288.9158024522113,344.5132622077334L304.1707207935094,318.76105183977785C319.42563913480757,293.0088414718223,349.93547581740376,241.50442073591114,388.3987274920352,215.7522103679556C426.8619791666667,190,473.2786458333333,190,496.4869791666667,190L519.6953125,190"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id23" d="M323.78662470078376,684.008449001722L333.22973933398646,690.8403741681017C342.67285396718916,697.6722993344814,361.55908323359455,711.3361496672406,382.87589578346393,718.1680748336203C404.1927083333333,725,427.9401041666667,725,439.8138020833333,725L451.6875,725"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id24" d="M320.69361509329826,369.04881388947274L330.65223132774855,357.0406782412272C340.61084756219884,345.0325425929818,360.5280800310995,321.0162712964909,394.8799254322164,309.00813564824546C429.2317708333333,297,478.0182291666667,297,502.4114583333333,297L526.8046875,297"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id25" d="M322.7226909025641,420.23801363121567L332.3431278354701,411.781678026013C341.9635647683761,403.3253424208104,361.2044386341881,386.4126712104052,390.2558651504273,380.996127655649C419.3072916666667,375.57958410089276,458.1692708333333,381.65916820178546,477.6002604166667,384.69896025223187L497.03125,387.7387523026782"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id26" d="M324.9904339754749,473.37168160351507L334.2329137295624,468.30973466959585C343.4753934836499,463.2477877356767,361.96035299182495,453.1238938678384,390.6338223292458,444.6256602681972C419.3072916666667,436.1274266685561,458.1692708333333,429.2548533371121,477.6002604166667,425.8185666713901L497.03125,422.3822800056681"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id27" d="M222.66847560222905,786.2929928722892L248.96461508519087,877.3274940602411C275.26075456815266,968.3619952481928,327.85303353407636,1150.4309976240963,390.9043813503715,1241.4654988120483C453.9557291666667,1332.5,527.4661458333334,1332.5,593.26953125,1332.5C659.0729166666666,1332.5,717.1692708333334,1332.5,763.7916666666666,1324.8234546686674C810.4140625,1317.1469093373348,845.5625,1301.7938186746696,863.13671875,1294.117273343337L880.7109375,1286.4407280120045"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id28" d="M253.63171504185672,785.5364669349398L274.7673146182139,834.6970557791165C295.90291419457117,883.8576446232931,338.1741133472856,982.1788223116465,386.2953900069761,1027.117760666947C434.4166666666667,1072.0566990222476,488.3880208333333,1063.613398044495,515.3736979166666,1059.3917475556186L542.359375,1055.1700970667423"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id29" d="M254.82969387603376,343.4965552958368L275.76563031336144,295.41379607986397C296.70156675068915,247.3310368638912,338.5734396253446,151.1655184319456,384.15651147933903,104.98272260929384C429.7395833333333,58.7999267866421,479.0338541666667,62.59985357328421,503.6809895833333,64.49981696660525L528.328125,66.39978035992631"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id30" d="M262.48336858738014,343.71274964834606L282.14369257281675,301.9272913736217C301.8040165582534,260.1418330988974,341.12466452912673,176.5709165494487,385.43212393123,132.4384446712101C429.7395833333333,88.30597279297153,479.0338541666667,83.61194558594303,503.6809895833333,81.26493198242879L528.328125,78.91791837891455"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id31" d="M309.203125,501.7051521341034L321.0768229166667,496.7542934450862C332.9505208333333,491.80343475606895,356.6979166666667,481.90171737803445,390.8668422198936,480.8936734956528C425.03576777312054,479.8856296132711,469.62622304624097,487.7712592265422,491.9214506828012,491.7140740331777L514.2166783193614,495.65688883981335"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id32" d="M309.203125,554.6564833075081L321.0768229166667,553.8804027562568C332.9505208333333,553.1043222050054,356.6979166666667,551.5521611025027,390.8668422198936,546.8332657446158C425.03576777312054,542.1143703867289,469.62622304624097,534.2287407734577,491.9214506828012,530.2859259668222L514.2166783193614,526.3431111601866"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id33" d="M309.203125,574.3435166924919L321.0768229166667,575.1195972437432C332.9505208333333,575.8956777949946,356.6979166666667,577.4478388974973,388.5699672198936,581.760541822339C420.44201777312054,586.0732447471808,460.43872304624097,593.1464894943615,480.4370756828012,596.6831118679519L500.43542831936145,600.2197342415423"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id34" d="M309.203125,624.2399633751232L321.0768229166667,628.9499694792694C332.9505208333333,633.6599755834155,356.6979166666667,643.0799877917078,388.5667041774065,644.6619538063177C420.4354916881463,646.2439198209277,460.4256708762926,639.9878396418553,480.4207604703658,636.8597995523191L500.415850064439,633.731759462783"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id35" d="M271.4546150804234,343.9763283003756L289.61973131701956,308.48027358364635C307.78484755361563,272.98421886691705,344.11508002680785,201.99210943345852,386.9273316800706,159.90206411637973C429.7395833333333,117.81201879930093,479.0338541666667,104.62403759860187,503.6809895833333,98.03004699825232L528.328125,91.43605639790279"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -474,8 +479,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(1157.2421875, 834)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L21">
<g title="A" id="classId-C_0006127124633338685220-0" class="node default clickable">
<a transform="translate(1157.2421875, 834)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L21">
<g title="A" id="classId-C_0000765890579167335652-0" class="node default clickable">
<rect height="101" width="68.359375" y="-50.5" x="-34.1796875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="34.1796875" x1="-34.1796875" class="divider"/>
<line y2="39.5" y1="39.5" x2="34.1796875" x1="-34.1796875" class="divider"/>
@@ -503,8 +508,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 72)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L26">
<g title="B" id="classId-C_0007473088098336348050-1" class="node default clickable">
<a transform="translate(600.9765625, 72)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L26">
<g title="B" id="classId-C_0000934136012292043506-1" class="node default clickable">
<rect height="79" width="145.296875" y="-39.5" x="-72.6484375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="72.6484375" x1="-72.6484375" class="divider"/>
<line y2="28.5" y1="28.5" x2="72.6484375" x1="-72.6484375" class="divider"/>
@@ -527,8 +532,8 @@
</g>
</g>
</a>
<a transform="translate(936.6640625, 406)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L30">
<g title="A" id="classId-C_0017491102824696068567-2" class="node default clickable">
<a transform="translate(936.6640625, 406)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L30">
<g title="A" id="classId-C_0002186387853087008570-2" class="node default clickable">
<rect height="57" width="136.796875" y="-28.5" x="-68.3984375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="68.3984375" x1="-68.3984375" class="divider"/>
<line y2="17.5" y1="17.5" x2="68.3984375" x1="-68.3984375" class="divider"/>
@@ -546,8 +551,8 @@
</g>
</g>
</a>
<a transform="translate(936.6640625, 725)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L31">
<g title="A" id="classId-C_0007578341869927946377-3" class="node default clickable">
<a transform="translate(936.6640625, 725)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L31">
<g title="A" id="classId-C_0000947292733740993297-3" class="node default clickable">
<rect height="57" width="272.796875" y="-28.5" x="-136.3984375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="136.3984375" x1="-136.3984375" class="divider"/>
<line y2="17.5" y1="17.5" x2="136.3984375" x1="-136.3984375" class="divider"/>
@@ -565,8 +570,8 @@
</g>
</g>
</a>
<a transform="translate(936.6640625, 941)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L34">
<g title="A" id="classId-C_0013600051123955725337-4" class="node default clickable">
<a transform="translate(936.6640625, 941)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L34">
<g title="A" id="classId-C_0001700006390494465667-4" class="node default clickable">
<rect height="57" width="93.234375" y="-28.5" x="-46.6171875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="46.6171875" x1="-46.6171875" class="divider"/>
<line y2="17.5" y1="17.5" x2="46.6171875" x1="-46.6171875" class="divider"/>
@@ -584,8 +589,8 @@
</g>
</g>
</a>
<a transform="translate(936.6640625, 1262)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L37">
<g title="A" id="classId-C_0016141324540142825631-5" class="node default clickable">
<a transform="translate(936.6640625, 1262)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L37">
<g title="A" id="classId-C_0002017665567517853203-5" class="node default clickable">
<rect height="57" width="111.90625" y="-28.5" x="-55.953125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="55.953125" x1="-55.953125" class="divider"/>
<line y2="17.5" y1="17.5" x2="55.953125" x1="-55.953125" class="divider"/>
@@ -603,8 +608,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 832)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L41">
<g title="A" id="classId-C_0007252458562105886987-6" class="node default clickable">
<a transform="translate(600.9765625, 832)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L41">
<g title="A" id="classId-C_0000906557320263235873-6" class="node default clickable">
<rect height="57" width="95.015625" y="-28.5" x="-47.5078125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="47.5078125" x1="-47.5078125" class="divider"/>
<line y2="17.5" y1="17.5" x2="47.5078125" x1="-47.5078125" class="divider"/>
@@ -622,8 +627,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 939)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L34">
<g title="A" id="classId-C_0003031184166627445092-7" class="node default clickable">
<a transform="translate(600.9765625, 939)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L34">
<g title="A" id="classId-C_0000378898020828430636-7" class="node default clickable">
<rect height="57" width="117.21875" y="-28.5" x="-58.609375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="58.609375" x1="-58.609375" class="divider"/>
<line y2="17.5" y1="17.5" x2="58.609375" x1="-58.609375" class="divider"/>
@@ -641,8 +646,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 1153)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L37">
<g title="A" id="classId-C_0016656107004201043317-8" class="node default clickable">
<a transform="translate(600.9765625, 1153)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L37">
<g title="A" id="classId-C_0002082013375525130414-8" class="node default clickable">
<rect height="57" width="135.890625" y="-28.5" x="-67.9453125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="67.9453125" x1="-67.9453125" class="divider"/>
<line y2="17.5" y1="17.5" x2="67.9453125" x1="-67.9453125" class="divider"/>
@@ -660,8 +665,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 1046)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L41">
<g title="A" id="classId-C_0000415827946341273846-9" class="node default clickable">
<a transform="translate(600.9765625, 1046)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L41">
<g title="A" id="classId-C_0000051978493292659230-9" class="node default clickable">
<rect height="57" width="117.234375" y="-28.5" x="-58.6171875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="58.6171875" x1="-58.6171875" class="divider"/>
<line y2="17.5" y1="17.5" x2="58.6171875" x1="-58.6171875" class="divider"/>
@@ -679,8 +684,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 1260)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L38">
<g title="A" id="classId-C_0001582154030263692708-10" class="node default clickable">
<a transform="translate(600.9765625, 1260)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L38">
<g title="A" id="classId-C_0000197769253782961588-10" class="node default clickable">
<rect height="57" width="135.90625" y="-28.5" x="-67.953125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="67.953125" x1="-67.953125" class="divider"/>
<line y2="17.5" y1="17.5" x2="67.953125" x1="-67.953125" class="divider"/>
@@ -698,8 +703,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 190)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L21">
<g title="A" id="classId-C_0007167525692531209473-11" class="node default clickable">
<a transform="translate(600.9765625, 190)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L21">
<g title="A" id="classId-C_0000895940711566401184-11" class="node default clickable">
<rect height="57" width="162.5625" y="-28.5" x="-81.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="81.28125" x1="-81.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="81.28125" x1="-81.28125" class="divider"/>
@@ -717,8 +722,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 725)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L31">
<g title="A" id="classId-C_0014013861000085937293-12" class="node default clickable">
<a transform="translate(600.9765625, 725)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L31">
<g title="A" id="classId-C_0001751732625010742161-12" class="node default clickable">
<rect height="57" width="298.578125" y="-28.5" x="-149.2890625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="149.2890625" x1="-149.2890625" class="divider"/>
<line y2="17.5" y1="17.5" x2="149.2890625" x1="-149.2890625" class="divider"/>
@@ -736,8 +741,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 297)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L30">
<g title="A" id="classId-C_0007096971529686780666-13" class="node default clickable">
<a transform="translate(600.9765625, 297)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L30">
<g title="A" id="classId-C_0000887121441210847583-13" class="node default clickable">
<rect height="57" width="148.34375" y="-28.5" x="-74.171875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="74.171875" x1="-74.171875" class="divider"/>
<line y2="17.5" y1="17.5" x2="74.171875" x1="-74.171875" class="divider"/>
@@ -755,8 +760,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 404)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L30">
<g title="A" id="classId-C_0008955619965084495806-14" class="node default clickable">
<a transform="translate(600.9765625, 404)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L30">
<g title="A" id="classId-C_0001119452495635561975-14" class="node default clickable">
<rect height="57" width="207.890625" y="-28.5" x="-103.9453125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="103.9453125" x1="-103.9453125" class="divider"/>
<line y2="17.5" y1="17.5" x2="103.9453125" x1="-103.9453125" class="divider"/>
@@ -774,8 +779,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 511)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/#L111">
<g title="A" id="classId-C_0002724496792509139121-15" class="node default clickable">
<a transform="translate(600.9765625, 511)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/#L111">
<g title="A" id="classId-C_0000340562099063642390-15" class="node default clickable">
<rect height="57" width="161.703125" y="-28.5" x="-80.8515625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="80.8515625" x1="-80.8515625" class="divider"/>
<line y2="17.5" y1="17.5" x2="80.8515625" x1="-80.8515625" class="divider"/>
@@ -793,8 +798,8 @@
</g>
</g>
</a>
<a transform="translate(600.9765625, 618)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/#L111">
<g title="A" id="classId-C_0011111017193279157322-16" class="node default clickable">
<a transform="translate(600.9765625, 618)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/#L111">
<g title="A" id="classId-C_0001388877149159894665-16" class="node default clickable">
<rect height="57" width="189.265625" y="-28.5" x="-94.6328125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="94.6328125" x1="-94.6328125" class="divider"/>
<line y2="17.5" y1="17.5" x2="94.6328125" x1="-94.6328125" class="divider"/>
@@ -812,8 +817,8 @@
</g>
</g>
</a>
<a transform="translate(158.6015625, 564.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00014/t00014.cc#L56">
<g title="R" id="classId-C_0014065705372679465152-17" class="node default clickable">
<a transform="translate(158.6015625, 564.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00014/t00014.cc#L56">
<g title="R" id="classId-C_0001758213171584933144-17" class="node default clickable">
<rect height="409" width="301.203125" y="-204.5" x="-150.6015625" class="outer title-state"/>
<line y2="-174.5" y1="-174.5" x2="150.6015625" x1="-150.6015625" class="divider"/>
<line y2="193.5" y1="193.5" x2="150.6015625" x1="-150.6015625" class="divider"/>

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

@@ -55,8 +55,8 @@ class B : public ns1::ns2::Anon { };
"elements": [
{
"bases": [],
"display_name": "ns1::A",
"id": "11285559110441195627",
"display_name": "clanguml::t00015::ns1::A",
"id": "1410694888805149453",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -77,8 +77,8 @@ class B : public ns1::ns2::Anon { };
},
{
"bases": [],
"display_name": "ns1::ns2_v0_9_0::A",
"id": "3884421184392710906",
"display_name": "clanguml::t00015::ns1::ns2_v0_9_0::A",
"id": "485552648049088863",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -101,13 +101,13 @@ class B : public ns1::ns2::Anon { };
"bases": [
{
"access": "public",
"id": "11285559110441195627",
"id": "1410694888805149453",
"is_virtual": false,
"name": "clanguml::t00015::ns1::A"
}
],
"display_name": "ns1::Anon",
"id": "8485849058996602634",
"display_name": "clanguml::t00015::ns1::Anon",
"id": "1060731132374575329",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -130,13 +130,13 @@ class B : public ns1::ns2::Anon { };
"bases": [
{
"access": "public",
"id": "11285559110441195627",
"id": "1410694888805149453",
"is_virtual": false,
"name": "clanguml::t00015::ns1::A"
}
],
"display_name": "ns3::ns1::ns2::Anon",
"id": "14380170306833269036",
"display_name": "clanguml::t00015::ns3::ns1::ns2::Anon",
"id": "1797521288354158629",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -159,13 +159,13 @@ class B : public ns1::ns2::Anon { };
"bases": [
{
"access": "public",
"id": "14380170306833269036",
"id": "1797521288354158629",
"is_virtual": false,
"name": "clanguml::t00015::ns3::ns1::ns2::Anon"
}
],
"display_name": "ns3::B",
"id": "6967059102554848740",
"display_name": "clanguml::t00015::ns3::B",
"id": "870882387819356092",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -186,24 +186,23 @@ class B : public ns1::ns2::Anon { };
}
],
"name": "t00015_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "11285559110441195627",
"source": "8485849058996602634",
"destination": "1410694888805149453",
"source": "1060731132374575329",
"type": "extension"
},
{
"access": "public",
"destination": "11285559110441195627",
"source": "14380170306833269036",
"destination": "1410694888805149453",
"source": "1797521288354158629",
"type": "extension"
},
{
"access": "public",
"destination": "14380170306833269036",
"source": "6967059102554848740",
"destination": "1797521288354158629",
"source": "870882387819356092",
"type": "extension"
}
],

View File

@@ -1,59 +1,69 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="283px" preserveAspectRatio="none" style="width:365px;height:283px;" version="1.1" viewBox="0 0 365 283" width="365px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="278px" preserveAspectRatio="none" style="width:372px;height:278px;background:#FFFFFF;" version="1.1" viewBox="0 0 372 278" width="372px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="fzov5tha4duru" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L6" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L6" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fzov5tha4duru)" height="48" id="C_0011285559110441195627" style="stroke: #A80036; stroke-width: 1.5;" width="71" x="98" y="8"/>
<ellipse cx="113" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M115.9688,29.6406 Q115.3906,29.9375 114.75,30.0781 Q114.1094,30.2344 113.4063,30.2344 Q110.9063,30.2344 109.5781,28.5938 Q108.2656,26.9375 108.2656,23.8125 Q108.2656,20.6875 109.5781,19.0313 Q110.9063,17.375 113.4063,17.375 Q114.1094,17.375 114.75,17.5313 Q115.4063,17.6875 115.9688,17.9844 L115.9688,20.7031 Q115.3438,20.125 114.75,19.8594 Q114.1563,19.5781 113.5313,19.5781 Q112.1875,19.5781 111.5,20.6563 Q110.8125,21.7188 110.8125,23.8125 Q110.8125,25.9063 111.5,26.9844 Q112.1875,28.0469 113.5313,28.0469 Q114.1563,28.0469 114.75,27.7813 Q115.3438,27.5 115.9688,26.9219 L115.9688,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="39" x="127" y="28.1543">ns1::A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="99" x2="168" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="99" x2="168" y1="48" y2="48"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L6" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L6" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001410694888805149453">
<rect codeLine="2" fill="#F1F1F1" height="48" id="C_0001410694888805149453" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="72" x="100" y="7"/>
<ellipse cx="115" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M110,24.1563 C110,26.6563 112.1406,28.4688 115.0625,28.4688 C116.2969,28.4688 117.4688,28.1719 118.2188,27.6563 C118.8281,27.2344 119.1563,26.8125 119.1563,26.4063 C119.1563,25.9375 118.7344,25.5313 118.2344,25.5313 C118,25.5313 117.7813,25.6094 117.5781,25.8125 C117.1406,26.25 117.1406,26.25 116.9688,26.3438 C116.5156,26.5781 115.875,26.7188 115.1094,26.7188 C113.1094,26.7188 111.8281,25.7031 111.8281,24.125 L111.8281,23.0781 C111.8281,21.375 113.0469,20.1719 114.75,20.1719 C115.3281,20.1719 115.9063,20.3125 116.375,20.5625 C116.8438,20.8281 117.0156,21.0156 117.0781,21.375 C117.2031,22.0469 117.4531,22.2969 117.9844,22.2969 C118.2656,22.2969 118.5469,22.1563 118.7344,21.9375 C118.8594,21.7656 118.9063,21.5938 118.9063,21.1563 L118.9063,19.7969 C118.9063,19.375 118.8906,19.2344 118.7656,19.0625 C118.5938,18.8125 118.3125,18.6563 117.9844,18.6563 C117.6719,18.6563 117.4688,18.7656 117.25,19.0313 C116.0781,18.5313 115.6406,18.4219 114.6875,18.4219 C112.0156,18.4219 110,20.4375 110,23.0625 L110,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="40" x="129" y="27.606">ns1::A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="101" x2="171" y1="39" y2="39"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="101" x2="171" y1="47" y2="47"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L10" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L10" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fzov5tha4duru)" height="48" id="C_0003884421184392710906" style="stroke: #A80036; stroke-width: 1.5;" width="150" x="204.5" y="8"/>
<ellipse cx="219.5" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M222.4688,29.6406 Q221.8906,29.9375 221.25,30.0781 Q220.6094,30.2344 219.9063,30.2344 Q217.4063,30.2344 216.0781,28.5938 Q214.7656,26.9375 214.7656,23.8125 Q214.7656,20.6875 216.0781,19.0313 Q217.4063,17.375 219.9063,17.375 Q220.6094,17.375 221.25,17.5313 Q221.9063,17.6875 222.4688,17.9844 L222.4688,20.7031 Q221.8438,20.125 221.25,19.8594 Q220.6563,19.5781 220.0313,19.5781 Q218.6875,19.5781 218,20.6563 Q217.3125,21.7188 217.3125,23.8125 Q217.3125,25.9063 218,26.9844 Q218.6875,28.0469 220.0313,28.0469 Q220.6563,28.0469 221.25,27.7813 Q221.8438,27.5 222.4688,26.9219 L222.4688,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="233.5" y="28.1543">ns1::ns2_v0_9_0::A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="205.5" x2="353.5" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="205.5" x2="353.5" y1="48" y2="48"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L10" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L10" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0000485552648049088863">
<rect codeLine="6" fill="#F1F1F1" height="48" id="C_0000485552648049088863" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="158" x="207" y="7"/>
<ellipse cx="222" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M217,24.1563 C217,26.6563 219.1406,28.4688 222.0625,28.4688 C223.2969,28.4688 224.4688,28.1719 225.2188,27.6563 C225.8281,27.2344 226.1563,26.8125 226.1563,26.4063 C226.1563,25.9375 225.7344,25.5313 225.2344,25.5313 C225,25.5313 224.7813,25.6094 224.5781,25.8125 C224.1406,26.25 224.1406,26.25 223.9688,26.3438 C223.5156,26.5781 222.875,26.7188 222.1094,26.7188 C220.1094,26.7188 218.8281,25.7031 218.8281,24.125 L218.8281,23.0781 C218.8281,21.375 220.0469,20.1719 221.75,20.1719 C222.3281,20.1719 222.9063,20.3125 223.375,20.5625 C223.8438,20.8281 224.0156,21.0156 224.0781,21.375 C224.2031,22.0469 224.4531,22.2969 224.9844,22.2969 C225.2656,22.2969 225.5469,22.1563 225.7344,21.9375 C225.8594,21.7656 225.9063,21.5938 225.9063,21.1563 L225.9063,19.7969 C225.9063,19.375 225.8906,19.2344 225.7656,19.0625 C225.5938,18.8125 225.3125,18.6563 224.9844,18.6563 C224.6719,18.6563 224.4688,18.7656 224.25,19.0313 C223.0781,18.5313 222.6406,18.4219 221.6875,18.4219 C219.0156,18.4219 217,20.4375 217,23.0625 L217,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="126" x="236" y="27.606">ns1::ns2_v0_9_0::A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="208" x2="364" y1="39" y2="39"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="208" x2="364" y1="47" y2="47"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L14" target="_top" title="Anon" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L14" xlink:show="new" xlink:title="Anon" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fzov5tha4duru)" height="48" id="C_0008485849058996602634" style="stroke: #A80036; stroke-width: 1.5;" width="95" x="6" y="116"/>
<ellipse cx="21" cy="132" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M23.9688,137.6406 Q23.3906,137.9375 22.75,138.0781 Q22.1094,138.2344 21.4063,138.2344 Q18.9063,138.2344 17.5781,136.5938 Q16.2656,134.9375 16.2656,131.8125 Q16.2656,128.6875 17.5781,127.0313 Q18.9063,125.375 21.4063,125.375 Q22.1094,125.375 22.75,125.5313 Q23.4063,125.6875 23.9688,125.9844 L23.9688,128.7031 Q23.3438,128.125 22.75,127.8594 Q22.1563,127.5781 21.5313,127.5781 Q20.1875,127.5781 19.5,128.6563 Q18.8125,129.7188 18.8125,131.8125 Q18.8125,133.9063 19.5,134.9844 Q20.1875,136.0469 21.5313,136.0469 Q22.1563,136.0469 22.75,135.7813 Q23.3438,135.5 23.9688,134.9219 L23.9688,137.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="63" x="35" y="136.1543">ns1::Anon</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="100" y1="148" y2="148"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="100" y1="156" y2="156"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L14" target="_top" title="Anon" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L14" xlink:show="new" xlink:title="Anon" xlink:type="simple">
<g id="elem_C_0001060731132374575329">
<rect codeLine="10" fill="#F1F1F1" height="48" id="C_0001060731132374575329" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="96" x="7" y="115"/>
<ellipse cx="22" cy="131" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M17,132.1563 C17,134.6563 19.1406,136.4688 22.0625,136.4688 C23.2969,136.4688 24.4688,136.1719 25.2188,135.6563 C25.8281,135.2344 26.1563,134.8125 26.1563,134.4063 C26.1563,133.9375 25.7344,133.5313 25.2344,133.5313 C25,133.5313 24.7813,133.6094 24.5781,133.8125 C24.1406,134.25 24.1406,134.25 23.9688,134.3438 C23.5156,134.5781 22.875,134.7188 22.1094,134.7188 C20.1094,134.7188 18.8281,133.7031 18.8281,132.125 L18.8281,131.0781 C18.8281,129.375 20.0469,128.1719 21.75,128.1719 C22.3281,128.1719 22.9063,128.3125 23.375,128.5625 C23.8438,128.8281 24.0156,129.0156 24.0781,129.375 C24.2031,130.0469 24.4531,130.2969 24.9844,130.2969 C25.2656,130.2969 25.5469,130.1563 25.7344,129.9375 C25.8594,129.7656 25.9063,129.5938 25.9063,129.1563 L25.9063,127.7969 C25.9063,127.375 25.8906,127.2344 25.7656,127.0625 C25.5938,126.8125 25.3125,126.6563 24.9844,126.6563 C24.6719,126.6563 24.4688,126.7656 24.25,127.0313 C23.0781,126.5313 22.6406,126.4219 21.6875,126.4219 C19.0156,126.4219 17,128.4375 17,131.0625 L17,132.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="64" x="36" y="135.606">ns1::Anon</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="102" y1="147" y2="147"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="102" y1="155" y2="155"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L21" target="_top" title="Anon" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L21" xlink:show="new" xlink:title="Anon" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fzov5tha4duru)" height="48" id="C_0014380170306833269036" style="stroke: #A80036; stroke-width: 1.5;" width="157" x="136" y="116"/>
<ellipse cx="151" cy="132" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M153.9688,137.6406 Q153.3906,137.9375 152.75,138.0781 Q152.1094,138.2344 151.4063,138.2344 Q148.9063,138.2344 147.5781,136.5938 Q146.2656,134.9375 146.2656,131.8125 Q146.2656,128.6875 147.5781,127.0313 Q148.9063,125.375 151.4063,125.375 Q152.1094,125.375 152.75,125.5313 Q153.4063,125.6875 153.9688,125.9844 L153.9688,128.7031 Q153.3438,128.125 152.75,127.8594 Q152.1563,127.5781 151.5313,127.5781 Q150.1875,127.5781 149.5,128.6563 Q148.8125,129.7188 148.8125,131.8125 Q148.8125,133.9063 149.5,134.9844 Q150.1875,136.0469 151.5313,136.0469 Q152.1563,136.0469 152.75,135.7813 Q153.3438,135.5 153.9688,134.9219 L153.9688,137.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="125" x="165" y="136.1543">ns3::ns1::ns2::Anon</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="137" x2="292" y1="148" y2="148"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="137" x2="292" y1="156" y2="156"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L21" target="_top" title="Anon" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L21" xlink:show="new" xlink:title="Anon" xlink:type="simple">
<g id="elem_C_0001797521288354158629">
<rect codeLine="14" fill="#F1F1F1" height="48" id="C_0001797521288354158629" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="158" x="138" y="115"/>
<ellipse cx="153" cy="131" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M148,132.1563 C148,134.6563 150.1406,136.4688 153.0625,136.4688 C154.2969,136.4688 155.4688,136.1719 156.2188,135.6563 C156.8281,135.2344 157.1563,134.8125 157.1563,134.4063 C157.1563,133.9375 156.7344,133.5313 156.2344,133.5313 C156,133.5313 155.7813,133.6094 155.5781,133.8125 C155.1406,134.25 155.1406,134.25 154.9688,134.3438 C154.5156,134.5781 153.875,134.7188 153.1094,134.7188 C151.1094,134.7188 149.8281,133.7031 149.8281,132.125 L149.8281,131.0781 C149.8281,129.375 151.0469,128.1719 152.75,128.1719 C153.3281,128.1719 153.9063,128.3125 154.375,128.5625 C154.8438,128.8281 155.0156,129.0156 155.0781,129.375 C155.2031,130.0469 155.4531,130.2969 155.9844,130.2969 C156.2656,130.2969 156.5469,130.1563 156.7344,129.9375 C156.8594,129.7656 156.9063,129.5938 156.9063,129.1563 L156.9063,127.7969 C156.9063,127.375 156.8906,127.2344 156.7656,127.0625 C156.5938,126.8125 156.3125,126.6563 155.9844,126.6563 C155.6719,126.6563 155.4688,126.7656 155.25,127.0313 C154.0781,126.5313 153.6406,126.4219 152.6875,126.4219 C150.0156,126.4219 148,128.4375 148,131.0625 L148,132.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="126" x="167" y="135.606">ns3::ns1::ns2::Anon</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="139" x2="295" y1="147" y2="147"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="139" x2="295" y1="155" y2="155"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L24" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L24" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fzov5tha4duru)" height="48" id="C_0006967059102554848740" style="stroke: #A80036; stroke-width: 1.5;" width="71" x="179" y="224"/>
<ellipse cx="194" cy="240" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M196.9688,245.6406 Q196.3906,245.9375 195.75,246.0781 Q195.1094,246.2344 194.4063,246.2344 Q191.9063,246.2344 190.5781,244.5938 Q189.2656,242.9375 189.2656,239.8125 Q189.2656,236.6875 190.5781,235.0313 Q191.9063,233.375 194.4063,233.375 Q195.1094,233.375 195.75,233.5313 Q196.4063,233.6875 196.9688,233.9844 L196.9688,236.7031 Q196.3438,236.125 195.75,235.8594 Q195.1563,235.5781 194.5313,235.5781 Q193.1875,235.5781 192.5,236.6563 Q191.8125,237.7188 191.8125,239.8125 Q191.8125,241.9063 192.5,242.9844 Q193.1875,244.0469 194.5313,244.0469 Q195.1563,244.0469 195.75,243.7813 Q196.3438,243.5 196.9688,242.9219 L196.9688,245.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="39" x="208" y="244.1543">ns3::B</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="180" x2="249" y1="256" y2="256"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="180" x2="249" y1="264" y2="264"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L24" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L24" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0000870882387819356092">
<rect codeLine="18" fill="#F1F1F1" height="48" id="C_0000870882387819356092" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="72" x="181" y="223"/>
<ellipse cx="196" cy="239" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M191,240.1563 C191,242.6563 193.1406,244.4688 196.0625,244.4688 C197.2969,244.4688 198.4688,244.1719 199.2188,243.6563 C199.8281,243.2344 200.1563,242.8125 200.1563,242.4063 C200.1563,241.9375 199.7344,241.5313 199.2344,241.5313 C199,241.5313 198.7813,241.6094 198.5781,241.8125 C198.1406,242.25 198.1406,242.25 197.9688,242.3438 C197.5156,242.5781 196.875,242.7188 196.1094,242.7188 C194.1094,242.7188 192.8281,241.7031 192.8281,240.125 L192.8281,239.0781 C192.8281,237.375 194.0469,236.1719 195.75,236.1719 C196.3281,236.1719 196.9063,236.3125 197.375,236.5625 C197.8438,236.8281 198.0156,237.0156 198.0781,237.375 C198.2031,238.0469 198.4531,238.2969 198.9844,238.2969 C199.2656,238.2969 199.5469,238.1563 199.7344,237.9375 C199.8594,237.7656 199.9063,237.5938 199.9063,237.1563 L199.9063,235.7969 C199.9063,235.375 199.8906,235.2344 199.7656,235.0625 C199.5938,234.8125 199.3125,234.6563 198.9844,234.6563 C198.6719,234.6563 198.4688,234.7656 198.25,235.0313 C197.0781,234.5313 196.6406,234.4219 195.6875,234.4219 C193.0156,234.4219 191,236.4375 191,239.0625 L191,240.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="40" x="210" y="243.606">ns3::B</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="182" x2="252" y1="255" y2="255"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="182" x2="252" y1="263" y2="263"/>
</g>
</a>
<path d="M103.93,72.18 C92.9,86.8 80.72,102.93 71.1,115.68 " fill="none" id="C_0011285559110441195627&lt;-C_0008485849058996602634" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="98.51,67.75,116.14,56,109.68,76.18,98.51,67.75" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M163.44,72.18 C174.61,86.8 186.94,102.93 196.68,115.68 " fill="none" id="C_0011285559110441195627&lt;-C_0014380170306833269036" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="157.66,76.14,151.08,56,168.78,67.64,157.66,76.14" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M214.5,184.02 C214.5,197.58 214.5,212.04 214.5,223.68 " fill="none" id="C_0014380170306833269036&lt;-C_0006967059102554848740" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="207.5,184,214.5,164,221.5,184,207.5,184" style="stroke: #A80036; stroke-width: 1.0;"/>
<g id="link_C_0001410694888805149453_C_0001060731132374575329">
<path codeLine="21" d="M107.2961,69.5662 C93.7961,87.2462 86.23,97.13 72.73,114.79 " fill="none" id="C_0001410694888805149453-backto-C_0001060731132374575329" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="118.22,55.26,102.5274,65.925,112.0649,73.2075,118.22,55.26" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001410694888805149453_C_0001797521288354158629">
<path codeLine="22" d="M164.7039,69.5662 C178.2039,87.2462 185.77,97.13 199.27,114.79 " fill="none" id="C_0001410694888805149453-backto-C_0001797521288354158629" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="153.78,55.26,159.9351,73.2075,169.4726,65.925,153.78,55.26" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001797521288354158629_C_0000870882387819356092">
<path codeLine="23" d="M217,181.26 C217,198.94 217,205.13 217,222.79 " fill="none" id="C_0001797521288354158629-backto-C_0000870882387819356092" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="217,163.26,211,181.26,223,181.26,217,163.26" style="stroke:#181818;stroke-width:1.0;"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -1,58 +1,63 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 401.91015625 287" style="max-width: 401.91px; background-color: white;" width="401.91015625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M113.83203125,55.50775525943699L104.03580729166667,61.25646271619749C94.23958333333333,67.00517017295799,74.64713541666667,78.50258508647899,64.85091145833333,88.41795920990616C55.0546875,98.33333333333333,55.0546875,106.66666666666667,55.0546875,110.83333333333333L55.0546875,115"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M178.61328125,55.50775525943699L188.40950520833334,61.25646271619749C198.20572916666666,67.00517017295799,217.79817708333334,78.50258508647899,227.59440104166666,88.41795920990616C237.390625,98.33333333333333,237.390625,106.66666666666667,237.390625,110.83333333333333L237.390625,115"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M237.390625,172L237.390625,176.16666666666666C237.390625,180.33333333333334,237.390625,188.66666666666666,237.390625,197C237.390625,205.33333333333334,237.390625,213.66666666666666,237.390625,217.83333333333334L237.390625,222"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M98.30768237624903,64.6178920337158L91.09884989687419,68.84824336142984C83.89001741749935,73.07859468914387,69.47235245874968,81.53929734457193,62.26351997937484,89.93631533895264C55.0546875,98.33333333333333,55.0546875,106.66666666666667,55.0546875,110.83333333333333L55.0546875,115"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M194.13763012375097,64.6178920337158L201.34646260312581,68.84824336142984C208.55529508250063,73.07859468914387,222.97296004125033,81.53929734457193,230.18179252062518,89.93631533895264C237.390625,98.33333333333333,237.390625,106.66666666666667,237.390625,110.83333333333333L237.390625,115"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M237.390625,190L237.390625,191.16666666666666C237.390625,192.33333333333334,237.390625,194.66666666666666,237.390625,200C237.390625,205.33333333333334,237.390625,213.66666666666666,237.390625,217.83333333333334L237.390625,222"/>
</g>
<g class="edgeLabels">
<g class="edgeLabel">
@@ -84,8 +89,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(146.22265625, 36.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L6">
<g title="A" id="classId-C_0011285559110441195627-0" class="node default clickable">
<a transform="translate(146.22265625, 36.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L6">
<g title="A" id="classId-C_0001410694888805149453-0" class="node default clickable">
<rect height="57" width="64.78125" y="-28.5" x="-32.390625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="32.390625" x1="-32.390625" class="divider"/>
<line y2="17.5" y1="17.5" x2="32.390625" x1="-32.390625" class="divider"/>
@@ -103,8 +108,8 @@
</g>
</g>
</a>
<a transform="translate(311.26171875, 36.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L10">
<g title="A" id="classId-C_0003884421184392710906-1" class="node default clickable">
<a transform="translate(311.26171875, 36.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L10">
<g title="A" id="classId-C_0000485552648049088863-1" class="node default clickable">
<rect height="57" width="165.296875" y="-28.5" x="-82.6484375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="82.6484375" x1="-82.6484375" class="divider"/>
<line y2="17.5" y1="17.5" x2="82.6484375" x1="-82.6484375" class="divider"/>
@@ -122,8 +127,8 @@
</g>
</g>
</a>
<a transform="translate(55.0546875, 143.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L14">
<g title="Anon" id="classId-C_0008485849058996602634-2" class="node default clickable">
<a transform="translate(55.0546875, 143.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L14">
<g title="Anon" id="classId-C_0001060731132374575329-2" class="node default clickable">
<rect height="57" width="94.109375" y="-28.5" x="-47.0546875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="47.0546875" x1="-47.0546875" class="divider"/>
<line y2="17.5" y1="17.5" x2="47.0546875" x1="-47.0546875" class="divider"/>
@@ -141,8 +146,8 @@
</g>
</g>
</a>
<a transform="translate(237.390625, 143.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L21">
<g title="Anon" id="classId-C_0014380170306833269036-3" class="node default clickable">
<a transform="translate(237.390625, 143.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L21">
<g title="Anon" id="classId-C_0001797521288354158629-3" class="node default clickable">
<rect height="57" width="170.5625" y="-28.5" x="-85.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="85.28125" x1="-85.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="85.28125" x1="-85.28125" class="divider"/>
@@ -160,8 +165,8 @@
</g>
</g>
</a>
<a transform="translate(237.390625, 250.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00015/t00015.cc#L24">
<g title="B" id="classId-C_0006967059102554848740-4" class="node default clickable">
<a transform="translate(237.390625, 250.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00015/t00015.cc#L24">
<g title="B" id="classId-C_0000870882387819356092-4" class="node default clickable">
<rect height="57" width="64.78125" y="-28.5" x="-32.390625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="32.390625" x1="-32.390625" class="divider"/>
<line y2="17.5" y1="17.5" x2="32.390625" x1="-32.390625" class="divider"/>

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -7,9 +7,6 @@ diagrams:
glob:
- t00016.cc
using_namespace: clanguml::t00016
plantuml:
style:
instantiation: up
include:
namespaces:
- clanguml::t00016
@@ -59,8 +56,8 @@ template <> struct is_numeric<bool> {
"elements": [
{
"bases": [],
"display_name": "is_numeric<typename>",
"id": "7462850660467683116",
"display_name": "clanguml::t00016::is_numeric<typename>",
"id": "932856332558460389",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -95,8 +92,8 @@ template <> struct is_numeric<bool> {
},
{
"bases": [],
"display_name": "is_numeric<float>",
"id": "764946365186193592",
"display_name": "clanguml::t00016::is_numeric<float>",
"id": "95618295648274199",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -131,8 +128,8 @@ template <> struct is_numeric<bool> {
},
{
"bases": [],
"display_name": "is_numeric<char>",
"id": "7833035054326093824",
"display_name": "clanguml::t00016::is_numeric<char>",
"id": "979129381790761728",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -167,8 +164,8 @@ template <> struct is_numeric<bool> {
},
{
"bases": [],
"display_name": "is_numeric<unsigned int>",
"id": "16726301520218734694",
"display_name": "clanguml::t00016::is_numeric<unsigned int>",
"id": "2090787690027341836",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -203,8 +200,8 @@ template <> struct is_numeric<bool> {
},
{
"bases": [],
"display_name": "is_numeric<int>",
"id": "4004824601899568602",
"display_name": "clanguml::t00016::is_numeric<int>",
"id": "500603075237446075",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -239,8 +236,8 @@ template <> struct is_numeric<bool> {
},
{
"bases": [],
"display_name": "is_numeric<bool>",
"id": "16890534700107359361",
"display_name": "clanguml::t00016::is_numeric<bool>",
"id": "2111316837513419920",
"is_abstract": false,
"is_nested": false,
"is_struct": true,
@@ -275,36 +272,35 @@ template <> struct is_numeric<bool> {
}
],
"name": "t00016_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "7462850660467683116",
"source": "764946365186193592",
"destination": "932856332558460389",
"source": "95618295648274199",
"type": "instantiation"
},
{
"access": "public",
"destination": "7462850660467683116",
"source": "7833035054326093824",
"destination": "932856332558460389",
"source": "979129381790761728",
"type": "instantiation"
},
{
"access": "public",
"destination": "7462850660467683116",
"source": "16726301520218734694",
"destination": "932856332558460389",
"source": "2090787690027341836",
"type": "instantiation"
},
{
"access": "public",
"destination": "7462850660467683116",
"source": "4004824601899568602",
"destination": "932856332558460389",
"source": "500603075237446075",
"type": "instantiation"
},
{
"access": "public",
"destination": "7462850660467683116",
"source": "16890534700107359361",
"destination": "932856332558460389",
"source": "2111316837513419920",
"type": "instantiation"
}
],

View File

@@ -1,95 +1,111 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="200px" preserveAspectRatio="none" style="width:847px;height:200px;" version="1.1" viewBox="0 0 847 200" width="847px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="206px" preserveAspectRatio="none" style="width:835px;height:206px;background:#FFFFFF;" version="1.1" viewBox="0 0 835 206" width="835px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f4b0tqmucqfd6" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L4" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L4" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f4b0tqmucqfd6)" height="60.8047" id="C_0007462850660467683116" style="stroke: #A80036; stroke-width: 1.5;" width="165" x="343.5" y="8"/>
<ellipse cx="358.5" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M361.4688,29.6406 Q360.8906,29.9375 360.25,30.0781 Q359.6094,30.2344 358.9063,30.2344 Q356.4063,30.2344 355.0781,28.5938 Q353.7656,26.9375 353.7656,23.8125 Q353.7656,20.6875 355.0781,19.0313 Q356.4063,17.375 358.9063,17.375 Q359.6094,17.375 360.25,17.5313 Q360.9063,17.6875 361.4688,17.9844 L361.4688,20.7031 Q360.8438,20.125 360.25,19.8594 Q359.6563,19.5781 359.0313,19.5781 Q357.6875,19.5781 357,20.6563 Q356.3125,21.7188 356.3125,23.8125 Q356.3125,25.9063 357,26.9844 Q357.6875,28.0469 359.0313,28.0469 Q359.6563,28.0469 360.25,27.7813 Q360.8438,27.5 361.4688,26.9219 L361.4688,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="372.5" y="28.1543">is_numeric</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="65" x="446.5" y="5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="63" x="447.5" y="17.1387">typename</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="344.5" x2="507.5" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="344.5" x2="507.5" y1="48" y2="48"/>
<ellipse cx="354.5" cy="59" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="363.5" y="62.2104">value : enum</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L4" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L4" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<g id="elem_C_0000932856332558460389">
<rect codeLine="2" fill="#F1F1F1" height="64.7999" id="C_0000932856332558460389" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="159" x="341.5" y="134.8"/>
<ellipse cx="356.5" cy="150.8" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M351.5,151.9562 C351.5,154.4562 353.6406,156.2687 356.5625,156.2687 C357.7969,156.2687 358.9688,155.9719 359.7188,155.4562 C360.3281,155.0344 360.6563,154.6125 360.6563,154.2062 C360.6563,153.7375 360.2344,153.3312 359.7344,153.3312 C359.5,153.3312 359.2813,153.4094 359.0781,153.6125 C358.6406,154.05 358.6406,154.05 358.4688,154.1437 C358.0156,154.3781 357.375,154.5187 356.6094,154.5187 C354.6094,154.5187 353.3281,153.5031 353.3281,151.925 L353.3281,150.8781 C353.3281,149.175 354.5469,147.9719 356.25,147.9719 C356.8281,147.9719 357.4063,148.1125 357.875,148.3625 C358.3438,148.6281 358.5156,148.8156 358.5781,149.175 C358.7031,149.8469 358.9531,150.0969 359.4844,150.0969 C359.7656,150.0969 360.0469,149.9562 360.2344,149.7375 C360.3594,149.5656 360.4063,149.3937 360.4063,148.9562 L360.4063,147.5969 C360.4063,147.175 360.3906,147.0344 360.2656,146.8625 C360.0938,146.6125 359.8125,146.4562 359.4844,146.4562 C359.1719,146.4562 358.9688,146.5656 358.75,146.8312 C357.5781,146.3312 357.1406,146.2219 356.1875,146.2219 C353.5156,146.2219 351.5,148.2375 351.5,150.8625 L351.5,151.9562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69" x="370.5" y="155.406">is_numeric</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="56" x="447.5" y="131.8"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="54" x="448.5" y="146.0001">typename</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="342.5" x2="499.5" y1="166.8" y2="166.8"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="342.5" x2="499.5" y1="174.8" y2="174.8"/>
<ellipse cx="352.5" cy="188.7" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="361.5" y="191.8059">value : enum</text>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L8" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L8" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f4b0tqmucqfd6)" height="60.8047" id="C_0000764946365186193592" style="stroke: #A80036; stroke-width: 1.5;" width="130" x="6" y="129"/>
<ellipse cx="21" cy="145" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M23.9688,150.6406 Q23.3906,150.9375 22.75,151.0781 Q22.1094,151.2344 21.4063,151.2344 Q18.9063,151.2344 17.5781,149.5938 Q16.2656,147.9375 16.2656,144.8125 Q16.2656,141.6875 17.5781,140.0313 Q18.9063,138.375 21.4063,138.375 Q22.1094,138.375 22.75,138.5313 Q23.4063,138.6875 23.9688,138.9844 L23.9688,141.7031 Q23.3438,141.125 22.75,140.8594 Q22.1563,140.5781 21.5313,140.5781 Q20.1875,140.5781 19.5,141.6563 Q18.8125,142.7188 18.8125,144.8125 Q18.8125,146.9063 19.5,147.9844 Q20.1875,149.0469 21.5313,149.0469 Q22.1563,149.0469 22.75,148.7813 Q23.3438,148.5 23.9688,147.9219 L23.9688,150.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="35" y="149.1543">is_numeric</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="30" x="109" y="126"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="28" x="110" y="138.1387">float</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="135" y1="161" y2="161"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="135" y1="169" y2="169"/>
<ellipse cx="17" cy="180" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="26" y="183.2104">value : enum</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L8" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L8" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<g id="elem_C_0000095618295648274199">
<rect codeLine="7" fill="#F1F1F1" height="64.7999" id="C_0000095618295648274199" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="128" x="7" y="10"/>
<ellipse cx="22" cy="26" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M17,27.1563 C17,29.6563 19.1406,31.4688 22.0625,31.4688 C23.2969,31.4688 24.4688,31.1719 25.2188,30.6563 C25.8281,30.2344 26.1563,29.8125 26.1563,29.4063 C26.1563,28.9375 25.7344,28.5313 25.2344,28.5313 C25,28.5313 24.7813,28.6094 24.5781,28.8125 C24.1406,29.25 24.1406,29.25 23.9688,29.3438 C23.5156,29.5781 22.875,29.7188 22.1094,29.7188 C20.1094,29.7188 18.8281,28.7031 18.8281,27.125 L18.8281,26.0781 C18.8281,24.375 20.0469,23.1719 21.75,23.1719 C22.3281,23.1719 22.9063,23.3125 23.375,23.5625 C23.8438,23.8281 24.0156,24.0156 24.0781,24.375 C24.2031,25.0469 24.4531,25.2969 24.9844,25.2969 C25.2656,25.2969 25.5469,25.1563 25.7344,24.9375 C25.8594,24.7656 25.9063,24.5938 25.9063,24.1563 L25.9063,22.7969 C25.9063,22.375 25.8906,22.2344 25.7656,22.0625 C25.5938,21.8125 25.3125,21.6563 24.9844,21.6563 C24.6719,21.6563 24.4688,21.7656 24.25,22.0313 C23.0781,21.5313 22.6406,21.4219 21.6875,21.4219 C19.0156,21.4219 17,23.4375 17,26.0625 L17,27.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69" x="36" y="30.606">is_numeric</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="25" x="113" y="7"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="23" x="114" y="21.2001">float</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="134" y1="42" y2="42"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="134" y1="50" y2="50"/>
<ellipse cx="18" cy="63.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="27" y="67.0059">value : enum</text>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L12" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L12" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f4b0tqmucqfd6)" height="60.8047" id="C_0007833035054326093824" style="stroke: #A80036; stroke-width: 1.5;" width="130" x="171" y="129"/>
<ellipse cx="186" cy="145" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M188.9688,150.6406 Q188.3906,150.9375 187.75,151.0781 Q187.1094,151.2344 186.4063,151.2344 Q183.9063,151.2344 182.5781,149.5938 Q181.2656,147.9375 181.2656,144.8125 Q181.2656,141.6875 182.5781,140.0313 Q183.9063,138.375 186.4063,138.375 Q187.1094,138.375 187.75,138.5313 Q188.4063,138.6875 188.9688,138.9844 L188.9688,141.7031 Q188.3438,141.125 187.75,140.8594 Q187.1563,140.5781 186.5313,140.5781 Q185.1875,140.5781 184.5,141.6563 Q183.8125,142.7188 183.8125,144.8125 Q183.8125,146.9063 184.5,147.9844 Q185.1875,149.0469 186.5313,149.0469 Q187.1563,149.0469 187.75,148.7813 Q188.3438,148.5 188.9688,147.9219 L188.9688,150.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="200" y="149.1543">is_numeric</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="30" x="274" y="126"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="28" x="275" y="138.1387">char</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="172" x2="300" y1="161" y2="161"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="172" x2="300" y1="169" y2="169"/>
<ellipse cx="182" cy="180" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="191" y="183.2104">value : enum</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L12" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L12" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<g id="elem_C_0000979129381790761728">
<rect codeLine="12" fill="#F1F1F1" height="64.7999" id="C_0000979129381790761728" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="129" x="170.5" y="10"/>
<ellipse cx="185.5" cy="26" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M180.5,27.1563 C180.5,29.6563 182.6406,31.4688 185.5625,31.4688 C186.7969,31.4688 187.9688,31.1719 188.7188,30.6563 C189.3281,30.2344 189.6563,29.8125 189.6563,29.4063 C189.6563,28.9375 189.2344,28.5313 188.7344,28.5313 C188.5,28.5313 188.2813,28.6094 188.0781,28.8125 C187.6406,29.25 187.6406,29.25 187.4688,29.3438 C187.0156,29.5781 186.375,29.7188 185.6094,29.7188 C183.6094,29.7188 182.3281,28.7031 182.3281,27.125 L182.3281,26.0781 C182.3281,24.375 183.5469,23.1719 185.25,23.1719 C185.8281,23.1719 186.4063,23.3125 186.875,23.5625 C187.3438,23.8281 187.5156,24.0156 187.5781,24.375 C187.7031,25.0469 187.9531,25.2969 188.4844,25.2969 C188.7656,25.2969 189.0469,25.1563 189.2344,24.9375 C189.3594,24.7656 189.4063,24.5938 189.4063,24.1563 L189.4063,22.7969 C189.4063,22.375 189.3906,22.2344 189.2656,22.0625 C189.0938,21.8125 188.8125,21.6563 188.4844,21.6563 C188.1719,21.6563 187.9688,21.7656 187.75,22.0313 C186.5781,21.5313 186.1406,21.4219 185.1875,21.4219 C182.5156,21.4219 180.5,23.4375 180.5,26.0625 L180.5,27.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69" x="199.5" y="30.606">is_numeric</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="26" x="276.5" y="7"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="24" x="277.5" y="21.2001">char</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="171.5" x2="298.5" y1="42" y2="42"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="171.5" x2="298.5" y1="50" y2="50"/>
<ellipse cx="181.5" cy="63.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="190.5" y="67.0059">value : enum</text>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L16" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L16" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f4b0tqmucqfd6)" height="60.8047" id="C_0016726301520218734694" style="stroke: #A80036; stroke-width: 1.5;" width="179" x="336.5" y="129"/>
<ellipse cx="351.5" cy="145" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M354.4688,150.6406 Q353.8906,150.9375 353.25,151.0781 Q352.6094,151.2344 351.9063,151.2344 Q349.4063,151.2344 348.0781,149.5938 Q346.7656,147.9375 346.7656,144.8125 Q346.7656,141.6875 348.0781,140.0313 Q349.4063,138.375 351.9063,138.375 Q352.6094,138.375 353.25,138.5313 Q353.9063,138.6875 354.4688,138.9844 L354.4688,141.7031 Q353.8438,141.125 353.25,140.8594 Q352.6563,140.5781 352.0313,140.5781 Q350.6875,140.5781 350,141.6563 Q349.3125,142.7188 349.3125,144.8125 Q349.3125,146.9063 350,147.9844 Q350.6875,149.0469 352.0313,149.0469 Q352.6563,149.0469 353.25,148.7813 Q353.8438,148.5 354.4688,147.9219 L354.4688,150.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="365.5" y="149.1543">is_numeric</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="79" x="439.5" y="126"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="77" x="440.5" y="138.1387">unsigned int</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="337.5" x2="514.5" y1="161" y2="161"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="337.5" x2="514.5" y1="169" y2="169"/>
<ellipse cx="347.5" cy="180" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="356.5" y="183.2104">value : enum</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L16" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L16" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<g id="elem_C_0002090787690027341836">
<rect codeLine="17" fill="#F1F1F1" height="64.7999" id="C_0002090787690027341836" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="172" x="335" y="10"/>
<ellipse cx="350" cy="26" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M345,27.1563 C345,29.6563 347.1406,31.4688 350.0625,31.4688 C351.2969,31.4688 352.4688,31.1719 353.2188,30.6563 C353.8281,30.2344 354.1563,29.8125 354.1563,29.4063 C354.1563,28.9375 353.7344,28.5313 353.2344,28.5313 C353,28.5313 352.7813,28.6094 352.5781,28.8125 C352.1406,29.25 352.1406,29.25 351.9688,29.3438 C351.5156,29.5781 350.875,29.7188 350.1094,29.7188 C348.1094,29.7188 346.8281,28.7031 346.8281,27.125 L346.8281,26.0781 C346.8281,24.375 348.0469,23.1719 349.75,23.1719 C350.3281,23.1719 350.9063,23.3125 351.375,23.5625 C351.8438,23.8281 352.0156,24.0156 352.0781,24.375 C352.2031,25.0469 352.4531,25.2969 352.9844,25.2969 C353.2656,25.2969 353.5469,25.1563 353.7344,24.9375 C353.8594,24.7656 353.9063,24.5938 353.9063,24.1563 L353.9063,22.7969 C353.9063,22.375 353.8906,22.2344 353.7656,22.0625 C353.5938,21.8125 353.3125,21.6563 352.9844,21.6563 C352.6719,21.6563 352.4688,21.7656 352.25,22.0313 C351.0781,21.5313 350.6406,21.4219 349.6875,21.4219 C347.0156,21.4219 345,23.4375 345,26.0625 L345,27.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69" x="364" y="30.606">is_numeric</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="69" x="441" y="7"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="67" x="442" y="21.2001">unsigned int</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="336" x2="506" y1="42" y2="42"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="336" x2="506" y1="50" y2="50"/>
<ellipse cx="346" cy="63.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="355" y="67.0059">value : enum</text>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L20" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L20" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f4b0tqmucqfd6)" height="60.8047" id="C_0004004824601899568602" style="stroke: #A80036; stroke-width: 1.5;" width="118" x="551" y="129"/>
<ellipse cx="566" cy="145" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M568.9688,150.6406 Q568.3906,150.9375 567.75,151.0781 Q567.1094,151.2344 566.4063,151.2344 Q563.9063,151.2344 562.5781,149.5938 Q561.2656,147.9375 561.2656,144.8125 Q561.2656,141.6875 562.5781,140.0313 Q563.9063,138.375 566.4063,138.375 Q567.1094,138.375 567.75,138.5313 Q568.4063,138.6875 568.9688,138.9844 L568.9688,141.7031 Q568.3438,141.125 567.75,140.8594 Q567.1563,140.5781 566.5313,140.5781 Q565.1875,140.5781 564.5,141.6563 Q563.8125,142.7188 563.8125,144.8125 Q563.8125,146.9063 564.5,147.9844 Q565.1875,149.0469 566.5313,149.0469 Q567.1563,149.0469 567.75,148.7813 Q568.3438,148.5 568.9688,147.9219 L568.9688,150.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="580" y="149.1543">is_numeric</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="18" x="654" y="126"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="16" x="655" y="138.1387">int</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="552" x2="668" y1="161" y2="161"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="552" x2="668" y1="169" y2="169"/>
<ellipse cx="562" cy="180" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="571" y="183.2104">value : enum</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L20" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L20" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<g id="elem_C_0000500603075237446075">
<rect codeLine="22" fill="#F1F1F1" height="64.7999" id="C_0000500603075237446075" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="118" x="542" y="10"/>
<ellipse cx="557" cy="26" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M552,27.1563 C552,29.6563 554.1406,31.4688 557.0625,31.4688 C558.2969,31.4688 559.4688,31.1719 560.2188,30.6563 C560.8281,30.2344 561.1563,29.8125 561.1563,29.4063 C561.1563,28.9375 560.7344,28.5313 560.2344,28.5313 C560,28.5313 559.7813,28.6094 559.5781,28.8125 C559.1406,29.25 559.1406,29.25 558.9688,29.3438 C558.5156,29.5781 557.875,29.7188 557.1094,29.7188 C555.1094,29.7188 553.8281,28.7031 553.8281,27.125 L553.8281,26.0781 C553.8281,24.375 555.0469,23.1719 556.75,23.1719 C557.3281,23.1719 557.9063,23.3125 558.375,23.5625 C558.8438,23.8281 559.0156,24.0156 559.0781,24.375 C559.2031,25.0469 559.4531,25.2969 559.9844,25.2969 C560.2656,25.2969 560.5469,25.1563 560.7344,24.9375 C560.8594,24.7656 560.9063,24.5938 560.9063,24.1563 L560.9063,22.7969 C560.9063,22.375 560.8906,22.2344 560.7656,22.0625 C560.5938,21.8125 560.3125,21.6563 559.9844,21.6563 C559.6719,21.6563 559.4688,21.7656 559.25,22.0313 C558.0781,21.5313 557.6406,21.4219 556.6875,21.4219 C554.0156,21.4219 552,23.4375 552,26.0625 L552,27.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69" x="571" y="30.606">is_numeric</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="15" x="648" y="7"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="13" x="649" y="21.2001">int</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="543" x2="659" y1="42" y2="42"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="543" x2="659" y1="50" y2="50"/>
<ellipse cx="553" cy="63.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="562" y="67.0059">value : enum</text>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L24" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L24" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f4b0tqmucqfd6)" height="60.8047" id="C_0016890534700107359361" style="stroke: #A80036; stroke-width: 1.5;" width="129" x="704.5" y="129"/>
<ellipse cx="719.5" cy="145" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M722.4688,150.6406 Q721.8906,150.9375 721.25,151.0781 Q720.6094,151.2344 719.9063,151.2344 Q717.4063,151.2344 716.0781,149.5938 Q714.7656,147.9375 714.7656,144.8125 Q714.7656,141.6875 716.0781,140.0313 Q717.4063,138.375 719.9063,138.375 Q720.6094,138.375 721.25,138.5313 Q721.9063,138.6875 722.4688,138.9844 L722.4688,141.7031 Q721.8438,141.125 721.25,140.8594 Q720.6563,140.5781 720.0313,140.5781 Q718.6875,140.5781 718,141.6563 Q717.3125,142.7188 717.3125,144.8125 Q717.3125,146.9063 718,147.9844 Q718.6875,149.0469 720.0313,149.0469 Q720.6563,149.0469 721.25,148.7813 Q721.8438,148.5 722.4688,147.9219 L722.4688,150.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="733.5" y="149.1543">is_numeric</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="29" x="807.5" y="126"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="27" x="808.5" y="138.1387">bool</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="705.5" x2="832.5" y1="161" y2="161"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="705.5" x2="832.5" y1="169" y2="169"/>
<ellipse cx="715.5" cy="180" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="74" x="724.5" y="183.2104">value : enum</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L24" target="_top" title="is_numeric" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L24" xlink:show="new" xlink:title="is_numeric" xlink:type="simple">
<g id="elem_C_0002111316837513419920">
<rect codeLine="27" fill="#F1F1F1" height="64.7999" id="C_0002111316837513419920" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="129" x="695.5" y="10"/>
<ellipse cx="710.5" cy="26" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M705.5,27.1563 C705.5,29.6563 707.6406,31.4688 710.5625,31.4688 C711.7969,31.4688 712.9688,31.1719 713.7188,30.6563 C714.3281,30.2344 714.6563,29.8125 714.6563,29.4063 C714.6563,28.9375 714.2344,28.5313 713.7344,28.5313 C713.5,28.5313 713.2813,28.6094 713.0781,28.8125 C712.6406,29.25 712.6406,29.25 712.4688,29.3438 C712.0156,29.5781 711.375,29.7188 710.6094,29.7188 C708.6094,29.7188 707.3281,28.7031 707.3281,27.125 L707.3281,26.0781 C707.3281,24.375 708.5469,23.1719 710.25,23.1719 C710.8281,23.1719 711.4063,23.3125 711.875,23.5625 C712.3438,23.8281 712.5156,24.0156 712.5781,24.375 C712.7031,25.0469 712.9531,25.2969 713.4844,25.2969 C713.7656,25.2969 714.0469,25.1563 714.2344,24.9375 C714.3594,24.7656 714.4063,24.5938 714.4063,24.1563 L714.4063,22.7969 C714.4063,22.375 714.3906,22.2344 714.2656,22.0625 C714.0938,21.8125 713.8125,21.6563 713.4844,21.6563 C713.1719,21.6563 712.9688,21.7656 712.75,22.0313 C711.5781,21.5313 711.1406,21.4219 710.1875,21.4219 C707.5156,21.4219 705.5,23.4375 705.5,26.0625 L705.5,27.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69" x="724.5" y="30.606">is_numeric</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="26" x="801.5" y="7"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="24" x="802.5" y="21.2001">bool</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="696.5" x2="823.5" y1="42" y2="42"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="696.5" x2="823.5" y1="50" y2="50"/>
<ellipse cx="706.5" cy="63.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="715.5" y="67.0059">value : enum</text>
</g>
</a>
<path d="M324.27,72.09 C272.82,88.76 209.46,109.59 153,129 C147.56,130.87 141.93,132.83 136.29,134.82 " fill="none" id="C_0007462850660467683116&lt;-C_0000764946365186193592" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="322.18,65.41,343.36,65.91,326.49,78.73,322.18,65.41" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M361.42,79.95 C335.77,96.01 306.8,114.15 283.18,128.95 " fill="none" id="C_0007462850660467683116&lt;-C_0007833035054326093824" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="357.88,73.91,378.55,69.22,365.31,85.77,357.88,73.91" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M426,89.33 C426,102.73 426,116.81 426,128.74 " fill="none" id="C_0007462850660467683116&lt;-C_0016726301520218734694" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="419,89.22,426,69.22,433,89.22,419,89.22" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M488.9,80.18 C513.65,96.19 541.54,114.23 564.31,128.95 " fill="none" id="C_0007462850660467683116&lt;-C_0004004824601899568602" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="484.95,85.96,471.96,69.22,492.55,74.21,484.95,85.96" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M527.69,73.98 C576.02,90.46 634.55,110.57 687,129 C692.57,130.96 698.34,133 704.13,135.06 " fill="none" id="C_0007462850660467683116&lt;-C_0016890534700107359361" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="525.36,80.58,508.69,67.5,529.88,67.33,525.36,80.58" style="stroke: #A80036; stroke-width: 1.0;"/>
<g id="link_C_0000095618295648274199_C_0000932856332558460389">
<path codeLine="31" d="M135.37,68.31 C141.32,70.53 147.27,72.73 153,74.8 C215.98,97.59 270.7682,116.3045 324.2082,134.1645 " fill="none" id="C_0000095618295648274199-to-C_0000932856332558460389" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="341.28,139.87,326.11,128.4739,322.3063,139.8551,341.28,139.87" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000979129381790761728_C_0000932856332558460389">
<path codeLine="32" d="M282.9,75.02 C310.56,93.29 330.2282,106.2731 357.9182,124.5531 " fill="none" id="C_0000979129381790761728-to-C_0000932856332558460389" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="372.94,134.47,361.2238,119.5458,354.6125,129.5604,372.94,134.47" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002090787690027341836_C_0000932856332558460389">
<path codeLine="33" d="M421,75.02 C421,93.36 421,98.37 421,116.68 " fill="none" id="C_0002090787690027341836-to-C_0000932856332558460389" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="421,134.68,427,116.68,415,116.68,421,134.68" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000500603075237446075_C_0000932856332558460389">
<path codeLine="34" d="M554.65,75.02 C527.88,93.29 509.1802,106.0472 482.3802,124.3272 " fill="none" id="C_0000500603075237446075-to-C_0000932856332558460389" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="467.51,134.47,485.7612,129.2839,478.9993,119.3704,467.51,134.47" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002111316837513419920_C_0000932856332558460389">
<path codeLine="35" d="M695.15,68.4 C689.36,70.58 683.58,72.74 678,74.8 C618.8,96.66 568.5812,114.55 517.7512,132.42 " fill="none" id="C_0002111316837513419920-to-C_0000932856332558460389" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="500.77,138.39,519.7411,138.0804,515.7612,126.7597,500.77,138.39" style="stroke:#181818;stroke-width:1.0;"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -1,60 +1,65 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1022.859375 224" style="max-width: 1022.86px; background-color: white;" width="1022.859375" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M83.9765625,87L83.9765625,91.16666666666667C83.9765625,95.33333333333333,83.9765625,103.66666666666667,140.33463541666666,116.19783708151317C196.69270833333334,128.72900749635969,309.4088541666667,145.45801499271937,365.7669270833333,153.8225187408992L422.125,162.18702248907906"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M285.9375,87L285.9375,91.16666666666667C285.9375,95.33333333333333,285.9375,103.66666666666667,308.6354166666667,114.12679115171055C331.3333333333333,124.58691563675443,376.7291666666667,137.17383127350885,399.4270833333333,143.46728909188607L422.125,149.7607469102633"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M518.5625,87L518.5625,91.16666666666667C518.5625,95.33333333333333,518.5625,103.66666666666667,518.5625,112C518.5625,120.33333333333333,518.5625,128.66666666666666,518.5625,132.83333333333334L518.5625,137"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M744.0625,87L744.0625,91.16666666666667C744.0625,95.33333333333333,744.0625,103.66666666666667,722.5520833333334,113.98598022912047C701.0416666666666,124.30529379157429,658.0208333333334,136.61058758314854,636.5104166666666,142.7632344789357L615,148.91588137472283"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M938.890625,87L938.890625,91.16666666666667C938.890625,95.33333333333333,938.890625,103.66666666666667,884.9088541666666,116.11691944537377C830.9270833333334,128.56717222408088,722.9635416666666,145.13434444816178,668.9817708333334,153.41793056020222L615,161.70151667224266"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M83.9765625,87L83.9765625,91.16666666666667C83.9765625,95.33333333333333,83.9765625,103.66666666666667,137.36714084731958,115.75741003772994C190.75771919463918,127.84815340879322,297.53887588927836,143.69630681758647,350.929454236598,151.6203835219831L404.32003258391757,159.5444602263797"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M285.9375,87L285.9375,91.16666666666667C285.9375,95.33333333333333,285.9375,103.66666666666667,305.744484916316,113.32522168197336C325.5514698326321,122.98377669728005,365.16543966526416,133.9675533945601,384.9724245815803,139.45944174320013L404.7794094978963,144.95133009184013"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M518.5625,87L518.5625,91.16666666666667C518.5625,95.33333333333333,518.5625,103.66666666666667,518.5625,109C518.5625,114.33333333333333,518.5625,116.66666666666667,518.5625,117.83333333333333L518.5625,119"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M744.0625,87L744.0625,91.16666666666667C744.0625,95.33333333333333,744.0625,103.66666666666667,725.4364137163183,113.1609722038321C706.8103274326364,122.65527774099753,669.558154865273,133.3105554819951,650.9320685815911,138.63819435249385L632.3059822979094,143.96583322299264"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M938.890625,87L938.890625,91.16666666666667C938.890625,95.33333333333333,938.890625,103.66666666666667,887.8741448971663,115.66189100273215C836.8576647943327,127.65711533879762,734.8247045886652,143.31423067759525,683.8082244858315,151.14278834699405L632.7917443829979,158.97134601639286"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -114,8 +119,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(518.5625, 176.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L4">
<g title="is_numeric" id="classId-C_0007462850660467683116-0" class="node default clickable">
<a transform="translate(518.5625, 176.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L4">
<g title="is_numeric" id="classId-C_0000932856332558460389-0" class="node default clickable">
<rect height="79" width="192.875" y="-39.5" x="-96.4375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="96.4375" x1="-96.4375" class="divider"/>
<line y2="28.5" y1="28.5" x2="96.4375" x1="-96.4375" class="divider"/>
@@ -138,8 +143,8 @@
</g>
</g>
</a>
<a transform="translate(83.9765625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L8">
<g title="is_numeric" id="classId-C_0000764946365186193592-1" class="node default clickable">
<a transform="translate(83.9765625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L8">
<g title="is_numeric" id="classId-C_0000095618295648274199-1" class="node default clickable">
<rect height="79" width="151.953125" y="-39.5" x="-75.9765625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="75.9765625" x1="-75.9765625" class="divider"/>
<line y2="28.5" y1="28.5" x2="75.9765625" x1="-75.9765625" class="divider"/>
@@ -162,8 +167,8 @@
</g>
</g>
</a>
<a transform="translate(285.9375, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L12">
<g title="is_numeric" id="classId-C_0007833035054326093824-2" class="node default clickable">
<a transform="translate(285.9375, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L12">
<g title="is_numeric" id="classId-C_0000979129381790761728-2" class="node default clickable">
<rect height="79" width="151.96875" y="-39.5" x="-75.984375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="75.984375" x1="-75.984375" class="divider"/>
<line y2="28.5" y1="28.5" x2="75.984375" x1="-75.984375" class="divider"/>
@@ -186,8 +191,8 @@
</g>
</g>
</a>
<a transform="translate(518.5625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L16">
<g title="is_numeric" id="classId-C_0016726301520218734694-3" class="node default clickable">
<a transform="translate(518.5625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L16">
<g title="is_numeric" id="classId-C_0002090787690027341836-3" class="node default clickable">
<rect height="79" width="213.28125" y="-39.5" x="-106.640625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="106.640625" x1="-106.640625" class="divider"/>
<line y2="28.5" y1="28.5" x2="106.640625" x1="-106.640625" class="divider"/>
@@ -210,8 +215,8 @@
</g>
</g>
</a>
<a transform="translate(744.0625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L20">
<g title="is_numeric" id="classId-C_0004004824601899568602-4" class="node default clickable">
<a transform="translate(744.0625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L20">
<g title="is_numeric" id="classId-C_0000500603075237446075-4" class="node default clickable">
<rect height="79" width="137.71875" y="-39.5" x="-68.859375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="68.859375" x1="-68.859375" class="divider"/>
<line y2="28.5" y1="28.5" x2="68.859375" x1="-68.859375" class="divider"/>
@@ -234,8 +239,8 @@
</g>
</g>
</a>
<a transform="translate(938.890625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00016/t00016.cc#L24">
<g title="is_numeric" id="classId-C_0016890534700107359361-5" class="node default clickable">
<a transform="translate(938.890625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00016/t00016.cc#L24">
<g title="is_numeric" id="classId-C_0002111316837513419920-5" class="node default clickable">
<rect height="79" width="151.9375" y="-39.5" x="-75.96875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="75.96875" x1="-75.96875" class="divider"/>
<line y2="28.5" y1="28.5" x2="75.96875" x1="-75.96875" class="divider"/>

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -84,8 +84,8 @@ private:
"elements": [
{
"bases": [],
"display_name": "A",
"id": "970656747477527100",
"display_name": "clanguml::t00017::A",
"id": "121332093434690887",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -106,8 +106,8 @@ private:
},
{
"bases": [],
"display_name": "B",
"id": "11398918699649603899",
"display_name": "clanguml::t00017::B",
"id": "1424864837456200487",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -128,8 +128,8 @@ private:
},
{
"bases": [],
"display_name": "C",
"id": "17209363134757947829",
"display_name": "clanguml::t00017::C",
"id": "2151170391844743478",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -150,8 +150,8 @@ private:
},
{
"bases": [],
"display_name": "D",
"id": "11024897017054135776",
"display_name": "clanguml::t00017::D",
"id": "1378112127131766972",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -172,8 +172,8 @@ private:
},
{
"bases": [],
"display_name": "E",
"id": "12282407486654419914",
"display_name": "clanguml::t00017::E",
"id": "1535300935831802489",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -194,8 +194,8 @@ private:
},
{
"bases": [],
"display_name": "F",
"id": "14430403722237681072",
"display_name": "clanguml::t00017::F",
"id": "1803800465279710134",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -216,8 +216,8 @@ private:
},
{
"bases": [],
"display_name": "G",
"id": "9086382335141361974",
"display_name": "clanguml::t00017::G",
"id": "1135797791892670246",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -238,8 +238,8 @@ private:
},
{
"bases": [],
"display_name": "H",
"id": "9948382692573698543",
"display_name": "clanguml::t00017::H",
"id": "1243547836571712317",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -260,8 +260,8 @@ private:
},
{
"bases": [],
"display_name": "I",
"id": "3101865597645029270",
"display_name": "clanguml::t00017::I",
"id": "387733199705628658",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -282,8 +282,8 @@ private:
},
{
"bases": [],
"display_name": "J",
"id": "5983934629379468301",
"display_name": "clanguml::t00017::J",
"id": "747991828672433537",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -304,8 +304,8 @@ private:
},
{
"bases": [],
"display_name": "K",
"id": "14268570743958667740",
"display_name": "clanguml::t00017::K",
"id": "1783571342994833467",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -326,8 +326,8 @@ private:
},
{
"bases": [],
"display_name": "R",
"id": "2299967332512906736",
"display_name": "clanguml::t00017::R",
"id": "287495916564113342",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -518,7 +518,6 @@ private:
"methods": [
{
"access": "private",
"display_name": "R",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -562,7 +561,6 @@ private:
"line": 28,
"translation_unit": "t00017.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -579,83 +577,82 @@ private:
}
],
"name": "t00017_class",
"package_type": "namespace",
"relationships": [
{
"access": "private",
"destination": "970656747477527100",
"destination": "121332093434690887",
"label": "a",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "aggregation"
},
{
"access": "private",
"destination": "11398918699649603899",
"destination": "1424864837456200487",
"label": "b",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
},
{
"access": "private",
"destination": "17209363134757947829",
"destination": "2151170391844743478",
"label": "c",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
},
{
"access": "private",
"destination": "11024897017054135776",
"destination": "1378112127131766972",
"label": "d",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
},
{
"access": "private",
"destination": "12282407486654419914",
"destination": "1535300935831802489",
"label": "e",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
},
{
"access": "private",
"destination": "14430403722237681072",
"destination": "1803800465279710134",
"label": "f",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "aggregation"
},
{
"access": "private",
"destination": "9086382335141361974",
"destination": "1135797791892670246",
"label": "g",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
},
{
"access": "private",
"destination": "9948382692573698543",
"destination": "1243547836571712317",
"label": "h",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
},
{
"access": "private",
"destination": "3101865597645029270",
"destination": "387733199705628658",
"label": "i",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
},
{
"access": "private",
"destination": "5983934629379468301",
"destination": "747991828672433537",
"label": "j",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
},
{
"access": "private",
"destination": "14268570743958667740",
"destination": "1783571342994833467",
"label": "k",
"source": "2299967332512906736",
"source": "287495916564113342",
"type": "association"
}
],

View File

@@ -1,177 +1,217 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="256px" preserveAspectRatio="none" style="width:799px;height:256px;" version="1.1" viewBox="0 0 799 256" width="799px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="271px" preserveAspectRatio="none" style="width:812px;height:271px;background:#FFFFFF;" version="1.1" viewBox="0 0 812 271" width="812px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="fx0hkp2gcm165" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L5" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L5" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0000970656747477527100" style="stroke: #A80036; stroke-width: 1.5;" width="40" x="6" y="197"/>
<ellipse cx="21" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M23.9688,218.6406 Q23.3906,218.9375 22.75,219.0781 Q22.1094,219.2344 21.4063,219.2344 Q18.9063,219.2344 17.5781,217.5938 Q16.2656,215.9375 16.2656,212.8125 Q16.2656,209.6875 17.5781,208.0313 Q18.9063,206.375 21.4063,206.375 Q22.1094,206.375 22.75,206.5313 Q23.4063,206.6875 23.9688,206.9844 L23.9688,209.7031 Q23.3438,209.125 22.75,208.8594 Q22.1563,208.5781 21.5313,208.5781 Q20.1875,208.5781 19.5,209.6563 Q18.8125,210.7188 18.8125,212.8125 Q18.8125,214.9063 19.5,215.9844 Q20.1875,217.0469 21.5313,217.0469 Q22.1563,217.0469 22.75,216.7813 Q23.3438,216.5 23.9688,215.9219 L23.9688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="35" y="217.1543">A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="45" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="45" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L5" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L5" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0000121332093434690887">
<rect codeLine="2" fill="#F1F1F1" height="48" id="C_0000121332093434690887" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="7" y="216"/>
<ellipse cx="22" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M17,233.1563 C17,235.6563 19.1406,237.4688 22.0625,237.4688 C23.2969,237.4688 24.4688,237.1719 25.2188,236.6563 C25.8281,236.2344 26.1563,235.8125 26.1563,235.4063 C26.1563,234.9375 25.7344,234.5313 25.2344,234.5313 C25,234.5313 24.7813,234.6094 24.5781,234.8125 C24.1406,235.25 24.1406,235.25 23.9688,235.3438 C23.5156,235.5781 22.875,235.7188 22.1094,235.7188 C20.1094,235.7188 18.8281,234.7031 18.8281,233.125 L18.8281,232.0781 C18.8281,230.375 20.0469,229.1719 21.75,229.1719 C22.3281,229.1719 22.9063,229.3125 23.375,229.5625 C23.8438,229.8281 24.0156,230.0156 24.0781,230.375 C24.2031,231.0469 24.4531,231.2969 24.9844,231.2969 C25.2656,231.2969 25.5469,231.1563 25.7344,230.9375 C25.8594,230.7656 25.9063,230.5938 25.9063,230.1563 L25.9063,228.7969 C25.9063,228.375 25.8906,228.2344 25.7656,228.0625 C25.5938,227.8125 25.3125,227.6563 24.9844,227.6563 C24.6719,227.6563 24.4688,227.7656 24.25,228.0313 C23.0781,227.5313 22.6406,227.4219 21.6875,227.4219 C19.0156,227.4219 17,229.4375 17,232.0625 L17,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="36" y="236.606">A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="47" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="47" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L7" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L7" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0011398918699649603899" style="stroke: #A80036; stroke-width: 1.5;" width="40" x="81" y="197"/>
<ellipse cx="96" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M98.9688,218.6406 Q98.3906,218.9375 97.75,219.0781 Q97.1094,219.2344 96.4063,219.2344 Q93.9063,219.2344 92.5781,217.5938 Q91.2656,215.9375 91.2656,212.8125 Q91.2656,209.6875 92.5781,208.0313 Q93.9063,206.375 96.4063,206.375 Q97.1094,206.375 97.75,206.5313 Q98.4063,206.6875 98.9688,206.9844 L98.9688,209.7031 Q98.3438,209.125 97.75,208.8594 Q97.1563,208.5781 96.5313,208.5781 Q95.1875,208.5781 94.5,209.6563 Q93.8125,210.7188 93.8125,212.8125 Q93.8125,214.9063 94.5,215.9844 Q95.1875,217.0469 96.5313,217.0469 Q97.1563,217.0469 97.75,216.7813 Q98.3438,216.5 98.9688,215.9219 L98.9688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="110" y="217.1543">B</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="82" x2="120" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="82" x2="120" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L7" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L7" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0001424864837456200487">
<rect codeLine="6" fill="#F1F1F1" height="48" id="C_0001424864837456200487" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="83" y="216"/>
<ellipse cx="98" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M93,233.1563 C93,235.6563 95.1406,237.4688 98.0625,237.4688 C99.2969,237.4688 100.4688,237.1719 101.2188,236.6563 C101.8281,236.2344 102.1563,235.8125 102.1563,235.4063 C102.1563,234.9375 101.7344,234.5313 101.2344,234.5313 C101,234.5313 100.7813,234.6094 100.5781,234.8125 C100.1406,235.25 100.1406,235.25 99.9688,235.3438 C99.5156,235.5781 98.875,235.7188 98.1094,235.7188 C96.1094,235.7188 94.8281,234.7031 94.8281,233.125 L94.8281,232.0781 C94.8281,230.375 96.0469,229.1719 97.75,229.1719 C98.3281,229.1719 98.9063,229.3125 99.375,229.5625 C99.8438,229.8281 100.0156,230.0156 100.0781,230.375 C100.2031,231.0469 100.4531,231.2969 100.9844,231.2969 C101.2656,231.2969 101.5469,231.1563 101.7344,230.9375 C101.8594,230.7656 101.9063,230.5938 101.9063,230.1563 L101.9063,228.7969 C101.9063,228.375 101.8906,228.2344 101.7656,228.0625 C101.5938,227.8125 101.3125,227.6563 100.9844,227.6563 C100.6719,227.6563 100.4688,227.7656 100.25,228.0313 C99.0781,227.5313 98.6406,227.4219 97.6875,227.4219 C95.0156,227.4219 93,229.4375 93,232.0625 L93,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="112" y="236.606">B</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="84" x2="123" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="84" x2="123" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L9" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L9" xlink:show="new" xlink:title="C" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0017209363134757947829" style="stroke: #A80036; stroke-width: 1.5;" width="40" x="156" y="197"/>
<ellipse cx="171" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M173.9688,218.6406 Q173.3906,218.9375 172.75,219.0781 Q172.1094,219.2344 171.4063,219.2344 Q168.9063,219.2344 167.5781,217.5938 Q166.2656,215.9375 166.2656,212.8125 Q166.2656,209.6875 167.5781,208.0313 Q168.9063,206.375 171.4063,206.375 Q172.1094,206.375 172.75,206.5313 Q173.4063,206.6875 173.9688,206.9844 L173.9688,209.7031 Q173.3438,209.125 172.75,208.8594 Q172.1563,208.5781 171.5313,208.5781 Q170.1875,208.5781 169.5,209.6563 Q168.8125,210.7188 168.8125,212.8125 Q168.8125,214.9063 169.5,215.9844 Q170.1875,217.0469 171.5313,217.0469 Q172.1563,217.0469 172.75,216.7813 Q173.3438,216.5 173.9688,215.9219 L173.9688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="185" y="217.1543">C</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="157" x2="195" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="157" x2="195" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L9" target="_top" title="C" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L9" xlink:show="new" xlink:title="C" xlink:type="simple">
<g id="elem_C_0002151170391844743478">
<rect codeLine="10" fill="#F1F1F1" height="48" id="C_0002151170391844743478" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="42" x="158.5" y="216"/>
<ellipse cx="173.5" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M168.5,233.1563 C168.5,235.6563 170.6406,237.4688 173.5625,237.4688 C174.7969,237.4688 175.9688,237.1719 176.7188,236.6563 C177.3281,236.2344 177.6563,235.8125 177.6563,235.4063 C177.6563,234.9375 177.2344,234.5313 176.7344,234.5313 C176.5,234.5313 176.2813,234.6094 176.0781,234.8125 C175.6406,235.25 175.6406,235.25 175.4688,235.3438 C175.0156,235.5781 174.375,235.7188 173.6094,235.7188 C171.6094,235.7188 170.3281,234.7031 170.3281,233.125 L170.3281,232.0781 C170.3281,230.375 171.5469,229.1719 173.25,229.1719 C173.8281,229.1719 174.4063,229.3125 174.875,229.5625 C175.3438,229.8281 175.5156,230.0156 175.5781,230.375 C175.7031,231.0469 175.9531,231.2969 176.4844,231.2969 C176.7656,231.2969 177.0469,231.1563 177.2344,230.9375 C177.3594,230.7656 177.4063,230.5938 177.4063,230.1563 L177.4063,228.7969 C177.4063,228.375 177.3906,228.2344 177.2656,228.0625 C177.0938,227.8125 176.8125,227.6563 176.4844,227.6563 C176.1719,227.6563 175.9688,227.7656 175.75,228.0313 C174.5781,227.5313 174.1406,227.4219 173.1875,227.4219 C170.5156,227.4219 168.5,229.4375 168.5,232.0625 L168.5,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="187.5" y="236.606">C</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="159.5" x2="199.5" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="159.5" x2="199.5" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L11" target="_top" title="D" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L11" xlink:show="new" xlink:title="D" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0011024897017054135776" style="stroke: #A80036; stroke-width: 1.5;" width="41" x="231.5" y="197"/>
<ellipse cx="246.5" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M249.4688,218.6406 Q248.8906,218.9375 248.25,219.0781 Q247.6094,219.2344 246.9063,219.2344 Q244.4063,219.2344 243.0781,217.5938 Q241.7656,215.9375 241.7656,212.8125 Q241.7656,209.6875 243.0781,208.0313 Q244.4063,206.375 246.9063,206.375 Q247.6094,206.375 248.25,206.5313 Q248.9063,206.6875 249.4688,206.9844 L249.4688,209.7031 Q248.8438,209.125 248.25,208.8594 Q247.6563,208.5781 247.0313,208.5781 Q245.6875,208.5781 245,209.6563 Q244.3125,210.7188 244.3125,212.8125 Q244.3125,214.9063 245,215.9844 Q245.6875,217.0469 247.0313,217.0469 Q247.6563,217.0469 248.25,216.7813 Q248.8438,216.5 249.4688,215.9219 L249.4688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="9" x="260.5" y="217.1543">D</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="232.5" x2="271.5" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="232.5" x2="271.5" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L11" target="_top" title="D" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L11" xlink:show="new" xlink:title="D" xlink:type="simple">
<g id="elem_C_0001378112127131766972">
<rect codeLine="14" fill="#F1F1F1" height="48" id="C_0001378112127131766972" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="42" x="235.5" y="216"/>
<ellipse cx="250.5" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M245.5,233.1563 C245.5,235.6563 247.6406,237.4688 250.5625,237.4688 C251.7969,237.4688 252.9688,237.1719 253.7188,236.6563 C254.3281,236.2344 254.6563,235.8125 254.6563,235.4063 C254.6563,234.9375 254.2344,234.5313 253.7344,234.5313 C253.5,234.5313 253.2813,234.6094 253.0781,234.8125 C252.6406,235.25 252.6406,235.25 252.4688,235.3438 C252.0156,235.5781 251.375,235.7188 250.6094,235.7188 C248.6094,235.7188 247.3281,234.7031 247.3281,233.125 L247.3281,232.0781 C247.3281,230.375 248.5469,229.1719 250.25,229.1719 C250.8281,229.1719 251.4063,229.3125 251.875,229.5625 C252.3438,229.8281 252.5156,230.0156 252.5781,230.375 C252.7031,231.0469 252.9531,231.2969 253.4844,231.2969 C253.7656,231.2969 254.0469,231.1563 254.2344,230.9375 C254.3594,230.7656 254.4063,230.5938 254.4063,230.1563 L254.4063,228.7969 C254.4063,228.375 254.3906,228.2344 254.2656,228.0625 C254.0938,227.8125 253.8125,227.6563 253.4844,227.6563 C253.1719,227.6563 252.9688,227.7656 252.75,228.0313 C251.5781,227.5313 251.1406,227.4219 250.1875,227.4219 C247.5156,227.4219 245.5,229.4375 245.5,232.0625 L245.5,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="264.5" y="236.606">D</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="236.5" x2="276.5" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="236.5" x2="276.5" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L13" target="_top" title="E" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L13" xlink:show="new" xlink:title="E" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0012282407486654419914" style="stroke: #A80036; stroke-width: 1.5;" width="40" x="308" y="197"/>
<ellipse cx="323" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M325.9688,218.6406 Q325.3906,218.9375 324.75,219.0781 Q324.1094,219.2344 323.4063,219.2344 Q320.9063,219.2344 319.5781,217.5938 Q318.2656,215.9375 318.2656,212.8125 Q318.2656,209.6875 319.5781,208.0313 Q320.9063,206.375 323.4063,206.375 Q324.1094,206.375 324.75,206.5313 Q325.4063,206.6875 325.9688,206.9844 L325.9688,209.7031 Q325.3438,209.125 324.75,208.8594 Q324.1563,208.5781 323.5313,208.5781 Q322.1875,208.5781 321.5,209.6563 Q320.8125,210.7188 320.8125,212.8125 Q320.8125,214.9063 321.5,215.9844 Q322.1875,217.0469 323.5313,217.0469 Q324.1563,217.0469 324.75,216.7813 Q325.3438,216.5 325.9688,215.9219 L325.9688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="337" y="217.1543">E</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="309" x2="347" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="309" x2="347" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L13" target="_top" title="E" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L13" xlink:show="new" xlink:title="E" xlink:type="simple">
<g id="elem_C_0001535300935831802489">
<rect codeLine="18" fill="#F1F1F1" height="48" id="C_0001535300935831802489" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="312" y="216"/>
<ellipse cx="327" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M322,233.1563 C322,235.6563 324.1406,237.4688 327.0625,237.4688 C328.2969,237.4688 329.4688,237.1719 330.2188,236.6563 C330.8281,236.2344 331.1563,235.8125 331.1563,235.4063 C331.1563,234.9375 330.7344,234.5313 330.2344,234.5313 C330,234.5313 329.7813,234.6094 329.5781,234.8125 C329.1406,235.25 329.1406,235.25 328.9688,235.3438 C328.5156,235.5781 327.875,235.7188 327.1094,235.7188 C325.1094,235.7188 323.8281,234.7031 323.8281,233.125 L323.8281,232.0781 C323.8281,230.375 325.0469,229.1719 326.75,229.1719 C327.3281,229.1719 327.9063,229.3125 328.375,229.5625 C328.8438,229.8281 329.0156,230.0156 329.0781,230.375 C329.2031,231.0469 329.4531,231.2969 329.9844,231.2969 C330.2656,231.2969 330.5469,231.1563 330.7344,230.9375 C330.8594,230.7656 330.9063,230.5938 330.9063,230.1563 L330.9063,228.7969 C330.9063,228.375 330.8906,228.2344 330.7656,228.0625 C330.5938,227.8125 330.3125,227.6563 329.9844,227.6563 C329.6719,227.6563 329.4688,227.7656 329.25,228.0313 C328.0781,227.5313 327.6406,227.4219 326.6875,227.4219 C324.0156,227.4219 322,229.4375 322,232.0625 L322,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="341" y="236.606">E</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="313" x2="352" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="313" x2="352" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L15" target="_top" title="F" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L15" xlink:show="new" xlink:title="F" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0014430403722237681072" style="stroke: #A80036; stroke-width: 1.5;" width="39" x="383.5" y="197"/>
<ellipse cx="398.5" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M401.4688,218.6406 Q400.8906,218.9375 400.25,219.0781 Q399.6094,219.2344 398.9063,219.2344 Q396.4063,219.2344 395.0781,217.5938 Q393.7656,215.9375 393.7656,212.8125 Q393.7656,209.6875 395.0781,208.0313 Q396.4063,206.375 398.9063,206.375 Q399.6094,206.375 400.25,206.5313 Q400.9063,206.6875 401.4688,206.9844 L401.4688,209.7031 Q400.8438,209.125 400.25,208.8594 Q399.6563,208.5781 399.0313,208.5781 Q397.6875,208.5781 397,209.6563 Q396.3125,210.7188 396.3125,212.8125 Q396.3125,214.9063 397,215.9844 Q397.6875,217.0469 399.0313,217.0469 Q399.6563,217.0469 400.25,216.7813 Q400.8438,216.5 401.4688,215.9219 L401.4688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="7" x="412.5" y="217.1543">F</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="384.5" x2="421.5" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="384.5" x2="421.5" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L15" target="_top" title="F" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L15" xlink:show="new" xlink:title="F" xlink:type="simple">
<g id="elem_C_0001803800465279710134">
<rect codeLine="22" fill="#F1F1F1" height="48" id="C_0001803800465279710134" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="388" y="216"/>
<ellipse cx="403" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M398,233.1563 C398,235.6563 400.1406,237.4688 403.0625,237.4688 C404.2969,237.4688 405.4688,237.1719 406.2188,236.6563 C406.8281,236.2344 407.1563,235.8125 407.1563,235.4063 C407.1563,234.9375 406.7344,234.5313 406.2344,234.5313 C406,234.5313 405.7813,234.6094 405.5781,234.8125 C405.1406,235.25 405.1406,235.25 404.9688,235.3438 C404.5156,235.5781 403.875,235.7188 403.1094,235.7188 C401.1094,235.7188 399.8281,234.7031 399.8281,233.125 L399.8281,232.0781 C399.8281,230.375 401.0469,229.1719 402.75,229.1719 C403.3281,229.1719 403.9063,229.3125 404.375,229.5625 C404.8438,229.8281 405.0156,230.0156 405.0781,230.375 C405.2031,231.0469 405.4531,231.2969 405.9844,231.2969 C406.2656,231.2969 406.5469,231.1563 406.7344,230.9375 C406.8594,230.7656 406.9063,230.5938 406.9063,230.1563 L406.9063,228.7969 C406.9063,228.375 406.8906,228.2344 406.7656,228.0625 C406.5938,227.8125 406.3125,227.6563 405.9844,227.6563 C405.6719,227.6563 405.4688,227.7656 405.25,228.0313 C404.0781,227.5313 403.6406,227.4219 402.6875,227.4219 C400.0156,227.4219 398,229.4375 398,232.0625 L398,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="417" y="236.606">F</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="389" x2="428" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="389" x2="428" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L17" target="_top" title="G" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L17" xlink:show="new" xlink:title="G" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0009086382335141361974" style="stroke: #A80036; stroke-width: 1.5;" width="41" x="457.5" y="197"/>
<ellipse cx="472.5" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M475.4688,218.6406 Q474.8906,218.9375 474.25,219.0781 Q473.6094,219.2344 472.9063,219.2344 Q470.4063,219.2344 469.0781,217.5938 Q467.7656,215.9375 467.7656,212.8125 Q467.7656,209.6875 469.0781,208.0313 Q470.4063,206.375 472.9063,206.375 Q473.6094,206.375 474.25,206.5313 Q474.9063,206.6875 475.4688,206.9844 L475.4688,209.7031 Q474.8438,209.125 474.25,208.8594 Q473.6563,208.5781 473.0313,208.5781 Q471.6875,208.5781 471,209.6563 Q470.3125,210.7188 470.3125,212.8125 Q470.3125,214.9063 471,215.9844 Q471.6875,217.0469 473.0313,217.0469 Q473.6563,217.0469 474.25,216.7813 Q474.8438,216.5 475.4688,215.9219 L475.4688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="9" x="486.5" y="217.1543">G</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="458.5" x2="497.5" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="458.5" x2="497.5" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L17" target="_top" title="G" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L17" xlink:show="new" xlink:title="G" xlink:type="simple">
<g id="elem_C_0001135797791892670246">
<rect codeLine="26" fill="#F1F1F1" height="48" id="C_0001135797791892670246" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="43" x="464" y="216"/>
<ellipse cx="479" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M474,233.1563 C474,235.6563 476.1406,237.4688 479.0625,237.4688 C480.2969,237.4688 481.4688,237.1719 482.2188,236.6563 C482.8281,236.2344 483.1563,235.8125 483.1563,235.4063 C483.1563,234.9375 482.7344,234.5313 482.2344,234.5313 C482,234.5313 481.7813,234.6094 481.5781,234.8125 C481.1406,235.25 481.1406,235.25 480.9688,235.3438 C480.5156,235.5781 479.875,235.7188 479.1094,235.7188 C477.1094,235.7188 475.8281,234.7031 475.8281,233.125 L475.8281,232.0781 C475.8281,230.375 477.0469,229.1719 478.75,229.1719 C479.3281,229.1719 479.9063,229.3125 480.375,229.5625 C480.8438,229.8281 481.0156,230.0156 481.0781,230.375 C481.2031,231.0469 481.4531,231.2969 481.9844,231.2969 C482.2656,231.2969 482.5469,231.1563 482.7344,230.9375 C482.8594,230.7656 482.9063,230.5938 482.9063,230.1563 L482.9063,228.7969 C482.9063,228.375 482.8906,228.2344 482.7656,228.0625 C482.5938,227.8125 482.3125,227.6563 481.9844,227.6563 C481.6719,227.6563 481.4688,227.7656 481.25,228.0313 C480.0781,227.5313 479.6406,227.4219 478.6875,227.4219 C476.0156,227.4219 474,229.4375 474,232.0625 L474,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="11" x="493" y="236.606">G</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="465" x2="506" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="465" x2="506" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L19" target="_top" title="H" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L19" xlink:show="new" xlink:title="H" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0009948382692573698543" style="stroke: #A80036; stroke-width: 1.5;" width="41" x="533.5" y="197"/>
<ellipse cx="548.5" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M551.4688,218.6406 Q550.8906,218.9375 550.25,219.0781 Q549.6094,219.2344 548.9063,219.2344 Q546.4063,219.2344 545.0781,217.5938 Q543.7656,215.9375 543.7656,212.8125 Q543.7656,209.6875 545.0781,208.0313 Q546.4063,206.375 548.9063,206.375 Q549.6094,206.375 550.25,206.5313 Q550.9063,206.6875 551.4688,206.9844 L551.4688,209.7031 Q550.8438,209.125 550.25,208.8594 Q549.6563,208.5781 549.0313,208.5781 Q547.6875,208.5781 547,209.6563 Q546.3125,210.7188 546.3125,212.8125 Q546.3125,214.9063 547,215.9844 Q547.6875,217.0469 549.0313,217.0469 Q549.6563,217.0469 550.25,216.7813 Q550.8438,216.5 551.4688,215.9219 L551.4688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="9" x="562.5" y="217.1543">H</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="534.5" x2="573.5" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="534.5" x2="573.5" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L19" target="_top" title="H" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L19" xlink:show="new" xlink:title="H" xlink:type="simple">
<g id="elem_C_0001243547836571712317">
<rect codeLine="30" fill="#F1F1F1" height="48" id="C_0001243547836571712317" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="42" x="541.5" y="216"/>
<ellipse cx="556.5" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M551.5,233.1563 C551.5,235.6563 553.6406,237.4688 556.5625,237.4688 C557.7969,237.4688 558.9688,237.1719 559.7188,236.6563 C560.3281,236.2344 560.6563,235.8125 560.6563,235.4063 C560.6563,234.9375 560.2344,234.5313 559.7344,234.5313 C559.5,234.5313 559.2813,234.6094 559.0781,234.8125 C558.6406,235.25 558.6406,235.25 558.4688,235.3438 C558.0156,235.5781 557.375,235.7188 556.6094,235.7188 C554.6094,235.7188 553.3281,234.7031 553.3281,233.125 L553.3281,232.0781 C553.3281,230.375 554.5469,229.1719 556.25,229.1719 C556.8281,229.1719 557.4063,229.3125 557.875,229.5625 C558.3438,229.8281 558.5156,230.0156 558.5781,230.375 C558.7031,231.0469 558.9531,231.2969 559.4844,231.2969 C559.7656,231.2969 560.0469,231.1563 560.2344,230.9375 C560.3594,230.7656 560.4063,230.5938 560.4063,230.1563 L560.4063,228.7969 C560.4063,228.375 560.3906,228.2344 560.2656,228.0625 C560.0938,227.8125 559.8125,227.6563 559.4844,227.6563 C559.1719,227.6563 558.9688,227.7656 558.75,228.0313 C557.5781,227.5313 557.1406,227.4219 556.1875,227.4219 C553.5156,227.4219 551.5,229.4375 551.5,232.0625 L551.5,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="570.5" y="236.606">H</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="542.5" x2="582.5" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="542.5" x2="582.5" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L21" target="_top" title="I" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L21" xlink:show="new" xlink:title="I" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0003101865597645029270" style="stroke: #A80036; stroke-width: 1.5;" width="35" x="609.5" y="197"/>
<ellipse cx="624.5" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M627.4688,218.6406 Q626.8906,218.9375 626.25,219.0781 Q625.6094,219.2344 624.9063,219.2344 Q622.4063,219.2344 621.0781,217.5938 Q619.7656,215.9375 619.7656,212.8125 Q619.7656,209.6875 621.0781,208.0313 Q622.4063,206.375 624.9063,206.375 Q625.6094,206.375 626.25,206.5313 Q626.9063,206.6875 627.4688,206.9844 L627.4688,209.7031 Q626.8438,209.125 626.25,208.8594 Q625.6563,208.5781 625.0313,208.5781 Q623.6875,208.5781 623,209.6563 Q622.3125,210.7188 622.3125,212.8125 Q622.3125,214.9063 623,215.9844 Q623.6875,217.0469 625.0313,217.0469 Q625.6563,217.0469 626.25,216.7813 Q626.8438,216.5 627.4688,215.9219 L627.4688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="3" x="638.5" y="217.1543">I</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="610.5" x2="643.5" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="610.5" x2="643.5" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L21" target="_top" title="I" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L21" xlink:show="new" xlink:title="I" xlink:type="simple">
<g id="elem_C_0000387733199705628658">
<rect codeLine="34" fill="#F1F1F1" height="48" id="C_0000387733199705628658" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="36" x="618.5" y="216"/>
<ellipse cx="633.5" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M628.5,233.1563 C628.5,235.6563 630.6406,237.4688 633.5625,237.4688 C634.7969,237.4688 635.9688,237.1719 636.7188,236.6563 C637.3281,236.2344 637.6563,235.8125 637.6563,235.4063 C637.6563,234.9375 637.2344,234.5313 636.7344,234.5313 C636.5,234.5313 636.2813,234.6094 636.0781,234.8125 C635.6406,235.25 635.6406,235.25 635.4688,235.3438 C635.0156,235.5781 634.375,235.7188 633.6094,235.7188 C631.6094,235.7188 630.3281,234.7031 630.3281,233.125 L630.3281,232.0781 C630.3281,230.375 631.5469,229.1719 633.25,229.1719 C633.8281,229.1719 634.4063,229.3125 634.875,229.5625 C635.3438,229.8281 635.5156,230.0156 635.5781,230.375 C635.7031,231.0469 635.9531,231.2969 636.4844,231.2969 C636.7656,231.2969 637.0469,231.1563 637.2344,230.9375 C637.3594,230.7656 637.4063,230.5938 637.4063,230.1563 L637.4063,228.7969 C637.4063,228.375 637.3906,228.2344 637.2656,228.0625 C637.0938,227.8125 636.8125,227.6563 636.4844,227.6563 C636.1719,227.6563 635.9688,227.7656 635.75,228.0313 C634.5781,227.5313 634.1406,227.4219 633.1875,227.4219 C630.5156,227.4219 628.5,229.4375 628.5,232.0625 L628.5,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="4" x="647.5" y="236.606">I</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="619.5" x2="653.5" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="619.5" x2="653.5" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L23" target="_top" title="J" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L23" xlink:show="new" xlink:title="J" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0005983934629379468301" style="stroke: #A80036; stroke-width: 1.5;" width="35" x="679.5" y="197"/>
<ellipse cx="694.5" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M697.4688,218.6406 Q696.8906,218.9375 696.25,219.0781 Q695.6094,219.2344 694.9063,219.2344 Q692.4063,219.2344 691.0781,217.5938 Q689.7656,215.9375 689.7656,212.8125 Q689.7656,209.6875 691.0781,208.0313 Q692.4063,206.375 694.9063,206.375 Q695.6094,206.375 696.25,206.5313 Q696.9063,206.6875 697.4688,206.9844 L697.4688,209.7031 Q696.8438,209.125 696.25,208.8594 Q695.6563,208.5781 695.0313,208.5781 Q693.6875,208.5781 693,209.6563 Q692.3125,210.7188 692.3125,212.8125 Q692.3125,214.9063 693,215.9844 Q693.6875,217.0469 695.0313,217.0469 Q695.6563,217.0469 696.25,216.7813 Q696.8438,216.5 697.4688,215.9219 L697.4688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="3" x="708.5" y="217.1543">J</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="680.5" x2="713.5" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="680.5" x2="713.5" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L23" target="_top" title="J" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L23" xlink:show="new" xlink:title="J" xlink:type="simple">
<g id="elem_C_0000747991828672433537">
<rect codeLine="38" fill="#F1F1F1" height="48" id="C_0000747991828672433537" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="39" x="690" y="216"/>
<ellipse cx="705" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M700,233.1563 C700,235.6563 702.1406,237.4688 705.0625,237.4688 C706.2969,237.4688 707.4688,237.1719 708.2188,236.6563 C708.8281,236.2344 709.1563,235.8125 709.1563,235.4063 C709.1563,234.9375 708.7344,234.5313 708.2344,234.5313 C708,234.5313 707.7813,234.6094 707.5781,234.8125 C707.1406,235.25 707.1406,235.25 706.9688,235.3438 C706.5156,235.5781 705.875,235.7188 705.1094,235.7188 C703.1094,235.7188 701.8281,234.7031 701.8281,233.125 L701.8281,232.0781 C701.8281,230.375 703.0469,229.1719 704.75,229.1719 C705.3281,229.1719 705.9063,229.3125 706.375,229.5625 C706.8438,229.8281 707.0156,230.0156 707.0781,230.375 C707.2031,231.0469 707.4531,231.2969 707.9844,231.2969 C708.2656,231.2969 708.5469,231.1563 708.7344,230.9375 C708.8594,230.7656 708.9063,230.5938 708.9063,230.1563 L708.9063,228.7969 C708.9063,228.375 708.8906,228.2344 708.7656,228.0625 C708.5938,227.8125 708.3125,227.6563 707.9844,227.6563 C707.6719,227.6563 707.4688,227.7656 707.25,228.0313 C706.0781,227.5313 705.6406,227.4219 704.6875,227.4219 C702.0156,227.4219 700,229.4375 700,232.0625 L700,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="7" x="719" y="236.606">J</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="691" x2="728" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="691" x2="728" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L25" target="_top" title="K" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L25" xlink:show="new" xlink:title="K" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="48" id="C_0014268570743958667740" style="stroke: #A80036; stroke-width: 1.5;" width="39" x="749.5" y="197"/>
<ellipse cx="764.5" cy="213" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M767.4688,218.6406 Q766.8906,218.9375 766.25,219.0781 Q765.6094,219.2344 764.9063,219.2344 Q762.4063,219.2344 761.0781,217.5938 Q759.7656,215.9375 759.7656,212.8125 Q759.7656,209.6875 761.0781,208.0313 Q762.4063,206.375 764.9063,206.375 Q765.6094,206.375 766.25,206.5313 Q766.9063,206.6875 767.4688,206.9844 L767.4688,209.7031 Q766.8438,209.125 766.25,208.8594 Q765.6563,208.5781 765.0313,208.5781 Q763.6875,208.5781 763,209.6563 Q762.3125,210.7188 762.3125,212.8125 Q762.3125,214.9063 763,215.9844 Q763.6875,217.0469 765.0313,217.0469 Q765.6563,217.0469 766.25,216.7813 Q766.8438,216.5 767.4688,215.9219 L767.4688,218.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="7" x="778.5" y="217.1543">K</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="750.5" x2="787.5" y1="229" y2="229"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="750.5" x2="787.5" y1="237" y2="237"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L25" target="_top" title="K" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L25" xlink:show="new" xlink:title="K" xlink:type="simple">
<g id="elem_C_0001783571342994833467">
<rect codeLine="42" fill="#F1F1F1" height="48" id="C_0001783571342994833467" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="41" x="764" y="216"/>
<ellipse cx="779" cy="232" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M774,233.1563 C774,235.6563 776.1406,237.4688 779.0625,237.4688 C780.2969,237.4688 781.4688,237.1719 782.2188,236.6563 C782.8281,236.2344 783.1563,235.8125 783.1563,235.4063 C783.1563,234.9375 782.7344,234.5313 782.2344,234.5313 C782,234.5313 781.7813,234.6094 781.5781,234.8125 C781.1406,235.25 781.1406,235.25 780.9688,235.3438 C780.5156,235.5781 779.875,235.7188 779.1094,235.7188 C777.1094,235.7188 775.8281,234.7031 775.8281,233.125 L775.8281,232.0781 C775.8281,230.375 777.0469,229.1719 778.75,229.1719 C779.3281,229.1719 779.9063,229.3125 780.375,229.5625 C780.8438,229.8281 781.0156,230.0156 781.0781,230.375 C781.2031,231.0469 781.4531,231.2969 781.9844,231.2969 C782.2656,231.2969 782.5469,231.1563 782.7344,230.9375 C782.8594,230.7656 782.9063,230.5938 782.9063,230.1563 L782.9063,228.7969 C782.9063,228.375 782.8906,228.2344 782.7656,228.0625 C782.5938,227.8125 782.3125,227.6563 781.9844,227.6563 C781.6719,227.6563 781.4688,227.7656 781.25,228.0313 C780.0781,227.5313 779.6406,227.4219 778.6875,227.4219 C776.0156,227.4219 774,229.4375 774,232.0625 L774,233.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="793" y="236.606">K</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="765" x2="804" y1="248" y2="248"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="765" x2="804" y1="256" y2="256"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L27" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L27" xlink:show="new" xlink:title="R" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fx0hkp2gcm165)" height="112.0234" id="C_0002299967332512906736" style="stroke: #A80036; stroke-width: 1.5;" width="379" x="213.5" y="8"/>
<ellipse cx="394.75" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M397.7188,29.6406 Q397.1406,29.9375 396.5,30.0781 Q395.8594,30.2344 395.1563,30.2344 Q392.6563,30.2344 391.3281,28.5938 Q390.0156,26.9375 390.0156,23.8125 Q390.0156,20.6875 391.3281,19.0313 Q392.6563,17.375 395.1563,17.375 Q395.8594,17.375 396.5,17.5313 Q397.1563,17.6875 397.7188,17.9844 L397.7188,20.7031 Q397.0938,20.125 396.5,19.8594 Q395.9063,19.5781 395.2813,19.5781 Q393.9375,19.5781 393.25,20.6563 Q392.5625,21.7188 392.5625,23.8125 Q392.5625,25.9063 393.25,26.9844 Q393.9375,28.0469 395.2813,28.0469 Q395.9063,28.0469 396.5,27.7813 Q397.0938,27.5 397.7188,26.9219 L397.7188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="415.25" y="28.1543">R</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="214.5" x2="591.5" y1="40" y2="40"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L27" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L27" xlink:show="new" xlink:title="R" xlink:type="simple">
<g id="elem_C_0000287495916564113342">
<rect codeLine="46" fill="#F1F1F1" height="131.9996" id="C_0000287495916564113342" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="402" x="207.5" y="7"/>
<ellipse cx="399.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M394.25,24.1563 C394.25,26.6563 396.3906,28.4688 399.3125,28.4688 C400.5469,28.4688 401.7188,28.1719 402.4688,27.6563 C403.0781,27.2344 403.4063,26.8125 403.4063,26.4063 C403.4063,25.9375 402.9844,25.5313 402.4844,25.5313 C402.25,25.5313 402.0313,25.6094 401.8281,25.8125 C401.3906,26.25 401.3906,26.25 401.2188,26.3438 C400.7656,26.5781 400.125,26.7188 399.3594,26.7188 C397.3594,26.7188 396.0781,25.7031 396.0781,24.125 L396.0781,23.0781 C396.0781,21.375 397.2969,20.1719 399,20.1719 C399.5781,20.1719 400.1563,20.3125 400.625,20.5625 C401.0938,20.8281 401.2656,21.0156 401.3281,21.375 C401.4531,22.0469 401.7031,22.2969 402.2344,22.2969 C402.5156,22.2969 402.7969,22.1563 402.9844,21.9375 C403.1094,21.7656 403.1563,21.5938 403.1563,21.1563 L403.1563,19.7969 C403.1563,19.375 403.1406,19.2344 403.0156,19.0625 C402.8438,18.8125 402.5625,18.6563 402.2344,18.6563 C401.9219,18.6563 401.7188,18.7656 401.5,19.0313 C400.3281,18.5313 399.8906,18.4219 398.9375,18.4219 C396.2656,18.4219 394.25,20.4375 394.25,23.0625 L394.25,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="10" x="419.75" y="27.606">R</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="208.5" x2="608.5" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L28" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L28" xlink:show="new" xlink:title="R" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="213.5" y="47.9"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="215.5" y="49.9"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L28" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L28" xlink:show="new" xlink:title="R" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="376" x="227.5" y="56.0059">R(int &amp; some_int, C &amp; cc, const E &amp; ee, F &amp;&amp; ff, I *&amp; ii) : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="208.5" x2="608.5" y1="63.7999" y2="63.7999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L38" target="_top" title="some_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L38" xlink:show="new" xlink:title="some_int" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="213.5" y="72.6999"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="215.5" y="74.6999"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L38" target="_top" title="some_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L38" xlink:show="new" xlink:title="some_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="85" x="227.5" y="80.8059">some_int : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L39" target="_top" title="some_int_pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L39" xlink:show="new" xlink:title="some_int_pointer" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="213.5" y="89.4998"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="215.5" y="91.4998"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L39" target="_top" title="some_int_pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L39" xlink:show="new" xlink:title="some_int_pointer" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="146" x="227.5" y="97.6058">some_int_pointer : int *</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L40" target="_top" title="some_int_pointer_pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L40" xlink:show="new" xlink:title="some_int_pointer_pointer" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="213.5" y="106.2997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="215.5" y="108.2997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L40" target="_top" title="some_int_pointer_pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L40" xlink:show="new" xlink:title="some_int_pointer_pointer" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="203" x="227.5" y="114.4057">some_int_pointer_pointer : int **</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L41" target="_top" title="some_int_reference" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L41" xlink:show="new" xlink:title="some_int_reference" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="213.5" y="123.0997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="215.5" y="125.0997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L41" target="_top" title="some_int_reference" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L41" xlink:show="new" xlink:title="some_int_reference" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="167" x="227.5" y="131.2057">some_int_reference : int &amp;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L28" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L28" xlink:show="new" xlink:title="R" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="219.5" y="46"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="221.5" y="48"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L28" target="_top" title="R" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L28" xlink:show="new" xlink:title="R" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="353" x="233.5" y="54.2104">R(int &amp; some_int, C &amp; cc, const E &amp; ee, F &amp;&amp; ff, I *&amp; ii) : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="214.5" x2="591.5" y1="60.8047" y2="60.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L38" target="_top" title="some_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L38" xlink:show="new" xlink:title="some_int" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="219.5" y="66.8047"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="221.5" y="68.8047"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L38" target="_top" title="some_int" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L38" xlink:show="new" xlink:title="some_int" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="78" x="233.5" y="75.0151">some_int : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L39" target="_top" title="some_int_pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L39" xlink:show="new" xlink:title="some_int_pointer" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="219.5" y="79.6094"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="221.5" y="81.6094"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L39" target="_top" title="some_int_pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L39" xlink:show="new" xlink:title="some_int_pointer" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="134" x="233.5" y="87.8198">some_int_pointer : int *</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L40" target="_top" title="some_int_pointer_pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L40" xlink:show="new" xlink:title="some_int_pointer_pointer" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="219.5" y="92.4141"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="221.5" y="94.4141"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L40" target="_top" title="some_int_pointer_pointer" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L40" xlink:show="new" xlink:title="some_int_pointer_pointer" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="186" x="233.5" y="100.6245">some_int_pointer_pointer : int **</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L41" target="_top" title="some_int_reference" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L41" xlink:show="new" xlink:title="some_int_reference" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="219.5" y="105.2188"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="221.5" y="107.2188"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L41" target="_top" title="some_int_reference" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L41" xlink:show="new" xlink:title="some_int_reference" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="153" x="233.5" y="113.4292">some_int_reference : int &amp;</text>
</a>
<path d="M227.33,124.78 C173.51,145.32 114.85,170.01 63,197 C57.36,199.93 51.44,203.42 46.03,206.78 " fill="none" id="C_0002299967332512906736&lt;-C_0000970656747477527100" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="239.82,120.06,232.7927,118.4422,228.5966,124.3067,235.6239,125.9245,239.82,120.06" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="13" x="164" y="163.0669">-a</text>
<path d="M286.66,120.01 C239.94,142.86 185.91,170.26 138,197 C133.93,199.27 129.67,201.79 125.55,204.29 " fill="none" id="C_0002299967332512906736-&gt;C_0011398918699649603899" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="121.15,207,130.9093,205.6752,125.4044,204.3731,126.7064,198.8682,121.15,207" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="13" x="226" y="163.0669">-b</text>
<path d="M322.33,120.08 C279.51,149.32 229.87,183.22 200.8,203.07 " fill="none" id="C_0002299967332512906736-&gt;C_0017209363134757947829" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="196.32,206.13,206.0096,204.3659,200.4514,203.3138,201.5036,197.7556,196.32,206.13" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="12" x="277" y="163.0669">-c</text>
<path d="M349.34,120.08 C324.54,145.54 296.31,174.52 276.66,194.69 " fill="none" id="C_0002299967332512906736-&gt;C_0011024897017054135776" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="272.85,198.6,281.9915,194.9348,276.3352,195.0148,276.2552,189.3585,272.85,198.6" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="13" x="320" y="163.0669">-d</text>
<path d="M376.35,120.08 C364.57,144.41 351.24,171.96 341.57,191.97 " fill="none" id="C_0002299967332512906736-&gt;C_0012282407486654419914" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="339.31,196.62,346.8402,190.272,341.4945,192.1225,339.6441,186.7768,339.31,196.62" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="13" x="363" y="163.0669">-e</text>
<path d="M403,133.26 C403,155.95 403,179.72 403,196.62 " fill="none" id="C_0002299967332512906736&lt;-C_0014430403722237681072" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="403,120.08,399,126.08,403,132.08,407,126.08,403,120.08" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="9" x="404" y="163.0669">-f</text>
<path d="M429.65,120.08 C441.43,144.41 454.76,171.96 464.43,191.97 " fill="none" id="C_0002299967332512906736-&gt;C_0009086382335141361974" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="466.69,196.62,466.3559,186.7768,464.5055,192.1225,459.1598,190.272,466.69,196.62" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="13" x="453" y="163.0669">-g</text>
<path d="M456.66,120.08 C481.46,145.54 509.69,174.52 529.34,194.69 " fill="none" id="C_0002299967332512906736-&gt;C_0009948382692573698543" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="533.15,198.6,529.7448,189.3585,529.6648,195.0148,524.0085,194.9348,533.15,198.6" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="13" x="502" y="163.0669">-h</text>
<path d="M482.6,120.08 C526.05,150.15 576.62,185.14 604.91,204.71 " fill="none" id="C_0002299967332512906736-&gt;C_0003101865597645029270" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="609.25,207.72,604.1332,199.3046,605.1411,204.871,599.5748,205.8789,609.25,207.72" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="550" y="163.0669">-i</text>
<path d="M517.59,120.01 C563.14,142.75 615.64,170.06 662,197 C666.34,199.52 670.88,202.35 675.2,205.15 " fill="none" id="C_0002299967332512906736-&gt;C_0005983934629379468301" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="679.43,207.91,674.0946,199.6315,675.2479,205.1695,669.7099,206.3228,679.43,207.91" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="608" y="163.0669">-j</text>
<path d="M559.13,120.02 C614.82,141.62 677.28,168.16 732,197 C736.23,199.23 740.62,201.76 744.84,204.3 " fill="none" id="C_0002299967332512906736-&gt;C_0014268570743958667740" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="749.33,207.05,743.7539,198.9317,745.0693,204.4335,739.5675,205.7489,749.33,207.05" style="stroke: #A80036; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="12" x="664" y="163.0669">-k</text>
<g id="link_C_0000287495916564113342_C_0000121332093434690887">
<path codeLine="54" d="M224.9586,143.8818 C169.6686,166.4318 119.82,188.46 65.5,216 C59.86,218.86 53.93,222.25 48.48,225.53 " fill="none" id="C_0000287495916564113342-backto-C_0000121332093434690887" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="236.07,139.35,229.0037,137.9121,224.9586,143.8818,232.0249,145.3197,236.07,139.35" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="11" x="159.5" y="182.077">-a</text>
</g>
<g id="link_C_0000287495916564113342_C_0001424864837456200487">
<path codeLine="55" d="M282.08,139.4 C237.37,163 186.92,190.2 141.5,216 C135.87,219.2 134.9752,219.6767 129.4152,223.0367 " fill="none" id="C_0000287495916564113342-to-C_0001424864837456200487" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="124.28,226.14,134.0516,224.9085,128.5593,223.554,129.9139,218.0617,124.28,226.14" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="11" x="223.5" y="182.077">-b</text>
</g>
<g id="link_C_0000287495916564113342_C_0002151170391844743478">
<path codeLine="56" d="M317.66,139.45 C274.96,170.22 232.5278,200.7923 205.8278,220.0323 " fill="none" id="C_0000287495916564113342-to-C_0002151170391844743478" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="200.96,223.54,210.6002,221.5236,205.0165,220.6169,205.9232,215.0332,200.96,223.54" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="11" x="274.5" y="182.077">-c</text>
</g>
<g id="link_C_0000287495916564113342_C_0001378112127131766972">
<path codeLine="57" d="M348.43,139.21 C323.53,166.24 300.3149,191.4368 281.9949,211.3268 " fill="none" id="C_0000287495916564113342-to-C_0001378112127131766972" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="277.93,215.74,286.9695,211.8301,281.3174,212.0623,281.0852,206.4102,277.93,215.74" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="11" x="320.5" y="182.077">-d</text>
</g>
<g id="link_C_0000287495916564113342_C_0001535300935831802489">
<path codeLine="58" d="M378.46,139.21 C366.02,166.24 354.8798,190.4002 345.7198,210.2902 " fill="none" id="C_0000287495916564113342-to-C_0001535300935831802489" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="343.21,215.74,350.608,209.2385,345.3015,211.1985,343.3415,205.892,343.21,215.74" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="11" x="365.5" y="182.077">-e</text>
</g>
<g id="link_C_0000287495916564113342_C_0001803800465279710134">
<path codeLine="59" d="M408.5,151.21 C408.5,178.24 408.5,195.85 408.5,215.74 " fill="none" id="C_0000287495916564113342-backto-C_0001803800465279710134" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="408.5,139.21,404.5,145.21,408.5,151.21,412.5,145.21,408.5,139.21" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="8" x="409.5" y="182.077">-f</text>
</g>
<g id="link_C_0000287495916564113342_C_0001135797791892670246">
<path codeLine="60" d="M438.93,139.21 C451.54,166.24 462.8209,190.4137 472.1109,210.3037 " fill="none" id="C_0000287495916564113342-to-C_0001135797791892670246" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="474.65,215.74,474.4655,205.8929,472.5341,211.2098,467.2172,209.2783,474.65,215.74" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="11" x="462.5" y="182.077">-g</text>
</g>
<g id="link_C_0000287495916564113342_C_0001243547836571712317">
<path codeLine="61" d="M469.36,139.21 C494.76,166.42 518.5066,191.8632 537.0666,211.7532 " fill="none" id="C_0000287495916564113342-to-C_0001243547836571712317" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="541.16,216.14,537.9444,206.8309,537.7488,212.4844,532.0953,212.2888,541.16,216.14" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="11" x="514.5" y="182.077">-h</text>
</g>
<g id="link_C_0000287495916564113342_C_0000387733199705628658">
<path codeLine="62" d="M498.94,139.45 C543.2,171.48 587.5594,203.5823 613.4394,222.3123 " fill="none" id="C_0000287495916564113342-to-C_0000387733199705628658" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="618.3,225.83,613.3543,217.313,614.2495,222.8985,608.6639,223.7938,618.3,225.83" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="7" x="564.5" y="182.077">-i</text>
</g>
<g id="link_C_0000287495916564113342_C_0000747991828672433537">
<path codeLine="63" d="M532.62,139.4 C576.73,163.06 626.57,190.3 671.5,216 C677.52,219.45 678.8813,220.1961 684.7613,223.7661 " fill="none" id="C_0000287495916564113342-to-C_0000747991828672433537" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="689.89,226.88,684.2728,218.79,685.6161,224.2851,680.121,225.6283,689.89,226.88" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="7" x="615.5" y="182.077">-j</text>
</g>
<g id="link_C_0000287495916564113342_C_0001783571342994833467">
<path codeLine="64" d="M577.9,139.47 C632.5,162.07 692.76,188.63 746.5,216 C752.13,218.87 752.9192,219.1661 758.3692,222.4461 " fill="none" id="C_0000287495916564113342-to-C_0001783571342994833467" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="763.51,225.54,757.8614,217.4719,759.226,222.9617,753.7362,224.3263,763.51,225.54" style="stroke:#181818;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="11" x="684.5" y="182.077">-k</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -1,66 +1,71 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 796.640625 308" style="max-width: 796.641px; background-color: white;" width="796.640625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M179.328125,160.26250717624868L152.98697916666666,168.38542264687388C126.64583333333333,176.5083381174991,73.96354166666667,192.75416905874954,47.622395833333336,206.54375119604143C21.28125,220.33333333333334,21.28125,231.66666666666666,21.28125,237.33333333333334L21.28125,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M185.94534574468085,175L171.2617464539007,180.66666666666666C156.57814716312058,186.33333333333334,127.21094858156027,197.66666666666666,112.52734929078014,209C97.84375,220.33333333333334,97.84375,231.66666666666666,97.84375,237.33333333333334L97.84375,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M240.3535904255319,175L229.36236702127658,180.66666666666666C218.3711436170213,186.33333333333334,196.38869680851064,197.66666666666666,185.3974734042553,209C174.40625,220.33333333333334,174.40625,231.66666666666666,174.40625,237.33333333333334L174.40625,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M294.761835106383,175L287.4629875886525,180.66666666666666C280.164140070922,186.33333333333334,265.56644503546096,197.66666666666666,258.2675975177305,209C250.96875,220.33333333333334,250.96875,231.66666666666666,250.96875,237.33333333333334L250.96875,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M348.85362367021276,175L345.22567597517735,180.66666666666666C341.59772828014184,186.33333333333334,334.3418328900709,197.66666666666666,330.71388519503546,209C327.0859375,220.33333333333334,327.0859375,231.66666666666666,327.0859375,237.33333333333334L327.0859375,243"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M402.3125,175L402.3125,180.66666666666666C402.3125,186.33333333333334,402.3125,197.66666666666666,402.3125,209C402.3125,220.33333333333334,402.3125,231.66666666666666,402.3125,237.33333333333334L402.3125,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M456.40428856382977,175L460.0751883865248,180.66666666666666C463.74608820921986,186.33333333333334,471.08788785460996,197.66666666666666,474.75878767730495,209C478.4296875,220.33333333333334,478.4296875,231.66666666666666,478.4296875,237.33333333333334L478.4296875,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M511.1289893617021,175L518.5137411347517,180.66666666666666C525.8984929078014,186.33333333333334,540.6679964539007,197.66666666666666,548.0527482269504,209C555.4375,220.33333333333334,555.4375,231.66666666666666,555.4375,237.33333333333334L555.4375,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M563.0111369680851,175L573.916832890071,180.66666666666666C584.8225288120567,186.33333333333334,606.6339206560284,197.66666666666666,617.5396165780143,209C628.4453125,220.33333333333334,628.4453125,231.66666666666666,628.4453125,237.33333333333334L628.4453125,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M613.9494680851064,175L628.3120567375887,180.66666666666666C642.674645390071,186.33333333333334,671.3998226950355,197.66666666666666,685.7624113475177,209C700.125,220.33333333333334,700.125,231.66666666666666,700.125,237.33333333333334L700.125,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M625.296875,161.73424083769635L650.3072916666666,169.61186736474696C675.3177083333334,177.48949389179757,725.3385416666666,193.24474694589878,750.3489583333334,206.78904013961605C775.359375,220.33333333333334,775.359375,231.66666666666666,775.359375,237.33333333333334L775.359375,243"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M157.68208786076138,166.93757480878676L134.94861488396782,173.9479790073223C112.21514190717426,180.9583832058578,66.74819595358713,194.97919160292892,44.014722976793564,207.65626246813113C21.28125,220.33333333333334,21.28125,231.66666666666666,21.28125,237.33333333333334L21.28125,243"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M185.94534574468085,175L171.2617464539007,180.66666666666666C156.57814716312058,186.33333333333334,127.21094858156027,197.66666666666666,112.52734929078014,208C97.84375,218.33333333333334,97.84375,227.66666666666666,97.84375,232.33333333333334L97.84375,237"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M240.3535904255319,175L229.36236702127658,180.66666666666666C218.3711436170213,186.33333333333334,196.38869680851064,197.66666666666666,185.3974734042553,208C174.40625,218.33333333333334,174.40625,227.66666666666666,174.40625,232.33333333333334L174.40625,237"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M294.761835106383,175L287.4629875886525,180.66666666666666C280.164140070922,186.33333333333334,265.56644503546096,197.66666666666666,258.2675975177305,208C250.96875,218.33333333333334,250.96875,227.66666666666666,250.96875,232.33333333333334L250.96875,237"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M348.85362367021276,175L345.22567597517735,180.66666666666666C341.59772828014184,186.33333333333334,334.3418328900709,197.66666666666666,330.71388519503546,208C327.0859375,218.33333333333334,327.0859375,227.66666666666666,327.0859375,232.33333333333334L327.0859375,237"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M402.3125,193L402.3125,195.66666666666666C402.3125,198.33333333333334,402.3125,203.66666666666666,402.3125,212C402.3125,220.33333333333334,402.3125,231.66666666666666,402.3125,237.33333333333334L402.3125,243"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M456.40428856382977,175L460.0751883865248,180.66666666666666C463.74608820921986,186.33333333333334,471.08788785460996,197.66666666666666,474.75878767730495,208C478.4296875,218.33333333333334,478.4296875,227.66666666666666,478.4296875,232.33333333333334L478.4296875,237"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M511.1289893617021,175L518.5137411347517,180.66666666666666C525.8984929078014,186.33333333333334,540.6679964539007,197.66666666666666,548.0527482269504,208C555.4375,218.33333333333334,555.4375,227.66666666666666,555.4375,232.33333333333334L555.4375,237"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M563.0111369680851,175L573.916832890071,180.66666666666666C584.8225288120567,186.33333333333334,606.6339206560284,197.66666666666666,617.5396165780143,208C628.4453125,218.33333333333334,628.4453125,227.66666666666666,628.4453125,232.33333333333334L628.4453125,237"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id10" d="M613.9494680851064,175L628.3120567375887,180.66666666666666C642.674645390071,186.33333333333334,671.3998226950355,197.66666666666666,685.7624113475177,208C700.125,218.33333333333334,700.125,227.66666666666666,700.125,232.33333333333334L700.125,237"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M629.7421875,163.13439790575916L654.01171875,170.77866492146597C678.28125,178.42293193717276,726.8203125,193.7114659685864,751.08984375,206.02239965095987C775.359375,218.33333333333334,775.359375,227.66666666666666,775.359375,232.33333333333334L775.359375,237"/>
</g>
<g class="edgeLabels">
<g transform="translate(21.28125, 209)" class="edgeLabel">
@@ -186,8 +191,8 @@
</g>
</g>
<g class="nodes">
<a transform="translate(21.28125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L5">
<g title="A" id="classId-C_0000970656747477527100-0" class="node default clickable">
<a transform="translate(21.28125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L5">
<g title="A" id="classId-C_0000121332093434690887-0" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -205,8 +210,8 @@
</g>
</g>
</a>
<a transform="translate(97.84375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L7">
<g title="B" id="classId-C_0011398918699649603899-1" class="node default clickable">
<a transform="translate(97.84375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L7">
<g title="B" id="classId-C_0001424864837456200487-1" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -224,8 +229,8 @@
</g>
</g>
</a>
<a transform="translate(174.40625, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L9">
<g title="C" id="classId-C_0017209363134757947829-2" class="node default clickable">
<a transform="translate(174.40625, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L9">
<g title="C" id="classId-C_0002151170391844743478-2" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -243,8 +248,8 @@
</g>
</g>
</a>
<a transform="translate(250.96875, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L11">
<g title="D" id="classId-C_0011024897017054135776-3" class="node default clickable">
<a transform="translate(250.96875, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L11">
<g title="D" id="classId-C_0001378112127131766972-3" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -262,8 +267,8 @@
</g>
</g>
</a>
<a transform="translate(327.0859375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L13">
<g title="E" id="classId-C_0012282407486654419914-4" class="node default clickable">
<a transform="translate(327.0859375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L13">
<g title="E" id="classId-C_0001535300935831802489-4" class="node default clickable">
<rect height="57" width="25.671875" y="-28.5" x="-12.8359375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="12.8359375" x1="-12.8359375" class="divider"/>
<line y2="17.5" y1="17.5" x2="12.8359375" x1="-12.8359375" class="divider"/>
@@ -281,8 +286,8 @@
</g>
</g>
</a>
<a transform="translate(402.3125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L15">
<g title="F" id="classId-C_0014430403722237681072-5" class="node default clickable">
<a transform="translate(402.3125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L15">
<g title="F" id="classId-C_0001803800465279710134-5" class="node default clickable">
<rect height="57" width="24.78125" y="-28.5" x="-12.390625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="12.390625" x1="-12.390625" class="divider"/>
<line y2="17.5" y1="17.5" x2="12.390625" x1="-12.390625" class="divider"/>
@@ -300,8 +305,8 @@
</g>
</g>
</a>
<a transform="translate(478.4296875, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L17">
<g title="G" id="classId-C_0009086382335141361974-6" class="node default clickable">
<a transform="translate(478.4296875, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L17">
<g title="G" id="classId-C_0001135797791892670246-6" class="node default clickable">
<rect height="57" width="27.453125" y="-28.5" x="-13.7265625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.7265625" x1="-13.7265625" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.7265625" x1="-13.7265625" class="divider"/>
@@ -319,8 +324,8 @@
</g>
</g>
</a>
<a transform="translate(555.4375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L19">
<g title="H" id="classId-C_0009948382692573698543-7" class="node default clickable">
<a transform="translate(555.4375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L19">
<g title="H" id="classId-C_0001243547836571712317-7" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -338,8 +343,8 @@
</g>
</g>
</a>
<a transform="translate(628.4453125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L21">
<g title="I" id="classId-C_0003101865597645029270-8" class="node default clickable">
<a transform="translate(628.4453125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L21">
<g title="I" id="classId-C_0000387733199705628658-8" class="node default clickable">
<rect height="57" width="19.453125" y="-28.5" x="-9.7265625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="9.7265625" x1="-9.7265625" class="divider"/>
<line y2="17.5" y1="17.5" x2="9.7265625" x1="-9.7265625" class="divider"/>
@@ -357,8 +362,8 @@
</g>
</g>
</a>
<a transform="translate(700.125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L23">
<g title="J" id="classId-C_0005983934629379468301-9" class="node default clickable">
<a transform="translate(700.125, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L23">
<g title="J" id="classId-C_0000747991828672433537-9" class="node default clickable">
<rect height="57" width="23.90625" y="-28.5" x="-11.953125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="11.953125" x1="-11.953125" class="divider"/>
<line y2="17.5" y1="17.5" x2="11.953125" x1="-11.953125" class="divider"/>
@@ -376,8 +381,8 @@
</g>
</g>
</a>
<a transform="translate(775.359375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L25">
<g title="K" id="classId-C_0014268570743958667740-10" class="node default clickable">
<a transform="translate(775.359375, 271.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L25">
<g title="K" id="classId-C_0001783571342994833467-10" class="node default clickable">
<rect height="57" width="26.5625" y="-28.5" x="-13.28125" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="13.28125" x1="-13.28125" class="divider"/>
<line y2="17.5" y1="17.5" x2="13.28125" x1="-13.28125" class="divider"/>
@@ -395,11 +400,11 @@
</g>
</g>
</a>
<a transform="translate(402.3125, 91.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00017/t00017.cc#L27">
<g title="R" id="classId-C_0002299967332512906736-11" class="node default clickable">
<rect height="167" width="445.96875" y="-83.5" x="-222.984375" class="outer title-state"/>
<line y2="-53.5" y1="-53.5" x2="222.984375" x1="-222.984375" class="divider"/>
<line y2="50.5" y1="50.5" x2="222.984375" x1="-222.984375" class="divider"/>
<a transform="translate(402.3125, 91.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00017/t00017.cc#L27">
<g title="R" id="classId-C_0000287495916564113342-11" class="node default clickable">
<rect height="167" width="454.859375" y="-83.5" x="-227.4296875" class="outer title-state"/>
<line y2="-53.5" y1="-53.5" x2="227.4296875" x1="-227.4296875" class="divider"/>
<line y2="50.5" y1="50.5" x2="227.4296875" x1="-227.4296875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -411,29 +416,29 @@
<span class="nodeLabel">R</span>
</div>
</foreignObject>
<foreignObject transform="translate( -215.484375, -42)" height="18" width="100.484375">
<foreignObject transform="translate( -219.9296875, -42)" height="18" width="100.484375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-some_int : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -215.484375, -20)" height="18" width="158.3125">
<foreignObject transform="translate( -219.9296875, -20)" height="18" width="158.3125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">-some_int_pointer : int </span>
<span style="font-style:italic;" class="nodeLabel">-some_int_pointer : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -215.484375, 2)" height="18" width="226.796875">
<foreignObject transform="translate( -219.9296875, 2)" height="18" width="226.796875">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">-some_int_pointer_pointer : int *</span>
</div>
</foreignObject>
<foreignObject transform="translate( -215.484375, 24)" height="18" width="192.09375">
<foreignObject transform="translate( -219.9296875, 24)" height="18" width="192.09375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-some_int_reference : int &amp;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -215.484375, 58)" height="18" width="430.96875">
<foreignObject transform="translate( -219.9296875, 58)" height="18" width="439.859375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-R(int &amp; some_int, C &amp; cc, const E &amp; ee, F &amp;&amp; ff, I *&amp; ii) : void</span>
<span class="nodeLabel">-R(int &amp; some_int, C &amp; cc, const E &amp; ee, F &amp;&amp; ff, I *&amp; ii) : : void</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

@@ -141,8 +141,8 @@ void widget::draw(const clanguml::t00018::widget &w)
"elements": [
{
"bases": [],
"display_name": "impl::widget",
"id": "1044021117462303949",
"display_name": "clanguml::t00018::impl::widget",
"id": "130502639682787993",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -165,7 +165,6 @@ void widget::draw(const clanguml::t00018::widget &w)
"methods": [
{
"access": "public",
"display_name": "draw",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -193,12 +192,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 13,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "draw",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -226,12 +223,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 14,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "widget",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -259,7 +254,6 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 15,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -276,8 +270,8 @@ void widget::draw(const clanguml::t00018::widget &w)
},
{
"bases": [],
"display_name": "widget",
"id": "8045290274990832704",
"display_name": "clanguml::t00018::widget",
"id": "1005661284373854088",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -300,7 +294,6 @@ void widget::draw(const clanguml::t00018::widget &w)
"methods": [
{
"access": "public",
"display_name": "draw",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -323,12 +316,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 21,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "draw",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -351,12 +342,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 22,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "shown",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -379,12 +368,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 23,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "bool"
},
{
"access": "public",
"display_name": "widget",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -412,12 +399,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 24,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "~widget",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -440,12 +425,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 25,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "widget",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -473,12 +456,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 27,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "widget",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -506,12 +487,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 29,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "operator=",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -539,12 +518,10 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 30,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "widget &"
},
{
"access": "public",
"display_name": "operator=",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -572,7 +549,6 @@ void widget::draw(const clanguml::t00018::widget &w)
"line": 31,
"translation_unit": "t00018.cc"
},
"template_parameters": [],
"type": "widget &"
}
],
@@ -589,19 +565,18 @@ void widget::draw(const clanguml::t00018::widget &w)
}
],
"name": "t00018_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "8045290274990832704",
"source": "1044021117462303949",
"destination": "1005661284373854088",
"source": "130502639682787993",
"type": "dependency"
},
{
"access": "private",
"destination": "1044021117462303949",
"destination": "130502639682787993",
"label": "pImpl",
"source": "8045290274990832704",
"source": "1005661284373854088",
"type": "aggregation"
}
],

View File

@@ -1,136 +1,138 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="395px" preserveAspectRatio="none" style="width:317px;height:395px;" version="1.1" viewBox="0 0 317 395" width="317px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="446px" preserveAspectRatio="none" style="width:333px;height:446px;background:#FFFFFF;" version="1.1" viewBox="0 0 333 446" width="333px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f5b4bsngbhf7" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L9" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L9" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f5b4bsngbhf7)" height="107.2188" id="C_0001044021117462303949" style="stroke: #A80036; stroke-width: 1.5;" width="231" x="40.5" y="8"/>
<ellipse cx="114.75" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M117.7188,29.6406 Q117.1406,29.9375 116.5,30.0781 Q115.8594,30.2344 115.1563,30.2344 Q112.6563,30.2344 111.3281,28.5938 Q110.0156,26.9375 110.0156,23.8125 Q110.0156,20.6875 111.3281,19.0313 Q112.6563,17.375 115.1563,17.375 Q115.8594,17.375 116.5,17.5313 Q117.1563,17.6875 117.7188,17.9844 L117.7188,20.7031 Q117.0938,20.125 116.5,19.8594 Q115.9063,19.5781 115.2813,19.5781 Q113.9375,19.5781 113.25,20.6563 Q112.5625,21.7188 112.5625,23.8125 Q112.5625,25.9063 113.25,26.9844 Q113.9375,28.0469 115.2813,28.0469 Q115.9063,28.0469 116.5,27.7813 Q117.0938,27.5 117.7188,26.9219 L117.7188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="74" x="135.25" y="28.1543">impl::widget</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="41.5" x2="270.5" y1="40" y2="40"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L9" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L9" xlink:show="new" xlink:title="widget" xlink:type="simple">
<g id="elem_C_0000130502639682787993">
<rect codeLine="2" fill="#F1F1F1" height="123.1997" id="C_0000130502639682787993" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="249" x="42" y="7"/>
<ellipse cx="124.75" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M119.75,24.1563 C119.75,26.6563 121.8906,28.4688 124.8125,28.4688 C126.0469,28.4688 127.2188,28.1719 127.9688,27.6563 C128.5781,27.2344 128.9063,26.8125 128.9063,26.4063 C128.9063,25.9375 128.4844,25.5313 127.9844,25.5313 C127.75,25.5313 127.5313,25.6094 127.3281,25.8125 C126.8906,26.25 126.8906,26.25 126.7188,26.3438 C126.2656,26.5781 125.625,26.7188 124.8594,26.7188 C122.8594,26.7188 121.5781,25.7031 121.5781,24.125 L121.5781,23.0781 C121.5781,21.375 122.7969,20.1719 124.5,20.1719 C125.0781,20.1719 125.6563,20.3125 126.125,20.5625 C126.5938,20.8281 126.7656,21.0156 126.8281,21.375 C126.9531,22.0469 127.2031,22.2969 127.7344,22.2969 C128.0156,22.2969 128.2969,22.1563 128.4844,21.9375 C128.6094,21.7656 128.6563,21.5938 128.6563,21.1563 L128.6563,19.7969 C128.6563,19.375 128.6406,19.2344 128.5156,19.0625 C128.3438,18.8125 128.0625,18.6563 127.7344,18.6563 C127.4219,18.6563 127.2188,18.7656 127,19.0313 C125.8281,18.5313 125.3906,18.4219 124.4375,18.4219 C121.7656,18.4219 119.75,20.4375 119.75,23.0625 L119.75,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="75" x="145.25" y="27.606">impl::widget</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="43" x2="290" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L15" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L15" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="48" y="47.9"/>
<ellipse cx="53" cy="52.9" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L15" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L15" xlink:show="new" xlink:title="widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="116" x="62" y="56.0059">widget(int n) : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="43" x2="290" y1="63.7999" y2="63.7999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L13" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L13" xlink:show="new" xlink:title="draw" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="48" y="72.6999"/>
<ellipse cx="53" cy="77.6999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L13" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L13" xlink:show="new" xlink:title="draw" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="223" x="62" y="80.8059">draw(const widget &amp; w) const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L14" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L14" xlink:show="new" xlink:title="draw" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="48" y="89.4998"/>
<ellipse cx="53" cy="94.4998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L14" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L14" xlink:show="new" xlink:title="draw" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="185" x="62" y="97.6058">draw(const widget &amp; w) : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="43" x2="290" y1="105.3998" y2="105.3998"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L10" target="_top" title="n" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L10" xlink:show="new" xlink:title="n" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="48" y="114.2997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="50" y="116.2997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L10" target="_top" title="n" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L10" xlink:show="new" xlink:title="n" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="35" x="62" y="122.4057">n : int</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L15" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L15" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="46.5" y="46"/>
<ellipse cx="51.5" cy="51" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L17" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L17" xlink:show="new" xlink:title="widget" xlink:type="simple">
<g id="elem_C_0001005661284373854088">
<rect codeLine="11" fill="#F1F1F1" height="231.9993" id="C_0001005661284373854088" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="319" x="7" y="207.2"/>
<ellipse cx="141.75" cy="223.2" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M136.75,224.3563 C136.75,226.8563 138.8906,228.6688 141.8125,228.6688 C143.0469,228.6688 144.2188,228.3719 144.9688,227.8563 C145.5781,227.4344 145.9063,227.0125 145.9063,226.6063 C145.9063,226.1375 145.4844,225.7313 144.9844,225.7313 C144.75,225.7313 144.5313,225.8094 144.3281,226.0125 C143.8906,226.45 143.8906,226.45 143.7188,226.5438 C143.2656,226.7781 142.625,226.9188 141.8594,226.9188 C139.8594,226.9188 138.5781,225.9031 138.5781,224.325 L138.5781,223.2781 C138.5781,221.575 139.7969,220.3719 141.5,220.3719 C142.0781,220.3719 142.6563,220.5125 143.125,220.7625 C143.5938,221.0281 143.7656,221.2156 143.8281,221.575 C143.9531,222.2469 144.2031,222.4969 144.7344,222.4969 C145.0156,222.4969 145.2969,222.3563 145.4844,222.1375 C145.6094,221.9656 145.6563,221.7938 145.6563,221.3563 L145.6563,219.9969 C145.6563,219.575 145.6406,219.4344 145.5156,219.2625 C145.3438,219.0125 145.0625,218.8563 144.7344,218.8563 C144.4219,218.8563 144.2188,218.9656 144,219.2313 C142.8281,218.7313 142.3906,218.6219 141.4375,218.6219 C138.7656,218.6219 136.75,220.6375 136.75,223.2625 L136.75,224.3563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="41" x="162.25" y="227.806">widget</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="325" y1="239.2" y2="239.2"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L24" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L24" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="248.1"/>
<ellipse cx="18" cy="253.1" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L24" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L24" xlink:show="new" xlink:title="widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="27" y="256.2059">widget(int) : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L27" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L27" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="264.8999"/>
<ellipse cx="18" cy="269.8999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L27" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L27" xlink:show="new" xlink:title="widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="152" x="27" y="273.0059">widget(widget &amp;&amp;) : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L29" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L29" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="281.6998"/>
<ellipse cx="18" cy="286.6998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L29" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L29" xlink:show="new" xlink:title="widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="244" x="27" y="289.8058">widget(const widget &amp;) = deleted : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L25" target="_top" title="~widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L25" xlink:show="new" xlink:title="~widget" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="298.4997"/>
<ellipse cx="18" cy="303.4997" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L25" target="_top" title="~widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L25" xlink:show="new" xlink:title="~widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="97" x="27" y="306.6057">~widget() : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="8" x2="325" y1="314.3997" y2="314.3997"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L30" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L30" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="323.2997"/>
<ellipse cx="18" cy="328.2997" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L30" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L30" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="201" x="27" y="331.4057">operator=(widget &amp;&amp;) : widget &amp;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L31" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L31" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="340.0996"/>
<ellipse cx="18" cy="345.0996" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L31" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L31" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="293" x="27" y="348.2056">operator=(const widget &amp;) = deleted : widget &amp;</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="8" x2="325" y1="355.9996" y2="355.9996"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L21" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L21" xlink:show="new" xlink:title="draw" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="364.8995"/>
<ellipse cx="18" cy="369.8995" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L21" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L21" xlink:show="new" xlink:title="draw" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="117" x="27" y="373.0055">draw() const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L22" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L22" xlink:show="new" xlink:title="draw" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="381.6995"/>
<ellipse cx="18" cy="386.6995" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L22" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L22" xlink:show="new" xlink:title="draw" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="79" x="27" y="389.8054">draw() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L23" target="_top" title="shown" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L23" xlink:show="new" xlink:title="shown" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="398.4994"/>
<ellipse cx="18" cy="403.4994" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L23" target="_top" title="shown" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L23" xlink:show="new" xlink:title="shown" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="128" x="27" y="406.6054">shown() const : bool</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="325" y1="414.3993" y2="414.3993"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L18" target="_top" title="pImpl" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L18" xlink:show="new" xlink:title="pImpl" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="423.2993"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="425.2993"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L18" target="_top" title="pImpl" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L18" xlink:show="new" xlink:title="pImpl" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="233" x="27" y="431.4053">pImpl : std::unique_ptr&lt;impl::widget&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L15" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L15" xlink:show="new" xlink:title="widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="105" x="60.5" y="54.2104">widget(int n) : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="41.5" x2="270.5" y1="60.8047" y2="60.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L13" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L13" xlink:show="new" xlink:title="draw" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="46.5" y="66.8047"/>
<ellipse cx="51.5" cy="71.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L13" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L13" xlink:show="new" xlink:title="draw" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="205" x="60.5" y="75.0151">draw(const widget &amp; w) const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L14" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L14" xlink:show="new" xlink:title="draw" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="46.5" y="79.6094"/>
<ellipse cx="51.5" cy="84.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L14" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L14" xlink:show="new" xlink:title="draw" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="170" x="60.5" y="87.8198">draw(const widget &amp; w) : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="41.5" x2="270.5" y1="94.4141" y2="94.4141"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L10" target="_top" title="n" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L10" xlink:show="new" xlink:title="n" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="46.5" y="100.4141"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="48.5" y="102.4141"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L10" target="_top" title="n" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L10" xlink:show="new" xlink:title="n" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="33" x="60.5" y="108.6245">n : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L17" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L17" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f5b4bsngbhf7)" height="192.0469" id="C_0008045290274990832704" style="stroke: #A80036; stroke-width: 1.5;" width="300" x="6" y="192"/>
<ellipse cx="131.25" cy="208" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M134.2188,213.6406 Q133.6406,213.9375 133,214.0781 Q132.3594,214.2344 131.6563,214.2344 Q129.1563,214.2344 127.8281,212.5938 Q126.5156,210.9375 126.5156,207.8125 Q126.5156,204.6875 127.8281,203.0313 Q129.1563,201.375 131.6563,201.375 Q132.3594,201.375 133,201.5313 Q133.6563,201.6875 134.2188,201.9844 L134.2188,204.7031 Q133.5938,204.125 133,203.8594 Q132.4063,203.5781 131.7813,203.5781 Q130.4375,203.5781 129.75,204.6563 Q129.0625,205.7188 129.0625,207.8125 Q129.0625,209.9063 129.75,210.9844 Q130.4375,212.0469 131.7813,212.0469 Q132.4063,212.0469 133,211.7813 Q133.5938,211.5 134.2188,210.9219 L134.2188,213.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="41" x="151.75" y="212.1543">widget</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="305" y1="224" y2="224"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L24" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L24" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="230"/>
<ellipse cx="17" cy="235" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L24" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L24" xlink:show="new" xlink:title="widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="94" x="26" y="238.2104">widget(int) : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L27" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L27" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="242.8047"/>
<ellipse cx="17" cy="247.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L27" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L27" xlink:show="new" xlink:title="widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="141" x="26" y="251.0151">widget(widget &amp;&amp;) : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L29" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L29" xlink:show="new" xlink:title="widget" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="255.6094"/>
<ellipse cx="17" cy="260.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L29" target="_top" title="widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L29" xlink:show="new" xlink:title="widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="225" x="26" y="263.8198">widget(const widget &amp;) = deleted : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L25" target="_top" title="~widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L25" xlink:show="new" xlink:title="~widget" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="268.4141"/>
<ellipse cx="17" cy="273.4141" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L25" target="_top" title="~widget" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L25" xlink:show="new" xlink:title="~widget" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="89" x="26" y="276.6245">~widget() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7" x2="305" y1="283.2188" y2="283.2188"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L30" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L30" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="289.2188"/>
<ellipse cx="17" cy="294.2188" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L30" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L30" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="190" x="26" y="297.4292">operator=(widget &amp;&amp;) : widget &amp;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L31" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L31" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="302.0234"/>
<ellipse cx="17" cy="307.0234" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L31" target="_top" title="operator=" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L31" xlink:show="new" xlink:title="operator=" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="274" x="26" y="310.2339">operator=(const widget &amp;) = deleted : widget &amp;</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7" x2="305" y1="316.8281" y2="316.8281"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L21" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L21" xlink:show="new" xlink:title="draw" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="322.8281"/>
<ellipse cx="17" cy="327.8281" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L21" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L21" xlink:show="new" xlink:title="draw" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="106" x="26" y="331.0386">draw() const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L22" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L22" xlink:show="new" xlink:title="draw" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="335.6328"/>
<ellipse cx="17" cy="340.6328" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L22" target="_top" title="draw" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L22" xlink:show="new" xlink:title="draw" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="71" x="26" y="343.8433">draw() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L23" target="_top" title="shown" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L23" xlink:show="new" xlink:title="shown" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="348.4375"/>
<ellipse cx="17" cy="353.4375" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L23" target="_top" title="shown" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L23" xlink:show="new" xlink:title="shown" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="116" x="26" y="356.6479">shown() const : bool</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="305" y1="363.2422" y2="363.2422"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L18" target="_top" title="pImpl" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L18" xlink:show="new" xlink:title="pImpl" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="369.2422"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="14" y="371.2422"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L18" target="_top" title="pImpl" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L18" xlink:show="new" xlink:title="pImpl" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="216" x="26" y="377.4526">pImpl : std::unique_ptr&lt;impl::widget&gt;</text>
</a>
<path d="M150.85,115.27 C150.08,125.14 149.41,135.38 149,145 C148.43,158.51 148.42,172.74 148.76,186.76 " fill="none" id="C_0001044021117462303949-&gt;C_0008045290274990832704" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="148.91,191.91,152.6773,182.8102,148.7815,186.9117,144.68,183.0158,148.91,191.91" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M156,178.29 C156,156.29 156,134.11 156,115.14 " fill="none" id="C_0008045290274990832704&lt;-C_0001044021117462303949" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="156,191.57,160,185.57,156,179.57,152,185.57,156,191.57" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="159" y="151.0664"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="35" x="169" y="158.0669">pImpl</text>
<g id="link_C_0000130502639682787993_C_0001005661284373854088">
<path codeLine="26" d="M161.15,130.48 C160.46,140.41 159.87,150.58 159.5,160.2 C158.92,175.25 158.771,185.0912 159.081,200.7212 " fill="none" id="C_0000130502639682787993-to-C_0001005661284373854088" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="159.2,206.72,163.0207,197.6425,159.1009,201.721,155.0223,197.8011,159.2,206.72" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001005661284373854088_C_0000130502639682787993">
<path codeLine="27" d="M166.5,194.77 C166.5,168.41 166.5,153.42 166.5,130.43 " fill="none" id="C_0001005661284373854088-backto-C_0000130502639682787993" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="166.5,206.77,170.5,200.77,166.5,194.77,162.5,200.77,166.5,206.77" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="169.5" y="166.5"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="32" x="179.5" y="173.277">pImpl</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -1,57 +1,62 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 300 506" style="max-width: 300px; background-color: white;" width="300" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 308.890625 506" style="max-width: 308.891px; background-color: white;" width="308.890625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M135.62710900821597,153L134.50371063184664,158.66666666666666C133.38031225547732,164.33333333333334,131.13351550273865,175.66666666666666,130.7036935152582,187C130.2738715277778,198.33333333333334,131.66102430555557,209.66666666666666,132.35460069444446,215.33333333333334L133.04817708333334,221"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M166.95182291666666,221L167.64539930555554,215.33333333333334C168.33897569444443,209.66666666666666,169.7261284722222,198.33333333333334,169.2963064847418,187C168.86648449726135,175.66666666666666,166.61968774452268,164.33333333333334,165.49628936815336,158.66666666666666L164.37289099178403,153"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M140.07242150821597,153L138.94902313184664,158.66666666666666C137.82562475547732,164.33333333333334,135.57882800273865,175.66666666666666,135.02751679828825,186.0074072485858C134.47620559383785,196.34814783050493,135.6203799376757,205.69629566100983,136.19246710959462,210.3703695762623L136.76455428151354,215.04444349151476"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M173.5839413221261,203.1333304745443L173.91305006010506,200.44444206212026C174.24215879808403,197.75555364969622,174.90037627404203,192.3777768248481,174.10608663565168,184.0222217457574C173.31179699726135,175.66666666666666,171.0650002445227,164.33333333333334,169.94160186815336,158.66666666666666L168.81820349178403,153"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -65,7 +70,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(171.11328125, 187)" class="edgeLabel">
<g transform="translate(175.55859375, 187)" class="edgeLabel">
<g transform="translate(-22.2265625, -9)" class="label">
<foreignObject height="18" width="44.453125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -78,11 +83,11 @@
</g>
</g>
<g class="nodes">
<a transform="translate(150, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018_impl.h#L9">
<g title="widget" id="classId-C_0001044021117462303949-0" class="node default clickable">
<rect height="145" width="284" y="-72.5" x="-142" class="outer title-state"/>
<line y2="-42.5" y1="-42.5" x2="142" x1="-142" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="142" x1="-142" class="divider"/>
<a transform="translate(154.4453125, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018_impl.h#L9">
<g title="widget" id="classId-C_0000130502639682787993-0" class="node default clickable">
<rect height="145" width="292.890625" y="-72.5" x="-146.4453125" class="outer title-state"/>
<line y2="-42.5" y1="-42.5" x2="146.4453125" x1="-146.4453125" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="146.4453125" x1="-146.4453125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -94,34 +99,34 @@
<span class="nodeLabel">impl::widget</span>
</div>
</foreignObject>
<foreignObject transform="translate( -134.5, -31)" height="18" width="44.46875">
<foreignObject transform="translate( -138.9453125, -31)" height="18" width="44.46875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-n : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -134.5, 3)" height="18" width="139.1875">
<foreignObject transform="translate( -138.9453125, 3)" height="18" width="148.078125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+widget(int n) : void</span>
<span class="nodeLabel">+widget(int n) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -134.5, 25)" height="18" width="269">
<foreignObject transform="translate( -138.9453125, 25)" height="18" width="277.890625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+draw(const widget &amp; w) : [const] void</span>
<span class="nodeLabel">+draw(const widget &amp; w) : : [const] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -134.5, 47)" height="18" width="217.421875">
<foreignObject transform="translate( -138.9453125, 47)" height="18" width="226.3125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+draw(const widget &amp; w) : void</span>
<span class="nodeLabel">+draw(const widget &amp; w) : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(150, 359.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00018/t00018.h#L17">
<g title="widget" id="classId-C_0008045290274990832704-1" class="node default clickable">
<rect height="277" width="282.703125" y="-138.5" x="-141.3515625" class="outer title-state"/>
<line y2="-108.5" y1="-108.5" x2="141.3515625" x1="-141.3515625" class="divider"/>
<line y2="-70.5" y1="-70.5" x2="141.3515625" x1="-141.3515625" class="divider"/>
<a transform="translate(154.4453125, 359.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00018/t00018.h#L17">
<g title="widget" id="classId-C_0001005661284373854088-1" class="node default clickable">
<rect height="277" width="291.59375" y="-138.5" x="-145.796875" class="outer title-state"/>
<line y2="-108.5" y1="-108.5" x2="145.796875" x1="-145.796875" class="divider"/>
<line y2="-70.5" y1="-70.5" x2="145.796875" x1="-145.796875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -133,54 +138,54 @@
<span class="nodeLabel">widget</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, -97)" height="18" width="266.8125">
<foreignObject transform="translate( -138.296875, -97)" height="18" width="266.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-pImpl : std::unique_ptr&lt;impl::widget&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, -63)" height="18" width="125.84375">
<foreignObject transform="translate( -138.296875, -63)" height="18" width="134.734375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+widget(int) : void</span>
<span class="nodeLabel">+widget(int) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, -41)" height="18" width="180.984375">
<foreignObject transform="translate( -138.296875, -41)" height="18" width="189.875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+widget(widget &amp;&amp;) : void</span>
<span class="nodeLabel">+widget(widget &amp;&amp;) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, -19)" height="18" width="213">
<foreignObject transform="translate( -138.296875, -19)" height="18" width="221.890625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+widget(const widget &amp;) : void</span>
<span class="nodeLabel">+widget(const widget &amp;) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, 3)" height="18" width="118.28125">
<foreignObject transform="translate( -138.296875, 3)" height="18" width="127.171875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+~widget() : void</span>
<span class="nodeLabel">+~widget() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, 25)" height="18" width="235.6875">
<foreignObject transform="translate( -138.296875, 25)" height="18" width="244.578125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+operator=(widget &amp;&amp;) : widget &amp;</span>
<span class="nodeLabel">+operator=(widget &amp;&amp;) : : widget &amp;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, 47)" height="18" width="267.703125">
<foreignObject transform="translate( -138.296875, 47)" height="18" width="276.59375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+operator=(const widget &amp;) : widget &amp;</span>
<span class="nodeLabel">+operator=(const widget &amp;) : : widget &amp;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, 69)" height="18" width="148.953125">
<foreignObject transform="translate( -138.296875, 69)" height="18" width="157.84375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+draw() : [const] void</span>
<span class="nodeLabel">+draw() : : [const] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, 91)" height="18" width="97.375">
<foreignObject transform="translate( -138.296875, 91)" height="18" width="106.265625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+draw() : void</span>
<span class="nodeLabel">+draw() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.8515625, 113)" height="18" width="161.421875">
<foreignObject transform="translate( -138.296875, 113)" height="18" width="170.3125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+shown() : [const] bool</span>
<span class="nodeLabel">+shown() : : [const] bool</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -8,15 +8,49 @@ diagrams:
- "*.cc"
generate_template_argument_dependencies: false
using_namespace: clanguml::t00019
plantuml:
style:
instantiation: up
include:
namespaces:
- clanguml::t00019
```
## Source code
File `tests/t00019/t00019_layer3.h`
```cpp
#pragma once
#include <string>
namespace clanguml {
namespace t00019 {
template <typename LowerLayer> class Layer3 : public LowerLayer {
using LowerLayer::LowerLayer;
virtual int m1() override
{
m_m1_calls++;
return LowerLayer::m1();
}
virtual std::string m2() override
{
m_m2_calls++;
return LowerLayer::m2();
}
int m1_calls() const { return m_m1_calls; }
int m2_calls() const { return m_m2_calls; }
private:
int m_m1_calls{};
int m_m2_calls{};
};
}
}
```
File `tests/t00019/t00019_layer1.h`
```cpp
#pragma once
@@ -66,6 +100,29 @@ public:
}
}
```
File `tests/t00019/t00019_base.h`
```cpp
#pragma once
#include <string>
namespace clanguml {
namespace t00019 {
class Base {
Base() = default;
virtual ~Base() = default;
virtual int m1() { return 2; }
virtual std::string m2() { return "two"; }
};
}
}
```
File `tests/t00019/t00019_layer2.h`
```cpp
@@ -90,66 +147,6 @@ template <typename LowerLayer> class Layer2 : public LowerLayer {
}
}
```
File `tests/t00019/t00019_layer3.h`
```cpp
#pragma once
#include <string>
namespace clanguml {
namespace t00019 {
template <typename LowerLayer> class Layer3 : public LowerLayer {
using LowerLayer::LowerLayer;
virtual int m1() override
{
m_m1_calls++;
return LowerLayer::m1();
}
virtual std::string m2() override
{
m_m2_calls++;
return LowerLayer::m2();
}
int m1_calls() const { return m_m1_calls; }
int m2_calls() const { return m_m2_calls; }
private:
int m_m1_calls{};
int m_m2_calls{};
};
}
}
```
File `tests/t00019/t00019_base.h`
```cpp
#pragma once
#include <string>
namespace clanguml {
namespace t00019 {
class Base {
Base() = default;
virtual ~Base() = default;
virtual int m1() { return 2; }
virtual std::string m2() { return "two"; }
};
}
}
```
## Generated PlantUML diagrams
![t00019_class](./t00019_class.svg "Layercake pattern")
@@ -162,8 +159,8 @@ class Base {
"elements": [
{
"bases": [],
"display_name": "Base",
"id": "2093347899813072991",
"display_name": "clanguml::t00019::Base",
"id": "261668487476634123",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -173,7 +170,6 @@ class Base {
"methods": [
{
"access": "private",
"display_name": "Base",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -196,12 +192,10 @@ class Base {
"line": 10,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "private",
"display_name": "~Base",
"is_const": false,
"is_consteval": false,
"is_constexpr": true,
@@ -224,12 +218,10 @@ class Base {
"line": 12,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "private",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -252,12 +244,10 @@ class Base {
"line": 14,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "private",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -280,7 +270,6 @@ class Base {
"line": 16,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "std::string"
}
],
@@ -297,8 +286,8 @@ class Base {
},
{
"bases": [],
"display_name": "Layer1<LowerLayer>",
"id": "7221050388300154171",
"display_name": "clanguml::t00019::Layer1<LowerLayer>",
"id": "902631298537519271",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -308,7 +297,6 @@ class Base {
"methods": [
{
"access": "private",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -331,12 +319,10 @@ class Base {
"line": 13,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "private",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -359,7 +345,6 @@ class Base {
"line": 19,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "std::string"
}
],
@@ -383,8 +368,8 @@ class Base {
},
{
"bases": [],
"display_name": "Layer2<LowerLayer>",
"id": "8921207402420645183",
"display_name": "clanguml::t00019::Layer2<LowerLayer>",
"id": "1115150925302580647",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -394,7 +379,6 @@ class Base {
"methods": [
{
"access": "private",
"display_name": "all_calls_count",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -417,7 +401,6 @@ class Base {
"line": 14,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "int"
}
],
@@ -441,8 +424,8 @@ class Base {
},
{
"bases": [],
"display_name": "Layer3<LowerLayer>",
"id": "14827284480590839565",
"display_name": "clanguml::t00019::Layer3<LowerLayer>",
"id": "1853410560073854945",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -477,7 +460,6 @@ class Base {
"methods": [
{
"access": "private",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -500,12 +482,10 @@ class Base {
"line": 12,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "private",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -528,12 +508,10 @@ class Base {
"line": 18,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "std::string"
},
{
"access": "private",
"display_name": "m1_calls",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -556,12 +534,10 @@ class Base {
"line": 24,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "int"
},
{
"access": "private",
"display_name": "m2_calls",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -584,7 +560,6 @@ class Base {
"line": 26,
"translation_unit": "t00019.cc"
},
"template_parameters": [],
"type": "int"
}
],
@@ -610,13 +585,13 @@ class Base {
"bases": [
{
"access": "public",
"id": "2093347899813072991",
"id": "261668487476634123",
"is_virtual": false,
"name": "clanguml::t00019::Base"
}
],
"display_name": "Layer3<Base>",
"id": "7783123365946242556",
"display_name": "clanguml::t00019::Layer3<clanguml::t00019::Base>",
"id": "972890420743280319",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -629,7 +604,7 @@ class Base {
"source_location": {
"column": 11,
"file": "",
"line": 269,
"line": 277,
"translation_unit": "t00019.cc"
},
"template_parameters": [
@@ -637,7 +612,7 @@ class Base {
"is_variadic": false,
"kind": "argument",
"template_parameters": [],
"type": "Base"
"type": "clanguml::t00019::Base"
}
],
"type": "class"
@@ -646,13 +621,13 @@ class Base {
"bases": [
{
"access": "public",
"id": "7783123365946242556",
"id": "972890420743280319",
"is_virtual": false,
"name": "clanguml::t00019::Layer3<clanguml::t00019::Base>"
}
],
"display_name": "Layer2<Layer3<Base>>",
"id": "1038279998935990962",
"display_name": "clanguml::t00019::Layer2<clanguml::t00019::Layer3<clanguml::t00019::Base>>",
"id": "129784999866998870",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -665,7 +640,7 @@ class Base {
"source_location": {
"column": 11,
"file": "",
"line": 269,
"line": 277,
"translation_unit": "t00019.cc"
},
"template_parameters": [
@@ -680,7 +655,7 @@ class Base {
"type": "clanguml::t00019::Base"
}
],
"type": "Layer3"
"type": "clanguml::t00019::Layer3"
}
],
"type": "class"
@@ -689,13 +664,13 @@ class Base {
"bases": [
{
"access": "public",
"id": "1038279998935990962",
"id": "129784999866998870",
"is_virtual": false,
"name": "clanguml::t00019::Layer2<clanguml::t00019::Layer3<clanguml::t00019::Base>>"
}
],
"display_name": "Layer1<Layer2<Layer3<Base>>>",
"id": "5272608466605309667",
"display_name": "clanguml::t00019::Layer1<clanguml::t00019::Layer2<clanguml::t00019::Layer3<clanguml::t00019::Base>>>",
"id": "659076058325663708",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -708,7 +683,7 @@ class Base {
"source_location": {
"column": 11,
"file": "",
"line": 269,
"line": 277,
"translation_unit": "t00019.cc"
},
"template_parameters": [
@@ -730,15 +705,15 @@ class Base {
"type": "clanguml::t00019::Layer3"
}
],
"type": "Layer2"
"type": "clanguml::t00019::Layer2"
}
],
"type": "class"
},
{
"bases": [],
"display_name": "A",
"id": "8121319990296713582",
"display_name": "clanguml::t00019::A",
"id": "1015164998787089197",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -772,49 +747,48 @@ class Base {
}
],
"name": "t00019_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "14827284480590839565",
"source": "7783123365946242556",
"destination": "1853410560073854945",
"source": "972890420743280319",
"type": "instantiation"
},
{
"access": "public",
"destination": "2093347899813072991",
"source": "7783123365946242556",
"destination": "261668487476634123",
"source": "972890420743280319",
"type": "extension"
},
{
"access": "public",
"destination": "8921207402420645183",
"source": "1038279998935990962",
"destination": "1115150925302580647",
"source": "129784999866998870",
"type": "instantiation"
},
{
"access": "public",
"destination": "7783123365946242556",
"source": "1038279998935990962",
"destination": "972890420743280319",
"source": "129784999866998870",
"type": "extension"
},
{
"access": "public",
"destination": "7221050388300154171",
"source": "5272608466605309667",
"destination": "902631298537519271",
"source": "659076058325663708",
"type": "instantiation"
},
{
"access": "public",
"destination": "1038279998935990962",
"source": "5272608466605309667",
"destination": "129784999866998870",
"source": "659076058325663708",
"type": "extension"
},
{
"access": "public",
"destination": "5272608466605309667",
"destination": "659076058325663708",
"label": "layers",
"source": "8121319990296713582",
"source": "1015164998787089197",
"type": "aggregation"
}
],

View File

@@ -1,198 +1,222 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="526px" preserveAspectRatio="none" style="width:781px;height:526px;" version="1.1" viewBox="0 0 781 526" width="781px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="740px" preserveAspectRatio="none" style="width:822px;height:740px;background:#FFFFFF;" version="1.1" viewBox="0 0 822 740" width="822px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="fv4fwxg3ugbcp" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L8" target="_top" title="Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L8" xlink:show="new" xlink:title="Base" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fv4fwxg3ugbcp)" height="107.2188" id="C_0002093347899813072991" style="stroke: #A80036; stroke-width: 1.5;" width="223" x="396.5" y="17"/>
<ellipse cx="488.25" cy="33" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M491.2188,38.6406 Q490.6406,38.9375 490,39.0781 Q489.3594,39.2344 488.6563,39.2344 Q486.1563,39.2344 484.8281,37.5938 Q483.5156,35.9375 483.5156,32.8125 Q483.5156,29.6875 484.8281,28.0313 Q486.1563,26.375 488.6563,26.375 Q489.3594,26.375 490,26.5313 Q490.6563,26.6875 491.2188,26.9844 L491.2188,29.7031 Q490.5938,29.125 490,28.8594 Q489.4063,28.5781 488.7813,28.5781 Q487.4375,28.5781 486.75,29.6563 Q486.0625,30.7188 486.0625,32.8125 Q486.0625,34.9063 486.75,35.9844 Q487.4375,37.0469 488.7813,37.0469 Q489.4063,37.0469 490,36.7813 Q490.5938,36.5 491.2188,35.9219 L491.2188,38.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="31" x="508.75" y="37.1543">Base</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="397.5" x2="618.5" y1="49" y2="49"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L8" target="_top" title="Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L8" xlink:show="new" xlink:title="Base" xlink:type="simple">
<g id="elem_C_0000261668487476634123">
<rect codeLine="2" fill="#F1F1F1" height="123.1997" id="C_0000261668487476634123" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="239" x="7" y="7"/>
<ellipse cx="106.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M101.25,24.1563 C101.25,26.6563 103.3906,28.4688 106.3125,28.4688 C107.5469,28.4688 108.7188,28.1719 109.4688,27.6563 C110.0781,27.2344 110.4063,26.8125 110.4063,26.4063 C110.4063,25.9375 109.9844,25.5313 109.4844,25.5313 C109.25,25.5313 109.0313,25.6094 108.8281,25.8125 C108.3906,26.25 108.3906,26.25 108.2188,26.3438 C107.7656,26.5781 107.125,26.7188 106.3594,26.7188 C104.3594,26.7188 103.0781,25.7031 103.0781,24.125 L103.0781,23.0781 C103.0781,21.375 104.2969,20.1719 106,20.1719 C106.5781,20.1719 107.1563,20.3125 107.625,20.5625 C108.0938,20.8281 108.2656,21.0156 108.3281,21.375 C108.4531,22.0469 108.7031,22.2969 109.2344,22.2969 C109.5156,22.2969 109.7969,22.1563 109.9844,21.9375 C110.1094,21.7656 110.1563,21.5938 110.1563,21.1563 L110.1563,19.7969 C110.1563,19.375 110.1406,19.2344 110.0156,19.0625 C109.8438,18.8125 109.5625,18.6563 109.2344,18.6563 C108.9219,18.6563 108.7188,18.7656 108.5,19.0313 C107.3281,18.5313 106.8906,18.4219 105.9375,18.4219 C103.2656,18.4219 101.25,20.4375 101.25,23.0625 L101.25,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="32" x="126.75" y="27.606">Base</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="245" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L10" target="_top" title="Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L10" xlink:show="new" xlink:title="Base" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="47.9"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="49.9"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L10" target="_top" title="Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L10" xlink:show="new" xlink:title="Base" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="139" x="27" y="56.0059">Base() = default : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L12" target="_top" title="~Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L12" xlink:show="new" xlink:title="~Base" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="64.6999"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="66.6999"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L12" target="_top" title="~Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L12" xlink:show="new" xlink:title="~Base" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="213" x="27" y="72.8059">~Base() constexpr = default : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="8" x2="245" y1="80.5999" y2="80.5999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L14" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L14" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="89.4998"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="91.4998"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L14" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L14" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="57" x="27" y="97.6058">m1() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L16" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L16" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="106.2997"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="15" y="108.2997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L16" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L16" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="27" y="114.4057">m2() : std::string</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="245" y1="122.1997" y2="122.1997"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L10" target="_top" title="Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L10" xlink:show="new" xlink:title="Base" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="402.5" y="55"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="404.5" y="57"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L9" target="_top" title="Layer1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L9" xlink:show="new" xlink:title="Layer1" xlink:type="simple">
<g id="elem_C_0000902631298537519271">
<rect codeLine="11" fill="#F1F1F1" height="81.5999" id="C_0000902631298537519271" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="145" x="505" y="651.8"/>
<ellipse cx="520" cy="667.8" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M515,668.9563 C515,671.4563 517.1406,673.2688 520.0625,673.2688 C521.2969,673.2688 522.4688,672.9719 523.2188,672.4563 C523.8281,672.0344 524.1563,671.6125 524.1563,671.2063 C524.1563,670.7375 523.7344,670.3313 523.2344,670.3313 C523,670.3313 522.7813,670.4094 522.5781,670.6125 C522.1406,671.05 522.1406,671.05 521.9688,671.1438 C521.5156,671.3781 520.875,671.5188 520.1094,671.5188 C518.1094,671.5188 516.8281,670.5031 516.8281,668.925 L516.8281,667.8781 C516.8281,666.175 518.0469,664.9719 519.75,664.9719 C520.3281,664.9719 520.9063,665.1125 521.375,665.3625 C521.8438,665.6281 522.0156,665.8156 522.0781,666.175 C522.2031,666.8469 522.4531,667.0969 522.9844,667.0969 C523.2656,667.0969 523.5469,666.9563 523.7344,666.7375 C523.8594,666.5656 523.9063,666.3938 523.9063,665.9563 L523.9063,664.5969 C523.9063,664.175 523.8906,664.0344 523.7656,663.8625 C523.5938,663.6125 523.3125,663.4563 522.9844,663.4563 C522.6719,663.4563 522.4688,663.5656 522.25,663.8313 C521.0781,663.3313 520.6406,663.2219 519.6875,663.2219 C517.0156,663.2219 515,665.2375 515,667.8625 L515,668.9563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="44" x="534" y="672.406">Layer1</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="67" x="586" y="648.8"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="65" x="587" y="663.0001">LowerLayer</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="506" x2="649" y1="683.8" y2="683.8"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L13" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L13" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="511" y="692.7"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="513" y="694.7"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L13" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L13" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="57" x="525" y="700.8059">m1() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L19" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L19" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="511" y="709.4999"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="513" y="711.4999"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L19" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L19" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="525" y="717.6059">m2() : std::string</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="506" x2="649" y1="725.3999" y2="725.3999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L10" target="_top" title="Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L10" xlink:show="new" xlink:title="Base" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="128" x="416.5" y="63.2104">Base() = default : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer2.h#L6" target="_top" title="Layer2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer2.h#L6" xlink:show="new" xlink:title="Layer2" xlink:type="simple">
<g id="elem_C_0001115150925302580647">
<rect codeLine="17" fill="#F1F1F1" height="64.7999" id="C_0001115150925302580647" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="194" x="203.5" y="526"/>
<ellipse cx="240.55" cy="542" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M235.55,543.1563 C235.55,545.6563 237.6906,547.4688 240.6125,547.4688 C241.8469,547.4688 243.0188,547.1719 243.7688,546.6563 C244.3781,546.2344 244.7063,545.8125 244.7063,545.4063 C244.7063,544.9375 244.2844,544.5313 243.7844,544.5313 C243.55,544.5313 243.3313,544.6094 243.1281,544.8125 C242.6906,545.25 242.6906,545.25 242.5188,545.3438 C242.0656,545.5781 241.425,545.7188 240.6594,545.7188 C238.6594,545.7188 237.3781,544.7031 237.3781,543.125 L237.3781,542.0781 C237.3781,540.375 238.5969,539.1719 240.3,539.1719 C240.8781,539.1719 241.4563,539.3125 241.925,539.5625 C242.3938,539.8281 242.5656,540.0156 242.6281,540.375 C242.7531,541.0469 243.0031,541.2969 243.5344,541.2969 C243.8156,541.2969 244.0969,541.1563 244.2844,540.9375 C244.4094,540.7656 244.4563,540.5938 244.4563,540.1563 L244.4563,538.7969 C244.4563,538.375 244.4406,538.2344 244.3156,538.0625 C244.1438,537.8125 243.8625,537.6563 243.5344,537.6563 C243.2219,537.6563 243.0188,537.7656 242.8,538.0313 C241.6281,537.5313 241.1906,537.4219 240.2375,537.4219 C237.5656,537.4219 235.55,539.4375 235.55,542.0625 L235.55,543.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="44" x="259.45" y="546.606">Layer2</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="67" x="333.5" y="523"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="65" x="334.5" y="537.2001">LowerLayer</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="204.5" x2="396.5" y1="558" y2="558"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer2.h#L14" target="_top" title="all_calls_count" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer2.h#L14" xlink:show="new" xlink:title="all_calls_count" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="209.5" y="566.9"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="211.5" y="568.9"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer2.h#L14" target="_top" title="all_calls_count" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer2.h#L14" xlink:show="new" xlink:title="all_calls_count" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="168" x="223.5" y="575.0059">all_calls_count() const : int</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="204.5" x2="396.5" y1="582.7999" y2="582.7999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L12" target="_top" title="~Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L12" xlink:show="new" xlink:title="~Base" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="402.5" y="67.8047"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="404.5" y="69.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L8" target="_top" title="Layer3" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L8" xlink:show="new" xlink:title="Layer3" xlink:type="simple">
<g id="elem_C_0001853410560073854945">
<rect codeLine="22" fill="#F1F1F1" height="148.7996" id="C_0001853410560073854945" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="157" x="28" y="300.2"/>
<ellipse cx="48.4" cy="316.2" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M43.4,317.3563 C43.4,319.8563 45.5406,321.6688 48.4625,321.6688 C49.6969,321.6688 50.8688,321.3719 51.6188,320.8563 C52.2281,320.4344 52.5563,320.0125 52.5563,319.6063 C52.5563,319.1375 52.1344,318.7313 51.6344,318.7313 C51.4,318.7313 51.1813,318.8094 50.9781,319.0125 C50.5406,319.45 50.5406,319.45 50.3688,319.5438 C49.9156,319.7781 49.275,319.9188 48.5094,319.9188 C46.5094,319.9188 45.2281,318.9031 45.2281,317.325 L45.2281,316.2781 C45.2281,314.575 46.4469,313.3719 48.15,313.3719 C48.7281,313.3719 49.3063,313.5125 49.775,313.7625 C50.2438,314.0281 50.4156,314.2156 50.4781,314.575 C50.6031,315.2469 50.8531,315.4969 51.3844,315.4969 C51.6656,315.4969 51.9469,315.3563 52.1344,315.1375 C52.2594,314.9656 52.3063,314.7938 52.3063,314.3563 L52.3063,312.9969 C52.3063,312.575 52.2906,312.4344 52.1656,312.2625 C51.9938,312.0125 51.7125,311.8563 51.3844,311.8563 C51.0719,311.8563 50.8688,311.9656 50.65,312.2313 C49.4781,311.7313 49.0406,311.6219 48.0875,311.6219 C45.4156,311.6219 43.4,313.6375 43.4,316.2625 L43.4,317.3563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="44" x="63.6" y="320.806">Layer3</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="67" x="121" y="297.2"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="65" x="122" y="311.4001">LowerLayer</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="29" x2="184" y1="332.2" y2="332.2"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L12" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L12" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="34" y="341.1"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="36" y="343.1"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L12" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L12" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="57" x="48" y="349.2059">m1() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L24" target="_top" title="m1_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L24" xlink:show="new" xlink:title="m1_calls" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="34" y="357.8999"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="36" y="359.8999"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L24" target="_top" title="m1_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L24" xlink:show="new" xlink:title="m1_calls" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="131" x="48" y="366.0059">m1_calls() const : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L18" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L18" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="34" y="374.6998"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="36" y="376.6998"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L18" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L18" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="48" y="382.8058">m2() : std::string</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L26" target="_top" title="m2_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L26" xlink:show="new" xlink:title="m2_calls" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="34" y="391.4997"/>
<rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="36" y="393.4997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L26" target="_top" title="m2_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L26" xlink:show="new" xlink:title="m2_calls" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="131" x="48" y="399.6057">m2_calls() const : int</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="29" x2="184" y1="407.3997" y2="407.3997"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L29" target="_top" title="m_m1_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L29" xlink:show="new" xlink:title="m_m1_calls" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="34" y="416.2997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="36" y="418.2997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L29" target="_top" title="m_m1_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L29" xlink:show="new" xlink:title="m_m1_calls" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="103" x="48" y="424.4057">m_m1_calls : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L30" target="_top" title="m_m2_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L30" xlink:show="new" xlink:title="m_m2_calls" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="34" y="433.0996"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="36" y="435.0996"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L30" target="_top" title="m_m2_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L30" xlink:show="new" xlink:title="m_m2_calls" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="103" x="48" y="441.2056">m_m2_calls : int</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L12" target="_top" title="~Base" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L12" xlink:show="new" xlink:title="~Base" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="197" x="416.5" y="76.0151">~Base() constexpr = default : void</text>
<g id="elem_C_0000972890420743280319">
<rect codeLine="32" fill="#F1F1F1" height="48" id="C_0000972890420743280319" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="108" x="72.5" y="191.2"/>
<ellipse cx="87.5" cy="207.2" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M82.5,208.3562 C82.5,210.8562 84.6406,212.6687 87.5625,212.6687 C88.7969,212.6687 89.9688,212.3719 90.7188,211.8562 C91.3281,211.4344 91.6563,211.0125 91.6563,210.6062 C91.6563,210.1375 91.2344,209.7312 90.7344,209.7312 C90.5,209.7312 90.2813,209.8094 90.0781,210.0125 C89.6406,210.45 89.6406,210.45 89.4688,210.5437 C89.0156,210.7781 88.375,210.9187 87.6094,210.9187 C85.6094,210.9187 84.3281,209.9031 84.3281,208.325 L84.3281,207.2781 C84.3281,205.575 85.5469,204.3719 87.25,204.3719 C87.8281,204.3719 88.4063,204.5125 88.875,204.7625 C89.3438,205.0281 89.5156,205.2156 89.5781,205.575 C89.7031,206.2469 89.9531,206.4969 90.4844,206.4969 C90.7656,206.4969 91.0469,206.3562 91.2344,206.1375 C91.3594,205.9656 91.4063,205.7937 91.4063,205.3562 L91.4063,203.9969 C91.4063,203.575 91.3906,203.4344 91.2656,203.2625 C91.0938,203.0125 90.8125,202.8562 90.4844,202.8562 C90.1719,202.8562 89.9688,202.9656 89.75,203.2312 C88.5781,202.7312 88.1406,202.6219 87.1875,202.6219 C84.5156,202.6219 82.5,204.6375 82.5,207.2625 L82.5,208.3562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="44" x="101.5" y="211.806">Layer3</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="30" x="153.5" y="188.2"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="28" x="154.5" y="202.4001">Base</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="73.5" x2="179.5" y1="223.2" y2="223.2"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="73.5" x2="179.5" y1="231.2" y2="231.2"/>
</g>
<g id="elem_C_0000129784999866998870">
<rect codeLine="36" fill="#F1F1F1" height="48" id="C_0000129784999866998870" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="160" x="220.5" y="350.6"/>
<ellipse cx="235.5" cy="366.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M230.5,367.7562 C230.5,370.2562 232.6406,372.0687 235.5625,372.0687 C236.7969,372.0687 237.9688,371.7719 238.7188,371.2562 C239.3281,370.8344 239.6563,370.4125 239.6563,370.0062 C239.6563,369.5375 239.2344,369.1312 238.7344,369.1312 C238.5,369.1312 238.2813,369.2094 238.0781,369.4125 C237.6406,369.85 237.6406,369.85 237.4688,369.9437 C237.0156,370.1781 236.375,370.3187 235.6094,370.3187 C233.6094,370.3187 232.3281,369.3031 232.3281,367.725 L232.3281,366.6781 C232.3281,364.975 233.5469,363.7719 235.25,363.7719 C235.8281,363.7719 236.4063,363.9125 236.875,364.1625 C237.3438,364.4281 237.5156,364.6156 237.5781,364.975 C237.7031,365.6469 237.9531,365.8969 238.4844,365.8969 C238.7656,365.8969 239.0469,365.7562 239.2344,365.5375 C239.3594,365.3656 239.4063,365.1937 239.4063,364.7562 L239.4063,363.3969 C239.4063,362.975 239.3906,362.8344 239.2656,362.6625 C239.0938,362.4125 238.8125,362.2562 238.4844,362.2562 C238.1719,362.2562 237.9688,362.3656 237.75,362.6312 C236.5781,362.1312 236.1406,362.0219 235.1875,362.0219 C232.5156,362.0219 230.5,364.0375 230.5,366.6625 L230.5,367.7562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="44" x="249.5" y="371.206">Layer2</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="82" x="301.5" y="347.6"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="80" x="302.5" y="361.8001">Layer3&lt;Base&gt;</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="221.5" x2="379.5" y1="382.6" y2="382.6"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="221.5" x2="379.5" y1="390.6" y2="390.6"/>
</g>
<g id="elem_C_0000659076058325663708">
<rect codeLine="40" fill="#F1F1F1" height="48" id="C_0000659076058325663708" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="212" x="471.5" y="534.4"/>
<ellipse cx="486.5" cy="550.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M481.5,551.5563 C481.5,554.0563 483.6406,555.8688 486.5625,555.8688 C487.7969,555.8688 488.9688,555.5719 489.7188,555.0563 C490.3281,554.6344 490.6563,554.2125 490.6563,553.8063 C490.6563,553.3375 490.2344,552.9313 489.7344,552.9313 C489.5,552.9313 489.2813,553.0094 489.0781,553.2125 C488.6406,553.65 488.6406,553.65 488.4688,553.7438 C488.0156,553.9781 487.375,554.1188 486.6094,554.1188 C484.6094,554.1188 483.3281,553.1031 483.3281,551.525 L483.3281,550.4781 C483.3281,548.775 484.5469,547.5719 486.25,547.5719 C486.8281,547.5719 487.4063,547.7125 487.875,547.9625 C488.3438,548.2281 488.5156,548.4156 488.5781,548.775 C488.7031,549.4469 488.9531,549.6969 489.4844,549.6969 C489.7656,549.6969 490.0469,549.5563 490.2344,549.3375 C490.3594,549.1656 490.4063,548.9938 490.4063,548.5563 L490.4063,547.1969 C490.4063,546.775 490.3906,546.6344 490.2656,546.4625 C490.0938,546.2125 489.8125,546.0563 489.4844,546.0563 C489.1719,546.0563 488.9688,546.1656 488.75,546.4313 C487.5781,545.9313 487.1406,545.8219 486.1875,545.8219 C483.5156,545.8219 481.5,547.8375 481.5,550.4625 L481.5,551.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="44" x="500.5" y="555.006">Layer1</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="134" x="552.5" y="531.4"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="132" x="553.5" y="545.6001">Layer2&lt;Layer3&lt;Base&gt;&gt;</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="472.5" x2="682.5" y1="566.4" y2="566.4"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="472.5" x2="682.5" y1="574.4" y2="574.4"/>
</g>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019.cc#L11" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019.cc#L11" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001015164998787089197">
<rect codeLine="44" fill="#F1F1F1" height="64.7999" id="C_0001015164998787089197" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="399" x="416" y="342.2"/>
<ellipse cx="606.75" cy="358.2" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M601.75,359.3563 C601.75,361.8563 603.8906,363.6688 606.8125,363.6688 C608.0469,363.6688 609.2188,363.3719 609.9688,362.8563 C610.5781,362.4344 610.9063,362.0125 610.9063,361.6063 C610.9063,361.1375 610.4844,360.7313 609.9844,360.7313 C609.75,360.7313 609.5313,360.8094 609.3281,361.0125 C608.8906,361.45 608.8906,361.45 608.7188,361.5438 C608.2656,361.7781 607.625,361.9188 606.8594,361.9188 C604.8594,361.9188 603.5781,360.9031 603.5781,359.325 L603.5781,358.2781 C603.5781,356.575 604.7969,355.3719 606.5,355.3719 C607.0781,355.3719 607.6563,355.5125 608.125,355.7625 C608.5938,356.0281 608.7656,356.2156 608.8281,356.575 C608.9531,357.2469 609.2031,357.4969 609.7344,357.4969 C610.0156,357.4969 610.2969,357.3563 610.4844,357.1375 C610.6094,356.9656 610.6563,356.7938 610.6563,356.3563 L610.6563,354.9969 C610.6563,354.575 610.6406,354.4344 610.5156,354.2625 C610.3438,354.0125 610.0625,353.8563 609.7344,353.8563 C609.4219,353.8563 609.2188,353.9656 609,354.2313 C607.8281,353.7313 607.3906,353.6219 606.4375,353.6219 C603.7656,353.6219 601.75,355.6375 601.75,358.2625 L601.75,359.3563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="627.25" y="362.806">A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="417" x2="814" y1="374.2" y2="374.2"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="417" x2="814" y1="382.2" y2="382.2"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019.cc#L13" target="_top" title="layers" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019.cc#L13" xlink:show="new" xlink:title="layers" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="422" y="391.1"/>
<ellipse cx="427" cy="396.1" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019.cc#L13" target="_top" title="layers" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019.cc#L13" xlink:show="new" xlink:title="layers" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="373" x="436" y="399.2059">layers : std::unique_ptr&lt;Layer1&lt;Layer2&lt;Layer3&lt;Base&gt;&gt;&gt;&gt;</text>
</a>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="397.5" x2="618.5" y1="82.6094" y2="82.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L14" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L14" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="402.5" y="88.6094"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="404.5" y="90.6094"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L14" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L14" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="52" x="416.5" y="96.8198">m1() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L16" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L16" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="402.5" y="101.4141"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="404.5" y="103.4141"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L16" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L16" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="97" x="416.5" y="109.6245">m2() : std::string</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="397.5" x2="618.5" y1="116.2188" y2="116.2188"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L9" target="_top" title="Layer1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L9" xlink:show="new" xlink:title="Layer1" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fv4fwxg3ugbcp)" height="73.6094" id="C_0007221050388300154171" style="stroke: #A80036; stroke-width: 1.5;" width="150" x="6" y="316"/>
<ellipse cx="21" cy="332" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M23.9688,337.6406 Q23.3906,337.9375 22.75,338.0781 Q22.1094,338.2344 21.4063,338.2344 Q18.9063,338.2344 17.5781,336.5938 Q16.2656,334.9375 16.2656,331.8125 Q16.2656,328.6875 17.5781,327.0313 Q18.9063,325.375 21.4063,325.375 Q22.1094,325.375 22.75,325.5313 Q23.4063,325.6875 23.9688,325.9844 L23.9688,328.7031 Q23.3438,328.125 22.75,327.8594 Q22.1563,327.5781 21.5313,327.5781 Q20.1875,327.5781 19.5,328.6563 Q18.8125,329.7188 18.8125,331.8125 Q18.8125,333.9063 19.5,334.9844 Q20.1875,336.0469 21.5313,336.0469 Q22.1563,336.0469 22.75,335.7813 Q23.3438,335.5 23.9688,334.9219 L23.9688,337.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="41" x="35" y="336.1543">Layer1</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="75" x="84" y="313"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="73" x="85" y="325.1387">LowerLayer</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="155" y1="348" y2="348"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L13" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L13" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="354"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="14" y="356"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L13" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L13" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="52" x="26" y="362.2104">m1() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L19" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L19" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="366.8047"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="14" y="368.8047"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L19" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L19" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="97" x="26" y="375.0151">m2() : std::string</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="155" y1="381.6094" y2="381.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer2.h#L6" target="_top" title="Layer2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer2.h#L6" xlink:show="new" xlink:title="Layer2" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fv4fwxg3ugbcp)" height="60.8047" id="C_0008921207402420645183" style="stroke: #A80036; stroke-width: 1.5;" width="177" x="132.5" y="194"/>
<ellipse cx="159.65" cy="210" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M162.6188,215.6406 Q162.0406,215.9375 161.4,216.0781 Q160.7594,216.2344 160.0563,216.2344 Q157.5563,216.2344 156.2281,214.5938 Q154.9156,212.9375 154.9156,209.8125 Q154.9156,206.6875 156.2281,205.0313 Q157.5563,203.375 160.0563,203.375 Q160.7594,203.375 161.4,203.5313 Q162.0563,203.6875 162.6188,203.9844 L162.6188,206.7031 Q161.9938,206.125 161.4,205.8594 Q160.8063,205.5781 160.1813,205.5781 Q158.8375,205.5781 158.15,206.6563 Q157.4625,207.7188 157.4625,209.8125 Q157.4625,211.9063 158.15,212.9844 Q158.8375,214.0469 160.1813,214.0469 Q160.8063,214.0469 161.4,213.7813 Q161.9938,213.5 162.6188,212.9219 L162.6188,215.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="41" x="176.35" y="214.1543">Layer2</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="75" x="237.5" y="191"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="73" x="238.5" y="203.1387">LowerLayer</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="133.5" x2="308.5" y1="226" y2="226"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer2.h#L14" target="_top" title="all_calls_count" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer2.h#L14" xlink:show="new" xlink:title="all_calls_count" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="138.5" y="232"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="140.5" y="234"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer2.h#L14" target="_top" title="all_calls_count" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer2.h#L14" xlink:show="new" xlink:title="all_calls_count" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="151" x="152.5" y="240.2104">all_calls_count() const : int</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="133.5" x2="308.5" y1="246.8047" y2="246.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L8" target="_top" title="Layer3" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L8" xlink:show="new" xlink:title="Layer3" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fv4fwxg3ugbcp)" height="124.8281" id="C_0014827284480590839565" style="stroke: #A80036; stroke-width: 1.5;" width="150" x="212" y="8"/>
<ellipse cx="227" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M229.9688,29.6406 Q229.3906,29.9375 228.75,30.0781 Q228.1094,30.2344 227.4063,30.2344 Q224.9063,30.2344 223.5781,28.5938 Q222.2656,26.9375 222.2656,23.8125 Q222.2656,20.6875 223.5781,19.0313 Q224.9063,17.375 227.4063,17.375 Q228.1094,17.375 228.75,17.5313 Q229.4063,17.6875 229.9688,17.9844 L229.9688,20.7031 Q229.3438,20.125 228.75,19.8594 Q228.1563,19.5781 227.5313,19.5781 Q226.1875,19.5781 225.5,20.6563 Q224.8125,21.7188 224.8125,23.8125 Q224.8125,25.9063 225.5,26.9844 Q226.1875,28.0469 227.5313,28.0469 Q228.1563,28.0469 228.75,27.7813 Q229.3438,27.5 229.9688,26.9219 L229.9688,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="41" x="241" y="28.1543">Layer3</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="75" x="290" y="5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="73" x="291" y="17.1387">LowerLayer</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="213" x2="361" y1="40" y2="40"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L12" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L12" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="218" y="46"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="220" y="48"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L12" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L12" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="52" x="232" y="54.2104">m1() : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L24" target="_top" title="m1_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L24" xlink:show="new" xlink:title="m1_calls" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="218" y="58.8047"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="220" y="60.8047"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L24" target="_top" title="m1_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L24" xlink:show="new" xlink:title="m1_calls" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="119" x="232" y="67.0151">m1_calls() const : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L18" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L18" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="218" y="71.6094"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="220" y="73.6094"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L18" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L18" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="97" x="232" y="79.8198">m2() : std::string</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L26" target="_top" title="m2_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L26" xlink:show="new" xlink:title="m2_calls" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="218" y="84.4141"/>
<rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="220" y="86.4141"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L26" target="_top" title="m2_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L26" xlink:show="new" xlink:title="m2_calls" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="119" x="232" y="92.6245">m2_calls() const : int</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="213" x2="361" y1="99.2188" y2="99.2188"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L29" target="_top" title="m_m1_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L29" xlink:show="new" xlink:title="m_m1_calls" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="218" y="105.2188"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="220" y="107.2188"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L29" target="_top" title="m_m1_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L29" xlink:show="new" xlink:title="m_m1_calls" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="93" x="232" y="113.4292">m_m1_calls : int</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L30" target="_top" title="m_m2_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L30" xlink:show="new" xlink:title="m_m2_calls" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="218" y="118.0234"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="220" y="120.0234"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L30" target="_top" title="m_m2_calls" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L30" xlink:show="new" xlink:title="m_m2_calls" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="93" x="232" y="126.2339">m_m2_calls : int</text>
</a>
<rect fill="#FEFECE" filter="url(#fv4fwxg3ugbcp)" height="48" id="C_0007783123365946242556" style="stroke: #A80036; stroke-width: 1.5;" width="107" x="344.5" y="200.5"/>
<ellipse cx="359.5" cy="216.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M362.4688,222.1406 Q361.8906,222.4375 361.25,222.5781 Q360.6094,222.7344 359.9063,222.7344 Q357.4063,222.7344 356.0781,221.0938 Q354.7656,219.4375 354.7656,216.3125 Q354.7656,213.1875 356.0781,211.5313 Q357.4063,209.875 359.9063,209.875 Q360.6094,209.875 361.25,210.0313 Q361.9063,210.1875 362.4688,210.4844 L362.4688,213.2031 Q361.8438,212.625 361.25,212.3594 Q360.6563,212.0781 360.0313,212.0781 Q358.6875,212.0781 358,213.1563 Q357.3125,214.2188 357.3125,216.3125 Q357.3125,218.4063 358,219.4844 Q358.6875,220.5469 360.0313,220.5469 Q360.6563,220.5469 361.25,220.2813 Q361.8438,220 362.4688,219.4219 L362.4688,222.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="41" x="373.5" y="220.6543">Layer3</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="32" x="422.5" y="197.5"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="30" x="423.5" y="209.6387">Base</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="345.5" x2="450.5" y1="232.5" y2="232.5"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="345.5" x2="450.5" y1="240.5" y2="240.5"/>
<rect fill="#FEFECE" filter="url(#fv4fwxg3ugbcp)" height="48" id="C_0001038279998935990962" style="stroke: #A80036; stroke-width: 1.5;" width="170" x="191" y="329"/>
<ellipse cx="206" cy="345" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M208.9688,350.6406 Q208.3906,350.9375 207.75,351.0781 Q207.1094,351.2344 206.4063,351.2344 Q203.9063,351.2344 202.5781,349.5938 Q201.2656,347.9375 201.2656,344.8125 Q201.2656,341.6875 202.5781,340.0313 Q203.9063,338.375 206.4063,338.375 Q207.1094,338.375 207.75,338.5313 Q208.4063,338.6875 208.9688,338.9844 L208.9688,341.7031 Q208.3438,341.125 207.75,340.8594 Q207.1563,340.5781 206.5313,340.5781 Q205.1875,340.5781 204.5,341.6563 Q203.8125,342.7188 203.8125,344.8125 Q203.8125,346.9063 204.5,347.9844 Q205.1875,349.0469 206.5313,349.0469 Q207.1563,349.0469 207.75,348.7813 Q208.3438,348.5 208.9688,347.9219 L208.9688,350.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="41" x="220" y="349.1543">Layer2</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="95" x="269" y="326"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="93" x="270" y="338.1387">Layer3&lt;Base&gt;</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="192" x2="360" y1="361" y2="361"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="192" x2="360" y1="369" y2="369"/>
<rect fill="#FEFECE" filter="url(#fv4fwxg3ugbcp)" height="48" id="C_0005272608466605309667" style="stroke: #A80036; stroke-width: 1.5;" width="233" x="159.5" y="467"/>
<ellipse cx="174.5" cy="483" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M177.4688,488.6406 Q176.8906,488.9375 176.25,489.0781 Q175.6094,489.2344 174.9063,489.2344 Q172.4063,489.2344 171.0781,487.5938 Q169.7656,485.9375 169.7656,482.8125 Q169.7656,479.6875 171.0781,478.0313 Q172.4063,476.375 174.9063,476.375 Q175.6094,476.375 176.25,476.5313 Q176.9063,476.6875 177.4688,476.9844 L177.4688,479.7031 Q176.8438,479.125 176.25,478.8594 Q175.6563,478.5781 175.0313,478.5781 Q173.6875,478.5781 173,479.6563 Q172.3125,480.7188 172.3125,482.8125 Q172.3125,484.9063 173,485.9844 Q173.6875,487.0469 175.0313,487.0469 Q175.6563,487.0469 176.25,486.7813 Q176.8438,486.5 177.4688,485.9219 L177.4688,488.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="41" x="188.5" y="487.1543">Layer1</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="158" x="237.5" y="464"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="156" x="238.5" y="476.1387">Layer2&lt;Layer3&lt;Base&gt;&gt;</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="160.5" x2="391.5" y1="499" y2="499"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="160.5" x2="391.5" y1="507" y2="507"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019.cc#L11" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019.cc#L11" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fv4fwxg3ugbcp)" height="60.8047" id="C_0008121319990296713582" style="stroke: #A80036; stroke-width: 1.5;" width="374" x="396" y="322.5"/>
<ellipse cx="574.75" cy="338.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M577.7188,344.1406 Q577.1406,344.4375 576.5,344.5781 Q575.8594,344.7344 575.1563,344.7344 Q572.6563,344.7344 571.3281,343.0938 Q570.0156,341.4375 570.0156,338.3125 Q570.0156,335.1875 571.3281,333.5313 Q572.6563,331.875 575.1563,331.875 Q575.8594,331.875 576.5,332.0313 Q577.1563,332.1875 577.7188,332.4844 L577.7188,335.2031 Q577.0938,334.625 576.5,334.3594 Q575.9063,334.0781 575.2813,334.0781 Q573.9375,334.0781 573.25,335.1563 Q572.5625,336.2188 572.5625,338.3125 Q572.5625,340.4063 573.25,341.4844 Q573.9375,342.5469 575.2813,342.5469 Q575.9063,342.5469 576.5,342.2813 Q577.0938,342 577.7188,341.4219 L577.7188,344.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="595.25" y="342.6543">A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="397" x2="769" y1="354.5" y2="354.5"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="397" x2="769" y1="362.5" y2="362.5"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019.cc#L13" target="_top" title="layers" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019.cc#L13" xlink:show="new" xlink:title="layers" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="402" y="368.5"/>
<ellipse cx="407" cy="373.5" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019.cc#L13" target="_top" title="layers" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019.cc#L13" xlink:show="new" xlink:title="layers" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="348" x="416" y="376.7104">layers : std::unique_ptr&lt;Layer1&lt;Layer2&lt;Layer3&lt;Base&gt;&gt;&gt;&gt;</text>
</a>
<path d="M344.03,149.59 C357.61,168.19 371.06,186.61 381.14,200.41 " fill="none" id="C_0014827284480590839565&lt;-C_0007783123365946242556" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="338.29,153.6,332.15,133.32,349.6,145.35,338.29,153.6" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M457.91,140.71 C442.44,162.09 426.45,184.19 414.88,200.17 " fill="none" id="C_0002093347899813072991&lt;-C_0007783123365946242556" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="452.44,136.33,469.84,124.24,463.78,144.54,452.44,136.33" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M241.89,273.54 C250.13,292.5 259.21,313.39 265.93,328.84 " fill="none" id="C_0008921207402420645183&lt;-C_0001038279998935990962" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="235.45,276.29,233.9,255.16,248.29,270.71,235.45,276.29" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M361.59,263.25 C341,284.61 315.91,310.62 298.23,328.95 " fill="none" id="C_0007783123365946242556&lt;-C_0001038279998935990962" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="356.7,258.24,375.62,248.7,366.78,267.96,356.7,258.24" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M149.29,401.63 C180.96,423.72 217.17,448.97 242.74,466.8 " fill="none" id="C_0007221050388300154171&lt;-C_0005272608466605309667" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="145.14,407.27,132.74,390.09,153.15,395.79,145.14,407.27" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M276,397.41 C276,420.44 276,447.83 276,466.82 " fill="none" id="C_0001038279998935990962&lt;-C_0005272608466605309667" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="269,397.07,276,377.07,283,397.07,269,397.07" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M504.15,388.93 C448.87,413.42 376.51,445.47 328.25,466.85 " fill="none" id="C_0008121319990296713582&lt;-C_0005272608466605309667" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="516.39,383.51,509.2848,382.2789,505.4156,388.3641,512.5208,389.5952,516.39,383.51" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="436" cy="429.0664" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="38" x="443" y="433.0669">layers</text>
<g id="link_C_0000972890420743280319_C_0001853410560073854945">
<path codeLine="48" d="M123.55,239.43 C121.51,255.5 120.9218,260.0027 118.1518,281.8727 " fill="none" id="C_0000972890420743280319-to-C_0001853410560073854945" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="115.89,299.73,124.1042,282.6266,112.1993,281.1187,115.89,299.73" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000261668487476634123_C_0000972890420743280319">
<path codeLine="49" d="M126.5,148.51 C126.5,169.81 126.5,174.46 126.5,190.83 " fill="none" id="C_0000261668487476634123-backto-C_0000972890420743280319" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="126.5,130.51,120.5,148.51,132.5,148.51,126.5,130.51" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000129784999866998870_C_0001115150925302580647">
<path codeLine="50" d="M300.5,399 C300.5,431.22 300.5,471.37 300.5,507.54 " fill="none" id="C_0000129784999866998870-to-C_0001115150925302580647" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="300.5,525.54,306.5,507.54,294.5,507.54,300.5,525.54" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000972890420743280319_C_0000129784999866998870">
<path codeLine="51" d="M165.521,251.5027 C198.421,281.2527 241.77,320.48 274.72,350.28 " fill="none" id="C_0000972890420743280319-backto-C_0000129784999866998870" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="152.17,239.43,161.4968,255.9531,169.5452,247.0524,152.17,239.43" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000659076058325663708_C_0000902631298537519271">
<path codeLine="52" d="M577.5,582.73 C577.5,601.71 577.5,610.92 577.5,633.4 " fill="none" id="C_0000659076058325663708-to-C_0000902631298537519271" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="577.5,651.4,583.5,633.4,571.5,633.4,577.5,651.4" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000129784999866998870_C_0000659076058325663708">
<path codeLine="53" d="M344.2063,409.8749 C363.3863,424.7149 374.89,433.07 398.5,449 C444.57,480.1 499.51,512.74 536.26,533.98 " fill="none" id="C_0000129784999866998870-backto-C_0000659076058325663708" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="329.97,398.86,340.5346,414.6203,347.8779,405.1295,329.97,398.86" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001015164998787089197_C_0000659076058325663708">
<path codeLine="54" d="M606.4244,419.0161 C598.8544,455.2261 589.1,501.92 582.36,534.17 " fill="none" id="C_0001015164998787089197-backto-C_0000659076058325663708" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="608.88,407.27,603.7368,412.3245,606.4244,419.0161,611.5675,413.9616,608.88,407.27" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="599.5" cy="488.3" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="35" x="606.5" y="492.077">layers</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 37 KiB

View File

@@ -1,62 +1,67 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 929.953125 805" style="max-width: 929.953px; background-color: white;" width="929.953125" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 938.84375 805" style="max-width: 938.844px; background-color: white;" width="938.84375" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M151.640625,259.63803885045235L142.36197916666666,263.865032375377C133.08333333333334,268.09202590030156,114.52604166666667,276.5460129501508,105.24739583333333,284.93967314174205C95.96875,293.3333333333333,95.96875,301.6666666666667,95.96875,305.8333333333333L95.96875,310"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M213.40625,153L213.40625,157.16666666666666C213.40625,161.33333333333334,213.40625,169.66666666666666,213.40625,178C213.40625,186.33333333333334,213.40625,194.66666666666666,213.40625,198.83333333333334L213.40625,203"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M328.62585116731515,433L327.328834306096,449.6666666666667C326.03181744487676,466.3333333333333,323.4377837224384,499.6666666666667,322.1407668612192,522C320.84375,544.3333333333334,320.84375,555.6666666666666,320.84375,561.3333333333334L320.84375,567"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M275.171875,259.63803885045235L284.4505208333333,263.865032375377C293.7291666666667,268.09202590030156,312.2864583333333,276.5460129501508,321.5651041666667,295.93967314174205C330.84375,315.3333333333333,330.84375,345.6666666666667,330.84375,360.8333333333333L330.84375,376"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M676.84375,635L676.84375,641C676.84375,647,676.84375,659,676.84375,669.1666666666666C676.84375,679.3333333333334,676.84375,687.6666666666666,676.84375,691.8333333333334L676.84375,696"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M366.6619497811284,433L387.608265442607,449.6666666666667C408.5545811040856,466.3333333333333,450.4472124270428,499.6666666666667,490.2204572977051,523.8333333333334C529.9937021683673,548,567.6475605867347,563,586.4744897959184,570.5L605.301419005102,578"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M699.8515625,444L699.8515625,458.8333333333333C699.8515625,473.6666666666667,699.8515625,503.3333333333333,697.5038265306122,525.6666666666666C695.1560905612245,548,690.460618622449,563,688.1128826530612,570.5L685.7651466836735,578"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M158.30859375,259.11538210426664L148.65950520833334,263.42948508688886C139.01041666666666,267.7435880695111,119.71223958333333,276.37179403475557,110.06315104166667,281.85256368404447C100.4140625,287.3333333333333,100.4140625,289.6666666666667,100.4140625,290.8333333333333L100.4140625,292"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M220.07421875,171L220.07421875,172.16666666666666C220.07421875,173.33333333333334,220.07421875,175.66666666666666,220.07421875,181C220.07421875,186.33333333333334,220.07421875,194.66666666666666,220.07421875,198.83333333333334L220.07421875,203"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M337.51647616731515,433L336.219459306096,449.6666666666667C334.92244244487676,466.3333333333333,332.3284087224384,499.6666666666667,331.0313918612192,519C329.734375,538.3333333333334,329.734375,543.6666666666666,329.734375,546.3333333333334L329.734375,549"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M298.2722189167969,266.46228937043225L305.1825782639974,269.55190780869356C312.0929376111979,272.6415262469548,325.913656305599,278.82076312347743,332.82401565279946,297.0770482284054C339.734375,315.3333333333333,339.734375,345.6666666666667,339.734375,360.8333333333333L339.734375,376"/>
<path marker-end="url(#my-svg_classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M685.734375,635L685.734375,641C685.734375,647,685.734375,659,685.734375,666.1666666666666C685.734375,673.3333333333334,685.734375,675.6666666666666,685.734375,676.8333333333334L685.734375,678"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M389.6378130241424,444.2074111032627L408.23658897845206,459.0061759193856C426.8353649327616,473.8049407355085,464.03291684138077,503.40247036775423,501.4586220048741,525.7012351838771C538.8843271683673,548,576.5381855867347,563,595.3651147959184,570.5L614.192044005102,578"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M708.7421875,462L708.7421875,473.8333333333333C708.7421875,485.6666666666667,708.7421875,509.3333333333333,706.3944515306122,528.6666666666666C704.0467155612245,548,699.351243622449,563,697.0035076530612,570.5L694.6557716836735,578"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -119,7 +124,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(699.8515625, 533)" class="edgeLabel">
<g transform="translate(708.7421875, 533)" class="edgeLabel">
<g transform="translate(-26.015625, -9)" class="label">
<foreignObject height="18" width="52.03125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -132,11 +137,11 @@
</g>
</g>
<g class="nodes">
<a transform="translate(213.40625, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_base.h#L8">
<g title="Base" id="classId-C_0002093347899813072991-0" class="node default clickable">
<rect height="145" width="254.671875" y="-72.5" x="-127.3359375" class="outer title-state"/>
<line y2="-42.5" y1="-42.5" x2="127.3359375" x1="-127.3359375" class="divider"/>
<line y2="-26.5" y1="-26.5" x2="127.3359375" x1="-127.3359375" class="divider"/>
<a transform="translate(220.07421875, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_base.h#L8">
<g title="Base" id="classId-C_0000261668487476634123-0" class="node default clickable">
<rect height="145" width="263.5625" y="-72.5" x="-131.78125" class="outer title-state"/>
<line y2="-42.5" y1="-42.5" x2="131.78125" x1="-131.78125" class="divider"/>
<line y2="-26.5" y1="-26.5" x2="131.78125" x1="-131.78125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -148,31 +153,31 @@
<span class="nodeLabel">Base</span>
</div>
</foreignObject>
<foreignObject transform="translate( -119.8359375, -19)" height="18" width="156.515625">
<foreignObject transform="translate( -124.28125, -19)" height="18" width="165.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-Base() : [default] void</span>
<span class="nodeLabel">-Base() : : [default] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -119.8359375, 3)" height="18" width="239.671875">
<foreignObject transform="translate( -124.28125, 3)" height="18" width="248.5625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-~Base() : [default,constexpr] void</span>
<span class="nodeLabel">-~Base() : : [default,constexpr] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -119.8359375, 25)" height="18" width="68.453125">
<foreignObject transform="translate( -124.28125, 25)" height="18" width="77.34375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m1() : int</span>
<span class="nodeLabel">-m1() : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -119.8359375, 47)" height="18" width="120.90625">
<foreignObject transform="translate( -124.28125, 47)" height="18" width="129.796875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m2() : std::string</span>
<span class="nodeLabel">-m2() : : std::string</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(676.84375, 746.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer1.h#L9">
<g title="Layer1" id="classId-C_0007221050388300154171-1" class="node default clickable">
<a transform="translate(685.734375, 746.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer1.h#L9">
<g title="Layer1" id="classId-C_0000902631298537519271-1" class="node default clickable">
<rect height="101" width="175.09375" y="-50.5" x="-87.546875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="87.546875" x1="-87.546875" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="87.546875" x1="-87.546875" class="divider"/>
@@ -187,24 +192,24 @@
<span class="nodeLabel">Layer1&lt;LowerLayer&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -80.046875, 3)" height="18" width="68.453125">
<foreignObject transform="translate( -80.046875, 3)" height="18" width="77.34375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m1() : int</span>
<span class="nodeLabel">-m1() : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -80.046875, 25)" height="18" width="120.90625">
<foreignObject transform="translate( -80.046875, 25)" height="18" width="129.796875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m2() : std::string</span>
<span class="nodeLabel">-m2() : : std::string</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(320.84375, 606.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer2.h#L6">
<g title="Layer2" id="classId-C_0008921207402420645183-2" class="node default clickable">
<rect height="79" width="217.75" y="-39.5" x="-108.875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="108.875" x1="-108.875" class="divider"/>
<line y2="6.5" y1="6.5" x2="108.875" x1="-108.875" class="divider"/>
<a transform="translate(329.734375, 606.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer2.h#L6">
<g title="Layer2" id="classId-C_0001115150925302580647-2" class="node default clickable">
<rect height="79" width="226.640625" y="-39.5" x="-113.3203125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="113.3203125" x1="-113.3203125" class="divider"/>
<line y2="6.5" y1="6.5" x2="113.3203125" x1="-113.3203125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -216,19 +221,19 @@
<span class="nodeLabel">Layer2&lt;LowerLayer&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -101.375, 14)" height="18" width="202.75">
<foreignObject transform="translate( -105.8203125, 14)" height="18" width="211.640625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-all_calls_count() : [const] int</span>
<span class="nodeLabel">-all_calls_count() : : [const] int</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(95.96875, 404.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019_layer3.h#L8">
<g title="Layer3" id="classId-C_0014827284480590839565-3" class="node default clickable">
<rect height="189" width="175.9375" y="-94.5" x="-87.96875" class="outer title-state"/>
<line y2="-64.5" y1="-64.5" x2="87.96875" x1="-87.96875" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="87.96875" x1="-87.96875" class="divider"/>
<a transform="translate(100.4140625, 404.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019_layer3.h#L8">
<g title="Layer3" id="classId-C_0001853410560073854945-3" class="node default clickable">
<rect height="189" width="184.828125" y="-94.5" x="-92.4140625" class="outer title-state"/>
<line y2="-64.5" y1="-64.5" x2="92.4140625" x1="-92.4140625" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="92.4140625" x1="-92.4140625" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -240,41 +245,41 @@
<span class="nodeLabel">Layer3&lt;LowerLayer&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -80.46875, -53)" height="18" width="120.921875">
<foreignObject transform="translate( -84.9140625, -53)" height="18" width="120.921875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m_m1_calls : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -80.46875, -31)" height="18" width="120.921875">
<foreignObject transform="translate( -84.9140625, -31)" height="18" width="120.921875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m_m2_calls : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -80.46875, 3)" height="18" width="68.453125">
<foreignObject transform="translate( -84.9140625, 3)" height="18" width="77.34375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m1() : int</span>
<span class="nodeLabel">-m1() : : int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -80.46875, 25)" height="18" width="160.9375">
<foreignObject transform="translate( -84.9140625, 25)" height="18" width="169.828125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m1_calls() : [const] int</span>
<span class="nodeLabel">-m1_calls() : : [const] int</span>
</div>
</foreignObject>
<foreignObject transform="translate( -80.46875, 47)" height="18" width="120.90625">
<foreignObject transform="translate( -84.9140625, 47)" height="18" width="129.796875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m2() : std::string</span>
<span class="nodeLabel">-m2() : : std::string</span>
</div>
</foreignObject>
<foreignObject transform="translate( -80.46875, 69)" height="18" width="160.9375">
<foreignObject transform="translate( -84.9140625, 69)" height="18" width="169.828125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m2_calls() : [const] int</span>
<span class="nodeLabel">-m2_calls() : : [const] int</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(213.40625, 231.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/#L269">
<g title="Layer3" id="classId-C_0007783123365946242556-4" class="node default clickable">
<a transform="translate(220.07421875, 231.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/#L277">
<g title="Layer3" id="classId-C_0000972890420743280319-4" class="node default clickable">
<rect height="57" width="123.53125" y="-28.5" x="-61.765625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="61.765625" x1="-61.765625" class="divider"/>
<line y2="17.5" y1="17.5" x2="61.765625" x1="-61.765625" class="divider"/>
@@ -292,8 +297,8 @@
</g>
</g>
</a>
<a transform="translate(330.84375, 404.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/#L269">
<g title="Layer2" id="classId-C_0001038279998935990962-5" class="node default clickable">
<a transform="translate(339.734375, 404.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/#L277">
<g title="Layer2" id="classId-C_0000129784999866998870-5" class="node default clickable">
<rect height="57" width="193.8125" y="-28.5" x="-96.90625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="96.90625" x1="-96.90625" class="divider"/>
<line y2="17.5" y1="17.5" x2="96.90625" x1="-96.90625" class="divider"/>
@@ -311,8 +316,8 @@
</g>
</g>
</a>
<a transform="translate(676.84375, 606.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/#L269">
<g title="Layer1" id="classId-C_0005272608466605309667-6" class="node default clickable">
<a transform="translate(685.734375, 606.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/#L277">
<g title="Layer1" id="classId-C_0000659076058325663708-6" class="node default clickable">
<rect height="57" width="264.09375" y="-28.5" x="-132.046875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="132.046875" x1="-132.046875" class="divider"/>
<line y2="17.5" y1="17.5" x2="132.046875" x1="-132.046875" class="divider"/>
@@ -330,8 +335,8 @@
</g>
</g>
</a>
<a transform="translate(699.8515625, 404.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00019/t00019.cc#L11">
<g title="A" id="classId-C_0008121319990296713582-7" class="node default clickable">
<a transform="translate(708.7421875, 404.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00019/t00019.cc#L11">
<g title="A" id="classId-C_0001015164998787089197-7" class="node default clickable">
<rect height="79" width="444.203125" y="-39.5" x="-222.1015625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="222.1015625" x1="-222.1015625" class="divider"/>
<line y2="28.5" y1="28.5" x2="222.1015625" x1="-222.1015625" class="divider"/>

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

@@ -12,16 +12,11 @@ diagrams:
- clanguml::t00020
plantuml:
after:
- '@A(Factory1) ..> @A(ProductA1)'
- '@A(Factory1) ..> @A(ProductB1)'
- '{{ alias("Factory2") }} ..> {{ alias("ProductA2") }}'
- '{{ alias("Factory2") }} ..> {{ alias("ProductB2") }}'
mermaid:
after:
- '@A(Factory1) ..> @A(ProductA1)'
- '@A(Factory1) ..> @A(ProductB1)'
- '{{ alias("Factory2") }} ..> {{ alias("ProductA2") }}'
- '{{ alias("Factory2") }} ..> {{ alias("ProductB2") }}'
- '@A(ProductA1) <.. @A(Factory1)'
- '@A(ProductB1) <.. @A(Factory1)'
- '{{ alias("ProductA2") }} <.. {{ alias("Factory2") }}'
- '{{ alias("ProductB2") }} <.. {{ alias("Factory2") }}'
```
## Source code
File `tests/t00020/t00020.cc`
@@ -109,8 +104,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "ProductA",
"id": "3402137837275719558",
"display_name": "clanguml::t00020::ProductA",
"id": "425267229659464944",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -120,7 +115,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "~ProductA",
"is_const": false,
"is_consteval": false,
"is_constexpr": true,
@@ -143,12 +137,10 @@ public:
"line": 8,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "sell",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -176,7 +168,6 @@ public:
"line": 9,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "bool"
}
],
@@ -195,13 +186,13 @@ public:
"bases": [
{
"access": "public",
"id": "3402137837275719558",
"id": "425267229659464944",
"is_virtual": false,
"name": "clanguml::t00020::ProductA"
}
],
"display_name": "ProductA1",
"id": "14051968238382913662",
"display_name": "clanguml::t00020::ProductA1",
"id": "1756496029797864207",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -211,7 +202,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "sell",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -239,7 +229,6 @@ public:
"line": 14,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "bool"
}
],
@@ -258,13 +247,13 @@ public:
"bases": [
{
"access": "public",
"id": "3402137837275719558",
"id": "425267229659464944",
"is_virtual": false,
"name": "clanguml::t00020::ProductA"
}
],
"display_name": "ProductA2",
"id": "12253668743081735855",
"display_name": "clanguml::t00020::ProductA2",
"id": "1531708592885216981",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -274,7 +263,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "sell",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -302,7 +290,6 @@ public:
"line": 19,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "bool"
}
],
@@ -319,8 +306,8 @@ public:
},
{
"bases": [],
"display_name": "ProductB",
"id": "17886072050998926742",
"display_name": "clanguml::t00020::ProductB",
"id": "2235759006374865842",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -330,7 +317,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "~ProductB",
"is_const": false,
"is_consteval": false,
"is_constexpr": true,
@@ -353,12 +339,10 @@ public:
"line": 24,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "buy",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -386,7 +370,6 @@ public:
"line": 25,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "bool"
}
],
@@ -405,13 +388,13 @@ public:
"bases": [
{
"access": "public",
"id": "17886072050998926742",
"id": "2235759006374865842",
"is_virtual": false,
"name": "clanguml::t00020::ProductB"
}
],
"display_name": "ProductB1",
"id": "11723944193865790765",
"display_name": "clanguml::t00020::ProductB1",
"id": "1465493024233223845",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -421,7 +404,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "buy",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -449,7 +431,6 @@ public:
"line": 30,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "bool"
}
],
@@ -468,13 +449,13 @@ public:
"bases": [
{
"access": "public",
"id": "17886072050998926742",
"id": "2235759006374865842",
"is_virtual": false,
"name": "clanguml::t00020::ProductB"
}
],
"display_name": "ProductB2",
"id": "17237324498960462969",
"display_name": "clanguml::t00020::ProductB2",
"id": "2154665562370057871",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -484,7 +465,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "buy",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -512,7 +492,6 @@ public:
"line": 35,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "bool"
}
],
@@ -529,8 +508,8 @@ public:
},
{
"bases": [],
"display_name": "AbstractFactory",
"id": "13644371753751691404",
"display_name": "clanguml::t00020::AbstractFactory",
"id": "1705546469218961425",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -540,7 +519,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "make_a",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -563,12 +541,10 @@ public:
"line": 40,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "std::unique_ptr<ProductA>"
},
{
"access": "public",
"display_name": "make_b",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -591,7 +567,6 @@ public:
"line": 41,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "std::unique_ptr<ProductB>"
}
],
@@ -610,13 +585,13 @@ public:
"bases": [
{
"access": "public",
"id": "13644371753751691404",
"id": "1705546469218961425",
"is_virtual": false,
"name": "clanguml::t00020::AbstractFactory"
}
],
"display_name": "Factory1",
"id": "5538774787878832856",
"display_name": "clanguml::t00020::Factory1",
"id": "692346848484854107",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -626,7 +601,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "make_a",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -649,12 +623,10 @@ public:
"line": 46,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "std::unique_ptr<ProductA>"
},
{
"access": "public",
"display_name": "make_b",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -677,7 +649,6 @@ public:
"line": 51,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "std::unique_ptr<ProductB>"
}
],
@@ -696,13 +667,13 @@ public:
"bases": [
{
"access": "public",
"id": "13644371753751691404",
"id": "1705546469218961425",
"is_virtual": false,
"name": "clanguml::t00020::AbstractFactory"
}
],
"display_name": "Factory2",
"id": "12530606966440104191",
"display_name": "clanguml::t00020::Factory2",
"id": "1566325870805013023",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -712,7 +683,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "make_a",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -735,12 +705,10 @@ public:
"line": 59,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "std::unique_ptr<ProductA>"
},
{
"access": "public",
"display_name": "make_b",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -763,7 +731,6 @@ public:
"line": 64,
"translation_unit": "t00020.cc"
},
"template_parameters": [],
"type": "std::unique_ptr<ProductB>"
}
],
@@ -780,78 +747,77 @@ public:
}
],
"name": "t00020_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "3402137837275719558",
"source": "14051968238382913662",
"destination": "425267229659464944",
"source": "1756496029797864207",
"type": "extension"
},
{
"access": "public",
"destination": "3402137837275719558",
"source": "12253668743081735855",
"destination": "425267229659464944",
"source": "1531708592885216981",
"type": "extension"
},
{
"access": "public",
"destination": "17886072050998926742",
"source": "11723944193865790765",
"destination": "2235759006374865842",
"source": "1465493024233223845",
"type": "extension"
},
{
"access": "public",
"destination": "17886072050998926742",
"source": "17237324498960462969",
"destination": "2235759006374865842",
"source": "2154665562370057871",
"type": "extension"
},
{
"access": "public",
"destination": "3402137837275719558",
"source": "13644371753751691404",
"destination": "425267229659464944",
"source": "1705546469218961425",
"type": "dependency"
},
{
"access": "public",
"destination": "17886072050998926742",
"source": "13644371753751691404",
"destination": "2235759006374865842",
"source": "1705546469218961425",
"type": "dependency"
},
{
"access": "public",
"destination": "3402137837275719558",
"source": "5538774787878832856",
"destination": "425267229659464944",
"source": "692346848484854107",
"type": "dependency"
},
{
"access": "public",
"destination": "17886072050998926742",
"source": "5538774787878832856",
"destination": "2235759006374865842",
"source": "692346848484854107",
"type": "dependency"
},
{
"access": "public",
"destination": "13644371753751691404",
"source": "5538774787878832856",
"destination": "1705546469218961425",
"source": "692346848484854107",
"type": "extension"
},
{
"access": "public",
"destination": "3402137837275719558",
"source": "12530606966440104191",
"destination": "425267229659464944",
"source": "1566325870805013023",
"type": "dependency"
},
{
"access": "public",
"destination": "17886072050998926742",
"source": "12530606966440104191",
"destination": "2235759006374865842",
"source": "1566325870805013023",
"type": "dependency"
},
{
"access": "public",
"destination": "13644371753751691404",
"source": "12530606966440104191",
"destination": "1705546469218961425",
"source": "1566325870805013023",
"type": "extension"
}
],

View File

@@ -1,217 +1,261 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="489px" preserveAspectRatio="none" style="width:874px;height:489px;" version="1.1" viewBox="0 0 874 489" width="874px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="935px" preserveAspectRatio="none" style="width:812px;height:935px;background:#FFFFFF;" version="1.1" viewBox="0 0 812 935" width="812px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1wzh18aj8vhyr" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L6" target="_top" title="ProductA" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L6" xlink:show="new" xlink:title="ProductA" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="81.6094" id="C_0003402137837275719558" style="stroke: #A80036; stroke-width: 1.5;" width="244" x="138.5" y="276"/>
<ellipse cx="228.25" cy="292" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M228.3594,287.3438 L227.2031,292.4219 L229.5313,292.4219 L228.3594,287.3438 Z M226.875,285.1094 L229.8594,285.1094 L233.2188,297.5 L230.7656,297.5 L230,294.4375 L226.7188,294.4375 L225.9688,297.5 L223.5313,297.5 L226.875,285.1094 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="56" x="248.75" y="296.1543">ProductA</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="139.5" x2="381.5" y1="308" y2="308"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L6" target="_top" title="ProductA" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L6" xlink:show="new" xlink:title="ProductA" xlink:type="simple">
<g id="elem_C_0000425267229659464944">
<rect codeLine="2" fill="#F1F1F1" height="91.6998" id="C_0000425267229659464944" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="265" x="311.82" y="152.8"/>
<ellipse cx="411.07" cy="168.8" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M412.6013,170.7375 L412.9294,171.5344 L412.6481,171.5344 C412.195,171.5344 412.07,171.5656 411.8981,171.675 C411.6169,171.8156 411.445,172.1125 411.445,172.4094 C411.445,172.7062 411.5856,172.9562 411.82,173.1281 C411.9919,173.2531 412.2263,173.3 412.6481,173.3 L415.0075,173.3 C415.3669,173.3 415.6169,173.2687 415.7575,173.175 C416.0231,173.0344 416.195,172.7219 416.195,172.4094 C416.195,172.1437 416.0544,171.8781 415.82,171.7062 C415.6325,171.5812 415.4763,171.55 415.0231,171.5344 L411.6325,163.7062 L407.9138,163.7062 C407.4606,163.7062 407.32,163.7219 407.1481,163.8312 C406.8825,164.0031 406.7106,164.2844 406.7106,164.5812 C406.7106,164.8625 406.8513,165.1281 407.1013,165.3 C407.2731,165.425 407.4606,165.4562 407.9138,165.4562 L408.8825,165.4562 L406.3044,171.5344 C405.5544,171.5344 405.1481,171.8312 405.1481,172.4094 C405.1481,173.0187 405.5388,173.3 406.3356,173.3 L408.6013,173.3 C408.9606,173.3 409.2106,173.2687 409.3513,173.175 C409.6169,173.0187 409.7888,172.7219 409.7888,172.4094 C409.7888,172.1437 409.6481,171.8781 409.4138,171.7062 C409.2263,171.5656 409.07,171.5344 408.6013,171.5344 L408.3044,171.5344 L408.6481,170.7375 L412.6013,170.7375 Z M411.8356,168.9875 L409.3825,168.9875 L410.6169,166.1125 L411.8356,168.9875 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="58" x="431.57" y="174.75">ProductA</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="312.82" x2="575.82" y1="184.8" y2="184.8"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L8" target="_top" title="~ProductA" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L8" xlink:show="new" xlink:title="~ProductA" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="317.82" y="193.7"/>
<ellipse cx="322.82" cy="198.7" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L8" target="_top" title="~ProductA" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L8" xlink:show="new" xlink:title="~ProductA" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="239" x="331.82" y="201.8059">~ProductA() constexpr = default : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="312.82" x2="575.82" y1="209.5999" y2="209.5999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L9" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L9" xlink:show="new" xlink:title="sell" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="317.82" y="219.5499"/>
<ellipse cx="322.82" cy="224.5499" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L9" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L9" xlink:show="new" xlink:title="sell" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="182" x="331.82" y="228.9999">sell(int price) const = 0 : bool</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="312.82" x2="575.82" y1="236.4998" y2="236.4998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L8" target="_top" title="~ProductA" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L8" xlink:show="new" xlink:title="~ProductA" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="144.5" y="314"/>
<ellipse cx="149.5" cy="319" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L12" target="_top" title="ProductA1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L12" xlink:show="new" xlink:title="ProductA1" xlink:type="simple">
<g id="elem_C_0001756496029797864207">
<rect codeLine="9" fill="#F1F1F1" height="64.7999" id="C_0001756496029797864207" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="184" x="207.32" y="304.5"/>
<ellipse cx="262.07" cy="320.5" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M257.07,321.6563 C257.07,324.1563 259.2106,325.9688 262.1325,325.9688 C263.3669,325.9688 264.5388,325.6719 265.2888,325.1563 C265.8981,324.7344 266.2263,324.3125 266.2263,323.9063 C266.2263,323.4375 265.8044,323.0313 265.3044,323.0313 C265.07,323.0313 264.8513,323.1094 264.6481,323.3125 C264.2106,323.75 264.2106,323.75 264.0388,323.8438 C263.5856,324.0781 262.945,324.2188 262.1794,324.2188 C260.1794,324.2188 258.8981,323.2031 258.8981,321.625 L258.8981,320.5781 C258.8981,318.875 260.1169,317.6719 261.82,317.6719 C262.3981,317.6719 262.9763,317.8125 263.445,318.0625 C263.9138,318.3281 264.0856,318.5156 264.1481,318.875 C264.2731,319.5469 264.5231,319.7969 265.0544,319.7969 C265.3356,319.7969 265.6169,319.6563 265.8044,319.4375 C265.9294,319.2656 265.9763,319.0938 265.9763,318.6563 L265.9763,317.2969 C265.9763,316.875 265.9606,316.7344 265.8356,316.5625 C265.6638,316.3125 265.3825,316.1563 265.0544,316.1563 C264.7419,316.1563 264.5388,316.2656 264.32,316.5313 C263.1481,316.0313 262.7106,315.9219 261.7575,315.9219 C259.0856,315.9219 257.07,317.9375 257.07,320.5625 L257.07,321.6563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="66" x="282.57" y="325.106">ProductA1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="208.32" x2="390.32" y1="336.5" y2="336.5"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L14" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L14" xlink:show="new" xlink:title="sell" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="213.32" y="345.4"/>
<ellipse cx="218.32" cy="350.4" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L14" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L14" xlink:show="new" xlink:title="sell" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="158" x="227.32" y="353.5059">sell(int price) const : bool</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="208.32" x2="390.32" y1="361.2999" y2="361.2999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L8" target="_top" title="~ProductA" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L8" xlink:show="new" xlink:title="~ProductA" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="218" x="158.5" y="322.2104">~ProductA() constexpr = default : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L17" target="_top" title="ProductA2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L17" xlink:show="new" xlink:title="ProductA2" xlink:type="simple">
<g id="elem_C_0001531708592885216981">
<rect codeLine="14" fill="#F1F1F1" height="64.7999" id="C_0001531708592885216981" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="184" x="568.32" y="437.7"/>
<ellipse cx="623.07" cy="453.7" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M618.07,454.8563 C618.07,457.3563 620.2106,459.1688 623.1325,459.1688 C624.3669,459.1688 625.5388,458.8719 626.2888,458.3563 C626.8981,457.9344 627.2263,457.5125 627.2263,457.1063 C627.2263,456.6375 626.8044,456.2313 626.3044,456.2313 C626.07,456.2313 625.8513,456.3094 625.6481,456.5125 C625.2106,456.95 625.2106,456.95 625.0388,457.0438 C624.5856,457.2781 623.945,457.4188 623.1794,457.4188 C621.1794,457.4188 619.8981,456.4031 619.8981,454.825 L619.8981,453.7781 C619.8981,452.075 621.1169,450.8719 622.82,450.8719 C623.3981,450.8719 623.9763,451.0125 624.445,451.2625 C624.9138,451.5281 625.0856,451.7156 625.1481,452.075 C625.2731,452.7469 625.5231,452.9969 626.0544,452.9969 C626.3356,452.9969 626.6169,452.8563 626.8044,452.6375 C626.9294,452.4656 626.9763,452.2938 626.9763,451.8563 L626.9763,450.4969 C626.9763,450.075 626.9606,449.9344 626.8356,449.7625 C626.6638,449.5125 626.3825,449.3563 626.0544,449.3563 C625.7419,449.3563 625.5388,449.4656 625.32,449.7313 C624.1481,449.2313 623.7106,449.1219 622.7575,449.1219 C620.0856,449.1219 618.07,451.1375 618.07,453.7625 L618.07,454.8563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="66" x="643.57" y="458.306">ProductA2</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="569.32" x2="751.32" y1="469.7" y2="469.7"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L19" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L19" xlink:show="new" xlink:title="sell" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="574.32" y="478.6"/>
<ellipse cx="579.32" cy="483.6" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L19" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L19" xlink:show="new" xlink:title="sell" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="158" x="588.32" y="486.7059">sell(int price) const : bool</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="569.32" x2="751.32" y1="494.4999" y2="494.4999"/>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="139.5" x2="381.5" y1="328.8047" y2="328.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L9" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L9" xlink:show="new" xlink:title="sell" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="144.5" y="334.8047"/>
<ellipse cx="149.5" cy="339.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L22" target="_top" title="ProductB" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L22" xlink:show="new" xlink:title="ProductB" xlink:type="simple">
<g id="elem_C_0002235759006374865842">
<rect codeLine="19" fill="#F1F1F1" height="91.6998" id="C_0002235759006374865842" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="265" x="15.82" y="570.9"/>
<ellipse cx="115.07" cy="586.9" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M116.6013,588.8375 L116.9294,589.6344 L116.6481,589.6344 C116.195,589.6344 116.07,589.6656 115.8981,589.775 C115.6169,589.9156 115.445,590.2125 115.445,590.5094 C115.445,590.8063 115.5856,591.0563 115.82,591.2281 C115.9919,591.3531 116.2263,591.4 116.6481,591.4 L119.0075,591.4 C119.3669,591.4 119.6169,591.3688 119.7575,591.275 C120.0231,591.1344 120.195,590.8219 120.195,590.5094 C120.195,590.2438 120.0544,589.9781 119.82,589.8063 C119.6325,589.6813 119.4763,589.65 119.0231,589.6344 L115.6325,581.8063 L111.9138,581.8063 C111.4606,581.8063 111.32,581.8219 111.1481,581.9313 C110.8825,582.1031 110.7106,582.3844 110.7106,582.6813 C110.7106,582.9625 110.8513,583.2281 111.1013,583.4 C111.2731,583.525 111.4606,583.5563 111.9138,583.5563 L112.8825,583.5563 L110.3044,589.6344 C109.5544,589.6344 109.1481,589.9313 109.1481,590.5094 C109.1481,591.1188 109.5388,591.4 110.3356,591.4 L112.6013,591.4 C112.9606,591.4 113.2106,591.3688 113.3513,591.275 C113.6169,591.1188 113.7888,590.8219 113.7888,590.5094 C113.7888,590.2438 113.6481,589.9781 113.4138,589.8063 C113.2263,589.6656 113.07,589.6344 112.6013,589.6344 L112.3044,589.6344 L112.6481,588.8375 L116.6013,588.8375 Z M115.8356,587.0875 L113.3825,587.0875 L114.6169,584.2125 L115.8356,587.0875 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="58" x="135.57" y="592.85">ProductB</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="16.82" x2="279.82" y1="602.9" y2="602.9"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L24" target="_top" title="~ProductB" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L24" xlink:show="new" xlink:title="~ProductB" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="21.82" y="611.8"/>
<ellipse cx="26.82" cy="616.8" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L24" target="_top" title="~ProductB" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L24" xlink:show="new" xlink:title="~ProductB" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="239" x="35.82" y="619.9059">~ProductB() constexpr = default : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="16.82" x2="279.82" y1="627.6999" y2="627.6999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L25" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L25" xlink:show="new" xlink:title="buy" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="21.82" y="637.6499"/>
<ellipse cx="26.82" cy="642.6499" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L25" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L25" xlink:show="new" xlink:title="buy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="184" x="35.82" y="647.0999">buy(int price) const = 0 : bool</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="16.82" x2="279.82" y1="654.5998" y2="654.5998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L9" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L9" xlink:show="new" xlink:title="sell" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="167" x="158.5" y="343.0151">sell(int price) const = 0 : bool</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L28" target="_top" title="ProductB1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L28" xlink:show="new" xlink:title="ProductB1" xlink:type="simple">
<g id="elem_C_0001465493024233223845">
<rect codeLine="26" fill="#F1F1F1" height="64.7999" id="C_0001465493024233223845" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="186" x="276.32" y="722.6"/>
<ellipse cx="332.07" cy="738.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M327.07,739.7563 C327.07,742.2563 329.2106,744.0688 332.1325,744.0688 C333.3669,744.0688 334.5388,743.7719 335.2888,743.2563 C335.8981,742.8344 336.2263,742.4125 336.2263,742.0063 C336.2263,741.5375 335.8044,741.1313 335.3044,741.1313 C335.07,741.1313 334.8513,741.2094 334.6481,741.4125 C334.2106,741.85 334.2106,741.85 334.0388,741.9438 C333.5856,742.1781 332.945,742.3188 332.1794,742.3188 C330.1794,742.3188 328.8981,741.3031 328.8981,739.725 L328.8981,738.6781 C328.8981,736.975 330.1169,735.7719 331.82,735.7719 C332.3981,735.7719 332.9763,735.9125 333.445,736.1625 C333.9138,736.4281 334.0856,736.6156 334.1481,736.975 C334.2731,737.6469 334.5231,737.8969 335.0544,737.8969 C335.3356,737.8969 335.6169,737.7563 335.8044,737.5375 C335.9294,737.3656 335.9763,737.1938 335.9763,736.7563 L335.9763,735.3969 C335.9763,734.975 335.9606,734.8344 335.8356,734.6625 C335.6638,734.4125 335.3825,734.2563 335.0544,734.2563 C334.7419,734.2563 334.5388,734.3656 334.32,734.6313 C333.1481,734.1313 332.7106,734.0219 331.7575,734.0219 C329.0856,734.0219 327.07,736.0375 327.07,738.6625 L327.07,739.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="66" x="352.57" y="743.206">ProductB1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="277.32" x2="461.32" y1="754.6" y2="754.6"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L30" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L30" xlink:show="new" xlink:title="buy" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="282.32" y="763.5"/>
<ellipse cx="287.32" cy="768.5" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L30" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L30" xlink:show="new" xlink:title="buy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="160" x="296.32" y="771.6059">buy(int price) const : bool</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="277.32" x2="461.32" y1="779.3999" y2="779.3999"/>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="139.5" x2="381.5" y1="349.6094" y2="349.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L12" target="_top" title="ProductA1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L12" xlink:show="new" xlink:title="ProductA1" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="60.8047" id="C_0014051968238382913662" style="stroke: #A80036; stroke-width: 1.5;" width="171" x="6" y="418"/>
<ellipse cx="54.75" cy="434" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M57.7188,439.6406 Q57.1406,439.9375 56.5,440.0781 Q55.8594,440.2344 55.1563,440.2344 Q52.6563,440.2344 51.3281,438.5938 Q50.0156,436.9375 50.0156,433.8125 Q50.0156,430.6875 51.3281,429.0313 Q52.6563,427.375 55.1563,427.375 Q55.8594,427.375 56.5,427.5313 Q57.1563,427.6875 57.7188,427.9844 L57.7188,430.7031 Q57.0938,430.125 56.5,429.8594 Q55.9063,429.5781 55.2813,429.5781 Q53.9375,429.5781 53.25,430.6563 Q52.5625,431.7188 52.5625,433.8125 Q52.5625,435.9063 53.25,436.9844 Q53.9375,438.0469 55.2813,438.0469 Q55.9063,438.0469 56.5,437.7813 Q57.0938,437.5 57.7188,436.9219 L57.7188,439.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="65" x="75.25" y="438.1543">ProductA1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="176" y1="450" y2="450"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L33" target="_top" title="ProductB2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L33" xlink:show="new" xlink:title="ProductB2" xlink:type="simple">
<g id="elem_C_0002154665562370057871">
<rect codeLine="31" fill="#F1F1F1" height="64.7999" id="C_0002154665562370057871" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="186" x="55.32" y="722.6"/>
<ellipse cx="111.07" cy="738.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M106.07,739.7563 C106.07,742.2563 108.2106,744.0688 111.1325,744.0688 C112.3669,744.0688 113.5388,743.7719 114.2888,743.2563 C114.8981,742.8344 115.2263,742.4125 115.2263,742.0063 C115.2263,741.5375 114.8044,741.1313 114.3044,741.1313 C114.07,741.1313 113.8513,741.2094 113.6481,741.4125 C113.2106,741.85 113.2106,741.85 113.0388,741.9438 C112.5856,742.1781 111.945,742.3188 111.1794,742.3188 C109.1794,742.3188 107.8981,741.3031 107.8981,739.725 L107.8981,738.6781 C107.8981,736.975 109.1169,735.7719 110.82,735.7719 C111.3981,735.7719 111.9763,735.9125 112.445,736.1625 C112.9138,736.4281 113.0856,736.6156 113.1481,736.975 C113.2731,737.6469 113.5231,737.8969 114.0544,737.8969 C114.3356,737.8969 114.6169,737.7563 114.8044,737.5375 C114.9294,737.3656 114.9763,737.1938 114.9763,736.7563 L114.9763,735.3969 C114.9763,734.975 114.9606,734.8344 114.8356,734.6625 C114.6638,734.4125 114.3825,734.2563 114.0544,734.2563 C113.7419,734.2563 113.5388,734.3656 113.32,734.6313 C112.1481,734.1313 111.7106,734.0219 110.7575,734.0219 C108.0856,734.0219 106.07,736.0375 106.07,738.6625 L106.07,739.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="66" x="131.57" y="743.206">ProductB2</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="56.32" x2="240.32" y1="754.6" y2="754.6"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L35" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L35" xlink:show="new" xlink:title="buy" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="61.32" y="763.5"/>
<ellipse cx="66.32" cy="768.5" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L35" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L35" xlink:show="new" xlink:title="buy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="160" x="75.32" y="771.6059">buy(int price) const : bool</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="56.32" x2="240.32" y1="779.3999" y2="779.3999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L14" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L14" xlink:show="new" xlink:title="sell" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="456"/>
<ellipse cx="17" cy="461" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L38" target="_top" title="AbstractFactory" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L38" xlink:show="new" xlink:title="AbstractFactory" xlink:type="simple">
<g id="elem_C_0001705546469218961425">
<rect codeLine="36" fill="#F1F1F1" height="85.7998" id="C_0001705546469218961425" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="330" x="134.32" y="7"/>
<ellipse cx="245.07" cy="23" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M246.6013,24.9375 L246.9294,25.7344 L246.6481,25.7344 C246.195,25.7344 246.07,25.7656 245.8981,25.875 C245.6169,26.0156 245.445,26.3125 245.445,26.6094 C245.445,26.9063 245.5856,27.1563 245.82,27.3281 C245.9919,27.4531 246.2263,27.5 246.6481,27.5 L249.0075,27.5 C249.3669,27.5 249.6169,27.4688 249.7575,27.375 C250.0231,27.2344 250.195,26.9219 250.195,26.6094 C250.195,26.3438 250.0544,26.0781 249.82,25.9063 C249.6325,25.7813 249.4763,25.75 249.0231,25.7344 L245.6325,17.9063 L241.9138,17.9063 C241.4606,17.9063 241.32,17.9219 241.1481,18.0313 C240.8825,18.2031 240.7106,18.4844 240.7106,18.7813 C240.7106,19.0625 240.8513,19.3281 241.1013,19.5 C241.2731,19.625 241.4606,19.6563 241.9138,19.6563 L242.8825,19.6563 L240.3044,25.7344 C239.5544,25.7344 239.1481,26.0313 239.1481,26.6094 C239.1481,27.2188 239.5388,27.5 240.3356,27.5 L242.6013,27.5 C242.9606,27.5 243.2106,27.4688 243.3513,27.375 C243.6169,27.2188 243.7888,26.9219 243.7888,26.6094 C243.7888,26.3438 243.6481,26.0781 243.4138,25.9063 C243.2263,25.7656 243.07,25.7344 242.6013,25.7344 L242.3044,25.7344 L242.6481,24.9375 L246.6013,24.9375 Z M245.8356,23.1875 L243.3825,23.1875 L244.6169,20.3125 L245.8356,23.1875 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="100" x="265.57" y="28.95">AbstractFactory</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="135.32" x2="463.32" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L40" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L40" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="140.32" y="48.95"/>
<ellipse cx="145.32" cy="53.95" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L40" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L40" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="304" x="154.32" y="58.3999">make_a() const = 0 : std::unique_ptr&lt;ProductA&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L41" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L41" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="140.32" y="67.8499"/>
<ellipse cx="145.32" cy="72.8499" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L41" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L41" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="304" x="154.32" y="77.2999">make_b() const = 0 : std::unique_ptr&lt;ProductB&gt;</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="135.32" x2="463.32" y1="84.7998" y2="84.7998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L14" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L14" xlink:show="new" xlink:title="sell" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="145" x="26" y="464.2104">sell(int price) const : bool</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L44" target="_top" title="Factory1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L44" xlink:show="new" xlink:title="Factory1" xlink:type="simple">
<g id="elem_C_0000692346848484854107">
<rect codeLine="42" fill="#F1F1F1" height="81.5999" id="C_0000692346848484854107" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="306" x="146.32" y="429.3"/>
<ellipse cx="267.07" cy="445.3" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M262.07,446.4563 C262.07,448.9563 264.2106,450.7688 267.1325,450.7688 C268.3669,450.7688 269.5388,450.4719 270.2888,449.9563 C270.8981,449.5344 271.2263,449.1125 271.2263,448.7063 C271.2263,448.2375 270.8044,447.8313 270.3044,447.8313 C270.07,447.8313 269.8513,447.9094 269.6481,448.1125 C269.2106,448.55 269.2106,448.55 269.0388,448.6438 C268.5856,448.8781 267.945,449.0188 267.1794,449.0188 C265.1794,449.0188 263.8981,448.0031 263.8981,446.425 L263.8981,445.3781 C263.8981,443.675 265.1169,442.4719 266.82,442.4719 C267.3981,442.4719 267.9763,442.6125 268.445,442.8625 C268.9138,443.1281 269.0856,443.3156 269.1481,443.675 C269.2731,444.3469 269.5231,444.5969 270.0544,444.5969 C270.3356,444.5969 270.6169,444.4563 270.8044,444.2375 C270.9294,444.0656 270.9763,443.8938 270.9763,443.4563 L270.9763,442.0969 C270.9763,441.675 270.9606,441.5344 270.8356,441.3625 C270.6638,441.1125 270.3825,440.9563 270.0544,440.9563 C269.7419,440.9563 269.5388,441.0656 269.32,441.3313 C268.1481,440.8313 267.7106,440.7219 266.7575,440.7219 C264.0856,440.7219 262.07,442.7375 262.07,445.3625 L262.07,446.4563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="56" x="287.57" y="449.906">Factory1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="147.32" x2="451.32" y1="461.3" y2="461.3"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L46" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L46" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="152.32" y="470.2"/>
<ellipse cx="157.32" cy="475.2" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L46" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L46" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="280" x="166.32" y="478.3059">make_a() const : std::unique_ptr&lt;ProductA&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L51" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L51" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="152.32" y="486.9999"/>
<ellipse cx="157.32" cy="491.9999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L51" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L51" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="280" x="166.32" y="495.1059">make_b() const : std::unique_ptr&lt;ProductB&gt;</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="147.32" x2="451.32" y1="502.8999" y2="502.8999"/>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="176" y1="470.8047" y2="470.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L17" target="_top" title="ProductA2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L17" xlink:show="new" xlink:title="ProductA2" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="60.8047" id="C_0012253668743081735855" style="stroke: #A80036; stroke-width: 1.5;" width="171" x="476" y="418"/>
<ellipse cx="524.75" cy="434" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M527.7188,439.6406 Q527.1406,439.9375 526.5,440.0781 Q525.8594,440.2344 525.1563,440.2344 Q522.6563,440.2344 521.3281,438.5938 Q520.0156,436.9375 520.0156,433.8125 Q520.0156,430.6875 521.3281,429.0313 Q522.6563,427.375 525.1563,427.375 Q525.8594,427.375 526.5,427.5313 Q527.1563,427.6875 527.7188,427.9844 L527.7188,430.7031 Q527.0938,430.125 526.5,429.8594 Q525.9063,429.5781 525.2813,429.5781 Q523.9375,429.5781 523.25,430.6563 Q522.5625,431.7188 522.5625,433.8125 Q522.5625,435.9063 523.25,436.9844 Q523.9375,438.0469 525.2813,438.0469 Q525.9063,438.0469 526.5,437.7813 Q527.0938,437.5 527.7188,436.9219 L527.7188,439.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="65" x="545.25" y="438.1543">ProductA2</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="477" x2="646" y1="450" y2="450"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L57" target="_top" title="Factory2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L57" xlink:show="new" xlink:title="Factory2" xlink:type="simple">
<g id="elem_C_0001566325870805013023">
<rect codeLine="48" fill="#F1F1F1" height="81.5999" id="C_0001566325870805013023" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="306" x="362.32" y="847.4"/>
<ellipse cx="483.07" cy="863.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M478.07,864.5563 C478.07,867.0563 480.2106,868.8688 483.1325,868.8688 C484.3669,868.8688 485.5388,868.5719 486.2888,868.0563 C486.8981,867.6344 487.2263,867.2125 487.2263,866.8063 C487.2263,866.3375 486.8044,865.9313 486.3044,865.9313 C486.07,865.9313 485.8513,866.0094 485.6481,866.2125 C485.2106,866.65 485.2106,866.65 485.0388,866.7438 C484.5856,866.9781 483.945,867.1188 483.1794,867.1188 C481.1794,867.1188 479.8981,866.1031 479.8981,864.525 L479.8981,863.4781 C479.8981,861.775 481.1169,860.5719 482.82,860.5719 C483.3981,860.5719 483.9763,860.7125 484.445,860.9625 C484.9138,861.2281 485.0856,861.4156 485.1481,861.775 C485.2731,862.4469 485.5231,862.6969 486.0544,862.6969 C486.3356,862.6969 486.6169,862.5563 486.8044,862.3375 C486.9294,862.1656 486.9763,861.9938 486.9763,861.5563 L486.9763,860.1969 C486.9763,859.775 486.9606,859.6344 486.8356,859.4625 C486.6638,859.2125 486.3825,859.0563 486.0544,859.0563 C485.7419,859.0563 485.5388,859.1656 485.32,859.4313 C484.1481,858.9313 483.7106,858.8219 482.7575,858.8219 C480.0856,858.8219 478.07,860.8375 478.07,863.4625 L478.07,864.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="56" x="503.57" y="868.006">Factory2</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="363.32" x2="667.32" y1="879.4" y2="879.4"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L59" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L59" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="368.32" y="888.3"/>
<ellipse cx="373.32" cy="893.3" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L59" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L59" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="280" x="382.32" y="896.4059">make_a() const : std::unique_ptr&lt;ProductA&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L64" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L64" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="368.32" y="905.0999"/>
<ellipse cx="373.32" cy="910.0999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L64" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L64" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="280" x="382.32" y="913.2059">make_b() const : std::unique_ptr&lt;ProductB&gt;</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="363.32" x2="667.32" y1="920.9999" y2="920.9999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L19" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L19" xlink:show="new" xlink:title="sell" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="482" y="456"/>
<ellipse cx="487" cy="461" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L19" target="_top" title="sell" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L19" xlink:show="new" xlink:title="sell" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="145" x="496" y="464.2104">sell(int price) const : bool</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="477" x2="646" y1="470.8047" y2="470.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L22" target="_top" title="ProductB" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L22" xlink:show="new" xlink:title="ProductB" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="81.6094" id="C_0017886072050998926742" style="stroke: #A80036; stroke-width: 1.5;" width="245" x="418" y="276"/>
<ellipse cx="508.25" cy="292" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M508.3594,287.3438 L507.2031,292.4219 L509.5313,292.4219 L508.3594,287.3438 Z M506.875,285.1094 L509.8594,285.1094 L513.2188,297.5 L510.7656,297.5 L510,294.4375 L506.7188,294.4375 L505.9688,297.5 L503.5313,297.5 L506.875,285.1094 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="56" x="528.75" y="296.1543">ProductB</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="419" x2="662" y1="308" y2="308"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L24" target="_top" title="~ProductB" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L24" xlink:show="new" xlink:title="~ProductB" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="424" y="314"/>
<ellipse cx="429" cy="319" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L24" target="_top" title="~ProductB" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L24" xlink:show="new" xlink:title="~ProductB" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="219" x="438" y="322.2104">~ProductB() constexpr = default : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="419" x2="662" y1="328.8047" y2="328.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L25" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L25" xlink:show="new" xlink:title="buy" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="424" y="334.8047"/>
<ellipse cx="429" cy="339.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L25" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L25" xlink:show="new" xlink:title="buy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="169" x="438" y="343.0151">buy(int price) const = 0 : bool</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="419" x2="662" y1="349.6094" y2="349.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L28" target="_top" title="ProductB1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L28" xlink:show="new" xlink:title="ProductB1" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="60.8047" id="C_0011723944193865790765" style="stroke: #A80036; stroke-width: 1.5;" width="171" x="251" y="418"/>
<ellipse cx="299.75" cy="434" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M302.7188,439.6406 Q302.1406,439.9375 301.5,440.0781 Q300.8594,440.2344 300.1563,440.2344 Q297.6563,440.2344 296.3281,438.5938 Q295.0156,436.9375 295.0156,433.8125 Q295.0156,430.6875 296.3281,429.0313 Q297.6563,427.375 300.1563,427.375 Q300.8594,427.375 301.5,427.5313 Q302.1563,427.6875 302.7188,427.9844 L302.7188,430.7031 Q302.0938,430.125 301.5,429.8594 Q300.9063,429.5781 300.2813,429.5781 Q298.9375,429.5781 298.25,430.6563 Q297.5625,431.7188 297.5625,433.8125 Q297.5625,435.9063 298.25,436.9844 Q298.9375,438.0469 300.2813,438.0469 Q300.9063,438.0469 301.5,437.7813 Q302.0938,437.5 302.7188,436.9219 L302.7188,439.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="65" x="320.25" y="438.1543">ProductB1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="252" x2="421" y1="450" y2="450"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L30" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L30" xlink:show="new" xlink:title="buy" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="257" y="456"/>
<ellipse cx="262" cy="461" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L30" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L30" xlink:show="new" xlink:title="buy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="145" x="271" y="464.2104">buy(int price) const : bool</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="252" x2="421" y1="470.8047" y2="470.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L33" target="_top" title="ProductB2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L33" xlink:show="new" xlink:title="ProductB2" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="60.8047" id="C_0017237324498960462969" style="stroke: #A80036; stroke-width: 1.5;" width="171" x="692" y="418"/>
<ellipse cx="740.75" cy="434" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M743.7188,439.6406 Q743.1406,439.9375 742.5,440.0781 Q741.8594,440.2344 741.1563,440.2344 Q738.6563,440.2344 737.3281,438.5938 Q736.0156,436.9375 736.0156,433.8125 Q736.0156,430.6875 737.3281,429.0313 Q738.6563,427.375 741.1563,427.375 Q741.8594,427.375 742.5,427.5313 Q743.1563,427.6875 743.7188,427.9844 L743.7188,430.7031 Q743.0938,430.125 742.5,429.8594 Q741.9063,429.5781 741.2813,429.5781 Q739.9375,429.5781 739.25,430.6563 Q738.5625,431.7188 738.5625,433.8125 Q738.5625,435.9063 739.25,436.9844 Q739.9375,438.0469 741.2813,438.0469 Q741.9063,438.0469 742.5,437.7813 Q743.0938,437.5 743.7188,436.9219 L743.7188,439.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="65" x="761.25" y="438.1543">ProductB2</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="693" x2="862" y1="450" y2="450"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L35" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L35" xlink:show="new" xlink:title="buy" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="698" y="456"/>
<ellipse cx="703" cy="461" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L35" target="_top" title="buy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L35" xlink:show="new" xlink:title="buy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="145" x="712" y="464.2104">buy(int price) const : bool</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="693" x2="862" y1="470.8047" y2="470.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L38" target="_top" title="AbstractFactory" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L38" xlink:show="new" xlink:title="AbstractFactory" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="73.6094" id="C_0013644371753751691404" style="stroke: #A80036; stroke-width: 1.5;" width="302" x="249.5" y="8"/>
<ellipse cx="346.75" cy="24" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M346.8594,19.3438 L345.7031,24.4219 L348.0313,24.4219 L346.8594,19.3438 Z M345.375,17.1094 L348.3594,17.1094 L351.7188,29.5 L349.2656,29.5 L348.5,26.4375 L345.2188,26.4375 L344.4688,29.5 L342.0313,29.5 L345.375,17.1094 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="99" x="367.25" y="28.1543">AbstractFactory</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="250.5" x2="550.5" y1="40" y2="40"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L40" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L40" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="255.5" y="46"/>
<ellipse cx="260.5" cy="51" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L40" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L40" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="276" x="269.5" y="54.2104">make_a() const = 0 : std::unique_ptr&lt;ProductA&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L41" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L41" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="255.5" y="58.8047"/>
<ellipse cx="260.5" cy="63.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L41" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L41" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="276" x="269.5" y="67.0151">make_b() const = 0 : std::unique_ptr&lt;ProductB&gt;</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="250.5" x2="550.5" y1="73.6094" y2="73.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L44" target="_top" title="Factory1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L44" xlink:show="new" xlink:title="Factory1" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="73.6094" id="C_0005538774787878832856" style="stroke: #A80036; stroke-width: 1.5;" width="280" x="32.5" y="142"/>
<ellipse cx="141.25" cy="158" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M144.2188,163.6406 Q143.6406,163.9375 143,164.0781 Q142.3594,164.2344 141.6563,164.2344 Q139.1563,164.2344 137.8281,162.5938 Q136.5156,160.9375 136.5156,157.8125 Q136.5156,154.6875 137.8281,153.0313 Q139.1563,151.375 141.6563,151.375 Q142.3594,151.375 143,151.5313 Q143.6563,151.6875 144.2188,151.9844 L144.2188,154.7031 Q143.5938,154.125 143,153.8594 Q142.4063,153.5781 141.7813,153.5781 Q140.4375,153.5781 139.75,154.6563 Q139.0625,155.7188 139.0625,157.8125 Q139.0625,159.9063 139.75,160.9844 Q140.4375,162.0469 141.7813,162.0469 Q142.4063,162.0469 143,161.7813 Q143.5938,161.5 144.2188,160.9219 L144.2188,163.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="54" x="161.75" y="162.1543">Factory1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="33.5" x2="311.5" y1="174" y2="174"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L46" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L46" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="38.5" y="180"/>
<ellipse cx="43.5" cy="185" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L46" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L46" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="253" x="52.5" y="188.2104">make_a() const : std::unique_ptr&lt;ProductA&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L51" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L51" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="38.5" y="192.8047"/>
<ellipse cx="43.5" cy="197.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L51" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L51" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="254" x="52.5" y="201.0151">make_b() const : std::unique_ptr&lt;ProductB&gt;</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="33.5" x2="311.5" y1="207.6094" y2="207.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L57" target="_top" title="Factory2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L57" xlink:show="new" xlink:title="Factory2" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1wzh18aj8vhyr)" height="73.6094" id="C_0012530606966440104191" style="stroke: #A80036; stroke-width: 1.5;" width="280" x="489.5" y="142"/>
<ellipse cx="598.25" cy="158" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M601.2188,163.6406 Q600.6406,163.9375 600,164.0781 Q599.3594,164.2344 598.6563,164.2344 Q596.1563,164.2344 594.8281,162.5938 Q593.5156,160.9375 593.5156,157.8125 Q593.5156,154.6875 594.8281,153.0313 Q596.1563,151.375 598.6563,151.375 Q599.3594,151.375 600,151.5313 Q600.6563,151.6875 601.2188,151.9844 L601.2188,154.7031 Q600.5938,154.125 600,153.8594 Q599.4063,153.5781 598.7813,153.5781 Q597.4375,153.5781 596.75,154.6563 Q596.0625,155.7188 596.0625,157.8125 Q596.0625,159.9063 596.75,160.9844 Q597.4375,162.0469 598.7813,162.0469 Q599.4063,162.0469 600,161.7813 Q600.5938,161.5 601.2188,160.9219 L601.2188,163.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="54" x="618.75" y="162.1543">Factory2</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="490.5" x2="768.5" y1="174" y2="174"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L59" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L59" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="495.5" y="180"/>
<ellipse cx="500.5" cy="185" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L59" target="_top" title="make_a" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L59" xlink:show="new" xlink:title="make_a" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="253" x="509.5" y="188.2104">make_a() const : std::unique_ptr&lt;ProductA&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L64" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L64" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="495.5" y="192.8047"/>
<ellipse cx="500.5" cy="197.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L64" target="_top" title="make_b" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L64" xlink:show="new" xlink:title="make_b" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="254" x="509.5" y="201.0151">make_b() const : std::unique_ptr&lt;ProductB&gt;</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="490.5" x2="768.5" y1="207.6094" y2="207.6094"/>
<path d="M191.83,370.62 C170.77,386.76 148.35,403.94 130.05,417.96 " fill="none" id="C_0003402137837275719558&lt;-C_0014051968238382913662" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="187.82,364.87,207.95,358.26,196.34,375.99,187.82,364.87" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M372.21,366.06 C412.61,383.44 457.01,402.54 492.65,417.88 " fill="none" id="C_0003402137837275719558&lt;-C_0012253668743081735855" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="369.28,372.42,353.68,358.09,374.82,359.56,369.28,372.42" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M460.13,369.02 C434.03,385.59 405.95,403.41 383.16,417.88 " fill="none" id="C_0017886072050998926742&lt;-C_0011723944193865790765" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="456.71,362.9,477.35,358.09,464.22,374.72,456.71,362.9" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M631.7,367.83 C662.63,384.73 696.18,403.06 723.29,417.88 " fill="none" id="C_0017886072050998926742&lt;-C_0017237324498960462969" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="628.06,373.82,613.87,358.09,634.77,361.54,628.06,373.82" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M387.9,82.16 C375.09,117.29 353.72,171.65 329.5,216 C319.16,234.94 306.06,254.72 294.06,271.64 " fill="none" id="C_0013644371753751691404-&gt;C_0003402137837275719558" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="291.03,275.88,299.5094,270.8701,293.9308,271.8075,292.9934,266.2288,291.03,275.88" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M413.42,82.11 C426.52,117.2 448.27,171.53 472.5,216 C482.78,234.86 495.71,254.63 507.52,271.55 " fill="none" id="C_0013644371753751691404-&gt;C_0017886072050998926742" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="510.5,275.79,508.6135,266.1235,507.6317,271.6945,502.0607,270.7127,510.5,275.79" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M195.85,216.09 C206.84,233.06 220.04,253.47 231.64,271.4 " fill="none" id="C_0005538774787878832856-&gt;C_0003402137837275719558" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="234.56,275.91,233.0345,266.18,231.8461,271.7106,226.3155,270.5222,234.56,275.91" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M270.15,216.09 C318.42,233.93 376.94,255.55 427.18,274.12 " fill="none" id="C_0005538774787878832856-&gt;C_0017886072050998926742" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="432.01,275.91,424.9506,269.0423,427.319,274.1795,422.1818,276.5479,432.01,275.91" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M320.66,92.22 C292.48,108.54 261.23,126.63 234.73,141.97 " fill="none" id="C_0013644371753751691404&lt;-C_0005538774787878832856" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="317.38,86.03,338.2,82.07,324.4,98.15,317.38,86.03" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M531.58,216.09 C483.18,233.93 424.5,255.55 374.13,274.12 " fill="none" id="C_0012530606966440104191-&gt;C_0003402137837275719558" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="369.28,275.91,379.1082,276.5479,373.971,274.1795,376.3394,269.0423,369.28,275.91" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M605.88,216.09 C594.77,233.06 581.42,253.47 569.68,271.4 " fill="none" id="C_0012530606966440104191-&gt;C_0017886072050998926742" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="566.74,275.91,575.0185,270.5746,569.4805,271.7279,568.3272,266.1899,566.74,275.91" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M480.69,92.22 C508.99,108.54 540.38,126.63 567,141.97 " fill="none" id="C_0013644371753751691404&lt;-C_0012530606966440104191" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="476.91,98.12,463.08,82.07,483.9,85.99,476.91,98.12" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M111.59,216.1 C91.1,231.7 70.63,251.94 59.5,276 C38.87,320.59 57.23,377.53 73.46,413.27 " fill="none" id="C_0005538774787878832856-&gt;C_0014051968238382913662" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="75.63,417.95,75.4726,408.1024,73.5265,413.414,68.215,411.4679,75.63,417.95" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M145.36,216.13 C120.4,254.13 91.35,314.37 120.5,358 C148.51,399.93 200.2,422.24 245.99,434.1 " fill="none" id="C_0005538774787878832856-&gt;C_0011723944193865790765" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="250.97,435.35,243.2299,429.2597,246.1235,434.1205,241.2627,437.0141,250.97,435.35" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M654.91,216.21 C677.48,253.23 703.61,311.69 680.5,358 C668.65,381.74 647.17,400.84 625.68,415.19 " fill="none" id="C_0012530606966440104191-&gt;C_0012253668743081735855" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="621.39,418,631.1139,416.4361,625.5786,415.2695,626.7451,409.7343,621.39,418" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M664.89,216.12 C680.34,233.26 697.79,254.63 710.5,276 C736.9,320.38 756.66,377.05 767.65,412.82 " fill="none" id="C_0012530606966440104191-&gt;C_0017237324498960462969" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="769.21,417.94,770.4151,408.1651,767.7536,413.1568,762.762,410.4953,769.21,417.94" style="stroke: #A80036; stroke-width: 1.0;"/>
<g id="link_C_0000425267229659464944_C_0001756496029797864207">
<path codeLine="53" d="M383.3207,256.9642 C362.5307,276.4942 351.8,286.59 332.94,304.31 " fill="none" id="C_0000425267229659464944-backto-C_0001756496029797864207" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="396.44,244.64,379.2127,252.5911,387.4288,261.3372,396.44,244.64" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000425267229659464944_C_0001531708592885216981">
<path codeLine="54" d="M500.6252,257.8789 C517.6852,276.0089 524.74,284.26 541.32,304.5 C577.74,348.97 616.03,403.54 639.04,437.32 " fill="none" id="C_0000425267229659464944-backto-C_0001531708592885216981" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="488.29,244.77,496.2556,261.9906,504.9948,253.7671,488.29,244.77" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002235759006374865842_C_0001465493024233223845">
<path codeLine="55" d="M236.9232,672.3746 C268.4632,691.8146 289.26,704.64 317.88,722.29 " fill="none" id="C_0002235759006374865842-backto-C_0001465493024233223845" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="221.6,662.93,233.775,677.4823,240.0714,667.2669,221.6,662.93" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002235759006374865842_C_0002154665562370057871">
<path codeLine="56" d="M148.32,680.74 C148.32,700.27 148.32,704.69 148.32,722.41 " fill="none" id="C_0002235759006374865842-backto-C_0002154665562370057871" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="148.32,662.74,142.32,680.74,154.32,680.74,148.32,662.74" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001705546469218961425_C_0000425267229659464944">
<path codeLine="57" d="M340.87,92.95 C359.28,111.59 376.7522,129.2727 395.5022,148.2427 " fill="none" id="C_0001705546469218961425-to-C_0000425267229659464944" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="399.72,152.51,396.2381,143.2971,396.2051,148.9539,390.5484,148.9209,399.72,152.51" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001705546469218961425_C_0002235759006374865842">
<path codeLine="58" d="M232.67,93.29 C212.22,109.51 191.63,129.72 178.32,152.8 C98.07,291.95 114.94,350.91 129.32,510.9 C131.09,530.62 133.5485,546.2815 137.1485,564.6915 " fill="none" id="C_0001705546469218961425-to-C_0002235759006374865842" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="138.3,570.58,140.4984,560.9796,137.3404,565.6729,132.6472,562.5149,138.3,570.58" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000692346848484854107_C_0000425267229659464944">
<path codeLine="59" d="M356.69,429 C376.17,412.63 396.28,392.14 409.32,369.3 C431.24,330.91 439.0043,286.6478 442.0943,250.8278 " fill="none" id="C_0000692346848484854107-to-C_0000425267229659464944" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="442.61,244.85,437.8513,253.4729,442.1803,249.8315,445.8217,254.1605,442.61,244.85" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000692346848484854107_C_0002235759006374865842">
<path codeLine="60" d="M257.26,511.39 C238.06,529.78 219.5837,547.4904 199.8037,566.4304 " fill="none" id="C_0000692346848484854107-to-C_0002235759006374865842" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="195.47,570.58,204.7369,567.2447,199.0814,567.122,199.2041,561.4665,195.47,570.58" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001705546469218961425_C_0000692346848484854107">
<path codeLine="61" d="M253.736,107.6345 C207.396,169.4745 146.74,273.18 189.32,369.3 C199.66,392.64 218.45,412.85 237.61,428.87 " fill="none" id="C_0001705546469218961425-backto-C_0000692346848484854107" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="264.53,93.23,248.9345,104.0365,258.5375,111.2325,264.53,93.23" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001566325870805013023_C_0000425267229659464944">
<path codeLine="62" d="M515.32,847.03 C515.32,794.37 515.32,699.15 515.32,617.75 C515.32,469.1 515.32,469.1 515.32,469.1 C515.32,388.07 487.1391,303.2946 466.1291,250.5146 " fill="none" id="C_0001566325870805013023-to-C_0000425267229659464944" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="463.91,244.94,463.5222,254.7812,465.7592,249.5855,470.955,251.8225,463.91,244.94" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001566325870805013023_C_0002235759006374865842">
<path codeLine="63" d="M361.96,875.75 C238.37,862.96 78.73,837.14 38.32,787.4 C6,747.62 41.7995,701.9738 82.4195,666.7038 " fill="none" id="C_0001566325870805013023-to-C_0002235759006374865842" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="86.95,662.77,77.5317,665.6504,83.1746,666.0482,82.7768,671.691,86.95,662.77" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001705546469218961425_C_0001566325870805013023">
<path codeLine="64" d="M482.2622,77.8264 C629.8822,108.9764 805.32,176.47 805.32,335.9 C805.32,335.9 805.32,335.9 805.32,617.75 C805.32,726.51 694.5,803.77 609.88,846.92 " fill="none" id="C_0001705546469218961425-backto-C_0001566325870805013023" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="464.65,74.11,481.0234,83.6971,483.501,71.9557,464.65,74.11" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001756496029797864207_C_0000692346848484854107">
<path codeLine="65" d="M299.32,375.66 C299.32,393.56 299.32,410.08 299.32,429.17 " fill="none" id="C_0001756496029797864207-backto-C_0000692346848484854107" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="299.32,369.66,295.32,378.66,299.32,374.66,303.32,378.66,299.32,369.66" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001465493024233223845_C_0000692346848484854107">
<path codeLine="66" d="M360.0183,716.3958 C347.2083,664.6458 323.32,568.08 309.27,511.33 " fill="none" id="C_0001465493024233223845-backto-C_0000692346848484854107" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="361.46,722.22,363.1803,712.5225,360.2586,717.3665,355.4146,714.4448,361.46,722.22" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001531708592885216981_C_0001566325870805013023">
<path codeLine="67" d="M647.326,508.386 C621.326,583.016 558.12,764.37 529.35,846.94 " fill="none" id="C_0001531708592885216981-backto-C_0001566325870805013023" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="649.3,502.72,642.5617,509.903,647.655,507.4417,650.1164,512.535,649.3,502.72" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002154665562370057871_C_0001566325870805013023">
<path codeLine="68" d="M242.81,789.7792 C292.56,807.5592 349.43,827.9 402.6,846.9 " fill="none" id="C_0002154665562370057871-backto-C_0001566325870805013023" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="237.16,787.76,244.2889,794.5555,241.8683,789.4427,246.9812,787.0222,237.16,787.76" style="stroke:#181818;stroke-width:1.0;"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 44 KiB

View File

@@ -1,71 +1,72 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1239.65625 592" style="max-width: 1239.66px; background-color: white;" width="1239.65625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 1094.62109375 592" style="max-width: 1094.62px; background-color: white;" width="1094.62109375" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M152.015625,455L152.015625,459.1666666666667C152.015625,463.3333333333333,152.015625,471.6666666666667,158.10715439276487,480C164.1986837855297,488.3333333333333,176.38174257105945,496.6666666666667,182.47327196382432,500.8333333333333L188.56480135658916,505"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M296.03125,446.6460520614605L311.0950520833333,452.20504338455044C326.1588541666667,457.76403470764035,356.2864583333333,468.8820173538202,379.1087592861757,478.6076753435768C401.9310602390181,488.3333333333333,417.44805797803616,496.6666666666667,425.20655684754524,500.8333333333333L432.96505571705427,505"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M726.5703125,455L726.5703125,459.1666666666667C726.5703125,463.3333333333333,726.5703125,471.6666666666667,732.9984657622739,480C739.4266190245477,488.3333333333333,752.2829255490956,496.6666666666667,758.7110788113695,500.8333333333333L765.1392320736434,505"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M870.5859375,447.544909164859L885,452.95409097071587C899.4140625,458.3632727765727,928.2421875,469.18163638828634,951.1182776162791,478.7574848608098C973.9943677325582,488.3333333333333,990.9184229651163,496.6666666666667,999.3804505813954,500.8333333333333L1007.8424781976744,505"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M308.1328125,113.70187199595244L280.4466145833333,120.75155999662702C252.76041666666666,127.80124799730163,197.38802083333334,141.90062399865081,169.70182291666666,161.53364533265872C142.015625,181.16666666666666,142.015625,206.33333333333334,142.015625,231.5C142.015625,256.6666666666667,142.015625,281.8333333333333,142.49732056840077,298.5833333333333C142.97901613680153,315.3333333333333,143.9424072736031,323.6666666666667,144.42410284200386,327.8333333333333L144.90579841040463,332"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M599.2775469653179,131L607.2417058044316,135.16666666666666C615.2058646435453,139.33333333333334,631.1341823217726,147.66666666666666,639.0983411608863,164.41666666666666C647.0625,181.16666666666666,647.0625,206.33333333333334,647.0625,231.5C647.0625,256.6666666666667,647.0625,281.8333333333333,650.8923560934489,298.5833333333333C654.7222121868979,315.3333333333333,662.3819243737958,323.6666666666667,666.2117804672447,327.8333333333333L670.0416365606936,332"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id7" d="M284.7304946192053,282L279.29494343267106,286.1666666666667C273.85939224613685,290.3333333333333,262.9882898730684,298.6666666666667,252.73089078190992,307C242.47349169075144,315.3333333333333,232.82979588150292,323.6666666666667,228.00794797687863,327.8333333333333L223.18610007225433,332"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id8" d="M524.203125,258.9792792792793L574.7630208333334,266.98273273273276C625.3229166666666,274.9861861861862,726.4427083333334,290.99309309309314,772.1378552504817,303.1632132132132C817.8330021676301,315.3333333333333,808.10350433526,323.6666666666667,803.2387554190751,327.8333333333333L798.3740065028902,332"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M388.5045158959538,131L382.1886590799615,135.16666666666666C375.87280226396916,139.33333333333334,363.2410886319846,147.66666666666666,356.9252318159923,156C350.609375,164.33333333333334,350.609375,172.66666666666666,350.609375,176.83333333333334L350.609375,181"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id10" d="M884.46875,248.17587797337998L782.41015625,257.97989831114995C680.3515625,267.78391864892,476.234375,287.39195932446,368.39054220857423,301.3626463288967C260.54670941714835,315.3333333333333,248.97623133429673,323.6666666666667,243.1909922928709,327.8333333333333L237.4057532514451,332"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id11" d="M917.2644867549669,282L905.6474889624724,286.1666666666667C894.0304911699781,290.3333333333333,870.796495584989,298.6666666666667,853.351357739508,307C835.906219894027,315.3333333333333,824.2499397880539,323.6666666666667,818.4217997350675,327.8333333333333L812.5936596820809,332"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id12" d="M655.3203125,95.55400496129916L722.4440104166666,105.62833746774929C789.5677083333334,115.70266997419942,923.8151041666666,135.8513349870997,990.9388020833334,150.09233416021652C1058.0625,164.33333333333334,1058.0625,172.66666666666666,1058.0625,176.83333333333334L1058.0625,181"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id13" d="M361.1807222682119,282L362.0529456401766,286.1666666666667C362.9251690121412,290.3333333333333,364.66961575607064,298.6666666666667,365.5418391280353,317.25C366.4140625,335.8333333333333,366.4140625,364.6666666666667,366.4140625,393.5C366.4140625,422.3333333333333,366.4140625,451.1666666666667,358.6555636304909,469.75C350.8970647609819,488.3333333333333,335.38006702196384,496.6666666666667,327.62156815245476,500.8333333333333L319.86306928294573,505"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id14" d="M524.203125,253.8481689690543L593.0143229166666,262.7068074742119C661.8255208333334,271.56544597936954,799.4479166666666,289.28272298968477,868.2591145833334,312.55802816150907C937.0703125,335.8333333333333,937.0703125,364.6666666666667,937.0703125,393.5C937.0703125,422.3333333333333,937.0703125,451.1666666666667,929.9002745478036,469.75C922.7302365956072,488.3333333333333,908.3901606912144,496.6666666666667,901.2201227390179,500.8333333333333L894.0500847868217,505"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id15" d="M884.46875,257.1731195959905L828.31640625,265.4775996633254C772.1640625,273.7820797306603,659.859375,290.3910398653302,603.70703125,313.1121865993318C547.5546875,335.8333333333333,547.5546875,364.6666666666667,547.5546875,393.5C547.5546875,422.3333333333333,547.5546875,451.1666666666667,544.9035852713179,469.75C542.2524830426356,488.3333333333333,536.9502785852713,496.6666666666667,534.2991763565891,500.8333333333333L531.648074127907,505"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id16" d="M1078.1287251655629,282L1079.7843543046358,286.1666666666667C1081.4399834437086,290.3333333333333,1084.7512417218543,298.6666666666667,1086.4068708609273,317.25C1088.0625,335.8333333333333,1088.0625,364.6666666666667,1088.0625,393.5C1088.0625,422.3333333333333,1088.0625,451.1666666666667,1088.0625,469.75C1088.0625,488.3333333333333,1088.0625,496.6666666666667,1088.0625,500.8333333333333L1088.0625,505"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M183.2948258278622,455.3871718571809L172.33683402321853,459.4893098809841C161.37884221857482,463.59144790478723,139.4628586092874,471.79572395239364,128.5048668046437,480.0645286428635C117.546875,488.3333333333333,117.546875,496.6666666666667,117.546875,500.8333333333333L117.546875,505"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M382.8941460304957,471.4779629891419L383.51855919207975,472.8983024909516C384.14297235366377,474.31864199276123,385.3917986768319,477.1593209963806,386.016211838416,482.74632716485695C386.640625,488.3333333333333,386.640625,496.6666666666667,386.640625,500.8333333333333L386.640625,505"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M723.2556297239986,455.1525123421932L712.1505247699988,459.293760285161C701.045419815999,463.43500822812877,678.8352099079995,471.7175041140644,667.7301049539998,480.0254187236989C656.625,488.3333333333333,656.625,496.6666666666667,656.625,500.8333333333333L656.625,505"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M923.6374867075972,471.41508638492735L924.2812389229977,472.8459053207728C924.9249911383981,474.27672425661825,926.2124955691992,477.1383621283091,926.8562477845995,482.7358477308212C927.5,488.3333333333333,927.5,496.6666666666667,927.5,500.8333333333333L927.5,505"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M333.59375,110.45207279450717L300.5904947916667,118.04339399542265C267.5872395833333,125.6347151963381,201.58072916666666,140.81735759816905,168.57747395833334,160.99201213241787C135.57421875,181.16666666666666,135.57421875,206.33333333333334,135.57421875,231.5C135.57421875,256.6666666666667,135.57421875,281.8333333333333,145.41070156435057,298.4105622154763C155.24718437870112,314.9877910976192,174.92015000740227,322.9755821952385,184.75663282175285,326.9694777440481L194.5931156361034,330.9633732928577"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M587.3663520592486,131L592.4973506743738,135.16666666666666C597.628349289499,139.33333333333334,607.8903465197495,147.66666666666666,613.0213451348748,164.41666666666666C618.15234375,181.16666666666666,618.15234375,206.33333333333334,618.15234375,231.5C618.15234375,256.6666666666667,618.15234375,281.8333333333333,637.5280062717978,300.6141918852524C656.9036687935957,319.3950504371715,695.6549938371913,331.790100874343,715.0306563589892,337.9876260929288L734.406318880787,344.1851513115145"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id7" d="M366.640625,282L366.640625,286.1666666666667C366.640625,290.3333333333333,366.640625,298.6666666666667,365.9762807109617,306.0210342946471C365.31193642192346,313.3754019226276,363.983247843847,319.7508038452552,363.3189035548087,322.938504806569L362.65455926577044,326.12620576788277"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id8" d="M544.6796875,258.7643209152709L597.1770833333334,266.80360076272575C649.6744791666666,274.8428806101806,754.6692708333334,290.9214403050903,808.2425695978251,302.1789822770315C861.8158683623169,313.4365242489727,863.9676742246338,319.8730484979454,865.0435771557923,323.09131062243176L866.1194800869506,326.3095727469181"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id9" d="M393.0877604795467,140.22206562694427L388.67990456628894,142.8517213557869C384.2720486530311,145.48137708462951,375.45633682651555,150.74068854231476,371.04848091325783,157.53701093782405C366.640625,164.33333333333334,366.640625,172.66666666666666,366.640625,176.83333333333334L366.640625,181"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id10" d="M730.54296875,265.3631456715772L694.0579427083334,272.30262139298094C657.5729166666666,279.24209711438476,584.6028645833334,293.1210485571924,541.1486093434798,303.75847581250576C497.6943541036264,314.39590306781923,483.75589570725265,321.7918061356384,476.7866665090658,325.48975766954806L469.817437310879,329.18770920345764"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id11" d="M908.58203125,282L908.58203125,286.1666666666667C908.58203125,290.3333333333333,908.58203125,298.6666666666667,907.843910908901,306.0257038085862C907.1057905678022,313.38474095050566,905.6295498856043,319.7694819010113,904.8914295445053,322.9618523762642L904.1533092034065,326.154222851517"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id12" d="M707.2591464108872,112.12932658383458L740.8129605507393,119.44110548652883C774.3667746905916,126.75288438922307,841.4744029702957,141.37644219461154,875.0282171101479,152.8548877639724C908.58203125,164.33333333333334,908.58203125,172.66666666666666,908.58203125,176.83333333333334L908.58203125,181"/>
</g>
<g class="edgeLabels">
<g class="edgeLabel">
@@ -188,49 +189,13 @@
</foreignObject>
</g>
</g>
<g class="edgeLabel">
<g transform="translate(0, 0)" class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel"/>
</div>
</foreignObject>
</g>
</g>
<g class="edgeLabel">
<g transform="translate(0, 0)" class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel"/>
</div>
</foreignObject>
</g>
</g>
<g class="edgeLabel">
<g transform="translate(0, 0)" class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel"/>
</div>
</foreignObject>
</g>
</g>
<g class="edgeLabel">
<g transform="translate(0, 0)" class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel"/>
</div>
</foreignObject>
</g>
</g>
</g>
<g class="nodes">
<a transform="translate(152.015625, 393.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L6">
<g title="ProductA" id="classId-C_0003402137837275719558-0" class="node default clickable">
<rect height="123" width="288.03125" y="-61.5" x="-144.015625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="144.015625" x1="-144.015625" class="divider"/>
<line y2="6.5" y1="6.5" x2="144.015625" x1="-144.015625" class="divider"/>
<a transform="translate(348.61328125, 393.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L6">
<g title="ProductA" id="classId-C_0000425267229659464944-0" class="node default clickable">
<rect height="123" width="296.921875" y="-61.5" x="-148.4609375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="148.4609375" x1="-148.4609375" class="divider"/>
<line y2="6.5" y1="6.5" x2="148.4609375" x1="-148.4609375" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -54)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -242,24 +207,24 @@
<span class="nodeLabel">ProductA</span>
</div>
</foreignObject>
<foreignObject transform="translate( -136.515625, 14)" height="18" width="273.03125">
<foreignObject transform="translate( -140.9609375, 14)" height="18" width="281.921875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+~ProductA() : [default,constexpr] void</span>
<span class="nodeLabel">+~ProductA() : : [default,constexpr] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -136.515625, 36)" height="18" width="195.203125">
<foreignObject transform="translate( -140.9609375, 36)" height="18" width="204.09375">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+sell(int price) : [const] bool</span>
<span style="font-style:italic;" class="nodeLabel">+sell(int price) : : [const] bool</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(246.3125, 544.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L12">
<g title="ProductA1" id="classId-C_0014051968238382913662-1" class="node default clickable">
<rect height="79" width="210.203125" y="-39.5" x="-105.1015625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="105.1015625" x1="-105.1015625" class="divider"/>
<line y2="6.5" y1="6.5" x2="105.1015625" x1="-105.1015625" class="divider"/>
<a transform="translate(117.546875, 544.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L12">
<g title="ProductA1" id="classId-C_0001756496029797864207-1" class="node default clickable">
<rect height="79" width="219.09375" y="-39.5" x="-109.546875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="109.546875" x1="-109.546875" class="divider"/>
<line y2="6.5" y1="6.5" x2="109.546875" x1="-109.546875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -271,19 +236,19 @@
<span class="nodeLabel">ProductA1</span>
</div>
</foreignObject>
<foreignObject transform="translate( -97.6015625, 14)" height="18" width="195.203125">
<foreignObject transform="translate( -102.046875, 14)" height="18" width="204.09375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+sell(int price) : [const] bool</span>
<span class="nodeLabel">+sell(int price) : : [const] bool</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(506.515625, 544.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L17">
<g title="ProductA2" id="classId-C_0012253668743081735855-2" class="node default clickable">
<rect height="79" width="210.203125" y="-39.5" x="-105.1015625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="105.1015625" x1="-105.1015625" class="divider"/>
<line y2="6.5" y1="6.5" x2="105.1015625" x1="-105.1015625" class="divider"/>
<a transform="translate(386.640625, 544.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L17">
<g title="ProductA2" id="classId-C_0001531708592885216981-2" class="node default clickable">
<rect height="79" width="219.09375" y="-39.5" x="-109.546875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="109.546875" x1="-109.546875" class="divider"/>
<line y2="6.5" y1="6.5" x2="109.546875" x1="-109.546875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -295,19 +260,19 @@
<span class="nodeLabel">ProductA2</span>
</div>
</foreignObject>
<foreignObject transform="translate( -97.6015625, 14)" height="18" width="195.203125">
<foreignObject transform="translate( -102.046875, 14)" height="18" width="204.09375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+sell(int price) : [const] bool</span>
<span class="nodeLabel">+sell(int price) : : [const] bool</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(726.5703125, 393.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L22">
<g title="ProductB" id="classId-C_0017886072050998926742-3" class="node default clickable">
<rect height="123" width="288.03125" y="-61.5" x="-144.015625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="144.015625" x1="-144.015625" class="divider"/>
<line y2="6.5" y1="6.5" x2="144.015625" x1="-144.015625" class="divider"/>
<a transform="translate(888.58203125, 393.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L22">
<g title="ProductB" id="classId-C_0002235759006374865842-3" class="node default clickable">
<rect height="123" width="296.921875" y="-61.5" x="-148.4609375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="148.4609375" x1="-148.4609375" class="divider"/>
<line y2="6.5" y1="6.5" x2="148.4609375" x1="-148.4609375" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -54)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -319,24 +284,24 @@
<span class="nodeLabel">ProductB</span>
</div>
</foreignObject>
<foreignObject transform="translate( -136.515625, 14)" height="18" width="273.03125">
<foreignObject transform="translate( -140.9609375, 14)" height="18" width="281.921875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+~ProductB() : [default,constexpr] void</span>
<span class="nodeLabel">+~ProductB() : : [default,constexpr] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -136.515625, 36)" height="18" width="196.984375">
<foreignObject transform="translate( -140.9609375, 36)" height="18" width="205.875">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+buy(int price) : [const] bool</span>
<span style="font-style:italic;" class="nodeLabel">+buy(int price) : : [const] bool</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(826.078125, 544.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L28">
<g title="ProductB1" id="classId-C_0011723944193865790765-4" class="node default clickable">
<rect height="79" width="211.984375" y="-39.5" x="-105.9921875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="105.9921875" x1="-105.9921875" class="divider"/>
<line y2="6.5" y1="6.5" x2="105.9921875" x1="-105.9921875" class="divider"/>
<a transform="translate(656.625, 544.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L28">
<g title="ProductB1" id="classId-C_0001465493024233223845-4" class="node default clickable">
<rect height="79" width="220.875" y="-39.5" x="-110.4375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="110.4375" x1="-110.4375" class="divider"/>
<line y2="6.5" y1="6.5" x2="110.4375" x1="-110.4375" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -348,19 +313,19 @@
<span class="nodeLabel">ProductB1</span>
</div>
</foreignObject>
<foreignObject transform="translate( -98.4921875, 14)" height="18" width="196.984375">
<foreignObject transform="translate( -102.9375, 14)" height="18" width="205.875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+buy(int price) : [const] bool</span>
<span class="nodeLabel">+buy(int price) : : [const] bool</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(1088.0625, 544.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L33">
<g title="ProductB2" id="classId-C_0017237324498960462969-5" class="node default clickable">
<rect height="79" width="211.984375" y="-39.5" x="-105.9921875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="105.9921875" x1="-105.9921875" class="divider"/>
<line y2="6.5" y1="6.5" x2="105.9921875" x1="-105.9921875" class="divider"/>
<a transform="translate(927.5, 544.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L33">
<g title="ProductB2" id="classId-C_0002154665562370057871-5" class="node default clickable">
<rect height="79" width="220.875" y="-39.5" x="-110.4375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="110.4375" x1="-110.4375" class="divider"/>
<line y2="6.5" y1="6.5" x2="110.4375" x1="-110.4375" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -372,19 +337,19 @@
<span class="nodeLabel">ProductB2</span>
</div>
</foreignObject>
<foreignObject transform="translate( -98.4921875, 14)" height="18" width="196.984375">
<foreignObject transform="translate( -102.9375, 14)" height="18" width="205.875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+buy(int price) : [const] bool</span>
<span class="nodeLabel">+buy(int price) : : [const] bool</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(481.7265625, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L38">
<g title="AbstractFactory" id="classId-C_0013644371753751691404-6" class="node default clickable">
<rect height="123" width="347.1875" y="-61.5" x="-173.59375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="173.59375" x1="-173.59375" class="divider"/>
<line y2="6.5" y1="6.5" x2="173.59375" x1="-173.59375" class="divider"/>
<a transform="translate(511.6328125, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L38">
<g title="AbstractFactory" id="classId-C_0001705546469218961425-6" class="node default clickable">
<rect height="123" width="356.078125" y="-61.5" x="-178.0390625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="178.0390625" x1="-178.0390625" class="divider"/>
<line y2="6.5" y1="6.5" x2="178.0390625" x1="-178.0390625" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -54)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -396,24 +361,24 @@
<span class="nodeLabel">AbstractFactory</span>
</div>
</foreignObject>
<foreignObject transform="translate( -166.09375, 14)" height="18" width="332.1875">
<foreignObject transform="translate( -170.5390625, 14)" height="18" width="341.078125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+make_a() : [const] std::unique_ptr&lt;ProductA&gt;</span>
<span style="font-style:italic;" class="nodeLabel">+make_a() : : [const] std::unique_ptr&lt;ProductA&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -166.09375, 36)" height="18" width="332.1875">
<foreignObject transform="translate( -170.5390625, 36)" height="18" width="341.078125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+make_b() : [const] std::unique_ptr&lt;ProductB&gt;</span>
<span style="font-style:italic;" class="nodeLabel">+make_b() : : [const] std::unique_ptr&lt;ProductB&gt;</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(350.609375, 231.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L44">
<g title="Factory1" id="classId-C_0005538774787878832856-7" class="node default clickable">
<rect height="101" width="347.1875" y="-50.5" x="-173.59375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="173.59375" x1="-173.59375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="173.59375" x1="-173.59375" class="divider"/>
<a transform="translate(366.640625, 231.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L44">
<g title="Factory1" id="classId-C_0000692346848484854107-7" class="node default clickable">
<rect height="101" width="356.078125" y="-50.5" x="-178.0390625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="178.0390625" x1="-178.0390625" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="178.0390625" x1="-178.0390625" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -425,24 +390,24 @@
<span class="nodeLabel">Factory1</span>
</div>
</foreignObject>
<foreignObject transform="translate( -166.09375, 3)" height="18" width="332.1875">
<foreignObject transform="translate( -170.5390625, 3)" height="18" width="341.078125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+make_a() : [const] std::unique_ptr&lt;ProductA&gt;</span>
<span class="nodeLabel">+make_a() : : [const] std::unique_ptr&lt;ProductA&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -166.09375, 25)" height="18" width="332.1875">
<foreignObject transform="translate( -170.5390625, 25)" height="18" width="341.078125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+make_b() : [const] std::unique_ptr&lt;ProductB&gt;</span>
<span class="nodeLabel">+make_b() : : [const] std::unique_ptr&lt;ProductB&gt;</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(1058.0625, 231.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00020/t00020.cc#L57">
<g title="Factory2" id="classId-C_0012530606966440104191-8" class="node default clickable">
<rect height="101" width="347.1875" y="-50.5" x="-173.59375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="173.59375" x1="-173.59375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="173.59375" x1="-173.59375" class="divider"/>
<a transform="translate(908.58203125, 231.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00020/t00020.cc#L57">
<g title="Factory2" id="classId-C_0001566325870805013023-8" class="node default clickable">
<rect height="101" width="356.078125" y="-50.5" x="-178.0390625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="178.0390625" x1="-178.0390625" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="178.0390625" x1="-178.0390625" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -454,14 +419,14 @@
<span class="nodeLabel">Factory2</span>
</div>
</foreignObject>
<foreignObject transform="translate( -166.09375, 3)" height="18" width="332.1875">
<foreignObject transform="translate( -170.5390625, 3)" height="18" width="341.078125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+make_a() : [const] std::unique_ptr&lt;ProductA&gt;</span>
<span class="nodeLabel">+make_a() : : [const] std::unique_ptr&lt;ProductA&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -166.09375, 25)" height="18" width="332.1875">
<foreignObject transform="translate( -170.5390625, 25)" height="18" width="341.078125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+make_b() : [const] std::unique_ptr&lt;ProductB&gt;</span>
<span class="nodeLabel">+make_b() : : [const] std::unique_ptr&lt;ProductB&gt;</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View File

@@ -78,8 +78,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "Visitor",
"id": "13349368885381955166",
"display_name": "clanguml::t00021::Visitor",
"id": "1668671110672744395",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -89,7 +89,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "~Visitor",
"is_const": false,
"is_consteval": false,
"is_constexpr": true,
@@ -112,12 +111,10 @@ public:
"line": 11,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "visit_A",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -145,12 +142,10 @@ public:
"line": 12,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "visit_B",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -178,7 +173,6 @@ public:
"line": 13,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -197,13 +191,13 @@ public:
"bases": [
{
"access": "public",
"id": "13349368885381955166",
"id": "1668671110672744395",
"is_virtual": false,
"name": "clanguml::t00021::Visitor"
}
],
"display_name": "Visitor1",
"id": "8226953755203215571",
"display_name": "clanguml::t00021::Visitor1",
"id": "1028369219400401946",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -213,7 +207,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "visit_A",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -241,12 +234,10 @@ public:
"line": 18,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "visit_B",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -274,7 +265,6 @@ public:
"line": 19,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -293,13 +283,13 @@ public:
"bases": [
{
"access": "public",
"id": "13349368885381955166",
"id": "1668671110672744395",
"is_virtual": false,
"name": "clanguml::t00021::Visitor"
}
],
"display_name": "Visitor2",
"id": "13682986523810297046",
"display_name": "clanguml::t00021::Visitor2",
"id": "1710373315476287130",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -309,7 +299,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "visit_A",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -337,12 +326,10 @@ public:
"line": 24,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "visit_B",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -370,7 +357,6 @@ public:
"line": 25,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -389,13 +375,13 @@ public:
"bases": [
{
"access": "public",
"id": "13349368885381955166",
"id": "1668671110672744395",
"is_virtual": false,
"name": "clanguml::t00021::Visitor"
}
],
"display_name": "Visitor3",
"id": "11192209825433424201",
"display_name": "clanguml::t00021::Visitor3",
"id": "1399026228179178025",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -405,7 +391,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "visit_A",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -433,12 +418,10 @@ public:
"line": 30,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "visit_B",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -466,7 +449,6 @@ public:
"line": 31,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -483,8 +465,8 @@ public:
},
{
"bases": [],
"display_name": "Item",
"id": "11932550614071581777",
"display_name": "clanguml::t00021::Item",
"id": "1491568826758947722",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -494,7 +476,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "~Item",
"is_const": false,
"is_consteval": false,
"is_constexpr": true,
@@ -517,12 +498,10 @@ public:
"line": 36,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "accept",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -550,7 +529,6 @@ public:
"line": 37,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -569,13 +547,13 @@ public:
"bases": [
{
"access": "public",
"id": "11932550614071581777",
"id": "1491568826758947722",
"is_virtual": false,
"name": "clanguml::t00021::Item"
}
],
"display_name": "A",
"id": "11953141964512214591",
"display_name": "clanguml::t00021::A",
"id": "1494142745564026823",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -585,7 +563,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "accept",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -613,7 +590,6 @@ public:
"line": 42,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -632,13 +608,13 @@ public:
"bases": [
{
"access": "public",
"id": "11932550614071581777",
"id": "1491568826758947722",
"is_virtual": false,
"name": "clanguml::t00021::Item"
}
],
"display_name": "B",
"id": "11623589203607996547",
"display_name": "clanguml::t00021::B",
"id": "1452948650450999568",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -648,7 +624,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "accept",
"is_const": true,
"is_consteval": false,
"is_constexpr": false,
@@ -676,7 +651,6 @@ public:
"line": 47,
"translation_unit": "t00021.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -693,102 +667,101 @@ public:
}
],
"name": "t00021_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "11953141964512214591",
"source": "13349368885381955166",
"destination": "1494142745564026823",
"source": "1668671110672744395",
"type": "dependency"
},
{
"access": "public",
"destination": "11623589203607996547",
"source": "13349368885381955166",
"destination": "1452948650450999568",
"source": "1668671110672744395",
"type": "dependency"
},
{
"access": "public",
"destination": "11953141964512214591",
"source": "8226953755203215571",
"destination": "1494142745564026823",
"source": "1028369219400401946",
"type": "dependency"
},
{
"access": "public",
"destination": "11623589203607996547",
"source": "8226953755203215571",
"destination": "1452948650450999568",
"source": "1028369219400401946",
"type": "dependency"
},
{
"access": "public",
"destination": "13349368885381955166",
"source": "8226953755203215571",
"destination": "1668671110672744395",
"source": "1028369219400401946",
"type": "extension"
},
{
"access": "public",
"destination": "11953141964512214591",
"source": "13682986523810297046",
"destination": "1494142745564026823",
"source": "1710373315476287130",
"type": "dependency"
},
{
"access": "public",
"destination": "11623589203607996547",
"source": "13682986523810297046",
"destination": "1452948650450999568",
"source": "1710373315476287130",
"type": "dependency"
},
{
"access": "public",
"destination": "13349368885381955166",
"source": "13682986523810297046",
"destination": "1668671110672744395",
"source": "1710373315476287130",
"type": "extension"
},
{
"access": "public",
"destination": "11953141964512214591",
"source": "11192209825433424201",
"destination": "1494142745564026823",
"source": "1399026228179178025",
"type": "dependency"
},
{
"access": "public",
"destination": "11623589203607996547",
"source": "11192209825433424201",
"destination": "1452948650450999568",
"source": "1399026228179178025",
"type": "dependency"
},
{
"access": "public",
"destination": "13349368885381955166",
"source": "11192209825433424201",
"destination": "1668671110672744395",
"source": "1399026228179178025",
"type": "extension"
},
{
"access": "public",
"destination": "13349368885381955166",
"source": "11932550614071581777",
"destination": "1668671110672744395",
"source": "1491568826758947722",
"type": "dependency"
},
{
"access": "public",
"destination": "13349368885381955166",
"source": "11953141964512214591",
"destination": "1668671110672744395",
"source": "1494142745564026823",
"type": "dependency"
},
{
"access": "public",
"destination": "11932550614071581777",
"source": "11953141964512214591",
"destination": "1491568826758947722",
"source": "1494142745564026823",
"type": "extension"
},
{
"access": "public",
"destination": "13349368885381955166",
"source": "11623589203607996547",
"destination": "1668671110672744395",
"source": "1452948650450999568",
"type": "dependency"
},
{
"access": "public",
"destination": "11932550614071581777",
"source": "11623589203607996547",
"destination": "1491568826758947722",
"source": "1452948650450999568",
"type": "extension"
}
],

View File

@@ -1,194 +1,234 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="509px" preserveAspectRatio="none" style="width:990px;height:509px;" version="1.1" viewBox="0 0 990 509" width="990px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="542px" preserveAspectRatio="none" style="width:1049px;height:542px;background:#FFFFFF;" version="1.1" viewBox="0 0 1049 542" width="1049px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1o05ebipjy1c3" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L9" target="_top" title="Visitor" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L9" xlink:show="new" xlink:title="Visitor" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1o05ebipjy1c3)" height="94.4141" id="C_0013349368885381955166" style="stroke: #A80036; stroke-width: 1.5;" width="249" x="368" y="150"/>
<ellipse cx="469.25" cy="166" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M469.3594,161.3438 L468.2031,166.4219 L470.5313,166.4219 L469.3594,161.3438 Z M467.875,159.1094 L470.8594,159.1094 L474.2188,171.5 L471.7656,171.5 L471,168.4375 L467.7188,168.4375 L466.9688,171.5 L464.5313,171.5 L467.875,159.1094 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="38" x="489.75" y="170.1543">Visitor</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="369" x2="616" y1="182" y2="182"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L9" target="_top" title="Visitor" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L9" xlink:show="new" xlink:title="Visitor" xlink:type="simple">
<g id="elem_C_0001668671110672744395">
<rect codeLine="2" fill="#F1F1F1" height="110.5998" id="C_0001668671110672744395" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="268" x="390.5" y="158.7"/>
<ellipse cx="500.75" cy="174.7" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M502.2813,176.6375 L502.6094,177.4344 L502.3281,177.4344 C501.875,177.4344 501.75,177.4656 501.5781,177.575 C501.2969,177.7156 501.125,178.0125 501.125,178.3094 C501.125,178.6063 501.2656,178.8563 501.5,179.0281 C501.6719,179.1531 501.9063,179.2 502.3281,179.2 L504.6875,179.2 C505.0469,179.2 505.2969,179.1688 505.4375,179.075 C505.7031,178.9344 505.875,178.6219 505.875,178.3094 C505.875,178.0438 505.7344,177.7781 505.5,177.6063 C505.3125,177.4813 505.1563,177.45 504.7031,177.4344 L501.3125,169.6063 L497.5938,169.6063 C497.1406,169.6063 497,169.6219 496.8281,169.7313 C496.5625,169.9031 496.3906,170.1844 496.3906,170.4813 C496.3906,170.7625 496.5313,171.0281 496.7813,171.2 C496.9531,171.325 497.1406,171.3563 497.5938,171.3563 L498.5625,171.3563 L495.9844,177.4344 C495.2344,177.4344 494.8281,177.7313 494.8281,178.3094 C494.8281,178.9188 495.2188,179.2 496.0156,179.2 L498.2813,179.2 C498.6406,179.2 498.8906,179.1688 499.0313,179.075 C499.2969,178.9188 499.4688,178.6219 499.4688,178.3094 C499.4688,178.0438 499.3281,177.7781 499.0938,177.6063 C498.9063,177.4656 498.75,177.4344 498.2813,177.4344 L497.9844,177.4344 L498.3281,176.6375 L502.2813,176.6375 Z M501.5156,174.8875 L499.0625,174.8875 L500.2969,172.0125 L501.5156,174.8875 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="39" x="521.25" y="180.65">Visitor</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="391.5" x2="657.5" y1="190.7" y2="190.7"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L11" target="_top" title="~Visitor" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L11" xlink:show="new" xlink:title="~Visitor" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="396.5" y="199.6"/>
<ellipse cx="401.5" cy="204.6" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L11" target="_top" title="~Visitor" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L11" xlink:show="new" xlink:title="~Visitor" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="220" x="410.5" y="207.7059">~Visitor() constexpr = default : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="391.5" x2="657.5" y1="215.4999" y2="215.4999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L12" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L12" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="396.5" y="225.4499"/>
<ellipse cx="401.5" cy="230.4499" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L12" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L12" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="242" x="410.5" y="234.8999">visit_A(const A &amp; item) const = 0 : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L13" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L13" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="396.5" y="244.3498"/>
<ellipse cx="401.5" cy="249.3498" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L13" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L13" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="242" x="410.5" y="253.7998">visit_B(const B &amp; item) const = 0 : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="391.5" x2="657.5" y1="261.2998" y2="261.2998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L11" target="_top" title="~Visitor" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L11" xlink:show="new" xlink:title="~Visitor" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="374" y="188"/>
<ellipse cx="379" cy="193" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L16" target="_top" title="Visitor1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L16" xlink:show="new" xlink:title="Visitor1" xlink:type="simple">
<g id="elem_C_0001028369219400401946">
<rect codeLine="10" fill="#F1F1F1" height="81.5999" id="C_0001028369219400401946" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="244" x="123.5" y="329.3"/>
<ellipse cx="217.75" cy="345.3" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M212.75,346.4563 C212.75,348.9563 214.8906,350.7688 217.8125,350.7688 C219.0469,350.7688 220.2188,350.4719 220.9688,349.9563 C221.5781,349.5344 221.9063,349.1125 221.9063,348.7063 C221.9063,348.2375 221.4844,347.8313 220.9844,347.8313 C220.75,347.8313 220.5313,347.9094 220.3281,348.1125 C219.8906,348.55 219.8906,348.55 219.7188,348.6438 C219.2656,348.8781 218.625,349.0188 217.8594,349.0188 C215.8594,349.0188 214.5781,348.0031 214.5781,346.425 L214.5781,345.3781 C214.5781,343.675 215.7969,342.4719 217.5,342.4719 C218.0781,342.4719 218.6563,342.6125 219.125,342.8625 C219.5938,343.1281 219.7656,343.3156 219.8281,343.675 C219.9531,344.3469 220.2031,344.5969 220.7344,344.5969 C221.0156,344.5969 221.2969,344.4563 221.4844,344.2375 C221.6094,344.0656 221.6563,343.8938 221.6563,343.4563 L221.6563,342.0969 C221.6563,341.675 221.6406,341.5344 221.5156,341.3625 C221.3438,341.1125 221.0625,340.9563 220.7344,340.9563 C220.4219,340.9563 220.2188,341.0656 220,341.3313 C218.8281,340.8313 218.3906,340.7219 217.4375,340.7219 C214.7656,340.7219 212.75,342.7375 212.75,345.3625 L212.75,346.4563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="47" x="238.25" y="349.906">Visitor1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="124.5" x2="366.5" y1="361.3" y2="361.3"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L18" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L18" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="129.5" y="370.2"/>
<ellipse cx="134.5" cy="375.2" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L18" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L18" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218" x="143.5" y="378.3059">visit_A(const A &amp; item) const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L19" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L19" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="129.5" y="386.9999"/>
<ellipse cx="134.5" cy="391.9999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L19" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L19" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218" x="143.5" y="395.1059">visit_B(const B &amp; item) const : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="124.5" x2="366.5" y1="402.8999" y2="402.8999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L11" target="_top" title="~Visitor" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L11" xlink:show="new" xlink:title="~Visitor" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="204" x="388" y="196.2104">~Visitor() constexpr = default : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L22" target="_top" title="Visitor2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L22" xlink:show="new" xlink:title="Visitor2" xlink:type="simple">
<g id="elem_C_0001710373315476287130">
<rect codeLine="16" fill="#F1F1F1" height="81.5999" id="C_0001710373315476287130" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="244" x="402.5" y="329.3"/>
<ellipse cx="496.75" cy="345.3" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M491.75,346.4563 C491.75,348.9563 493.8906,350.7688 496.8125,350.7688 C498.0469,350.7688 499.2188,350.4719 499.9688,349.9563 C500.5781,349.5344 500.9063,349.1125 500.9063,348.7063 C500.9063,348.2375 500.4844,347.8313 499.9844,347.8313 C499.75,347.8313 499.5313,347.9094 499.3281,348.1125 C498.8906,348.55 498.8906,348.55 498.7188,348.6438 C498.2656,348.8781 497.625,349.0188 496.8594,349.0188 C494.8594,349.0188 493.5781,348.0031 493.5781,346.425 L493.5781,345.3781 C493.5781,343.675 494.7969,342.4719 496.5,342.4719 C497.0781,342.4719 497.6563,342.6125 498.125,342.8625 C498.5938,343.1281 498.7656,343.3156 498.8281,343.675 C498.9531,344.3469 499.2031,344.5969 499.7344,344.5969 C500.0156,344.5969 500.2969,344.4563 500.4844,344.2375 C500.6094,344.0656 500.6563,343.8938 500.6563,343.4563 L500.6563,342.0969 C500.6563,341.675 500.6406,341.5344 500.5156,341.3625 C500.3438,341.1125 500.0625,340.9563 499.7344,340.9563 C499.4219,340.9563 499.2188,341.0656 499,341.3313 C497.8281,340.8313 497.3906,340.7219 496.4375,340.7219 C493.7656,340.7219 491.75,342.7375 491.75,345.3625 L491.75,346.4563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="47" x="517.25" y="349.906">Visitor2</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="403.5" x2="645.5" y1="361.3" y2="361.3"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L24" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L24" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="408.5" y="370.2"/>
<ellipse cx="413.5" cy="375.2" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L24" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L24" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218" x="422.5" y="378.3059">visit_A(const A &amp; item) const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L25" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L25" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="408.5" y="386.9999"/>
<ellipse cx="413.5" cy="391.9999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L25" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L25" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218" x="422.5" y="395.1059">visit_B(const B &amp; item) const : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="403.5" x2="645.5" y1="402.8999" y2="402.8999"/>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="369" x2="616" y1="202.8047" y2="202.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L12" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L12" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="374" y="208.8047"/>
<ellipse cx="379" cy="213.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L28" target="_top" title="Visitor3" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L28" xlink:show="new" xlink:title="Visitor3" xlink:type="simple">
<g id="elem_C_0001399026228179178025">
<rect codeLine="22" fill="#F1F1F1" height="81.5999" id="C_0001399026228179178025" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="244" x="681.5" y="329.3"/>
<ellipse cx="775.75" cy="345.3" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M770.75,346.4563 C770.75,348.9563 772.8906,350.7688 775.8125,350.7688 C777.0469,350.7688 778.2188,350.4719 778.9688,349.9563 C779.5781,349.5344 779.9063,349.1125 779.9063,348.7063 C779.9063,348.2375 779.4844,347.8313 778.9844,347.8313 C778.75,347.8313 778.5313,347.9094 778.3281,348.1125 C777.8906,348.55 777.8906,348.55 777.7188,348.6438 C777.2656,348.8781 776.625,349.0188 775.8594,349.0188 C773.8594,349.0188 772.5781,348.0031 772.5781,346.425 L772.5781,345.3781 C772.5781,343.675 773.7969,342.4719 775.5,342.4719 C776.0781,342.4719 776.6563,342.6125 777.125,342.8625 C777.5938,343.1281 777.7656,343.3156 777.8281,343.675 C777.9531,344.3469 778.2031,344.5969 778.7344,344.5969 C779.0156,344.5969 779.2969,344.4563 779.4844,344.2375 C779.6094,344.0656 779.6563,343.8938 779.6563,343.4563 L779.6563,342.0969 C779.6563,341.675 779.6406,341.5344 779.5156,341.3625 C779.3438,341.1125 779.0625,340.9563 778.7344,340.9563 C778.4219,340.9563 778.2188,341.0656 778,341.3313 C776.8281,340.8313 776.3906,340.7219 775.4375,340.7219 C772.7656,340.7219 770.75,342.7375 770.75,345.3625 L770.75,346.4563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="47" x="796.25" y="349.906">Visitor3</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="682.5" x2="924.5" y1="361.3" y2="361.3"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L30" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L30" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="687.5" y="370.2"/>
<ellipse cx="692.5" cy="375.2" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L30" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L30" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218" x="701.5" y="378.3059">visit_A(const A &amp; item) const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L31" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L31" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="687.5" y="386.9999"/>
<ellipse cx="692.5" cy="391.9999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L31" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L31" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218" x="701.5" y="395.1059">visit_B(const B &amp; item) const : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="682.5" x2="924.5" y1="402.8999" y2="402.8999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L12" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L12" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="223" x="388" y="217.0151">visit_A(const A &amp; item) const = 0 : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L34" target="_top" title="Item" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L34" xlink:show="new" xlink:title="Item" xlink:type="simple">
<g id="elem_C_0001491568826758947722">
<rect codeLine="28" fill="#F1F1F1" height="91.6998" id="C_0001491568826758947722" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="309" x="370" y="7"/>
<ellipse cx="506.25" cy="23" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M507.7813,24.9375 L508.1094,25.7344 L507.8281,25.7344 C507.375,25.7344 507.25,25.7656 507.0781,25.875 C506.7969,26.0156 506.625,26.3125 506.625,26.6094 C506.625,26.9063 506.7656,27.1563 507,27.3281 C507.1719,27.4531 507.4063,27.5 507.8281,27.5 L510.1875,27.5 C510.5469,27.5 510.7969,27.4688 510.9375,27.375 C511.2031,27.2344 511.375,26.9219 511.375,26.6094 C511.375,26.3438 511.2344,26.0781 511,25.9063 C510.8125,25.7813 510.6563,25.75 510.2031,25.7344 L506.8125,17.9063 L503.0938,17.9063 C502.6406,17.9063 502.5,17.9219 502.3281,18.0313 C502.0625,18.2031 501.8906,18.4844 501.8906,18.7813 C501.8906,19.0625 502.0313,19.3281 502.2813,19.5 C502.4531,19.625 502.6406,19.6563 503.0938,19.6563 L504.0625,19.6563 L501.4844,25.7344 C500.7344,25.7344 500.3281,26.0313 500.3281,26.6094 C500.3281,27.2188 500.7188,27.5 501.5156,27.5 L503.7813,27.5 C504.1406,27.5 504.3906,27.4688 504.5313,27.375 C504.7969,27.2188 504.9688,26.9219 504.9688,26.6094 C504.9688,26.3438 504.8281,26.0781 504.5938,25.9063 C504.4063,25.7656 504.25,25.7344 503.7813,25.7344 L503.4844,25.7344 L503.8281,24.9375 L507.7813,24.9375 Z M507.0156,23.1875 L504.5625,23.1875 L505.7969,20.3125 L507.0156,23.1875 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="28" x="526.75" y="28.95">Item</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="371" x2="678" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L36" target="_top" title="~Item" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L36" xlink:show="new" xlink:title="~Item" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="376" y="47.9"/>
<ellipse cx="381" cy="52.9" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L36" target="_top" title="~Item" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L36" xlink:show="new" xlink:title="~Item" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="209" x="390" y="56.0059">~Item() constexpr = default : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="371" x2="678" y1="63.7999" y2="63.7999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L37" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L37" xlink:show="new" xlink:title="accept" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="376" y="73.7499"/>
<ellipse cx="381" cy="78.7499" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L37" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L37" xlink:show="new" xlink:title="accept" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="283" x="390" y="83.1999">accept(const Visitor &amp; visitor) const = 0 : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="371" x2="678" y1="90.6998" y2="90.6998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L13" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L13" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="374" y="221.6094"/>
<ellipse cx="379" cy="226.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L40" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L40" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0001494142745564026823">
<rect codeLine="35" fill="#F1F1F1" height="64.7999" id="C_0001494142745564026823" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="285" x="7" y="470.9"/>
<ellipse cx="140.75" cy="486.9" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M135.75,488.0563 C135.75,490.5563 137.8906,492.3688 140.8125,492.3688 C142.0469,492.3688 143.2188,492.0719 143.9688,491.5563 C144.5781,491.1344 144.9063,490.7125 144.9063,490.3063 C144.9063,489.8375 144.4844,489.4313 143.9844,489.4313 C143.75,489.4313 143.5313,489.5094 143.3281,489.7125 C142.8906,490.15 142.8906,490.15 142.7188,490.2438 C142.2656,490.4781 141.625,490.6188 140.8594,490.6188 C138.8594,490.6188 137.5781,489.6031 137.5781,488.025 L137.5781,486.9781 C137.5781,485.275 138.7969,484.0719 140.5,484.0719 C141.0781,484.0719 141.6563,484.2125 142.125,484.4625 C142.5938,484.7281 142.7656,484.9156 142.8281,485.275 C142.9531,485.9469 143.2031,486.1969 143.7344,486.1969 C144.0156,486.1969 144.2969,486.0563 144.4844,485.8375 C144.6094,485.6656 144.6563,485.4938 144.6563,485.0563 L144.6563,483.6969 C144.6563,483.275 144.6406,483.1344 144.5156,482.9625 C144.3438,482.7125 144.0625,482.5563 143.7344,482.5563 C143.4219,482.5563 143.2188,482.6656 143,482.9313 C141.8281,482.4313 141.3906,482.3219 140.4375,482.3219 C137.7656,482.3219 135.75,484.3375 135.75,486.9625 L135.75,488.0563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="161.25" y="491.506">A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="291" y1="502.9" y2="502.9"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L42" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L42" xlink:show="new" xlink:title="accept" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="511.8"/>
<ellipse cx="18" cy="516.8" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L42" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L42" xlink:show="new" xlink:title="accept" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="259" x="27" y="519.9059">accept(const Visitor &amp; visitor) const : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="291" y1="527.6999" y2="527.6999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L13" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L13" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="223" x="388" y="229.8198">visit_B(const B &amp; item) const = 0 : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L45" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L45" xlink:show="new" xlink:title="B" xlink:type="simple">
<g id="elem_C_0001452948650450999568">
<rect codeLine="40" fill="#F1F1F1" height="64.7999" id="C_0001452948650450999568" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="285" x="757" y="470.9"/>
<ellipse cx="890.75" cy="486.9" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M885.75,488.0563 C885.75,490.5563 887.8906,492.3688 890.8125,492.3688 C892.0469,492.3688 893.2188,492.0719 893.9688,491.5563 C894.5781,491.1344 894.9063,490.7125 894.9063,490.3063 C894.9063,489.8375 894.4844,489.4313 893.9844,489.4313 C893.75,489.4313 893.5313,489.5094 893.3281,489.7125 C892.8906,490.15 892.8906,490.15 892.7188,490.2438 C892.2656,490.4781 891.625,490.6188 890.8594,490.6188 C888.8594,490.6188 887.5781,489.6031 887.5781,488.025 L887.5781,486.9781 C887.5781,485.275 888.7969,484.0719 890.5,484.0719 C891.0781,484.0719 891.6563,484.2125 892.125,484.4625 C892.5938,484.7281 892.7656,484.9156 892.8281,485.275 C892.9531,485.9469 893.2031,486.1969 893.7344,486.1969 C894.0156,486.1969 894.2969,486.0563 894.4844,485.8375 C894.6094,485.6656 894.6563,485.4938 894.6563,485.0563 L894.6563,483.6969 C894.6563,483.275 894.6406,483.1344 894.5156,482.9625 C894.3438,482.7125 894.0625,482.5563 893.7344,482.5563 C893.4219,482.5563 893.2188,482.6656 893,482.9313 C891.8281,482.4313 891.3906,482.3219 890.4375,482.3219 C887.7656,482.3219 885.75,484.3375 885.75,486.9625 L885.75,488.0563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="9" x="911.25" y="491.506">B</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="758" x2="1041" y1="502.9" y2="502.9"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L47" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L47" xlink:show="new" xlink:title="accept" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="763" y="511.8"/>
<ellipse cx="768" cy="516.8" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L47" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L47" xlink:show="new" xlink:title="accept" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="259" x="777" y="519.9059">accept(const Visitor &amp; visitor) const : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="758" x2="1041" y1="527.6999" y2="527.6999"/>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="369" x2="616" y1="236.4141" y2="236.4141"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L16" target="_top" title="Visitor1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L16" xlink:show="new" xlink:title="Visitor1" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1o05ebipjy1c3)" height="73.6094" id="C_0008226953755203215571" style="stroke: #A80036; stroke-width: 1.5;" width="227" x="117" y="304"/>
<ellipse cx="202.75" cy="320" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M205.7188,325.6406 Q205.1406,325.9375 204.5,326.0781 Q203.8594,326.2344 203.1563,326.2344 Q200.6563,326.2344 199.3281,324.5938 Q198.0156,322.9375 198.0156,319.8125 Q198.0156,316.6875 199.3281,315.0313 Q200.6563,313.375 203.1563,313.375 Q203.8594,313.375 204.5,313.5313 Q205.1563,313.6875 205.7188,313.9844 L205.7188,316.7031 Q205.0938,316.125 204.5,315.8594 Q203.9063,315.5781 203.2813,315.5781 Q201.9375,315.5781 201.25,316.6563 Q200.5625,317.7188 200.5625,319.8125 Q200.5625,321.9063 201.25,322.9844 Q201.9375,324.0469 203.2813,324.0469 Q203.9063,324.0469 204.5,323.7813 Q205.0938,323.5 205.7188,322.9219 L205.7188,325.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="223.25" y="324.1543">Visitor1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="118" x2="343" y1="336" y2="336"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L18" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L18" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="123" y="342"/>
<ellipse cx="128" cy="347" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L18" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L18" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="199" x="137" y="350.2104">visit_A(const A &amp; item) const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L19" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L19" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="123" y="354.8047"/>
<ellipse cx="128" cy="359.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L19" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L19" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="201" x="137" y="363.0151">visit_B(const B &amp; item) const : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="118" x2="343" y1="369.6094" y2="369.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L22" target="_top" title="Visitor2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L22" xlink:show="new" xlink:title="Visitor2" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1o05ebipjy1c3)" height="73.6094" id="C_0013682986523810297046" style="stroke: #A80036; stroke-width: 1.5;" width="227" x="379" y="304"/>
<ellipse cx="464.75" cy="320" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M467.7188,325.6406 Q467.1406,325.9375 466.5,326.0781 Q465.8594,326.2344 465.1563,326.2344 Q462.6563,326.2344 461.3281,324.5938 Q460.0156,322.9375 460.0156,319.8125 Q460.0156,316.6875 461.3281,315.0313 Q462.6563,313.375 465.1563,313.375 Q465.8594,313.375 466.5,313.5313 Q467.1563,313.6875 467.7188,313.9844 L467.7188,316.7031 Q467.0938,316.125 466.5,315.8594 Q465.9063,315.5781 465.2813,315.5781 Q463.9375,315.5781 463.25,316.6563 Q462.5625,317.7188 462.5625,319.8125 Q462.5625,321.9063 463.25,322.9844 Q463.9375,324.0469 465.2813,324.0469 Q465.9063,324.0469 466.5,323.7813 Q467.0938,323.5 467.7188,322.9219 L467.7188,325.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="485.25" y="324.1543">Visitor2</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="380" x2="605" y1="336" y2="336"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L24" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L24" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="385" y="342"/>
<ellipse cx="390" cy="347" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L24" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L24" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="199" x="399" y="350.2104">visit_A(const A &amp; item) const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L25" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L25" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="385" y="354.8047"/>
<ellipse cx="390" cy="359.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L25" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L25" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="201" x="399" y="363.0151">visit_B(const B &amp; item) const : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="380" x2="605" y1="369.6094" y2="369.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L28" target="_top" title="Visitor3" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L28" xlink:show="new" xlink:title="Visitor3" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1o05ebipjy1c3)" height="73.6094" id="C_0011192209825433424201" style="stroke: #A80036; stroke-width: 1.5;" width="227" x="641" y="304"/>
<ellipse cx="726.75" cy="320" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M729.7188,325.6406 Q729.1406,325.9375 728.5,326.0781 Q727.8594,326.2344 727.1563,326.2344 Q724.6563,326.2344 723.3281,324.5938 Q722.0156,322.9375 722.0156,319.8125 Q722.0156,316.6875 723.3281,315.0313 Q724.6563,313.375 727.1563,313.375 Q727.8594,313.375 728.5,313.5313 Q729.1563,313.6875 729.7188,313.9844 L729.7188,316.7031 Q729.0938,316.125 728.5,315.8594 Q727.9063,315.5781 727.2813,315.5781 Q725.9375,315.5781 725.25,316.6563 Q724.5625,317.7188 724.5625,319.8125 Q724.5625,321.9063 725.25,322.9844 Q725.9375,324.0469 727.2813,324.0469 Q727.9063,324.0469 728.5,323.7813 Q729.0938,323.5 729.7188,322.9219 L729.7188,325.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="747.25" y="324.1543">Visitor3</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="642" x2="867" y1="336" y2="336"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L30" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L30" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="647" y="342"/>
<ellipse cx="652" cy="347" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L30" target="_top" title="visit_A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L30" xlink:show="new" xlink:title="visit_A" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="199" x="661" y="350.2104">visit_A(const A &amp; item) const : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L31" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L31" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="647" y="354.8047"/>
<ellipse cx="652" cy="359.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L31" target="_top" title="visit_B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L31" xlink:show="new" xlink:title="visit_B" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="201" x="661" y="363.0151">visit_B(const B &amp; item) const : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="642" x2="867" y1="369.6094" y2="369.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L34" target="_top" title="Item" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L34" xlink:show="new" xlink:title="Item" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1o05ebipjy1c3)" height="81.6094" id="C_0011932550614071581777" style="stroke: #A80036; stroke-width: 1.5;" width="287" x="349" y="8"/>
<ellipse cx="474.25" cy="24" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M474.3594,19.3438 L473.2031,24.4219 L475.5313,24.4219 L474.3594,19.3438 Z M472.875,17.1094 L475.8594,17.1094 L479.2188,29.5 L476.7656,29.5 L476,26.4375 L472.7188,26.4375 L471.9688,29.5 L469.5313,29.5 L472.875,17.1094 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="28" x="494.75" y="28.1543">Item</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="350" x2="635" y1="40" y2="40"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L36" target="_top" title="~Item" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L36" xlink:show="new" xlink:title="~Item" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="355" y="46"/>
<ellipse cx="360" cy="51" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L36" target="_top" title="~Item" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L36" xlink:show="new" xlink:title="~Item" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="193" x="369" y="54.2104">~Item() constexpr = default : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="350" x2="635" y1="60.8047" y2="60.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L37" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L37" xlink:show="new" xlink:title="accept" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="355" y="66.8047"/>
<ellipse cx="360" cy="71.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L37" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L37" xlink:show="new" xlink:title="accept" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="261" x="369" y="75.0151">accept(const Visitor &amp; visitor) const = 0 : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="350" x2="635" y1="81.6094" y2="81.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L40" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L40" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1o05ebipjy1c3)" height="60.8047" id="C_0011953141964512214591" style="stroke: #A80036; stroke-width: 1.5;" width="265" x="6" y="438"/>
<ellipse cx="130.25" cy="454" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M133.2188,459.6406 Q132.6406,459.9375 132,460.0781 Q131.3594,460.2344 130.6563,460.2344 Q128.1563,460.2344 126.8281,458.5938 Q125.5156,456.9375 125.5156,453.8125 Q125.5156,450.6875 126.8281,449.0313 Q128.1563,447.375 130.6563,447.375 Q131.3594,447.375 132,447.5313 Q132.6563,447.6875 133.2188,447.9844 L133.2188,450.7031 Q132.5938,450.125 132,449.8594 Q131.4063,449.5781 130.7813,449.5781 Q129.4375,449.5781 128.75,450.6563 Q128.0625,451.7188 128.0625,453.8125 Q128.0625,455.9063 128.75,456.9844 Q129.4375,458.0469 130.7813,458.0469 Q131.4063,458.0469 132,457.7813 Q132.5938,457.5 133.2188,456.9219 L133.2188,459.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="150.75" y="458.1543">A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="270" y1="470" y2="470"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L42" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L42" xlink:show="new" xlink:title="accept" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="476"/>
<ellipse cx="17" cy="481" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L42" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L42" xlink:show="new" xlink:title="accept" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="239" x="26" y="484.2104">accept(const Visitor &amp; visitor) const : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="270" y1="490.8047" y2="490.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L45" target="_top" title="B" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L45" xlink:show="new" xlink:title="B" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1o05ebipjy1c3)" height="60.8047" id="C_0011623589203607996547" style="stroke: #A80036; stroke-width: 1.5;" width="265" x="714" y="438"/>
<ellipse cx="838.25" cy="454" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M841.2188,459.6406 Q840.6406,459.9375 840,460.0781 Q839.3594,460.2344 838.6563,460.2344 Q836.1563,460.2344 834.8281,458.5938 Q833.5156,456.9375 833.5156,453.8125 Q833.5156,450.6875 834.8281,449.0313 Q836.1563,447.375 838.6563,447.375 Q839.3594,447.375 840,447.5313 Q840.6563,447.6875 841.2188,447.9844 L841.2188,450.7031 Q840.5938,450.125 840,449.8594 Q839.4063,449.5781 838.7813,449.5781 Q837.4375,449.5781 836.75,450.6563 Q836.0625,451.7188 836.0625,453.8125 Q836.0625,455.9063 836.75,456.9844 Q837.4375,458.0469 838.7813,458.0469 Q839.4063,458.0469 840,457.7813 Q840.5938,457.5 841.2188,456.9219 L841.2188,459.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="858.75" y="458.1543">B</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="715" x2="978" y1="470" y2="470"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L47" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L47" xlink:show="new" xlink:title="accept" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="720" y="476"/>
<ellipse cx="725" cy="481" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L47" target="_top" title="accept" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L47" xlink:show="new" xlink:title="accept" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="239" x="734" y="484.2104">accept(const Visitor &amp; visitor) const : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="715" x2="978" y1="490.8047" y2="490.8047"/>
<path d="M367.78,212.91 C259.99,229.31 116.66,259.4 82.5,304 C53.51,341.84 77.4,397.97 102.9,433.63 " fill="none" id="C_0013349368885381955166-&gt;C_0011953141964512214591" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="106.02,437.88,103.9189,428.2579,103.0613,433.8493,97.4699,432.9918,106.02,437.88" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M130.77,437.88 C114.43,402.56 87.33,343.38 117.5,304 C148.16,263.97 266.75,235.63 362.59,218.39 " fill="none" id="C_0011953141964512214591-&gt;C_0013349368885381955166" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="367.72,217.48,358.161,215.1081,362.7964,218.3506,359.5539,222.9859,367.72,217.48" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M617.1,217.3 C714.14,234.43 837.18,263.12 868.5,304 C897.37,341.69 873.79,397.51 857.14,433.19 " fill="none" id="C_0013349368885381955166-&gt;C_0011623589203607996547" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="854.94,437.88,862.3718,431.4172,857.0552,433.3494,855.1229,428.0328,854.94,437.88" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M879.69,437.88 C906.57,402.56 933.67,343.38 903.5,304 C869.79,259.99 729.8,230.11 622.31,213.57 " fill="none" id="C_0011623589203607996547-&gt;C_0013349368885381955166" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="617.22,212.8,625.5106,218.1166,622.1624,213.5571,626.7219,210.2088,617.22,212.8" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M203.89,378.3 C191.17,395.65 176.03,416.31 163.52,433.37 " fill="none" id="C_0008226953755203215571-&gt;C_0011953141964512214591" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="160.4,437.62,168.9501,432.7318,163.3587,433.5893,162.5011,427.9979,160.4,437.62" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M344.31,373.91 C350.11,375.34 355.87,376.71 361.5,378 C477.83,404.67 611.25,428.83 708.68,445.3 " fill="none" id="C_0008226953755203215571-&gt;C_0011623589203607996547" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="713.87,446.18,705.6577,440.7433,708.9392,445.3511,704.3314,448.6325,713.87,446.18" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M389.49,253.83 C358.5,270.63 325.3,288.62 297.31,303.79 " fill="none" id="C_0013349368885381955166&lt;-C_0008226953755203215571" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="386.52,247.48,407.44,244.1,393.19,259.79,386.52,247.48" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M390.58,378.13 C338.74,396.51 276.35,418.63 226.61,436.26 " fill="none" id="C_0013682986523810297046-&gt;C_0011953141964512214591" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="221.83,437.96,231.65,438.7132,226.541,436.2847,228.9695,431.1756,221.83,437.96" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M594.42,378.13 C646.26,396.51 708.65,418.63 758.39,436.26 " fill="none" id="C_0013682986523810297046-&gt;C_0011623589203607996547" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="763.17,437.96,756.0305,431.1756,758.459,436.2847,753.35,438.7132,763.17,437.96" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M492.5,264.22 C492.5,277.76 492.5,291.54 492.5,303.56 " fill="none" id="C_0013349368885381955166&lt;-C_0013682986523810297046" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="485.5,264.1,492.5,244.1,499.5,264.1,485.5,264.1" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M640.69,373.91 C634.89,375.34 629.13,376.71 623.5,378 C507.17,404.67 373.75,428.83 276.32,445.3 " fill="none" id="C_0011192209825433424201-&gt;C_0011953141964512214591" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="271.13,446.18,280.6686,448.6325,276.0608,445.3511,279.3423,440.7433,271.13,446.18" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M781.11,378.3 C793.83,395.65 808.97,416.31 821.48,433.37 " fill="none" id="C_0011192209825433424201-&gt;C_0011623589203607996547" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="824.6,437.62,822.4989,427.9979,821.6413,433.5893,816.0499,432.7318,824.6,437.62" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M595.51,253.83 C626.5,270.63 659.7,288.62 687.69,303.79 " fill="none" id="C_0013349368885381955166&lt;-C_0011192209825433424201" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="591.81,259.79,577.56,244.1,598.48,247.48,591.81,259.79" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M492.5,90.28 C492.5,107.03 492.5,126.68 492.5,144.47 " fill="none" id="C_0011932550614071581777-&gt;C_0013349368885381955166" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="492.5,149.92,496.5,140.92,492.5,144.92,488.5,140.92,492.5,149.92" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M345.55,97.58 C250.88,136.76 135.26,202.59 78.5,304 C53.84,348.06 86.89,404.22 112.84,437.93 " fill="none" id="C_0011932550614071581777&lt;-C_0011953141964512214591" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="343.01,91.06,364.18,90.1,348.23,104.05,343.01,91.06" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M654.92,97.14 C754.72,135.45 874.58,200.46 934.5,304 C950.97,332.47 946.96,347.56 934.5,378 C924.84,401.6 905.63,422.32 887.62,437.86 " fill="none" id="C_0011932550614071581777&lt;-C_0011623589203607996547" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="652.2,103.6,635.89,90.07,657.08,90.48,652.2,103.6" style="stroke: #A80036; stroke-width: 1.0;"/>
<g id="link_C_0001668671110672744395_C_0001494142745564026823">
<path codeLine="44" d="M390.2,231.61 C275.79,249.52 124.66,281.96 88.5,329.3 C56.62,371.05 82.5916,428.5867 111.1916,465.9267 " fill="none" id="C_0001668671110672744395-to-C_0001494142745564026823" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="114.84,470.69,112.543,461.1128,111.7997,466.7206,106.1919,465.9773,114.84,470.69" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001494142745564026823_C_0001668671110672744395">
<path codeLine="56" d="M139.68,470.69 C121.24,433.35 91.62,371.05 123.5,329.3 C156.71,285.82 281.0152,255.9646 384.2952,237.3446 " fill="none" id="C_0001494142745564026823-to-C_0001668671110672744395" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="390.2,236.28,380.6331,233.9403,385.2793,237.1671,382.0525,241.8134,390.2,236.28" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001668671110672744395_C_0001452948650450999568">
<path codeLine="45" d="M658.82,236.14 C762.41,254.74 893.21,285.71 926.5,329.3 C958.38,371.05 931.4502,427.9869 912.7202,465.3269 " fill="none" id="C_0001668671110672744395-to-C_0001452948650450999568" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="910.03,470.69,917.6407,464.4388,912.2718,466.2207,910.4899,460.8519,910.03,470.69" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001452948650450999568_C_0001668671110672744395">
<path codeLine="58" d="M934.87,470.69 C963.76,433.35 993.38,371.05 961.5,329.3 C925.26,281.85 779.4185,250.2833 664.6785,232.4133 " fill="none" id="C_0001452948650450999568-to-C_0001668671110672744395" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="658.75,231.49,667.0272,236.8273,663.6904,232.2594,668.2583,228.9226,658.75,231.49" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001028369219400401946_C_0001494142745564026823">
<path codeLine="46" d="M216.18,411.18 C202.17,430.32 189.1917,448.0468 176.1017,465.9468 " fill="none" id="C_0001028369219400401946-to-C_0001494142745564026823" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="172.56,470.79,181.1014,465.8864,175.5114,466.754,174.6438,461.1641,172.56,470.79" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001028369219400401946_C_0001452948650450999568">
<path codeLine="47" d="M367.73,406.86 C373.39,408.27 379,409.63 384.5,410.9 C509.25,439.75 646.884,463.6109 750.684,480.0609 " fill="none" id="C_0001028369219400401946-to-C_0001452948650450999568" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="756.61,481,748.347,475.6406,751.6716,480.2174,747.0948,483.542,756.61,481" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001668671110672744395_C_0001028369219400401946">
<path codeLine="48" d="M409.5948,278.4647 C374.3548,297.9347 351.11,310.77 318.46,328.8 " fill="none" id="C_0001668671110672744395-backto-C_0001028369219400401946" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="425.35,269.76,406.6932,273.213,412.4963,283.7165,425.35,269.76" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001710373315476287130_C_0001494142745564026823">
<path codeLine="49" d="M409.44,411.36 C355.18,430.34 297.0335,450.6889 246.2035,468.4689 " fill="none" id="C_0001710373315476287130-to-C_0001494142745564026823" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="240.54,470.45,250.356,471.2541,245.2596,468.7991,247.7146,463.7027,240.54,470.45" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001710373315476287130_C_0001452948650450999568">
<path codeLine="50" d="M639.56,411.36 C693.82,430.34 751.9665,450.6889 802.7965,468.4689 " fill="none" id="C_0001710373315476287130-to-C_0001452948650450999568" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="808.46,470.45,801.2854,463.7027,803.7404,468.7991,798.644,471.2541,808.46,470.45" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001668671110672744395_C_0001710373315476287130">
<path codeLine="51" d="M524.5,287.76 C524.5,307.32 524.5,310.96 524.5,329.04 " fill="none" id="C_0001668671110672744395-backto-C_0001710373315476287130" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="524.5,269.76,518.5,287.76,530.5,287.76,524.5,269.76" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001399026228179178025_C_0001494142745564026823">
<path codeLine="52" d="M681.27,406.86 C675.61,408.27 670,409.63 664.5,410.9 C539.75,439.75 402.116,463.6109 298.316,480.0609 " fill="none" id="C_0001399026228179178025-to-C_0001494142745564026823" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="292.39,481,301.9052,483.542,297.3284,480.2174,300.653,475.6406,292.39,481" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001399026228179178025_C_0001452948650450999568">
<path codeLine="53" d="M832.82,411.18 C846.83,430.32 859.8083,448.0468 872.8983,465.9468 " fill="none" id="C_0001399026228179178025-to-C_0001452948650450999568" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="876.44,470.79,874.3562,461.1641,873.4886,466.754,867.8986,465.8864,876.44,470.79" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001668671110672744395_C_0001399026228179178025">
<path codeLine="54" d="M639.4052,278.4647 C674.6452,297.9347 697.89,310.77 730.54,328.8 " fill="none" id="C_0001668671110672744395-backto-C_0001399026228179178025" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="623.65,269.76,636.5037,283.7165,642.3068,273.213,623.65,269.76" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001491568826758947722_C_0001668671110672744395">
<path codeLine="55" d="M524.5,99.03 C524.5,117.5 524.5,133.04 524.5,152.38 " fill="none" id="C_0001491568826758947722-to-C_0001668671110672744395" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="524.5,158.38,528.5,149.38,524.5,153.38,520.5,149.38,524.5,158.38" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001491568826758947722_C_0001494142745564026823">
<path codeLine="57" d="M368.6948,105.9231 C265.2448,147.7931 148.13,214.39 84.5,329.3 C66.93,361.03 73.47,376.35 84.5,410.9 C91.55,432.97 106.09,454.27 119.63,470.75 " fill="none" id="C_0001491568826758947722-backto-C_0001494142745564026823" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="385.38,99.17,366.4438,100.3614,370.9458,111.4848,385.38,99.17" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001491568826758947722_C_0001452948650450999568">
<path codeLine="59" d="M695.5763,105.5104 C804.4863,146.5004 925.64,212.37 992.5,329.3 C1010.5,360.78 1006.52,377.45 992.5,410.9 C982.61,434.49 963.33,455.06 944.88,470.69 " fill="none" id="C_0001491568826758947722-backto-C_0001452948650450999568" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="678.73,99.17,693.4629,111.1258,697.6898,99.8949,678.73,99.17" style="stroke:#181818;stroke-width:1.0;"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -1,71 +1,76 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="-35 0 1246.9453125 614" style="max-width: 1246.95px; background-color: white;" width="1246.9453125" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="-35 0 1278.0625 614" style="max-width: 1278.06px; background-color: white;" width="1278.0625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M532.3203125,272.99368043449107L439.1002604166667,285.99473369540925C345.8802083333333,298.9957869563274,159.44010416666666,324.9978934781637,66.22005208333333,350.5822800724152C-27,376.1666666666667,-27,401.3333333333333,-27,426.5C-27,451.6666666666667,-27,476.8333333333333,-13.125746931524546,493.5833333333333C0.7485061369509083,510.3333333333333,28.497012273901817,518.6666666666666,42.37126534237727,522.8333333333334L56.245518410852725,527"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M811.8671875,292.48736086898214L846.8294270833334,302.23946739081845C881.7916666666666,311.99157391265476,951.7161458333334,331.4957869563274,986.6783854166666,353.83122681149706C1021.640625,376.1666666666667,1021.640625,401.3333333333333,1021.640625,426.5C1021.640625,451.6666666666667,1021.640625,476.8333333333333,1022.9326146640827,493.5833333333333C1024.2246043281655,510.3333333333333,1026.8085836563307,518.6666666666666,1028.1005733204136,522.8333333333334L1029.3925629844962,527"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M147.7734375,477L147.7734375,481.1666666666667C147.7734375,485.3333333333333,147.7734375,493.6666666666667,150.35741682816538,502C152.94139615633074,510.3333333333333,158.1093548126615,518.6666666666666,160.69333414082686,522.8333333333334L163.27731346899225,527"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M287.546875,438.30588646593543L413.2291666666667,448.9215720549462C538.9114583333334,459.53725764395693,790.2760416666666,480.76862882197844,915.9583333333334,495.55098107765593C1041.640625,510.3333333333333,1041.640625,518.6666666666666,1041.640625,522.8333333333334L1041.640625,527"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M532.3203125,279.49157391265476L468.2291666666667,291.4096449272123C404.1380208333333,303.32771594176984,275.9557291666667,327.1638579708849,211.86458333333334,343.2485956521091C147.7734375,359.3333333333333,147.7734375,367.6666666666667,147.7734375,371.8333333333333L147.7734375,376"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M357.546875,465.2745755170583L335.482421875,471.39547959754856C313.41796875,477.5163836780389,269.2890625,489.75819183901945,244.8094466650517,500.04576258617635C220.32983083010336,510.3333333333333,215.49950541020675,518.6666666666666,213.08434270025842,522.8333333333334L210.66917999031008,527"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id7" d="M637.09375,445.2001855107776L707.8515625,454.6668212589813C778.609375,464.1334570071851,920.125,483.0667285035925,989.5908228359173,496.7000309184629C1059.0566456718345,510.3333333333333,1056.4726663436693,518.6666666666666,1055.1806766795864,522.8333333333334L1053.8886870155038,527"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M542.1340144230769,326L534.6650641025641,330.1666666666667C527.1961137820513,334.3333333333333,512.2582131410256,342.6666666666667,504.7892628205129,351C497.3203125,359.3333333333333,497.3203125,367.6666666666667,497.3203125,371.8333333333333L497.3203125,376"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id9" d="M707.09375,444.0382602881126L630.1048177083334,453.6985502400939C553.1158854166666,463.3588401920751,399.1380208333333,482.6794200960376,318.4419361676357,496.5063767146855C237.74585150193798,510.3333333333333,230.33154675387595,518.6666666666666,226.62439437984494,522.8333333333334L222.91724200581396,527"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id10" d="M986.640625,471.4492695750557L1002.4739583333334,476.5410579792131C1018.3072916666666,481.63284638337046,1049.9739583333333,491.81642319168526,1063.2233123385013,501.07487826250934C1076.4726663436693,510.3333333333333,1071.3047076873384,518.6666666666666,1068.720728359173,522.8333333333334L1066.1367490310076,527"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M802.0534855769231,326L809.5224358974359,330.1666666666667C816.9913862179487,334.3333333333333,831.9292868589743,342.6666666666667,839.3982371794872,351C846.8671875,359.3333333333333,846.8671875,367.6666666666667,846.8671875,371.8333333333333L846.8671875,376"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id12" d="M672.09375,131L672.09375,135.16666666666666C672.09375,139.33333333333334,672.09375,147.66666666666666,672.09375,156C672.09375,164.33333333333334,672.09375,172.66666666666666,672.09375,176.83333333333334L672.09375,181"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id13" d="M350.078125,544.884857967835L403.7473958333333,537.7373816398625C457.4166666666667,530.58990531189,564.7552083333334,516.294952655945,618.4244791666666,496.5641429946392C672.09375,476.8333333333333,672.09375,451.6666666666667,672.09375,426.5C672.09375,401.3333333333333,672.09375,376.1666666666667,672.09375,359.4166666666667C672.09375,342.6666666666667,672.09375,334.3333333333333,672.09375,330.1666666666667L672.09375,326"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id14" d="M509.7890625,109.66444280541774L478.58203125,117.38703567118144C447.375,125.10962853694515,384.9609375,140.55481426847257,353.75390625,164.52740713423628C322.546875,188.5,322.546875,221,322.546875,253.5C322.546875,286,322.546875,318.5,322.546875,347.3333333333333C322.546875,376.1666666666667,322.546875,401.3333333333333,322.546875,426.5C322.546875,451.6666666666667,322.546875,476.8333333333333,313.8405805878553,493.5833333333333C305.1342861757106,510.3333333333333,287.7216973514212,518.6666666666666,279.0154029392765,522.8333333333334L270.3091085271318,527"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id15" d="M1090.6328730620155,527L1095.8008317183462,522.8333333333334C1100.968790374677,518.6666666666666,1111.3047076873384,510.3333333333333,1116.4726663436693,493.5833333333333C1121.640625,476.8333333333333,1121.640625,451.6666666666667,1121.640625,426.5C1121.640625,401.3333333333333,1121.640625,376.1666666666667,1070.01171875,352.38579501349733C1018.3828125,328.6049233603281,915.125,306.20984672065623,863.49609375,295.01230840082025L811.8671875,283.8147700809843"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id16" d="M834.3984375,102.1841057073224L878.9388020833334,111.15342142276866C923.4791666666666,120.12273713821493,1012.5598958333334,138.06136856910746,1057.1002604166667,163.28068428455373C1101.640625,188.5,1101.640625,221,1101.640625,253.5C1101.640625,286,1101.640625,318.5,1101.640625,347.3333333333333C1101.640625,376.1666666666667,1101.640625,401.3333333333333,1101.640625,426.5C1101.640625,451.6666666666667,1101.640625,476.8333333333333,1097.764656007752,493.5833333333333C1093.8886870155038,510.3333333333333,1086.1367490310079,518.6666666666666,1082.2607800387598,522.8333333333334L1078.3848110465117,527"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M545.65625,273.1147558849172L450.2135416666667,286.0956299040977C354.7708333333333,299.07650392327815,163.88541666666666,325.0382519616391,68.44270833333333,350.60245931415284C-27,376.1666666666667,-27,401.3333333333333,-27,426.5C-27,451.6666666666667,-27,476.8333333333333,-13.797919228905092,493.30107075954476C-0.5958384578101814,509.7688081857562,25.808323084379637,517.5376163715124,39.01040385547454,521.4220204643906L52.212484626569456,525.3064245572687"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M834.09375,292.72951176983435L869.796875,302.4412598081953C905.5,312.15300784655625,976.90625,331.5765039232781,1012.609375,353.87158529497236C1048.3125,376.1666666666667,1048.3125,401.3333333333333,1048.3125,426.5C1048.3125,451.6666666666667,1048.3125,476.8333333333333,1049.3083233436862,492.6281969500546C1050.3041466873724,508.4230605667758,1052.2957933747448,514.8461211335517,1053.291616718431,518.0576514169396L1054.2874400621172,521.2691817003275"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M152.21875,477L152.21875,481.1666666666667C152.21875,485.3333333333333,152.21875,493.6666666666667,154.27569448873456,501.1501563214178C156.3326389774691,508.6336459761689,160.4465279549382,515.2672919523378,162.50347244367276,518.5841149404223L164.56041693240732,521.9009379285068"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M296.4375,438.38580931263857L425.0833333333333,448.9881744271988C553.7291666666666,459.59053954175903,811.0208333333334,480.79526977087954,939.6666666666666,494.56430155210643C1068.3125,508.3333333333333,1068.3125,514.6666666666666,1068.3125,517.8333333333334L1068.3125,521"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M527.945111132795,282.86479240137635L465.3240509439958,294.22066033448027C402.70299075519665,305.57652826758425,277.4608703775983,328.2882641337921,214.83981018879913,343.8107987335627C152.21875,359.3333333333333,152.21875,367.6666666666667,152.21875,371.8333333333333L152.21875,376"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M366.4375,465.55099467637996L344.0026041666667,471.62582889698325C321.5677083333333,477.70066311758666,276.6979166666667,489.85033155879336,252.2275781608848,499.23968544482767C227.75723965510292,508.629039330862,223.68635431020581,515.258078661724,221.65091163775728,518.572598327155L219.6154689653087,521.887117992586"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id7" d="M654.875,445.349472545307L727.1145833333334,454.79122712108915C799.3541666666666,464.2329816968713,943.8333333333334,483.11649084843566,1015.0770933229805,495.76977570760573C1086.3208533126276,508.4230605667758,1084.3292066252552,514.8461211335517,1083.333383281569,518.0576514169396L1082.3375599378828,521.2691817003275"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id8" d="M540.7981820976892,334.6019480131142L535.7745267480743,337.3349566775952C530.7508713984595,340.06796534207615,520.7035606992298,345.5339826710381,515.6799053496148,352.4336580021857C510.65625,359.3333333333333,510.65625,367.6666666666667,510.65625,371.8333333333333L510.65625,376"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id9" d="M724.875,444.13991899759526L646.0338541666666,453.7832658313294C567.1927083333334,463.4266126650635,409.5104166666667,482.7133063325318,327.49725195544835,495.7889189402919C245.4840872442301,508.86453154805196,239.14004948846022,515.7290630961039,235.96803061057525,519.1613288701299L232.79601173269032,522.5935946441558"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id10" d="M1013.3125,472.01698236446765L1029.1458333333333,477.0141519703897C1044.9791666666667,482.01132157631173,1076.6458333333333,492.00566078815586,1090.422222177932,500.3196533821624C1104.198611022531,508.6336459761689,1100.0847220450617,515.2672919523378,1098.0277775563272,518.5841149404223L1095.9708330675926,521.9009379285068"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id11" d="M838.9518179023108,334.6019480131142L843.9754732519258,337.3349566775952C848.9991286015405,340.06796534207615,859.0464393007702,345.5339826710381,864.0700946503852,352.4336580021857C869.09375,359.3333333333333,869.09375,367.6666666666667,869.09375,371.8333333333333L869.09375,376"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id12" d="M689.875,131L689.875,135.16666666666666C689.875,139.33333333333334,689.875,147.66666666666666,689.875,155C689.875,162.33333333333334,689.875,168.66666666666666,689.875,171.83333333333334L689.875,175"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id13" d="M358.96875,544.8879434850863L414.1197916666667,537.7399529042386C469.2708333333333,530.5919623233909,579.5729166666666,516.2959811616955,634.7239583333334,496.5646572475144C689.875,476.8333333333333,689.875,451.6666666666667,689.875,426.5C689.875,401.3333333333333,689.875,376.1666666666667,689.875,360.4166666666667C689.875,344.6666666666667,689.875,338.3333333333333,689.875,335.1666666666667L689.875,332"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id14" d="M505.62730429629374,113.96361130844454L476.5956702469114,120.96967609037046C447.5640361975291,127.97574087229636,389.5007680987646,141.9878704361482,360.4691340493823,165.24393521807409C331.4375,188.5,331.4375,221,331.4375,253.5C331.4375,286,331.4375,318.5,331.4375,347.3333333333333C331.4375,376.1666666666667,331.4375,401.3333333333333,331.4375,426.5C331.4375,451.6666666666667,331.4375,476.8333333333333,322.44404069767444,493.5833333333333C313.4505813953488,510.3333333333333,295.4636627906977,518.6666666666666,286.4702034883721,522.8333333333334L277.4767441860465,527"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id15" d="M1117.3047480620155,527L1122.4727067183462,522.8333333333334C1127.640665374677,518.6666666666666,1137.9765826873384,510.3333333333333,1143.1445413436693,493.5833333333333C1148.3125,476.8333333333333,1148.3125,451.6666666666667,1148.3125,426.5C1148.3125,401.3333333333333,1148.3125,376.1666666666667,1096.9208315846283,352.65340794437907C1045.5291631692567,329.1401492220914,942.7458263385133,307.2802984441828,891.3541579231415,296.3503730552285L839.9624895077699,285.4204476662742"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id16" d="M874.2845904515291,105.88244806627459L916.6225753762742,114.23537338856215C958.9605603010194,122.58829871084974,1043.6365301505095,139.29414935542488,1085.9745150752549,163.89707467771242C1128.3125,188.5,1128.3125,221,1128.3125,253.5C1128.3125,286,1128.3125,318.5,1128.3125,347.3333333333333C1128.3125,376.1666666666667,1128.3125,401.3333333333333,1128.3125,426.5C1128.3125,451.6666666666667,1128.3125,476.8333333333333,1124.436531007752,493.5833333333333C1120.5605620155038,510.3333333333333,1112.8086240310079,518.6666666666666,1108.9326550387598,522.8333333333334L1105.0566860465117,527"/>
</g>
<g class="edgeLabels">
<g transform="translate(undefined, undefined)" class="edgeLabel">
@@ -236,11 +241,11 @@
</g>
</g>
<g class="nodes">
<a transform="translate(672.09375, 253.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L9">
<g title="Visitor" id="classId-C_0013349368885381955166-0" class="node default clickable">
<rect height="145" width="279.546875" y="-72.5" x="-139.7734375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="139.7734375" x1="-139.7734375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="139.7734375" x1="-139.7734375" class="divider"/>
<a transform="translate(689.875, 253.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L9">
<g title="Visitor" id="classId-C_0001668671110672744395-0" class="node default clickable">
<rect height="145" width="288.4375" y="-72.5" x="-144.21875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="144.21875" x1="-144.21875" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="144.21875" x1="-144.21875" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -65)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -252,29 +257,29 @@
<span class="nodeLabel">Visitor</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 3)" height="18" width="251.390625">
<foreignObject transform="translate( -136.71875, 3)" height="18" width="260.28125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+~Visitor() : [default,constexpr] void</span>
<span class="nodeLabel">+~Visitor() : : [default,constexpr] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 25)" height="18" width="263.359375">
<foreignObject transform="translate( -136.71875, 25)" height="18" width="272.25">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+visit_A(const A &amp; item) : [const] void</span>
<span style="font-style:italic;" class="nodeLabel">+visit_A(const A &amp; item) : : [const] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 47)" height="18" width="264.546875">
<foreignObject transform="translate( -136.71875, 47)" height="18" width="273.4375">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+visit_B(const B &amp; item) : [const] void</span>
<span style="font-style:italic;" class="nodeLabel">+visit_B(const B &amp; item) : : [const] void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(147.7734375, 426.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L16">
<g title="Visitor1" id="classId-C_0008226953755203215571-1" class="node default clickable">
<rect height="101" width="279.546875" y="-50.5" x="-139.7734375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="139.7734375" x1="-139.7734375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="139.7734375" x1="-139.7734375" class="divider"/>
<a transform="translate(152.21875, 426.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L16">
<g title="Visitor1" id="classId-C_0001028369219400401946-1" class="node default clickable">
<rect height="101" width="288.4375" y="-50.5" x="-144.21875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="144.21875" x1="-144.21875" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="144.21875" x1="-144.21875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -286,24 +291,24 @@
<span class="nodeLabel">Visitor1</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 3)" height="18" width="262.78125">
<foreignObject transform="translate( -136.71875, 3)" height="18" width="271.671875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+visit_A(const A &amp; item) : [const] void</span>
<span class="nodeLabel">+visit_A(const A &amp; item) : : [const] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 25)" height="18" width="264.546875">
<foreignObject transform="translate( -136.71875, 25)" height="18" width="273.4375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+visit_B(const B &amp; item) : [const] void</span>
<span class="nodeLabel">+visit_B(const B &amp; item) : : [const] void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(497.3203125, 426.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L22">
<g title="Visitor2" id="classId-C_0013682986523810297046-2" class="node default clickable">
<rect height="101" width="279.546875" y="-50.5" x="-139.7734375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="139.7734375" x1="-139.7734375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="139.7734375" x1="-139.7734375" class="divider"/>
<a transform="translate(510.65625, 426.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L22">
<g title="Visitor2" id="classId-C_0001710373315476287130-2" class="node default clickable">
<rect height="101" width="288.4375" y="-50.5" x="-144.21875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="144.21875" x1="-144.21875" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="144.21875" x1="-144.21875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -315,24 +320,24 @@
<span class="nodeLabel">Visitor2</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 3)" height="18" width="262.78125">
<foreignObject transform="translate( -136.71875, 3)" height="18" width="271.671875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+visit_A(const A &amp; item) : [const] void</span>
<span class="nodeLabel">+visit_A(const A &amp; item) : : [const] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 25)" height="18" width="264.546875">
<foreignObject transform="translate( -136.71875, 25)" height="18" width="273.4375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+visit_B(const B &amp; item) : [const] void</span>
<span class="nodeLabel">+visit_B(const B &amp; item) : : [const] void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(846.8671875, 426.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L28">
<g title="Visitor3" id="classId-C_0011192209825433424201-3" class="node default clickable">
<rect height="101" width="279.546875" y="-50.5" x="-139.7734375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="139.7734375" x1="-139.7734375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="139.7734375" x1="-139.7734375" class="divider"/>
<a transform="translate(869.09375, 426.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L28">
<g title="Visitor3" id="classId-C_0001399026228179178025-3" class="node default clickable">
<rect height="101" width="288.4375" y="-50.5" x="-144.21875" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="144.21875" x1="-144.21875" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="144.21875" x1="-144.21875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -344,24 +349,24 @@
<span class="nodeLabel">Visitor3</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 3)" height="18" width="262.78125">
<foreignObject transform="translate( -136.71875, 3)" height="18" width="271.671875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+visit_A(const A &amp; item) : [const] void</span>
<span class="nodeLabel">+visit_A(const A &amp; item) : : [const] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -132.2734375, 25)" height="18" width="264.546875">
<foreignObject transform="translate( -136.71875, 25)" height="18" width="273.4375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+visit_B(const B &amp; item) : [const] void</span>
<span class="nodeLabel">+visit_B(const B &amp; item) : : [const] void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(672.09375, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L34">
<g title="Item" id="classId-C_0011932550614071581777-4" class="node default clickable">
<rect height="123" width="324.609375" y="-61.5" x="-162.3046875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="162.3046875" x1="-162.3046875" class="divider"/>
<line y2="6.5" y1="6.5" x2="162.3046875" x1="-162.3046875" class="divider"/>
<a transform="translate(689.875, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L34">
<g title="Item" id="classId-C_0001491568826758947722-4" class="node default clickable">
<rect height="123" width="333.5" y="-61.5" x="-166.75" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="166.75" x1="-166.75" class="divider"/>
<line y2="6.5" y1="6.5" x2="166.75" x1="-166.75" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -54)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -373,24 +378,24 @@
<span class="nodeLabel">Item</span>
</div>
</foreignObject>
<foreignObject transform="translate( -154.8046875, 14)" height="18" width="238.34375">
<foreignObject transform="translate( -159.25, 14)" height="18" width="247.234375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+~Item() : [default,constexpr] void</span>
<span class="nodeLabel">+~Item() : : [default,constexpr] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -154.8046875, 36)" height="18" width="309.609375">
<foreignObject transform="translate( -159.25, 36)" height="18" width="318.5">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+accept(const Visitor &amp; visitor) : [const] void</span>
<span style="font-style:italic;" class="nodeLabel">+accept(const Visitor &amp; visitor) : : [const] void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(187.7734375, 566.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L40">
<g title="A" id="classId-C_0011953141964512214591-5" class="node default clickable">
<rect height="79" width="324.609375" y="-39.5" x="-162.3046875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="162.3046875" x1="-162.3046875" class="divider"/>
<line y2="6.5" y1="6.5" x2="162.3046875" x1="-162.3046875" class="divider"/>
<a transform="translate(192.21875, 566.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L40">
<g title="A" id="classId-C_0001494142745564026823-5" class="node default clickable">
<rect height="79" width="333.5" y="-39.5" x="-166.75" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="166.75" x1="-166.75" class="divider"/>
<line y2="6.5" y1="6.5" x2="166.75" x1="-166.75" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -402,19 +407,19 @@
<span class="nodeLabel">A</span>
</div>
</foreignObject>
<foreignObject transform="translate( -154.8046875, 14)" height="18" width="309.609375">
<foreignObject transform="translate( -159.25, 14)" height="18" width="318.5">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+accept(const Visitor &amp; visitor) : [const] void</span>
<span class="nodeLabel">+accept(const Visitor &amp; visitor) : : [const] void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(1041.640625, 566.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00021/t00021.cc#L45">
<g title="B" id="classId-C_0011623589203607996547-6" class="node default clickable">
<rect height="79" width="324.609375" y="-39.5" x="-162.3046875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="162.3046875" x1="-162.3046875" class="divider"/>
<line y2="6.5" y1="6.5" x2="162.3046875" x1="-162.3046875" class="divider"/>
<a transform="translate(1068.3125, 566.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00021/t00021.cc#L45">
<g title="B" id="classId-C_0001452948650450999568-6" class="node default clickable">
<rect height="79" width="333.5" y="-39.5" x="-166.75" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="166.75" x1="-166.75" class="divider"/>
<line y2="6.5" y1="6.5" x2="166.75" x1="-166.75" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -426,9 +431,9 @@
<span class="nodeLabel">B</span>
</div>
</foreignObject>
<foreignObject transform="translate( -154.8046875, 14)" height="18" width="309.609375">
<foreignObject transform="translate( -159.25, 14)" height="18" width="318.5">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+accept(const Visitor &amp; visitor) : [const] void</span>
<span class="nodeLabel">+accept(const Visitor &amp; visitor) : : [const] void</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

@@ -59,8 +59,8 @@ protected:
"elements": [
{
"bases": [],
"display_name": "A",
"id": "16099487147056550046",
"display_name": "clanguml::t00022::A",
"id": "2012435893382068755",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -70,7 +70,6 @@ protected:
"methods": [
{
"access": "public",
"display_name": "template_method",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -93,12 +92,10 @@ protected:
"line": 8,
"translation_unit": "t00022.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "protected",
"display_name": "method1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -121,12 +118,10 @@ protected:
"line": 15,
"translation_unit": "t00022.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "protected",
"display_name": "method2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -149,7 +144,6 @@ protected:
"line": 16,
"translation_unit": "t00022.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -168,13 +162,13 @@ protected:
"bases": [
{
"access": "public",
"id": "16099487147056550046",
"id": "2012435893382068755",
"is_virtual": false,
"name": "clanguml::t00022::A"
}
],
"display_name": "A1",
"id": "18256491411048619579",
"display_name": "clanguml::t00022::A1",
"id": "2282061426381077447",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -184,7 +178,6 @@ protected:
"methods": [
{
"access": "protected",
"display_name": "method1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -207,12 +200,10 @@ protected:
"line": 21,
"translation_unit": "t00022.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "protected",
"display_name": "method2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -235,7 +226,6 @@ protected:
"line": 22,
"translation_unit": "t00022.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -254,13 +244,13 @@ protected:
"bases": [
{
"access": "public",
"id": "16099487147056550046",
"id": "2012435893382068755",
"is_virtual": false,
"name": "clanguml::t00022::A"
}
],
"display_name": "A2",
"id": "1270558903333372307",
"display_name": "clanguml::t00022::A2",
"id": "158819862916671538",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -270,7 +260,6 @@ protected:
"methods": [
{
"access": "protected",
"display_name": "method1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -293,12 +282,10 @@ protected:
"line": 27,
"translation_unit": "t00022.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "protected",
"display_name": "method2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -321,7 +308,6 @@ protected:
"line": 28,
"translation_unit": "t00022.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -338,18 +324,17 @@ protected:
}
],
"name": "t00022_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "16099487147056550046",
"source": "18256491411048619579",
"destination": "2012435893382068755",
"source": "2282061426381077447",
"type": "extension"
},
{
"access": "public",
"destination": "16099487147056550046",
"source": "1270558903333372307",
"destination": "2012435893382068755",
"source": "158819862916671538",
"type": "extension"
}
],

View File

@@ -1,90 +1,94 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="238px" preserveAspectRatio="none" style="width:290px;height:238px;" version="1.1" viewBox="0 0 290 238" width="290px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="258px" preserveAspectRatio="none" style="width:311px;height:258px;background:#FFFFFF;" version="1.1" viewBox="0 0 311 258" width="311px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="fb80n93lxa4l3" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L6" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L6" xlink:show="new" xlink:title="A" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fb80n93lxa4l3)" height="86.4141" id="C_0016099487147056550046" style="stroke: #A80036; stroke-width: 1.5;" width="168" x="58.5" y="8"/>
<ellipse cx="134.25" cy="24" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M134.3594,19.3438 L133.2031,24.4219 L135.5313,24.4219 L134.3594,19.3438 Z M132.875,17.1094 L135.8594,17.1094 L139.2188,29.5 L136.7656,29.5 L136,26.4375 L132.7188,26.4375 L131.9688,29.5 L129.5313,29.5 L132.875,17.1094 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="8" x="154.75" y="28.1543">A</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="59.5" x2="225.5" y1="40" y2="40"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L6" target="_top" title="A" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L6" xlink:show="new" xlink:title="A" xlink:type="simple">
<g id="elem_C_0002012435893382068755">
<rect codeLine="2" fill="#F1F1F1" height="102.5998" id="C_0002012435893382068755" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="185" x="63.5" y="7"/>
<ellipse cx="147.25" cy="23" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M148.7813,24.9375 L149.1094,25.7344 L148.8281,25.7344 C148.375,25.7344 148.25,25.7656 148.0781,25.875 C147.7969,26.0156 147.625,26.3125 147.625,26.6094 C147.625,26.9063 147.7656,27.1563 148,27.3281 C148.1719,27.4531 148.4063,27.5 148.8281,27.5 L151.1875,27.5 C151.5469,27.5 151.7969,27.4688 151.9375,27.375 C152.2031,27.2344 152.375,26.9219 152.375,26.6094 C152.375,26.3438 152.2344,26.0781 152,25.9063 C151.8125,25.7813 151.6563,25.75 151.2031,25.7344 L147.8125,17.9063 L144.0938,17.9063 C143.6406,17.9063 143.5,17.9219 143.3281,18.0313 C143.0625,18.2031 142.8906,18.4844 142.8906,18.7813 C142.8906,19.0625 143.0313,19.3281 143.2813,19.5 C143.4531,19.625 143.6406,19.6563 144.0938,19.6563 L145.0625,19.6563 L142.4844,25.7344 C141.7344,25.7344 141.3281,26.0313 141.3281,26.6094 C141.3281,27.2188 141.7188,27.5 142.5156,27.5 L144.7813,27.5 C145.1406,27.5 145.3906,27.4688 145.5313,27.375 C145.7969,27.2188 145.9688,26.9219 145.9688,26.6094 C145.9688,26.3438 145.8281,26.0781 145.5938,25.9063 C145.4063,25.7656 145.25,25.7344 144.7813,25.7344 L144.4844,25.7344 L144.8281,24.9375 L148.7813,24.9375 Z M148.0156,23.1875 L145.5625,23.1875 L146.7969,20.3125 L148.0156,23.1875 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="9" x="167.75" y="28.95">A</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="64.5" x2="247.5" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L15" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L15" xlink:show="new" xlink:title="method1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="69.5" y="48.95"/>
<polygon fill="#FFFF44" points="74.5,48.95,78.5,52.95,74.5,56.95,70.5,52.95" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L15" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L15" xlink:show="new" xlink:title="method1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="128" x="83.5" y="58.3999">method1() = 0 : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L16" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L16" xlink:show="new" xlink:title="method2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="69.5" y="67.8499"/>
<polygon fill="#FFFF44" points="74.5,67.8499,78.5,71.8499,74.5,75.8499,70.5,71.8499" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L16" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L16" xlink:show="new" xlink:title="method2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="128" x="83.5" y="77.2999">method2() = 0 : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L8" target="_top" title="template_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L8" xlink:show="new" xlink:title="template_method" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="69.5" y="85.6998"/>
<ellipse cx="74.5" cy="90.6998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L8" target="_top" title="template_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L8" xlink:show="new" xlink:title="template_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="159" x="83.5" y="93.8058">template_method() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="64.5" x2="247.5" y1="101.5998" y2="101.5998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L15" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L15" xlink:show="new" xlink:title="method1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="64.5" y="46"/>
<polygon fill="#FFFF44" points="69.5,46,73.5,50,69.5,54,65.5,50" style="stroke: #B38D22; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L19" target="_top" title="A1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L19" xlink:show="new" xlink:title="A1" xlink:type="simple">
<g id="elem_C_0002282061426381077447">
<rect codeLine="9" fill="#F1F1F1" height="81.5999" id="C_0002282061426381077447" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="130" x="9" y="169.6"/>
<ellipse cx="61.25" cy="185.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M56.25,186.7563 C56.25,189.2563 58.3906,191.0688 61.3125,191.0688 C62.5469,191.0688 63.7188,190.7719 64.4688,190.2563 C65.0781,189.8344 65.4063,189.4125 65.4063,189.0063 C65.4063,188.5375 64.9844,188.1313 64.4844,188.1313 C64.25,188.1313 64.0313,188.2094 63.8281,188.4125 C63.3906,188.85 63.3906,188.85 63.2188,188.9438 C62.7656,189.1781 62.125,189.3188 61.3594,189.3188 C59.3594,189.3188 58.0781,188.3031 58.0781,186.725 L58.0781,185.6781 C58.0781,183.975 59.2969,182.7719 61,182.7719 C61.5781,182.7719 62.1563,182.9125 62.625,183.1625 C63.0938,183.4281 63.2656,183.6156 63.3281,183.975 C63.4531,184.6469 63.7031,184.8969 64.2344,184.8969 C64.5156,184.8969 64.7969,184.7563 64.9844,184.5375 C65.1094,184.3656 65.1563,184.1938 65.1563,183.7563 L65.1563,182.3969 C65.1563,181.975 65.1406,181.8344 65.0156,181.6625 C64.8438,181.4125 64.5625,181.2563 64.2344,181.2563 C63.9219,181.2563 63.7188,181.3656 63.5,181.6313 C62.3281,181.1313 61.8906,181.0219 60.9375,181.0219 C58.2656,181.0219 56.25,183.0375 56.25,185.6625 L56.25,186.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="17" x="81.75" y="190.206">A1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="10" x2="138" y1="201.6" y2="201.6"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L21" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L21" xlink:show="new" xlink:title="method1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="15" y="210.5"/>
<polygon fill="#FFFF44" points="20,210.5,24,214.5,20,218.5,16,214.5" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L21" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L21" xlink:show="new" xlink:title="method1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="29" y="218.6059">method1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L22" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L22" xlink:show="new" xlink:title="method2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="15" y="227.2999"/>
<polygon fill="#FFFF44" points="20,227.2999,24,231.2999,20,235.2999,16,231.2999" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L22" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L22" xlink:show="new" xlink:title="method2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="29" y="235.4059">method2() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="10" x2="138" y1="243.1999" y2="243.1999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L15" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L15" xlink:show="new" xlink:title="method1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="118" x="78.5" y="54.2104">method1() = 0 : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L25" target="_top" title="A2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L25" xlink:show="new" xlink:title="A2" xlink:type="simple">
<g id="elem_C_0000158819862916671538">
<rect codeLine="15" fill="#F1F1F1" height="81.5999" id="C_0000158819862916671538" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="130" x="174" y="169.6"/>
<ellipse cx="226.25" cy="185.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M221.25,186.7563 C221.25,189.2563 223.3906,191.0688 226.3125,191.0688 C227.5469,191.0688 228.7188,190.7719 229.4688,190.2563 C230.0781,189.8344 230.4063,189.4125 230.4063,189.0063 C230.4063,188.5375 229.9844,188.1313 229.4844,188.1313 C229.25,188.1313 229.0313,188.2094 228.8281,188.4125 C228.3906,188.85 228.3906,188.85 228.2188,188.9438 C227.7656,189.1781 227.125,189.3188 226.3594,189.3188 C224.3594,189.3188 223.0781,188.3031 223.0781,186.725 L223.0781,185.6781 C223.0781,183.975 224.2969,182.7719 226,182.7719 C226.5781,182.7719 227.1563,182.9125 227.625,183.1625 C228.0938,183.4281 228.2656,183.6156 228.3281,183.975 C228.4531,184.6469 228.7031,184.8969 229.2344,184.8969 C229.5156,184.8969 229.7969,184.7563 229.9844,184.5375 C230.1094,184.3656 230.1563,184.1938 230.1563,183.7563 L230.1563,182.3969 C230.1563,181.975 230.1406,181.8344 230.0156,181.6625 C229.8438,181.4125 229.5625,181.2563 229.2344,181.2563 C228.9219,181.2563 228.7188,181.3656 228.5,181.6313 C227.3281,181.1313 226.8906,181.0219 225.9375,181.0219 C223.2656,181.0219 221.25,183.0375 221.25,185.6625 L221.25,186.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="17" x="246.75" y="190.206">A2</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="175" x2="303" y1="201.6" y2="201.6"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L27" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L27" xlink:show="new" xlink:title="method1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="180" y="210.5"/>
<polygon fill="#FFFF44" points="185,210.5,189,214.5,185,218.5,181,214.5" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L27" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L27" xlink:show="new" xlink:title="method1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="194" y="218.6059">method1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L28" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L28" xlink:show="new" xlink:title="method2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="180" y="227.2999"/>
<polygon fill="#FFFF44" points="185,227.2999,189,231.2999,185,235.2999,181,231.2999" style="stroke:#B38D22;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L28" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L28" xlink:show="new" xlink:title="method2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="194" y="235.4059">method2() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="175" x2="303" y1="243.1999" y2="243.1999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L16" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L16" xlink:show="new" xlink:title="method2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="64.5" y="58.8047"/>
<polygon fill="#FFFF44" points="69.5,58.8047,73.5,62.8047,69.5,66.8047,65.5,62.8047" style="stroke: #B38D22; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L16" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L16" xlink:show="new" xlink:title="method2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="118" x="78.5" y="67.0151">method2() = 0 : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L8" target="_top" title="template_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L8" xlink:show="new" xlink:title="template_method" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="64.5" y="71.6094"/>
<ellipse cx="69.5" cy="76.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L8" target="_top" title="template_method" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L8" xlink:show="new" xlink:title="template_method" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="142" x="78.5" y="79.8198">template_method() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="59.5" x2="225.5" y1="86.4141" y2="86.4141"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L19" target="_top" title="A1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L19" xlink:show="new" xlink:title="A1" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fb80n93lxa4l3)" height="73.6094" id="C_0018256491411048619579" style="stroke: #A80036; stroke-width: 1.5;" width="119" x="6" y="154"/>
<ellipse cx="53.25" cy="170" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M56.2188,175.6406 Q55.6406,175.9375 55,176.0781 Q54.3594,176.2344 53.6563,176.2344 Q51.1563,176.2344 49.8281,174.5938 Q48.5156,172.9375 48.5156,169.8125 Q48.5156,166.6875 49.8281,165.0313 Q51.1563,163.375 53.6563,163.375 Q54.3594,163.375 55,163.5313 Q55.6563,163.6875 56.2188,163.9844 L56.2188,166.7031 Q55.5938,166.125 55,165.8594 Q54.4063,165.5781 53.7813,165.5781 Q52.4375,165.5781 51.75,166.6563 Q51.0625,167.7188 51.0625,169.8125 Q51.0625,171.9063 51.75,172.9844 Q52.4375,174.0469 53.7813,174.0469 Q54.4063,174.0469 55,173.7813 Q55.5938,173.5 56.2188,172.9219 L56.2188,175.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="16" x="73.75" y="174.1543">A1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="124" y1="186" y2="186"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L21" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L21" xlink:show="new" xlink:title="method1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="192"/>
<polygon fill="#FFFF44" points="17,192,21,196,17,200,13,196" style="stroke: #B38D22; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L21" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L21" xlink:show="new" xlink:title="method1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="93" x="26" y="200.2104">method1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L22" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L22" xlink:show="new" xlink:title="method2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="204.8047"/>
<polygon fill="#FFFF44" points="17,204.8047,21,208.8047,17,212.8047,13,208.8047" style="stroke: #B38D22; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L22" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L22" xlink:show="new" xlink:title="method2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="93" x="26" y="213.0151">method2() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="124" y1="219.6094" y2="219.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L25" target="_top" title="A2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L25" xlink:show="new" xlink:title="A2" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fb80n93lxa4l3)" height="73.6094" id="C_0001270558903333372307" style="stroke: #A80036; stroke-width: 1.5;" width="119" x="160" y="154"/>
<ellipse cx="207.25" cy="170" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M210.2188,175.6406 Q209.6406,175.9375 209,176.0781 Q208.3594,176.2344 207.6563,176.2344 Q205.1563,176.2344 203.8281,174.5938 Q202.5156,172.9375 202.5156,169.8125 Q202.5156,166.6875 203.8281,165.0313 Q205.1563,163.375 207.6563,163.375 Q208.3594,163.375 209,163.5313 Q209.6563,163.6875 210.2188,163.9844 L210.2188,166.7031 Q209.5938,166.125 209,165.8594 Q208.4063,165.5781 207.7813,165.5781 Q206.4375,165.5781 205.75,166.6563 Q205.0625,167.7188 205.0625,169.8125 Q205.0625,171.9063 205.75,172.9844 Q206.4375,174.0469 207.7813,174.0469 Q208.4063,174.0469 209,173.7813 Q209.5938,173.5 210.2188,172.9219 L210.2188,175.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="16" x="227.75" y="174.1543">A2</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="161" x2="278" y1="186" y2="186"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L27" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L27" xlink:show="new" xlink:title="method1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="166" y="192"/>
<polygon fill="#FFFF44" points="171,192,175,196,171,200,167,196" style="stroke: #B38D22; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L27" target="_top" title="method1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L27" xlink:show="new" xlink:title="method1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="93" x="180" y="200.2104">method1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L28" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L28" xlink:show="new" xlink:title="method2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="166" y="204.8047"/>
<polygon fill="#FFFF44" points="171,204.8047,175,208.8047,171,212.8047,167,208.8047" style="stroke: #B38D22; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L28" target="_top" title="method2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L28" xlink:show="new" xlink:title="method2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="93" x="180" y="213.0151">method2() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="161" x2="278" y1="219.6094" y2="219.6094"/>
<path d="M109.15,111.76 C101.19,126.04 92.92,140.85 85.76,153.7 " fill="none" id="C_0016099487147056550046&lt;-C_0018256491411048619579" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="103.12,108.21,118.98,94.15,115.35,115.03,103.12,108.21" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M175.85,111.76 C183.81,126.04 192.08,140.85 199.24,153.7 " fill="none" id="C_0016099487147056550046&lt;-C_0001270558903333372307" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="169.65,115.03,166.02,94.15,181.88,108.21,169.65,115.03" style="stroke: #A80036; stroke-width: 1.0;"/>
<g id="link_C_0002012435893382068755_C_0002282061426381077447">
<path codeLine="20" d="M119.8398,125.4962 C109.2298,144.9162 105.9,151.01 95.89,169.33 " fill="none" id="C_0002012435893382068755-backto-C_0002282061426381077447" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="128.47,109.7,114.5744,122.6195,125.1052,128.3729,128.47,109.7" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002012435893382068755_C_0000158819862916671538">
<path codeLine="21" d="M192.5813,125.4516 C203.3213,144.8716 206.71,151.01 216.84,169.33 " fill="none" id="C_0002012435893382068755-backto-C_0000158819862916671538" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="183.87,109.7,187.3307,128.3554,197.8318,122.5479,183.87,109.7" style="stroke:#181818;stroke-width:1.0;"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -1,57 +1,62 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 345.03125 312" style="max-width: 345.031px; background-color: white;" width="345.03125" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 362.8125 312" style="max-width: 362.812px; background-color: white;" width="362.8125" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M102.0546875,153L98.00520833333333,157.16666666666666C93.95572916666667,161.33333333333334,85.85677083333333,169.66666666666666,81.80729166666667,178C77.7578125,186.33333333333334,77.7578125,194.66666666666666,77.7578125,198.83333333333334L77.7578125,203"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M242.9765625,153L247.02604166666666,157.16666666666666C251.07552083333334,161.33333333333334,259.1744791666667,169.66666666666666,263.2239583333333,178C267.2734375,186.33333333333334,267.2734375,194.66666666666666,267.2734375,198.83333333333334L267.2734375,203"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M94.802180011649,165.61724629505596L92.70233750970749,167.68103857921332C90.602495007766,169.74483086337065,86.402810003883,173.87241543168534,84.3029675019415,180.10287438250933C82.203125,186.33333333333334,82.203125,194.66666666666666,82.203125,198.83333333333334L82.203125,203"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M268.010319988351,165.61724629505596L270.1101624902925,167.68103857921332C272.210004992234,169.74483086337065,276.40968999611704,173.87241543168534,278.5095324980585,180.10287438250933C280.609375,186.33333333333334,280.609375,194.66666666666666,280.609375,198.83333333333334L280.609375,203"/>
</g>
<g class="edgeLabels">
<g class="edgeLabel">
@@ -74,11 +79,11 @@
</g>
</g>
<g class="nodes">
<a transform="translate(172.515625, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L6">
<g title="A" id="classId-C_0016099487147056550046-0" class="node default clickable">
<rect height="145" width="201.328125" y="-72.5" x="-100.6640625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="100.6640625" x1="-100.6640625" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="100.6640625" x1="-100.6640625" class="divider"/>
<a transform="translate(181.40625, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L6">
<g title="A" id="classId-C_0002012435893382068755-0" class="node default clickable">
<rect height="145" width="210.21875" y="-72.5" x="-105.109375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="105.109375" x1="-105.109375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="105.109375" x1="-105.109375" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -65)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -90,29 +95,29 @@
<span class="nodeLabel">A</span>
</div>
</foreignObject>
<foreignObject transform="translate( -93.1640625, 3)" height="18" width="124.515625">
<foreignObject transform="translate( -97.609375, 3)" height="18" width="133.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">#method1() : void</span>
<span style="font-style:italic;" class="nodeLabel">#method1() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -93.1640625, 25)" height="18" width="124.515625">
<foreignObject transform="translate( -97.609375, 25)" height="18" width="133.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">#method2() : void</span>
<span style="font-style:italic;" class="nodeLabel">#method2() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -93.1640625, 47)" height="18" width="186.328125">
<foreignObject transform="translate( -97.609375, 47)" height="18" width="195.21875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+template_method() : void</span>
<span class="nodeLabel">+template_method() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(77.7578125, 253.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L19">
<g title="A1" id="classId-C_0018256491411048619579-1" class="node default clickable">
<rect height="101" width="139.515625" y="-50.5" x="-69.7578125" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="69.7578125" x1="-69.7578125" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="69.7578125" x1="-69.7578125" class="divider"/>
<a transform="translate(82.203125, 253.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L19">
<g title="A1" id="classId-C_0002282061426381077447-1" class="node default clickable">
<rect height="101" width="148.40625" y="-50.5" x="-74.203125" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="74.203125" x1="-74.203125" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="74.203125" x1="-74.203125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -124,24 +129,24 @@
<span class="nodeLabel">A1</span>
</div>
</foreignObject>
<foreignObject transform="translate( -62.2578125, 3)" height="18" width="124.515625">
<foreignObject transform="translate( -66.703125, 3)" height="18" width="133.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">#method1() : void</span>
<span class="nodeLabel">#method1() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -62.2578125, 25)" height="18" width="124.515625">
<foreignObject transform="translate( -66.703125, 25)" height="18" width="133.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">#method2() : void</span>
<span class="nodeLabel">#method2() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(267.2734375, 253.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00022/t00022.cc#L25">
<g title="A2" id="classId-C_0001270558903333372307-2" class="node default clickable">
<rect height="101" width="139.515625" y="-50.5" x="-69.7578125" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="69.7578125" x1="-69.7578125" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="69.7578125" x1="-69.7578125" class="divider"/>
<a transform="translate(280.609375, 253.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00022/t00022.cc#L25">
<g title="A2" id="classId-C_0000158819862916671538-2" class="node default clickable">
<rect height="101" width="148.40625" y="-50.5" x="-74.203125" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="74.203125" x1="-74.203125" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="74.203125" x1="-74.203125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -153,14 +158,14 @@
<span class="nodeLabel">A2</span>
</div>
</foreignObject>
<foreignObject transform="translate( -62.2578125, 3)" height="18" width="124.515625">
<foreignObject transform="translate( -66.703125, 3)" height="18" width="133.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">#method1() : void</span>
<span class="nodeLabel">#method1() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -62.2578125, 25)" height="18" width="124.515625">
<foreignObject transform="translate( -66.703125, 25)" height="18" width="133.40625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">#method2() : void</span>
<span class="nodeLabel">#method2() : : void</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -68,8 +68,8 @@ private:
"elements": [
{
"bases": [],
"display_name": "Strategy",
"id": "11758861571510735814",
"display_name": "clanguml::t00023::Strategy",
"id": "1469857696438841976",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -79,7 +79,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "~Strategy",
"is_const": false,
"is_consteval": false,
"is_constexpr": true,
@@ -102,12 +101,10 @@ private:
"line": 8,
"translation_unit": "t00023.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "algorithm",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -130,7 +127,6 @@ private:
"line": 9,
"translation_unit": "t00023.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -149,13 +145,13 @@ private:
"bases": [
{
"access": "public",
"id": "11758861571510735814",
"id": "1469857696438841976",
"is_virtual": false,
"name": "clanguml::t00023::Strategy"
}
],
"display_name": "StrategyA",
"id": "9964264606557083084",
"display_name": "clanguml::t00023::StrategyA",
"id": "1245533075819635385",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -165,7 +161,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "algorithm",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -188,7 +183,6 @@ private:
"line": 14,
"translation_unit": "t00023.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -207,13 +201,13 @@ private:
"bases": [
{
"access": "public",
"id": "11758861571510735814",
"id": "1469857696438841976",
"is_virtual": false,
"name": "clanguml::t00023::Strategy"
}
],
"display_name": "StrategyB",
"id": "2119891255197167",
"display_name": "clanguml::t00023::StrategyB",
"id": "264986406899645",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -223,7 +217,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "algorithm",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -246,7 +239,6 @@ private:
"line": 19,
"translation_unit": "t00023.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -265,13 +257,13 @@ private:
"bases": [
{
"access": "public",
"id": "11758861571510735814",
"id": "1469857696438841976",
"is_virtual": false,
"name": "clanguml::t00023::Strategy"
}
],
"display_name": "StrategyC",
"id": "1398361409547864717",
"display_name": "clanguml::t00023::StrategyC",
"id": "174795176193483089",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -281,7 +273,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "algorithm",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -304,7 +295,6 @@ private:
"line": 24,
"translation_unit": "t00023.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -321,8 +311,8 @@ private:
},
{
"bases": [],
"display_name": "Context",
"id": "16308752103835832406",
"display_name": "clanguml::t00023::Context",
"id": "2038594012979479050",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -345,7 +335,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "Context",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -373,12 +362,10 @@ private:
"line": 29,
"translation_unit": "t00023.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "apply",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -401,7 +388,6 @@ private:
"line": 34,
"translation_unit": "t00023.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -418,31 +404,30 @@ private:
}
],
"name": "t00023_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "11758861571510735814",
"source": "9964264606557083084",
"destination": "1469857696438841976",
"source": "1245533075819635385",
"type": "extension"
},
{
"access": "public",
"destination": "11758861571510735814",
"source": "2119891255197167",
"destination": "1469857696438841976",
"source": "264986406899645",
"type": "extension"
},
{
"access": "public",
"destination": "11758861571510735814",
"source": "1398361409547864717",
"destination": "1469857696438841976",
"source": "174795176193483089",
"type": "extension"
},
{
"access": "private",
"destination": "11758861571510735814",
"destination": "1469857696438841976",
"label": "m_strategy",
"source": "16308752103835832406",
"source": "2038594012979479050",
"type": "aggregation"
}
],

View File

@@ -1,121 +1,133 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="393px" preserveAspectRatio="none" style="width:456px;height:393px;" version="1.1" viewBox="0 0 456 393" width="456px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="414px" preserveAspectRatio="none" style="width:483px;height:414px;background:#FFFFFF;" version="1.1" viewBox="0 0 483 414" width="483px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1c6bc55uxj7aq" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L6" target="_top" title="Strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L6" xlink:show="new" xlink:title="Strategy" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1c6bc55uxj7aq)" height="81.6094" id="C_0011758861571510735814" style="stroke: #A80036; stroke-width: 1.5;" width="242" x="104.5" y="179"/>
<ellipse cx="194.25" cy="195" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M194.3594,190.3438 L193.2031,195.4219 L195.5313,195.4219 L194.3594,190.3438 Z M192.875,188.1094 L195.8594,188.1094 L199.2188,200.5 L196.7656,200.5 L196,197.4375 L192.7188,197.4375 L191.9688,200.5 L189.5313,200.5 L192.875,188.1094 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="54" x="214.75" y="199.1543">Strategy</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="105.5" x2="345.5" y1="211" y2="211"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L6" target="_top" title="Strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L6" xlink:show="new" xlink:title="Strategy" xlink:type="simple">
<g id="elem_C_0001469857696438841976">
<rect codeLine="2" fill="#F1F1F1" height="91.6998" id="C_0001469857696438841976" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="260" x="111.5" y="190.4"/>
<ellipse cx="210.75" cy="206.4" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M212.2813,208.3375 L212.6094,209.1344 L212.3281,209.1344 C211.875,209.1344 211.75,209.1656 211.5781,209.275 C211.2969,209.4156 211.125,209.7125 211.125,210.0094 C211.125,210.3062 211.2656,210.5562 211.5,210.7281 C211.6719,210.8531 211.9063,210.9 212.3281,210.9 L214.6875,210.9 C215.0469,210.9 215.2969,210.8687 215.4375,210.775 C215.7031,210.6344 215.875,210.3219 215.875,210.0094 C215.875,209.7437 215.7344,209.4781 215.5,209.3062 C215.3125,209.1812 215.1563,209.15 214.7031,209.1344 L211.3125,201.3062 L207.5938,201.3062 C207.1406,201.3062 207,201.3219 206.8281,201.4312 C206.5625,201.6031 206.3906,201.8844 206.3906,202.1812 C206.3906,202.4625 206.5313,202.7281 206.7813,202.9 C206.9531,203.025 207.1406,203.0562 207.5938,203.0562 L208.5625,203.0562 L205.9844,209.1344 C205.2344,209.1344 204.8281,209.4312 204.8281,210.0094 C204.8281,210.6187 205.2188,210.9 206.0156,210.9 L208.2813,210.9 C208.6406,210.9 208.8906,210.8687 209.0313,210.775 C209.2969,210.6187 209.4688,210.3219 209.4688,210.0094 C209.4688,209.7437 209.3281,209.4781 209.0938,209.3062 C208.9063,209.1656 208.75,209.1344 208.2813,209.1344 L207.9844,209.1344 L208.3281,208.3375 L212.2813,208.3375 Z M211.5156,206.5875 L209.0625,206.5875 L210.2969,203.7125 L211.5156,206.5875 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="53" x="231.25" y="212.35">Strategy</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="112.5" x2="370.5" y1="222.4" y2="222.4"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L8" target="_top" title="~Strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L8" xlink:show="new" xlink:title="~Strategy" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="117.5" y="231.3"/>
<ellipse cx="122.5" cy="236.3" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L8" target="_top" title="~Strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L8" xlink:show="new" xlink:title="~Strategy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="234" x="131.5" y="239.4059">~Strategy() constexpr = default : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="112.5" x2="370.5" y1="247.1999" y2="247.1999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L9" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L9" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="117.5" y="257.1499"/>
<ellipse cx="122.5" cy="262.1499" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L9" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L9" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="131" x="131.5" y="266.5999">algorithm() = 0 : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="112.5" x2="370.5" y1="274.0998" y2="274.0998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L8" target="_top" title="~Strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L8" xlink:show="new" xlink:title="~Strategy" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="110.5" y="217"/>
<ellipse cx="115.5" cy="222" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L12" target="_top" title="StrategyA" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L12" xlink:show="new" xlink:title="StrategyA" xlink:type="simple">
<g id="elem_C_0001245533075819635385">
<rect codeLine="9" fill="#F1F1F1" height="64.7999" id="C_0001245533075819635385" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="133" x="7" y="343.1"/>
<ellipse cx="39.55" cy="359.1" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M34.55,360.2562 C34.55,362.7562 36.6906,364.5687 39.6125,364.5687 C40.8469,364.5687 42.0188,364.2719 42.7688,363.7562 C43.3781,363.3344 43.7063,362.9125 43.7063,362.5062 C43.7063,362.0375 43.2844,361.6312 42.7844,361.6312 C42.55,361.6312 42.3313,361.7094 42.1281,361.9125 C41.6906,362.35 41.6906,362.35 41.5188,362.4437 C41.0656,362.6781 40.425,362.8187 39.6594,362.8187 C37.6594,362.8187 36.3781,361.8031 36.3781,360.225 L36.3781,359.1781 C36.3781,357.475 37.5969,356.2719 39.3,356.2719 C39.8781,356.2719 40.4563,356.4125 40.925,356.6625 C41.3938,356.9281 41.5656,357.1156 41.6281,357.475 C41.7531,358.1469 42.0031,358.3969 42.5344,358.3969 C42.8156,358.3969 43.0969,358.2562 43.2844,358.0375 C43.4094,357.8656 43.4563,357.6937 43.4563,357.2562 L43.4563,355.8969 C43.4563,355.475 43.4406,355.3344 43.3156,355.1625 C43.1438,354.9125 42.8625,354.7562 42.5344,354.7562 C42.2219,354.7562 42.0188,354.8656 41.8,355.1312 C40.6281,354.6312 40.1906,354.5219 39.2375,354.5219 C36.5656,354.5219 34.55,356.5375 34.55,359.1625 L34.55,360.2562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="62" x="57.45" y="363.706">StrategyA</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="139" y1="375.1" y2="375.1"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L14" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L14" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="384"/>
<ellipse cx="18" cy="389" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L14" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L14" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="107" x="27" y="392.1059">algorithm() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="139" y1="399.8999" y2="399.8999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L8" target="_top" title="~Strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L8" xlink:show="new" xlink:title="~Strategy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="216" x="124.5" y="225.2104">~Strategy() constexpr = default : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L17" target="_top" title="StrategyB" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L17" xlink:show="new" xlink:title="StrategyB" xlink:type="simple">
<g id="elem_C_0000000264986406899645">
<rect codeLine="14" fill="#F1F1F1" height="64.7999" id="C_0000000264986406899645" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="133" x="175" y="343.1"/>
<ellipse cx="207.55" cy="359.1" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M202.55,360.2562 C202.55,362.7562 204.6906,364.5687 207.6125,364.5687 C208.8469,364.5687 210.0188,364.2719 210.7688,363.7562 C211.3781,363.3344 211.7063,362.9125 211.7063,362.5062 C211.7063,362.0375 211.2844,361.6312 210.7844,361.6312 C210.55,361.6312 210.3313,361.7094 210.1281,361.9125 C209.6906,362.35 209.6906,362.35 209.5188,362.4437 C209.0656,362.6781 208.425,362.8187 207.6594,362.8187 C205.6594,362.8187 204.3781,361.8031 204.3781,360.225 L204.3781,359.1781 C204.3781,357.475 205.5969,356.2719 207.3,356.2719 C207.8781,356.2719 208.4563,356.4125 208.925,356.6625 C209.3938,356.9281 209.5656,357.1156 209.6281,357.475 C209.7531,358.1469 210.0031,358.3969 210.5344,358.3969 C210.8156,358.3969 211.0969,358.2562 211.2844,358.0375 C211.4094,357.8656 211.4563,357.6937 211.4563,357.2562 L211.4563,355.8969 C211.4563,355.475 211.4406,355.3344 211.3156,355.1625 C211.1438,354.9125 210.8625,354.7562 210.5344,354.7562 C210.2219,354.7562 210.0188,354.8656 209.8,355.1312 C208.6281,354.6312 208.1906,354.5219 207.2375,354.5219 C204.5656,354.5219 202.55,356.5375 202.55,359.1625 L202.55,360.2562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="62" x="225.45" y="363.706">StrategyB</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="176" x2="307" y1="375.1" y2="375.1"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L19" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L19" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="181" y="384"/>
<ellipse cx="186" cy="389" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L19" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L19" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="107" x="195" y="392.1059">algorithm() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="176" x2="307" y1="399.8999" y2="399.8999"/>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="105.5" x2="345.5" y1="231.8047" y2="231.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L9" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L9" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="110.5" y="237.8047"/>
<ellipse cx="115.5" cy="242.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L22" target="_top" title="StrategyC" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L22" xlink:show="new" xlink:title="StrategyC" xlink:type="simple">
<g id="elem_C_0000174795176193483089">
<rect codeLine="19" fill="#F1F1F1" height="64.7999" id="C_0000174795176193483089" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="133" x="343" y="343.1"/>
<ellipse cx="375.1" cy="359.1" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M370.1,360.2562 C370.1,362.7562 372.2406,364.5687 375.1625,364.5687 C376.3969,364.5687 377.5688,364.2719 378.3188,363.7562 C378.9281,363.3344 379.2563,362.9125 379.2563,362.5062 C379.2563,362.0375 378.8344,361.6312 378.3344,361.6312 C378.1,361.6312 377.8813,361.7094 377.6781,361.9125 C377.2406,362.35 377.2406,362.35 377.0688,362.4437 C376.6156,362.6781 375.975,362.8187 375.2094,362.8187 C373.2094,362.8187 371.9281,361.8031 371.9281,360.225 L371.9281,359.1781 C371.9281,357.475 373.1469,356.2719 374.85,356.2719 C375.4281,356.2719 376.0063,356.4125 376.475,356.6625 C376.9438,356.9281 377.1156,357.1156 377.1781,357.475 C377.3031,358.1469 377.5531,358.3969 378.0844,358.3969 C378.3656,358.3969 378.6469,358.2562 378.8344,358.0375 C378.9594,357.8656 379.0063,357.6937 379.0063,357.2562 L379.0063,355.8969 C379.0063,355.475 378.9906,355.3344 378.8656,355.1625 C378.6938,354.9125 378.4125,354.7562 378.0844,354.7562 C377.7719,354.7562 377.5688,354.8656 377.35,355.1312 C376.1781,354.6312 375.7406,354.5219 374.7875,354.5219 C372.1156,354.5219 370.1,356.5375 370.1,359.1625 L370.1,360.2562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="63" x="392.9" y="363.706">StrategyC</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="344" x2="475" y1="375.1" y2="375.1"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L24" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L24" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="349" y="384"/>
<ellipse cx="354" cy="389" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L24" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L24" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="107" x="363" y="392.1059">algorithm() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="344" x2="475" y1="399.8999" y2="399.8999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L9" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L9" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="122" x="124.5" y="246.0151">algorithm() = 0 : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L27" target="_top" title="Context" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L27" xlink:show="new" xlink:title="Context" xlink:type="simple">
<g id="elem_C_0002038594012979479050">
<rect codeLine="24" fill="#F1F1F1" height="106.3998" id="C_0002038594012979479050" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="342" x="70.5" y="7"/>
<ellipse cx="212.75" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M207.75,24.1563 C207.75,26.6563 209.8906,28.4688 212.8125,28.4688 C214.0469,28.4688 215.2188,28.1719 215.9688,27.6563 C216.5781,27.2344 216.9063,26.8125 216.9063,26.4063 C216.9063,25.9375 216.4844,25.5313 215.9844,25.5313 C215.75,25.5313 215.5313,25.6094 215.3281,25.8125 C214.8906,26.25 214.8906,26.25 214.7188,26.3438 C214.2656,26.5781 213.625,26.7188 212.8594,26.7188 C210.8594,26.7188 209.5781,25.7031 209.5781,24.125 L209.5781,23.0781 C209.5781,21.375 210.7969,20.1719 212.5,20.1719 C213.0781,20.1719 213.6563,20.3125 214.125,20.5625 C214.5938,20.8281 214.7656,21.0156 214.8281,21.375 C214.9531,22.0469 215.2031,22.2969 215.7344,22.2969 C216.0156,22.2969 216.2969,22.1563 216.4844,21.9375 C216.6094,21.7656 216.6563,21.5938 216.6563,21.1563 L216.6563,19.7969 C216.6563,19.375 216.6406,19.2344 216.5156,19.0625 C216.3438,18.8125 216.0625,18.6563 215.7344,18.6563 C215.4219,18.6563 215.2188,18.7656 215,19.0313 C213.8281,18.5313 213.3906,18.4219 212.4375,18.4219 C209.7656,18.4219 207.75,20.4375 207.75,23.0625 L207.75,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="49" x="233.25" y="27.606">Context</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="71.5" x2="411.5" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L29" target="_top" title="Context" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L29" xlink:show="new" xlink:title="Context" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="76.5" y="47.9"/>
<ellipse cx="81.5" cy="52.9" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L29" target="_top" title="Context" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L29" xlink:show="new" xlink:title="Context" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="316" x="90.5" y="56.0059">Context(std::unique_ptr&lt;Strategy&gt; strategy) : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="71.5" x2="411.5" y1="63.7999" y2="63.7999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L34" target="_top" title="apply" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L34" xlink:show="new" xlink:title="apply" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="76.5" y="72.6999"/>
<ellipse cx="81.5" cy="77.6999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L34" target="_top" title="apply" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L34" xlink:show="new" xlink:title="apply" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="90.5" y="80.8059">apply() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="71.5" x2="411.5" y1="88.5999" y2="88.5999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L37" target="_top" title="m_strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L37" xlink:show="new" xlink:title="m_strategy" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="76.5" y="97.4998"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="78.5" y="99.4998"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L37" target="_top" title="m_strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L37" xlink:show="new" xlink:title="m_strategy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="247" x="90.5" y="105.6058">m_strategy : std::unique_ptr&lt;Strategy&gt;</text>
</a>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="105.5" x2="345.5" y1="252.6094" y2="252.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L12" target="_top" title="StrategyA" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L12" xlink:show="new" xlink:title="StrategyA" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1c6bc55uxj7aq)" height="60.8047" id="C_0009964264606557083084" style="stroke: #A80036; stroke-width: 1.5;" width="123" x="6" y="322"/>
<ellipse cx="34.5" cy="338" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M37.4688,343.6406 Q36.8906,343.9375 36.25,344.0781 Q35.6094,344.2344 34.9063,344.2344 Q32.4063,344.2344 31.0781,342.5938 Q29.7656,340.9375 29.7656,337.8125 Q29.7656,334.6875 31.0781,333.0313 Q32.4063,331.375 34.9063,331.375 Q35.6094,331.375 36.25,331.5313 Q36.9063,331.6875 37.4688,331.9844 L37.4688,334.7031 Q36.8438,334.125 36.25,333.8594 Q35.6563,333.5781 35.0313,333.5781 Q33.6875,333.5781 33,334.6563 Q32.3125,335.7188 32.3125,337.8125 Q32.3125,339.9063 33,340.9844 Q33.6875,342.0469 35.0313,342.0469 Q35.6563,342.0469 36.25,341.7813 Q36.8438,341.5 37.4688,340.9219 L37.4688,343.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="61" x="51.5" y="342.1543">StrategyA</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="128" y1="354" y2="354"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L14" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L14" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="360"/>
<ellipse cx="17" cy="365" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L14" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L14" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="97" x="26" y="368.2104">algorithm() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="128" y1="374.8047" y2="374.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L17" target="_top" title="StrategyB" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L17" xlink:show="new" xlink:title="StrategyB" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1c6bc55uxj7aq)" height="60.8047" id="C_0000002119891255197167" style="stroke: #A80036; stroke-width: 1.5;" width="123" x="164" y="322"/>
<ellipse cx="192.5" cy="338" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M195.4688,343.6406 Q194.8906,343.9375 194.25,344.0781 Q193.6094,344.2344 192.9063,344.2344 Q190.4063,344.2344 189.0781,342.5938 Q187.7656,340.9375 187.7656,337.8125 Q187.7656,334.6875 189.0781,333.0313 Q190.4063,331.375 192.9063,331.375 Q193.6094,331.375 194.25,331.5313 Q194.9063,331.6875 195.4688,331.9844 L195.4688,334.7031 Q194.8438,334.125 194.25,333.8594 Q193.6563,333.5781 193.0313,333.5781 Q191.6875,333.5781 191,334.6563 Q190.3125,335.7188 190.3125,337.8125 Q190.3125,339.9063 191,340.9844 Q191.6875,342.0469 193.0313,342.0469 Q193.6563,342.0469 194.25,341.7813 Q194.8438,341.5 195.4688,340.9219 L195.4688,343.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="61" x="209.5" y="342.1543">StrategyB</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="165" x2="286" y1="354" y2="354"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L19" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L19" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="170" y="360"/>
<ellipse cx="175" cy="365" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L19" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L19" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="97" x="184" y="368.2104">algorithm() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="165" x2="286" y1="374.8047" y2="374.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L22" target="_top" title="StrategyC" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L22" xlink:show="new" xlink:title="StrategyC" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1c6bc55uxj7aq)" height="60.8047" id="C_0001398361409547864717" style="stroke: #A80036; stroke-width: 1.5;" width="123" x="322" y="322"/>
<ellipse cx="350.5" cy="338" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M353.4688,343.6406 Q352.8906,343.9375 352.25,344.0781 Q351.6094,344.2344 350.9063,344.2344 Q348.4063,344.2344 347.0781,342.5938 Q345.7656,340.9375 345.7656,337.8125 Q345.7656,334.6875 347.0781,333.0313 Q348.4063,331.375 350.9063,331.375 Q351.6094,331.375 352.25,331.5313 Q352.9063,331.6875 353.4688,331.9844 L353.4688,334.7031 Q352.8438,334.125 352.25,333.8594 Q351.6563,333.5781 351.0313,333.5781 Q349.6875,333.5781 349,334.6563 Q348.3125,335.7188 348.3125,337.8125 Q348.3125,339.9063 349,340.9844 Q349.6875,342.0469 351.0313,342.0469 Q351.6563,342.0469 352.25,341.7813 Q352.8438,341.5 353.4688,340.9219 L353.4688,343.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="61" x="367.5" y="342.1543">StrategyC</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="323" x2="444" y1="354" y2="354"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L24" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L24" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="328" y="360"/>
<ellipse cx="333" cy="365" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L24" target="_top" title="algorithm" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L24" xlink:show="new" xlink:title="algorithm" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="97" x="342" y="368.2104">algorithm() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="323" x2="444" y1="374.8047" y2="374.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L27" target="_top" title="Context" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L27" xlink:show="new" xlink:title="Context" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1c6bc55uxj7aq)" height="94.4141" id="C_0016308752103835832406" style="stroke: #A80036; stroke-width: 1.5;" width="315" x="68" y="8"/>
<ellipse cx="197.25" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M200.2188,29.6406 Q199.6406,29.9375 199,30.0781 Q198.3594,30.2344 197.6563,30.2344 Q195.1563,30.2344 193.8281,28.5938 Q192.5156,26.9375 192.5156,23.8125 Q192.5156,20.6875 193.8281,19.0313 Q195.1563,17.375 197.6563,17.375 Q198.3594,17.375 199,17.5313 Q199.6563,17.6875 200.2188,17.9844 L200.2188,20.7031 Q199.5938,20.125 199,19.8594 Q198.4063,19.5781 197.7813,19.5781 Q196.4375,19.5781 195.75,20.6563 Q195.0625,21.7188 195.0625,23.8125 Q195.0625,25.9063 195.75,26.9844 Q196.4375,28.0469 197.7813,28.0469 Q198.4063,28.0469 199,27.7813 Q199.5938,27.5 200.2188,26.9219 L200.2188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="48" x="217.75" y="28.1543">Context</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="69" x2="382" y1="40" y2="40"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L29" target="_top" title="Context" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L29" xlink:show="new" xlink:title="Context" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="74" y="46"/>
<ellipse cx="79" cy="51" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L29" target="_top" title="Context" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L29" xlink:show="new" xlink:title="Context" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="289" x="88" y="54.2104">Context(std::unique_ptr&lt;Strategy&gt; strategy) : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="69" x2="382" y1="60.8047" y2="60.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L34" target="_top" title="apply" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L34" xlink:show="new" xlink:title="apply" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="74" y="66.8047"/>
<ellipse cx="79" cy="71.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L34" target="_top" title="apply" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L34" xlink:show="new" xlink:title="apply" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="73" x="88" y="75.0151">apply() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="69" x2="382" y1="81.6094" y2="81.6094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L37" target="_top" title="m_strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L37" xlink:show="new" xlink:title="m_strategy" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="74" y="87.6094"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="76" y="89.6094"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L37" target="_top" title="m_strategy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L37" xlink:show="new" xlink:title="m_strategy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="228" x="88" y="95.8198">m_strategy : std::unique_ptr&lt;Strategy&gt;</text>
</a>
<path d="M161.3,274.03 C141.49,290.39 120.4,307.81 103.24,321.98 " fill="none" id="C_0011758861571510735814&lt;-C_0009964264606557083084" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="156.93,268.56,176.81,261.22,165.84,279.35,156.93,268.56" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M225.5,281.37 C225.5,295.49 225.5,309.91 225.5,321.98 " fill="none" id="C_0011758861571510735814&lt;-C_0000002119891255197167" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="218.5,281.22,225.5,261.22,232.5,281.22,218.5,281.22" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M289.7,274.03 C309.51,290.39 330.6,307.81 347.76,321.98 " fill="none" id="C_0011758861571510735814&lt;-C_0001398361409547864717" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="285.16,279.35,274.19,261.22,294.07,268.56,285.16,279.35" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M225.5,115.44 C225.5,136.58 225.5,159.86 225.5,178.98 " fill="none" id="C_0016308752103835832406&lt;-C_0011758861571510735814" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="225.5,102.27,221.5,108.27,225.5,114.27,229.5,108.27,225.5,102.27" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="228.5" y="138.0664"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="73" x="238.5" y="145.0669">m_strategy</text>
<g id="link_C_0001469857696438841976_C_0001245533075819635385">
<path codeLine="31" d="M172.0826,293.9607 C148.0026,313.6407 134.3,324.82 112.45,342.68 " fill="none" id="C_0001469857696438841976-backto-C_0001245533075819635385" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="186.02,282.57,168.2857,289.3149,175.8795,298.6065,186.02,282.57" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001469857696438841976_C_0000000264986406899645">
<path codeLine="32" d="M241.5,300.57 C241.5,320.25 241.5,324.82 241.5,342.68 " fill="none" id="C_0001469857696438841976-backto-C_0000000264986406899645" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="241.5,282.57,235.5,300.57,247.5,300.57,241.5,282.57" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001469857696438841976_C_0000174795176193483089">
<path codeLine="33" d="M310.9174,293.9607 C334.9974,313.6407 348.7,324.82 370.55,342.68 " fill="none" id="C_0001469857696438841976-backto-C_0000174795176193483089" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="296.98,282.57,307.1205,298.6065,314.7143,289.3149,296.98,282.57" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0002038594012979479050_C_0001469857696438841976">
<path codeLine="34" d="M241.5,125.89 C241.5,150.21 241.5,166.78 241.5,190.09 " fill="none" id="C_0002038594012979479050-backto-C_0001469857696438841976" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="241.5,113.89,237.5,119.89,241.5,125.89,245.5,119.89,241.5,113.89" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="244.5" y="149.7"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="65" x="254.5" y="156.477">m_strategy</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -1,59 +1,64 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 546.5 459" style="max-width: 546.5px; background-color: white;" width="546.5" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 573.171875 459" style="max-width: 573.172px; background-color: white;" width="573.171875" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M135.67485549132948,322L126.35404624277457,326.1666666666667C117.03323699421965,330.3333333333333,98.39161849710983,338.6666666666667,89.07080924855491,347C79.75,355.3333333333333,79.75,363.6666666666667,79.75,367.8333333333333L79.75,372"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M273.25,322L273.25,326.1666666666667C273.25,330.3333333333333,273.25,338.6666666666667,273.25,347C273.25,355.3333333333333,273.25,363.6666666666667,273.25,367.8333333333333L273.25,372"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M410.8251445086705,322L420.14595375722547,326.1666666666667C429.46676300578036,330.3333333333333,448.10838150289015,338.6666666666667,457.4291907514451,347C466.75,355.3333333333333,466.75,363.6666666666667,466.75,367.8333333333333L466.75,372"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M273.25,131L273.25,136.66666666666666C273.25,142.33333333333334,273.25,153.66666666666666,273.25,165C273.25,176.33333333333334,273.25,187.66666666666666,273.25,193.33333333333334L273.25,199"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M126.13803837451695,329.0740422727302L119.14758406209747,332.0617018939418C112.15712974967796,335.04936151515346,98.17622112483899,341.02468075757673,91.1857668124195,348.1790070454551C84.1953125,355.3333333333333,84.1953125,363.6666666666667,84.1953125,367.8333333333333L84.1953125,372"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M286.5859375,340L286.5859375,341.1666666666667C286.5859375,342.3333333333333,286.5859375,344.6666666666667,286.5859375,350C286.5859375,355.3333333333333,286.5859375,363.6666666666667,286.5859375,367.8333333333333L286.5859375,372"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M447.03383662548305,329.0740422727302L454.02429093790255,332.0617018939418C461.014745250322,335.04936151515346,474.995653875161,341.02468075757673,481.98610818758056,348.1790070454551C488.9765625,355.3333333333333,488.9765625,363.6666666666667,488.9765625,367.8333333333333L488.9765625,372"/>
<path marker-start="url(#my-svg_classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M286.5859375,149L286.5859375,151.66666666666666C286.5859375,154.33333333333334,286.5859375,159.66666666666666,286.5859375,168C286.5859375,176.33333333333334,286.5859375,187.66666666666666,286.5859375,193.33333333333334L286.5859375,199"/>
</g>
<g class="edgeLabels">
<g class="edgeLabel">
@@ -83,7 +88,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(273.25, 165)" class="edgeLabel">
<g transform="translate(286.5859375, 165)" class="edgeLabel">
<g transform="translate(-42.234375, -9)" class="label">
<foreignObject height="18" width="84.46875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -96,11 +101,11 @@
</g>
</g>
<g class="nodes">
<a transform="translate(273.25, 260.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L6">
<g title="Strategy" id="classId-C_0011758861571510735814-0" class="node default clickable">
<rect height="123" width="281.8125" y="-61.5" x="-140.90625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="140.90625" x1="-140.90625" class="divider"/>
<line y2="6.5" y1="6.5" x2="140.90625" x1="-140.90625" class="divider"/>
<a transform="translate(286.5859375, 260.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L6">
<g title="Strategy" id="classId-C_0001469857696438841976-0" class="node default clickable">
<rect height="123" width="290.703125" y="-61.5" x="-145.3515625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="145.3515625" x1="-145.3515625" class="divider"/>
<line y2="6.5" y1="6.5" x2="145.3515625" x1="-145.3515625" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -54)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -112,24 +117,24 @@
<span class="nodeLabel">Strategy</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.40625, 14)" height="18" width="266.8125">
<foreignObject transform="translate( -137.8515625, 14)" height="18" width="275.703125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+~Strategy() : [default,constexpr] void</span>
<span class="nodeLabel">+~Strategy() : : [default,constexpr] void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -133.40625, 36)" height="18" width="128.5">
<foreignObject transform="translate( -137.8515625, 36)" height="18" width="137.390625">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+algorithm() : void</span>
<span style="font-style:italic;" class="nodeLabel">+algorithm() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(79.75, 411.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L12">
<g title="StrategyA" id="classId-C_0009964264606557083084-1" class="node default clickable">
<rect height="79" width="143.5" y="-39.5" x="-71.75" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="71.75" x1="-71.75" class="divider"/>
<line y2="6.5" y1="6.5" x2="71.75" x1="-71.75" class="divider"/>
<a transform="translate(84.1953125, 411.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L12">
<g title="StrategyA" id="classId-C_0001245533075819635385-1" class="node default clickable">
<rect height="79" width="152.390625" y="-39.5" x="-76.1953125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="76.1953125" x1="-76.1953125" class="divider"/>
<line y2="6.5" y1="6.5" x2="76.1953125" x1="-76.1953125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -141,19 +146,19 @@
<span class="nodeLabel">StrategyA</span>
</div>
</foreignObject>
<foreignObject transform="translate( -64.25, 14)" height="18" width="128.5">
<foreignObject transform="translate( -68.6953125, 14)" height="18" width="137.390625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+algorithm() : void</span>
<span class="nodeLabel">+algorithm() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(273.25, 411.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L17">
<g title="StrategyB" id="classId-C_0000002119891255197167-2" class="node default clickable">
<rect height="79" width="143.5" y="-39.5" x="-71.75" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="71.75" x1="-71.75" class="divider"/>
<line y2="6.5" y1="6.5" x2="71.75" x1="-71.75" class="divider"/>
<a transform="translate(286.5859375, 411.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L17">
<g title="StrategyB" id="classId-C_0000000264986406899645-2" class="node default clickable">
<rect height="79" width="152.390625" y="-39.5" x="-76.1953125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="76.1953125" x1="-76.1953125" class="divider"/>
<line y2="6.5" y1="6.5" x2="76.1953125" x1="-76.1953125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -165,19 +170,19 @@
<span class="nodeLabel">StrategyB</span>
</div>
</foreignObject>
<foreignObject transform="translate( -64.25, 14)" height="18" width="128.5">
<foreignObject transform="translate( -68.6953125, 14)" height="18" width="137.390625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+algorithm() : void</span>
<span class="nodeLabel">+algorithm() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(466.75, 411.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L22">
<g title="StrategyC" id="classId-C_0001398361409547864717-3" class="node default clickable">
<rect height="79" width="143.5" y="-39.5" x="-71.75" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="71.75" x1="-71.75" class="divider"/>
<line y2="6.5" y1="6.5" x2="71.75" x1="-71.75" class="divider"/>
<a transform="translate(488.9765625, 411.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L22">
<g title="StrategyC" id="classId-C_0000174795176193483089-3" class="node default clickable">
<rect height="79" width="152.390625" y="-39.5" x="-76.1953125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="76.1953125" x1="-76.1953125" class="divider"/>
<line y2="6.5" y1="6.5" x2="76.1953125" x1="-76.1953125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -189,19 +194,19 @@
<span class="nodeLabel">StrategyC</span>
</div>
</foreignObject>
<foreignObject transform="translate( -64.25, 14)" height="18" width="128.5">
<foreignObject transform="translate( -68.6953125, 14)" height="18" width="137.390625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+algorithm() : void</span>
<span class="nodeLabel">+algorithm() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(273.25, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00023/t00023.cc#L27">
<g title="Context" id="classId-C_0016308752103835832406-4" class="node default clickable">
<rect height="123" width="300.046875" y="-61.5" x="-150.0234375" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="150.0234375" x1="-150.0234375" class="divider"/>
<line y2="6.5" y1="6.5" x2="150.0234375" x1="-150.0234375" class="divider"/>
<a transform="translate(286.5859375, 69.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00023/t00023.cc#L27">
<g title="Context" id="classId-C_0002038594012979479050-4" class="node default clickable">
<rect height="123" width="308.9375" y="-61.5" x="-154.46875" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="154.46875" x1="-154.46875" class="divider"/>
<line y2="6.5" y1="6.5" x2="154.46875" x1="-154.46875" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -213,19 +218,19 @@
<span class="nodeLabel">Context</span>
</div>
</foreignObject>
<foreignObject transform="translate( -142.5234375, -20)" height="18" width="281.9375">
<foreignObject transform="translate( -146.96875, -20)" height="18" width="281.9375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m_strategy : std::unique_ptr&lt;Strategy&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -142.5234375, 14)" height="18" width="285.046875">
<foreignObject transform="translate( -146.96875, 14)" height="18" width="293.9375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+Context(std::unique_ptr strategy) : void</span>
<span class="nodeLabel">+Context(std::unique_ptr strategy) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -142.5234375, 36)" height="18" width="100.9375">
<foreignObject transform="translate( -146.96875, 36)" height="18" width="109.828125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+apply() : void</span>
<span class="nodeLabel">+apply() : : void</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -67,8 +67,8 @@ private:
"elements": [
{
"bases": [],
"display_name": "Target",
"id": "8931271679944880159",
"display_name": "clanguml::t00024::Target",
"id": "1116408959993110019",
"is_abstract": true,
"is_nested": false,
"is_struct": false,
@@ -78,7 +78,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "~Target",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -101,12 +100,10 @@ private:
"line": 8,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -129,12 +126,10 @@ private:
"line": 10,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -157,7 +152,6 @@ private:
"line": 11,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -176,13 +170,13 @@ private:
"bases": [
{
"access": "public",
"id": "8931271679944880159",
"id": "1116408959993110019",
"is_virtual": false,
"name": "clanguml::t00024::Target"
}
],
"display_name": "Target1",
"id": "5356136553214612884",
"display_name": "clanguml::t00024::Target1",
"id": "669517069151826610",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -192,7 +186,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -215,12 +208,10 @@ private:
"line": 16,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -243,7 +234,6 @@ private:
"line": 17,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -262,13 +252,13 @@ private:
"bases": [
{
"access": "public",
"id": "8931271679944880159",
"id": "1116408959993110019",
"is_virtual": false,
"name": "clanguml::t00024::Target"
}
],
"display_name": "Target2",
"id": "9684105871253567467",
"display_name": "clanguml::t00024::Target2",
"id": "1210513233906695933",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -278,7 +268,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -301,12 +290,10 @@ private:
"line": 22,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -329,7 +316,6 @@ private:
"line": 23,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -348,13 +334,13 @@ private:
"bases": [
{
"access": "public",
"id": "8931271679944880159",
"id": "1116408959993110019",
"is_virtual": false,
"name": "clanguml::t00024::Target"
}
],
"display_name": "Proxy",
"id": "4757659213119929724",
"display_name": "clanguml::t00024::Proxy",
"id": "594707401639991215",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -377,7 +363,6 @@ private:
"methods": [
{
"access": "public",
"display_name": "Proxy",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -405,12 +390,10 @@ private:
"line": 28,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -433,12 +416,10 @@ private:
"line": 32,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -461,7 +442,6 @@ private:
"line": 33,
"translation_unit": "t00024.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -478,38 +458,30 @@ private:
}
],
"name": "t00024_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "8931271679944880159",
"source": "5356136553214612884",
"destination": "1116408959993110019",
"source": "669517069151826610",
"type": "extension"
},
{
"access": "public",
"destination": "8931271679944880159",
"source": "9684105871253567467",
"destination": "1116408959993110019",
"source": "1210513233906695933",
"type": "extension"
},
{
"access": "private",
"destination": "8931271679944880159",
"destination": "1116408959993110019",
"label": "m_target",
"source": "4757659213119929724",
"type": "association"
},
{
"access": "private",
"destination": "8931271679944880159",
"label": "m_target",
"source": "4757659213119929724",
"source": "594707401639991215",
"type": "association"
},
{
"access": "public",
"destination": "8931271679944880159",
"source": "4757659213119929724",
"destination": "1116408959993110019",
"source": "594707401639991215",
"type": "extension"
}
],

View File

@@ -1,134 +1,144 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="297px" preserveAspectRatio="none" style="width:542px;height:297px;" version="1.1" viewBox="0 0 542 297" width="542px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="326px" preserveAspectRatio="none" style="width:577px;height:326px;background:#FFFFFF;" version="1.1" viewBox="0 0 577 326" width="577px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="fiybxcvnfg1s" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L6" target="_top" title="Target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L6" xlink:show="new" xlink:title="Target" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fiybxcvnfg1s)" height="94.4141" id="C_0008931271679944880159" style="stroke: #A80036; stroke-width: 1.5;" width="140" x="136.5" y="8"/>
<ellipse cx="181.75" cy="24" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M181.8594,19.3438 L180.7031,24.4219 L183.0313,24.4219 L181.8594,19.3438 Z M180.375,17.1094 L183.3594,17.1094 L186.7188,29.5 L184.2656,29.5 L183.5,26.4375 L180.2188,26.4375 L179.4688,29.5 L177.0313,29.5 L180.375,17.1094 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="41" x="202.25" y="28.1543">Target</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="137.5" x2="275.5" y1="40" y2="40"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L6" target="_top" title="Target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L6" xlink:show="new" xlink:title="Target" xlink:type="simple">
<g id="elem_C_0001116408959993110019">
<rect codeLine="2" fill="#F1F1F1" height="112.6998" id="C_0001116408959993110019" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="148" x="129" y="7"/>
<ellipse cx="177.75" cy="23" fill="#A9DCDF" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M179.2813,24.9375 L179.6094,25.7344 L179.3281,25.7344 C178.875,25.7344 178.75,25.7656 178.5781,25.875 C178.2969,26.0156 178.125,26.3125 178.125,26.6094 C178.125,26.9063 178.2656,27.1563 178.5,27.3281 C178.6719,27.4531 178.9063,27.5 179.3281,27.5 L181.6875,27.5 C182.0469,27.5 182.2969,27.4688 182.4375,27.375 C182.7031,27.2344 182.875,26.9219 182.875,26.6094 C182.875,26.3438 182.7344,26.0781 182.5,25.9063 C182.3125,25.7813 182.1563,25.75 181.7031,25.7344 L178.3125,17.9063 L174.5938,17.9063 C174.1406,17.9063 174,17.9219 173.8281,18.0313 C173.5625,18.2031 173.3906,18.4844 173.3906,18.7813 C173.3906,19.0625 173.5313,19.3281 173.7813,19.5 C173.9531,19.625 174.1406,19.6563 174.5938,19.6563 L175.5625,19.6563 L172.9844,25.7344 C172.2344,25.7344 171.8281,26.0313 171.8281,26.6094 C171.8281,27.2188 172.2188,27.5 173.0156,27.5 L175.2813,27.5 C175.6406,27.5 175.8906,27.4688 176.0313,27.375 C176.2969,27.2188 176.4688,26.9219 176.4688,26.6094 C176.4688,26.3438 176.3281,26.0781 176.0938,25.9063 C175.9063,25.7656 175.75,25.7344 175.2813,25.7344 L174.9844,25.7344 L175.3281,24.9375 L179.2813,24.9375 Z M178.5156,23.1875 L176.0625,23.1875 L177.2969,20.3125 L178.5156,23.1875 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="42" x="198.25" y="28.95">Target</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="130" x2="276" y1="39" y2="39"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L8" target="_top" title="~Target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L8" xlink:show="new" xlink:title="~Target" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="135" y="48.95"/>
<ellipse cx="140" cy="53.95" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L8" target="_top" title="~Target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L8" xlink:show="new" xlink:title="~Target" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="122" x="149" y="58.3999">~Target() = 0 : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="130" x2="276" y1="65.8999" y2="65.8999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L10" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L10" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="135" y="75.8499"/>
<ellipse cx="140" cy="80.8499" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L10" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L10" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="92" x="149" y="85.2999">m1() = 0 : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L11" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L11" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="135" y="94.7498"/>
<ellipse cx="140" cy="99.7498" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L11" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L11" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="92" x="149" y="104.1998">m2() = 0 : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="130" x2="276" y1="111.6998" y2="111.6998"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L8" target="_top" title="~Target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L8" xlink:show="new" xlink:title="~Target" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="142.5" y="46"/>
<ellipse cx="147.5" cy="51" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L14" target="_top" title="Target1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L14" xlink:show="new" xlink:title="Target1" xlink:type="simple">
<g id="elem_C_0000669517069151826610">
<rect codeLine="10" fill="#F1F1F1" height="81.5999" id="C_0000669517069151826610" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="94" x="7" y="217.5"/>
<ellipse cx="27.4" cy="233.5" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M22.4,234.6562 C22.4,237.1562 24.5406,238.9687 27.4625,238.9687 C28.6969,238.9687 29.8688,238.6719 30.6188,238.1562 C31.2281,237.7344 31.5563,237.3125 31.5563,236.9062 C31.5563,236.4375 31.1344,236.0312 30.6344,236.0312 C30.4,236.0312 30.1813,236.1094 29.9781,236.3125 C29.5406,236.75 29.5406,236.75 29.3688,236.8437 C28.9156,237.0781 28.275,237.2187 27.5094,237.2187 C25.5094,237.2187 24.2281,236.2031 24.2281,234.625 L24.2281,233.5781 C24.2281,231.875 25.4469,230.6719 27.15,230.6719 C27.7281,230.6719 28.3063,230.8125 28.775,231.0625 C29.2438,231.3281 29.4156,231.5156 29.4781,231.875 C29.6031,232.5469 29.8531,232.7969 30.3844,232.7969 C30.6656,232.7969 30.9469,232.6562 31.1344,232.4375 C31.2594,232.2656 31.3063,232.0937 31.3063,231.6562 L31.3063,230.2969 C31.3063,229.875 31.2906,229.7344 31.1656,229.5625 C30.9938,229.3125 30.7125,229.1562 30.3844,229.1562 C30.0719,229.1562 29.8688,229.2656 29.65,229.5312 C28.4781,229.0312 28.0406,228.9219 27.0875,228.9219 C24.4156,228.9219 22.4,230.9375 22.4,233.5625 L22.4,234.6562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="50" x="42.6" y="238.106">Target1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="100" y1="249.5" y2="249.5"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L16" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L16" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="258.4"/>
<ellipse cx="18" cy="263.4" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L16" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L16" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="27" y="266.5059">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L17" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L17" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="275.1999"/>
<ellipse cx="18" cy="280.1999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L17" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L17" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="27" y="283.3059">m2() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="100" y1="291.0999" y2="291.0999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L8" target="_top" title="~Target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L8" xlink:show="new" xlink:title="~Target" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="114" x="156.5" y="54.2104">~Target() = 0 : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L20" target="_top" title="Target2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L20" xlink:show="new" xlink:title="Target2" xlink:type="simple">
<g id="elem_C_0001210513233906695933">
<rect codeLine="16" fill="#F1F1F1" height="81.5999" id="C_0001210513233906695933" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="94" x="136" y="217.5"/>
<ellipse cx="156.4" cy="233.5" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M151.4,234.6562 C151.4,237.1562 153.5406,238.9687 156.4625,238.9687 C157.6969,238.9687 158.8688,238.6719 159.6188,238.1562 C160.2281,237.7344 160.5563,237.3125 160.5563,236.9062 C160.5563,236.4375 160.1344,236.0312 159.6344,236.0312 C159.4,236.0312 159.1813,236.1094 158.9781,236.3125 C158.5406,236.75 158.5406,236.75 158.3688,236.8437 C157.9156,237.0781 157.275,237.2187 156.5094,237.2187 C154.5094,237.2187 153.2281,236.2031 153.2281,234.625 L153.2281,233.5781 C153.2281,231.875 154.4469,230.6719 156.15,230.6719 C156.7281,230.6719 157.3063,230.8125 157.775,231.0625 C158.2438,231.3281 158.4156,231.5156 158.4781,231.875 C158.6031,232.5469 158.8531,232.7969 159.3844,232.7969 C159.6656,232.7969 159.9469,232.6562 160.1344,232.4375 C160.2594,232.2656 160.3063,232.0937 160.3063,231.6562 L160.3063,230.2969 C160.3063,229.875 160.2906,229.7344 160.1656,229.5625 C159.9938,229.3125 159.7125,229.1562 159.3844,229.1562 C159.0719,229.1562 158.8688,229.2656 158.65,229.5312 C157.4781,229.0312 157.0406,228.9219 156.0875,228.9219 C153.4156,228.9219 151.4,230.9375 151.4,233.5625 L151.4,234.6562 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="50" x="171.6" y="238.106">Target2</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="137" x2="229" y1="249.5" y2="249.5"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L22" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L22" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="142" y="258.4"/>
<ellipse cx="147" cy="263.4" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L22" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L22" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="156" y="266.5059">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L23" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L23" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="142" y="275.1999"/>
<ellipse cx="147" cy="280.1999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L23" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L23" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="156" y="283.3059">m2() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="137" x2="229" y1="291.0999" y2="291.0999"/>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="137.5" x2="275.5" y1="60.8047" y2="60.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L10" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L10" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="142.5" y="66.8047"/>
<ellipse cx="147.5" cy="71.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L26" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L26" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<g id="elem_C_0000594707401639991215">
<rect codeLine="22" fill="#F1F1F1" height="123.1997" id="C_0000594707401639991215" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="305" x="265.5" y="196.7"/>
<ellipse cx="395.75" cy="212.7" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M390.75,213.8563 C390.75,216.3563 392.8906,218.1688 395.8125,218.1688 C397.0469,218.1688 398.2188,217.8719 398.9688,217.3563 C399.5781,216.9344 399.9063,216.5125 399.9063,216.1063 C399.9063,215.6375 399.4844,215.2313 398.9844,215.2313 C398.75,215.2313 398.5313,215.3094 398.3281,215.5125 C397.8906,215.95 397.8906,215.95 397.7188,216.0438 C397.2656,216.2781 396.625,216.4188 395.8594,216.4188 C393.8594,216.4188 392.5781,215.4031 392.5781,213.825 L392.5781,212.7781 C392.5781,211.075 393.7969,209.8719 395.5,209.8719 C396.0781,209.8719 396.6563,210.0125 397.125,210.2625 C397.5938,210.5281 397.7656,210.7156 397.8281,211.075 C397.9531,211.7469 398.2031,211.9969 398.7344,211.9969 C399.0156,211.9969 399.2969,211.8563 399.4844,211.6375 C399.6094,211.4656 399.6563,211.2938 399.6563,210.8563 L399.6563,209.4969 C399.6563,209.075 399.6406,208.9344 399.5156,208.7625 C399.3438,208.5125 399.0625,208.3563 398.7344,208.3563 C398.4219,208.3563 398.2188,208.4656 398,208.7313 C396.8281,208.2313 396.3906,208.1219 395.4375,208.1219 C392.7656,208.1219 390.75,210.1375 390.75,212.7625 L390.75,213.8563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="36" x="416.25" y="217.306">Proxy</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="266.5" x2="569.5" y1="228.7" y2="228.7"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L28" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L28" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="271.5" y="237.6"/>
<ellipse cx="276.5" cy="242.6" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L28" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L28" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="279" x="285.5" y="245.7059">Proxy(std::shared_ptr&lt;Target&gt; target) : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="266.5" x2="569.5" y1="253.4999" y2="253.4999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L32" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L32" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="271.5" y="262.3999"/>
<ellipse cx="276.5" cy="267.3999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L32" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L32" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="285.5" y="270.5059">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L33" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L33" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="271.5" y="279.1998"/>
<ellipse cx="276.5" cy="284.1998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L33" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L33" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="285.5" y="287.3058">m2() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="266.5" x2="569.5" y1="295.0998" y2="295.0998"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L36" target="_top" title="m_target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L36" xlink:show="new" xlink:title="m_target" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="271.5" y="303.9997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="273.5" y="305.9997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L36" target="_top" title="m_target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L36" xlink:show="new" xlink:title="m_target" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="223" x="285.5" y="312.1057">m_target : std::shared_ptr&lt;Target&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L10" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L10" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="86" x="156.5" y="75.0151">m1() = 0 : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L11" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L11" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="142.5" y="79.6094"/>
<ellipse cx="147.5" cy="84.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L11" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L11" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="86" x="156.5" y="87.8198">m2() = 0 : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="137.5" x2="275.5" y1="94.4141" y2="94.4141"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L14" target="_top" title="Target1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L14" xlink:show="new" xlink:title="Target1" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fiybxcvnfg1s)" height="73.6094" id="C_0005356136553214612884" style="stroke: #A80036; stroke-width: 1.5;" width="87" x="6" y="195.5"/>
<ellipse cx="23.7" cy="211.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M26.6688,217.1406 Q26.0906,217.4375 25.45,217.5781 Q24.8094,217.7344 24.1063,217.7344 Q21.6063,217.7344 20.2781,216.0938 Q18.9656,214.4375 18.9656,211.3125 Q18.9656,208.1875 20.2781,206.5313 Q21.6063,204.875 24.1063,204.875 Q24.8094,204.875 25.45,205.0313 Q26.1063,205.1875 26.6688,205.4844 L26.6688,208.2031 Q26.0438,207.625 25.45,207.3594 Q24.8563,207.0781 24.2313,207.0781 Q22.8875,207.0781 22.2,208.1563 Q21.5125,209.2188 21.5125,211.3125 Q21.5125,213.4063 22.2,214.4844 Q22.8875,215.5469 24.2313,215.5469 Q24.8563,215.5469 25.45,215.2813 Q26.0438,215 26.6688,214.4219 L26.6688,217.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="49" x="38.3" y="215.6543">Target1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="92" y1="227.5" y2="227.5"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L16" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L16" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="233.5"/>
<ellipse cx="17" cy="238.5" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L16" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L16" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="26" y="241.7104">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L17" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L17" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="246.3047"/>
<ellipse cx="17" cy="251.3047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L17" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L17" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="26" y="254.5151">m2() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="92" y1="261.1094" y2="261.1094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L20" target="_top" title="Target2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L20" xlink:show="new" xlink:title="Target2" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fiybxcvnfg1s)" height="73.6094" id="C_0009684105871253567467" style="stroke: #A80036; stroke-width: 1.5;" width="87" x="128" y="195.5"/>
<ellipse cx="145.7" cy="211.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M148.6688,217.1406 Q148.0906,217.4375 147.45,217.5781 Q146.8094,217.7344 146.1063,217.7344 Q143.6063,217.7344 142.2781,216.0938 Q140.9656,214.4375 140.9656,211.3125 Q140.9656,208.1875 142.2781,206.5313 Q143.6063,204.875 146.1063,204.875 Q146.8094,204.875 147.45,205.0313 Q148.1063,205.1875 148.6688,205.4844 L148.6688,208.2031 Q148.0438,207.625 147.45,207.3594 Q146.8563,207.0781 146.2313,207.0781 Q144.8875,207.0781 144.2,208.1563 Q143.5125,209.2188 143.5125,211.3125 Q143.5125,213.4063 144.2,214.4844 Q144.8875,215.5469 146.2313,215.5469 Q146.8563,215.5469 147.45,215.2813 Q148.0438,215 148.6688,214.4219 L148.6688,217.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="49" x="160.3" y="215.6543">Target2</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="129" x2="214" y1="227.5" y2="227.5"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L22" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L22" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="134" y="233.5"/>
<ellipse cx="139" cy="238.5" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L22" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L22" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="148" y="241.7104">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L23" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L23" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="134" y="246.3047"/>
<ellipse cx="139" cy="251.3047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L23" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L23" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="148" y="254.5151">m2() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="129" x2="214" y1="261.1094" y2="261.1094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L26" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L26" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#fiybxcvnfg1s)" height="107.2188" id="C_0004757659213119929724" style="stroke: #A80036; stroke-width: 1.5;" width="281" x="250" y="179"/>
<ellipse cx="369.75" cy="195" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M372.7188,200.6406 Q372.1406,200.9375 371.5,201.0781 Q370.8594,201.2344 370.1563,201.2344 Q367.6563,201.2344 366.3281,199.5938 Q365.0156,197.9375 365.0156,194.8125 Q365.0156,191.6875 366.3281,190.0313 Q367.6563,188.375 370.1563,188.375 Q370.8594,188.375 371.5,188.5313 Q372.1563,188.6875 372.7188,188.9844 L372.7188,191.7031 Q372.0938,191.125 371.5,190.8594 Q370.9063,190.5781 370.2813,190.5781 Q368.9375,190.5781 368.25,191.6563 Q367.5625,192.7188 367.5625,194.8125 Q367.5625,196.9063 368.25,197.9844 Q368.9375,199.0469 370.2813,199.0469 Q370.9063,199.0469 371.5,198.7813 Q372.0938,198.5 372.7188,197.9219 L372.7188,200.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="33" x="390.25" y="199.1543">Proxy</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="251" x2="530" y1="211" y2="211"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L28" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L28" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="256" y="217"/>
<ellipse cx="261" cy="222" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L28" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L28" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="255" x="270" y="225.2104">Proxy(std::shared_ptr&lt;Target&gt; target) : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="251" x2="530" y1="231.8047" y2="231.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L32" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L32" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="256" y="237.8047"/>
<ellipse cx="261" cy="242.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L32" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L32" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="270" y="246.0151">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L33" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L33" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="256" y="250.6094"/>
<ellipse cx="261" cy="255.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L33" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L33" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="270" y="258.8198">m2() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="251" x2="530" y1="265.4141" y2="265.4141"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L36" target="_top" title="m_target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L36" xlink:show="new" xlink:title="m_target" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="256" y="271.4141"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="258" y="273.4141"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L36" target="_top" title="m_target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L36" xlink:show="new" xlink:title="m_target" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="206" x="270" y="279.6245">m_target : std::shared_ptr&lt;Target&gt;</text>
</a>
<path d="M151.91,117.02 C128.52,143.17 102,172.81 81.81,195.39 " fill="none" id="C_0008931271679944880159&lt;-C_0005356136553214612884" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="146.7,112.35,165.25,102.11,157.13,121.68,146.7,112.35" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M193.37,121.82 C188.4,146.74 182.93,174.19 178.7,195.39 " fill="none" id="C_0008931271679944880159&lt;-C_0009684105871253567467" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="186.53,120.36,197.3,102.11,200.26,123.09,186.53,120.36" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M335.33,178.87 C311.02,155.69 282.6,128.58 258.65,105.74 " fill="none" id="C_0004757659213119929724-&gt;C_0008931271679944880159" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#A80036" points="254.84,102.11,258.5789,111.2216,258.4532,105.5661,264.1087,105.4404,254.84,102.11" style="stroke: #A80036; stroke-width: 1.0;"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="301.5" y="138.0664"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="59" x="311.5" y="145.0669">m_target</text>
<path d="M250.78,118.21 C259.47,128.93 268.89,139.62 278.5,149 C289.13,159.38 301.11,169.53 313.19,178.96 " fill="none" id="C_0008931271679944880159&lt;-C_0004757659213119929724" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="none" points="244.99,122.17,238.2,102.1,256.03,113.56,244.99,122.17" style="stroke: #A80036; stroke-width: 1.0;"/>
<g id="link_C_0001116408959993110019_C_0000669517069151826610">
<path codeLine="30" d="M148.8977,134.4061 C124.9177,165.4561 106.63,189.14 84.94,217.24 " fill="none" id="C_0001116408959993110019-backto-C_0000669517069151826610" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="159.9,120.16,144.149,130.7386,153.6464,138.0735,159.9,120.16" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001116408959993110019_C_0001210513233906695933">
<path codeLine="31" d="M195.3633,138.064 C192.1433,169.114 190.06,189.14 187.15,217.24 " fill="none" id="C_0001116408959993110019-backto-C_0001210513233906695933" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="197.22,120.16,189.3953,137.4451,201.3313,138.6829,197.22,120.16" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0000594707401639991215_C_0001116408959993110019">
<path codeLine="32" d="M364.85,196.2 C350.21,180.49 333.96,163.99 318,149.7 C305.31,138.34 295.9527,130.5862 282.0527,119.9962 " fill="none" id="C_0000594707401639991215-to-C_0001116408959993110019" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="#181818" points="277.28,116.36,282.0149,124.996,281.2572,119.3901,286.8631,118.6325,277.28,116.36" style="stroke:#181818;stroke-width:1.0;"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="338" y="156"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="51" x="348" y="162.777">m_target</text>
</g>
<g id="link_C_0001116408959993110019_C_0000594707401639991215">
<path codeLine="33" d="M276.1517,132.3734 C292.6217,147.5634 297.31,151.74 314,166.7 C324.79,176.37 336.29,186.53 347.55,196.41 " fill="none" id="C_0001116408959993110019-backto-C_0000594707401639991215" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="262.92,120.17,272.0839,136.7839,280.2195,127.9628,262.92,120.17" style="stroke:#181818;stroke-width:1.0;"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

@@ -1,59 +1,64 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 586.515625 374" style="max-width: 586.516px; background-color: white;" width="586.515625" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 613.1875 374" style="max-width: 613.188px; background-color: white;" width="613.1875" id="my-svg">
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:transparent!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker aggregation classDiagram" id="my-svg_classDiagram-aggregationEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker extension classDiagram" id="my-svg_classDiagram-extensionStart">
<path d="M 1,7 L18,13 V 1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker extension classDiagram" id="my-svg_classDiagram-extensionEnd">
<path d="M 1,1 V 13 L18,7 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="18" class="marker composition classDiagram" id="my-svg_classDiagram-compositionStart">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="1" class="marker composition classDiagram" id="my-svg_classDiagram-compositionEnd">
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="6" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyStart">
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="13" class="marker dependency classDiagram" id="my-svg_classDiagram-dependencyEnd">
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="13" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopStart">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="1" class="marker lollipop classDiagram" id="my-svg_classDiagram-lollipopEnd">
<circle r="6" cy="7" cx="7" fill="transparent" stroke="black"/>
</marker>
</defs>
<g class="root">
<g class="clusters"/>
<g class="edgePaths">
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M151.9765625,124.39027845627749L136.30729166666666,134.8252320468979C120.63802083333333,145.26018563751833,89.29947916666667,166.13009281875915,73.63020833333333,185.8983797427129C57.9609375,205.66666666666666,57.9609375,224.33333333333334,57.9609375,233.66666666666666L57.9609375,243"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M211.07530076291079,153L210.543219385759,158.66666666666666C210.0111380086072,164.33333333333334,208.94697525430357,175.66666666666666,208.4148938771518,190.66666666666666C207.8828125,205.66666666666666,207.8828125,224.33333333333334,207.8828125,233.66666666666666L207.8828125,243"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M461.6397447183099,221L463.08259976525824,215.33333333333334C464.5254548122066,209.66666666666666,467.4111649061033,198.33333333333334,437.76938453638496,179.55125764750792C408.1276041666667,160.7691819616825,345.9583333333333,134.538363923365,314.8736979166667,121.42295490420626L283.7890625,108.30754588504752"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M283.7890625,140.16093366093367L292.4127604166667,147.96744471744472C301.0364583333333,155.77395577395578,318.2838541666667,171.3869778869779,332.6353249706573,184.8601556101556C346.9867957746479,198.33333333333334,358.4423415492958,209.66666666666666,364.17011443661977,215.33333333333334L369.8978873239437,221"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M145.64356762080973,134.48745308187347L131.77068135067478,143.23954423489457C117.89779508053982,151.99163538791564,90.15202254026991,169.49581769395783,76.27913627013496,187.58124218031222C62.40625,205.66666666666666,62.40625,224.33333333333334,62.40625,233.66666666666666L62.40625,243"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M222.7284991519119,170.92117153213803L222.47687429325993,173.6009762767817C222.22524943460795,176.28078102142535,221.721999717304,181.64039051071268,221.47037485865198,193.65352858868968C221.21875,205.66666666666666,221.21875,224.33333333333334,221.21875,233.66666666666666L221.21875,243"/>
<path marker-end="url(#my-svg_classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M483.8663072183099,221L485.30916226525824,215.33333333333334C486.7520173122066,209.66666666666666,489.6377274061033,198.33333333333334,460.18110130043965,180.07295939628645C430.724475194776,161.81258545923959,368.92551288955195,136.62517091847914,338.02603173693996,124.03146364809895L307.1265505843279,111.43775637771873"/>
<path marker-start="url(#my-svg_classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M315.1349580451977,153.69847376965285L321.4978817043314,159.24872814137737C327.86080536346515,164.7989825131019,340.5866526817326,175.89949125655096,352.9138760278772,187.11641229494217C365.24109937402187,198.33333333333334,377.1696987480438,209.66666666666666,383.13399843505476,215.33333333333334L389.0982981220657,221"/>
</g>
<g class="edgeLabels">
<g class="edgeLabel">
@@ -74,7 +79,7 @@
</foreignObject>
</g>
</g>
<g transform="translate(470.296875, 187)" class="edgeLabel">
<g transform="translate(492.5234375, 187)" class="edgeLabel">
<g transform="translate(-34.234375, -9)" class="label">
<foreignObject height="18" width="68.46875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -96,11 +101,11 @@
</g>
</g>
<g class="nodes">
<a transform="translate(217.8828125, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L6">
<g title="Target" id="classId-C_0008931271679944880159-0" class="node default clickable">
<rect height="145" width="131.8125" y="-72.5" x="-65.90625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="65.90625" x1="-65.90625" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="65.90625" x1="-65.90625" class="divider"/>
<a transform="translate(231.21875, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L6">
<g title="Target" id="classId-C_0001116408959993110019-0" class="node default clickable">
<rect height="145" width="140.703125" y="-72.5" x="-70.3515625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="70.3515625" x1="-70.3515625" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="70.3515625" x1="-70.3515625" class="divider"/>
<g class="label">
<foreignObject transform="translate( -37.359375, -65)" height="18" width="74.71875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -112,29 +117,29 @@
<span class="nodeLabel">Target</span>
</div>
</foreignObject>
<foreignObject transform="translate( -58.40625, 3)" height="18" width="116.8125">
<foreignObject transform="translate( -62.8515625, 3)" height="18" width="125.703125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+~Target() : void</span>
<span style="font-style:italic;" class="nodeLabel">+~Target() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -58.40625, 25)" height="18" width="84.921875">
<foreignObject transform="translate( -62.8515625, 25)" height="18" width="93.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+m1() : void</span>
<span style="font-style:italic;" class="nodeLabel">+m1() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -58.40625, 47)" height="18" width="84.921875">
<foreignObject transform="translate( -62.8515625, 47)" height="18" width="93.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
<span style="font-style:italic;" class="nodeLabel">+m2() : void</span>
<span style="font-style:italic;" class="nodeLabel">+m2() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(57.9609375, 293.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L14">
<g title="Target1" id="classId-C_0005356136553214612884-1" class="node default clickable">
<rect height="101" width="99.921875" y="-50.5" x="-49.9609375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="49.9609375" x1="-49.9609375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="49.9609375" x1="-49.9609375" class="divider"/>
<a transform="translate(62.40625, 293.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L14">
<g title="Target1" id="classId-C_0000669517069151826610-1" class="node default clickable">
<rect height="101" width="108.8125" y="-50.5" x="-54.40625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="54.40625" x1="-54.40625" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="54.40625" x1="-54.40625" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -146,24 +151,24 @@
<span class="nodeLabel">Target1</span>
</div>
</foreignObject>
<foreignObject transform="translate( -42.4609375, 3)" height="18" width="84.921875">
<foreignObject transform="translate( -46.90625, 3)" height="18" width="93.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+m1() : void</span>
<span class="nodeLabel">+m1() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -42.4609375, 25)" height="18" width="84.921875">
<foreignObject transform="translate( -46.90625, 25)" height="18" width="93.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+m2() : void</span>
<span class="nodeLabel">+m2() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(207.8828125, 293.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L20">
<g title="Target2" id="classId-C_0009684105871253567467-2" class="node default clickable">
<rect height="101" width="99.921875" y="-50.5" x="-49.9609375" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="49.9609375" x1="-49.9609375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="49.9609375" x1="-49.9609375" class="divider"/>
<a transform="translate(221.21875, 293.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L20">
<g title="Target2" id="classId-C_0001210513233906695933-2" class="node default clickable">
<rect height="101" width="108.8125" y="-50.5" x="-54.40625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="54.40625" x1="-54.40625" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="54.40625" x1="-54.40625" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -175,24 +180,24 @@
<span class="nodeLabel">Target2</span>
</div>
</foreignObject>
<foreignObject transform="translate( -42.4609375, 3)" height="18" width="84.921875">
<foreignObject transform="translate( -46.90625, 3)" height="18" width="93.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+m1() : void</span>
<span class="nodeLabel">+m1() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -42.4609375, 25)" height="18" width="84.921875">
<foreignObject transform="translate( -46.90625, 25)" height="18" width="93.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+m2() : void</span>
<span class="nodeLabel">+m2() : : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(443.1796875, 293.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00024/t00024.cc#L26">
<g title="Proxy" id="classId-C_0004757659213119929724-3" class="node default clickable">
<rect height="145" width="270.671875" y="-72.5" x="-135.3359375" class="outer title-state"/>
<line y2="-42.5" y1="-42.5" x2="135.3359375" x1="-135.3359375" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="135.3359375" x1="-135.3359375" class="divider"/>
<a transform="translate(465.40625, 293.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00024/t00024.cc#L26">
<g title="Proxy" id="classId-C_0000594707401639991215-3" class="node default clickable">
<rect height="145" width="279.5625" y="-72.5" x="-139.78125" class="outer title-state"/>
<line y2="-42.5" y1="-42.5" x2="139.78125" x1="-139.78125" class="divider"/>
<line y2="-4.5" y1="-4.5" x2="139.78125" x1="-139.78125" class="divider"/>
<g class="label">
<foreignObject height="0" width="0">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
@@ -204,24 +209,24 @@
<span class="nodeLabel">Proxy</span>
</div>
</foreignObject>
<foreignObject transform="translate( -127.8359375, -31)" height="18" width="251.6875">
<foreignObject transform="translate( -132.28125, -31)" height="18" width="251.6875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-m_target : std::shared_ptr&lt;Target&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -127.8359375, 3)" height="18" width="255.671875">
<foreignObject transform="translate( -132.28125, 3)" height="18" width="264.5625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+Proxy(std::shared_ptr target) : void</span>
<span class="nodeLabel">+Proxy(std::shared_ptr target) : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -127.8359375, 25)" height="18" width="84.921875">
<foreignObject transform="translate( -132.28125, 25)" height="18" width="93.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+m1() : void</span>
<span class="nodeLabel">+m1() : : void</span>
</div>
</foreignObject>
<foreignObject transform="translate( -127.8359375, 47)" height="18" width="84.921875">
<foreignObject transform="translate( -132.28125, 47)" height="18" width="93.8125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+m2() : void</span>
<span class="nodeLabel">+m2() : : void</span>
</div>
</foreignObject>
</g>

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -5,7 +5,7 @@ diagrams:
t00025_class:
type: class
glob:
- t00025.cc
- /t00025.cc
using_namespace: clanguml::t00025
include:
namespaces:
@@ -65,8 +65,8 @@ public:
"elements": [
{
"bases": [],
"display_name": "Target1",
"id": "12590792276569553107",
"display_name": "clanguml::t00025::Target1",
"id": "1573849034571194138",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -76,7 +76,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -99,12 +98,10 @@ public:
"line": 8,
"translation_unit": "t00025.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -127,7 +124,6 @@ public:
"line": 9,
"translation_unit": "t00025.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -144,8 +140,8 @@ public:
},
{
"bases": [],
"display_name": "Target2",
"id": "6015171275694677358",
"display_name": "clanguml::t00025::Target2",
"id": "751896409461834669",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -155,7 +151,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -178,12 +173,10 @@ public:
"line": 14,
"translation_unit": "t00025.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -206,7 +199,6 @@ public:
"line": 15,
"translation_unit": "t00025.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -223,8 +215,8 @@ public:
},
{
"bases": [],
"display_name": "Proxy<T>",
"id": "11866826404291240710",
"display_name": "clanguml::t00025::Proxy<T>",
"id": "1483353300536405088",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -247,7 +239,6 @@ public:
"methods": [
{
"access": "public",
"display_name": "Proxy",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -275,12 +266,10 @@ public:
"line": 20,
"translation_unit": "t00025.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m1",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -303,12 +292,10 @@ public:
"line": 24,
"translation_unit": "t00025.cc"
},
"template_parameters": [],
"type": "void"
},
{
"access": "public",
"display_name": "m2",
"is_const": false,
"is_consteval": false,
"is_constexpr": false,
@@ -331,7 +318,6 @@ public:
"line": 25,
"translation_unit": "t00025.cc"
},
"template_parameters": [],
"type": "void"
}
],
@@ -355,8 +341,8 @@ public:
},
{
"bases": [],
"display_name": "Proxy<Target1>",
"id": "13159734742705115399",
"display_name": "clanguml::t00025::Proxy<clanguml::t00025::Target1>",
"id": "1644966842838139424",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -377,15 +363,15 @@ public:
"is_variadic": false,
"kind": "argument",
"template_parameters": [],
"type": "Target1"
"type": "clanguml::t00025::Target1"
}
],
"type": "class"
},
{
"bases": [],
"display_name": "Proxy<Target2>",
"id": "9520824801890390106",
"display_name": "clanguml::t00025::Proxy<clanguml::t00025::Target2>",
"id": "1190103100236298763",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -406,15 +392,15 @@ public:
"is_variadic": false,
"kind": "argument",
"template_parameters": [],
"type": "Target2"
"type": "clanguml::t00025::Target2"
}
],
"type": "class"
},
{
"bases": [],
"display_name": "ProxyHolder",
"id": "15250538431605181984",
"display_name": "clanguml::t00025::ProxyHolder",
"id": "1906317303950647748",
"is_abstract": false,
"is_nested": false,
"is_struct": false,
@@ -460,44 +446,43 @@ public:
}
],
"name": "t00025_class",
"package_type": "namespace",
"relationships": [
{
"access": "public",
"destination": "12590792276569553107",
"source": "13159734742705115399",
"destination": "1573849034571194138",
"source": "1644966842838139424",
"type": "dependency"
},
{
"access": "public",
"destination": "11866826404291240710",
"source": "13159734742705115399",
"destination": "1483353300536405088",
"source": "1644966842838139424",
"type": "instantiation"
},
{
"access": "public",
"destination": "6015171275694677358",
"source": "9520824801890390106",
"destination": "751896409461834669",
"source": "1190103100236298763",
"type": "dependency"
},
{
"access": "public",
"destination": "11866826404291240710",
"source": "9520824801890390106",
"destination": "1483353300536405088",
"source": "1190103100236298763",
"type": "instantiation"
},
{
"access": "public",
"destination": "13159734742705115399",
"destination": "1644966842838139424",
"label": "proxy1",
"source": "15250538431605181984",
"source": "1906317303950647748",
"type": "aggregation"
},
{
"access": "public",
"destination": "9520824801890390106",
"destination": "1190103100236298763",
"label": "proxy2",
"source": "15250538431605181984",
"source": "1906317303950647748",
"type": "aggregation"
}
],

View File

@@ -1,154 +1,172 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="386px" preserveAspectRatio="none" style="width:512px;height:386px;" version="1.1" viewBox="0 0 512 386" width="512px" zoomAndPan="magnify">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="404px" preserveAspectRatio="none" style="width:544px;height:404px;background:#FFFFFF;" version="1.1" viewBox="0 0 544 404" width="544px" zoomAndPan="magnify">
<defs>
<filter height="300%" id="f1kmm0fxkl9sm8" width="300%" x="-1" y="-1">
<feGaussianBlur result="blurOut" stdDeviation="2.0"/>
<feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/>
<feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/>
<feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/>
</filter>
<style type="text/css">a:hover { text-decoration: underline; }</style>
</defs>
<g>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L6" target="_top" title="Target1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L6" xlink:show="new" xlink:title="Target1" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1kmm0fxkl9sm8)" height="73.6094" id="C_0012590792276569553107" style="stroke: #A80036; stroke-width: 1.5;" width="87" x="6" y="284.5"/>
<ellipse cx="23.7" cy="300.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M26.6688,306.1406 Q26.0906,306.4375 25.45,306.5781 Q24.8094,306.7344 24.1063,306.7344 Q21.6063,306.7344 20.2781,305.0938 Q18.9656,303.4375 18.9656,300.3125 Q18.9656,297.1875 20.2781,295.5313 Q21.6063,293.875 24.1063,293.875 Q24.8094,293.875 25.45,294.0313 Q26.1063,294.1875 26.6688,294.4844 L26.6688,297.2031 Q26.0438,296.625 25.45,296.3594 Q24.8563,296.0781 24.2313,296.0781 Q22.8875,296.0781 22.2,297.1563 Q21.5125,298.2188 21.5125,300.3125 Q21.5125,302.4063 22.2,303.4844 Q22.8875,304.5469 24.2313,304.5469 Q24.8563,304.5469 25.45,304.2813 Q26.0438,304 26.6688,303.4219 L26.6688,306.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="49" x="38.3" y="304.6543">Target1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="92" y1="316.5" y2="316.5"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L6" target="_top" title="Target1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L6" xlink:show="new" xlink:title="Target1" xlink:type="simple">
<g id="elem_C_0001573849034571194138">
<rect codeLine="2" fill="#F1F1F1" height="81.5999" id="C_0001573849034571194138" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="94" x="7" y="295.4"/>
<ellipse cx="27.4" cy="311.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M22.4,312.5563 C22.4,315.0563 24.5406,316.8688 27.4625,316.8688 C28.6969,316.8688 29.8688,316.5719 30.6188,316.0563 C31.2281,315.6344 31.5563,315.2125 31.5563,314.8063 C31.5563,314.3375 31.1344,313.9313 30.6344,313.9313 C30.4,313.9313 30.1813,314.0094 29.9781,314.2125 C29.5406,314.65 29.5406,314.65 29.3688,314.7438 C28.9156,314.9781 28.275,315.1188 27.5094,315.1188 C25.5094,315.1188 24.2281,314.1031 24.2281,312.525 L24.2281,311.4781 C24.2281,309.775 25.4469,308.5719 27.15,308.5719 C27.7281,308.5719 28.3063,308.7125 28.775,308.9625 C29.2438,309.2281 29.4156,309.4156 29.4781,309.775 C29.6031,310.4469 29.8531,310.6969 30.3844,310.6969 C30.6656,310.6969 30.9469,310.5563 31.1344,310.3375 C31.2594,310.1656 31.3063,309.9938 31.3063,309.5563 L31.3063,308.1969 C31.3063,307.775 31.2906,307.6344 31.1656,307.4625 C30.9938,307.2125 30.7125,307.0563 30.3844,307.0563 C30.0719,307.0563 29.8688,307.1656 29.65,307.4313 C28.4781,306.9313 28.0406,306.8219 27.0875,306.8219 C24.4156,306.8219 22.4,308.8375 22.4,311.4625 L22.4,312.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="50" x="42.6" y="316.006">Target1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="100" y1="327.4" y2="327.4"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L8" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L8" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="336.3"/>
<ellipse cx="18" cy="341.3" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L8" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L8" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="27" y="344.4059">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L9" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L9" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="13" y="353.0999"/>
<ellipse cx="18" cy="358.0999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L9" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L9" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="27" y="361.2059">m2() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="100" y1="368.9999" y2="368.9999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L8" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L8" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="322.5"/>
<ellipse cx="17" cy="327.5" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L12" target="_top" title="Target2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L12" xlink:show="new" xlink:title="Target2" xlink:type="simple">
<g id="elem_C_0000751896409461834669">
<rect codeLine="8" fill="#F1F1F1" height="81.5999" id="C_0000751896409461834669" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="94" x="443" y="295.4"/>
<ellipse cx="463.4" cy="311.4" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M458.4,312.5563 C458.4,315.0563 460.5406,316.8688 463.4625,316.8688 C464.6969,316.8688 465.8688,316.5719 466.6188,316.0563 C467.2281,315.6344 467.5563,315.2125 467.5563,314.8063 C467.5563,314.3375 467.1344,313.9313 466.6344,313.9313 C466.4,313.9313 466.1813,314.0094 465.9781,314.2125 C465.5406,314.65 465.5406,314.65 465.3688,314.7438 C464.9156,314.9781 464.275,315.1188 463.5094,315.1188 C461.5094,315.1188 460.2281,314.1031 460.2281,312.525 L460.2281,311.4781 C460.2281,309.775 461.4469,308.5719 463.15,308.5719 C463.7281,308.5719 464.3063,308.7125 464.775,308.9625 C465.2438,309.2281 465.4156,309.4156 465.4781,309.775 C465.6031,310.4469 465.8531,310.6969 466.3844,310.6969 C466.6656,310.6969 466.9469,310.5563 467.1344,310.3375 C467.2594,310.1656 467.3063,309.9938 467.3063,309.5563 L467.3063,308.1969 C467.3063,307.775 467.2906,307.6344 467.1656,307.4625 C466.9938,307.2125 466.7125,307.0563 466.3844,307.0563 C466.0719,307.0563 465.8688,307.1656 465.65,307.4313 C464.4781,306.9313 464.0406,306.8219 463.0875,306.8219 C460.4156,306.8219 458.4,308.8375 458.4,311.4625 L458.4,312.5563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="50" x="478.6" y="316.006">Target2</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="444" x2="536" y1="327.4" y2="327.4"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L14" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L14" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="449" y="336.3"/>
<ellipse cx="454" cy="341.3" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L14" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L14" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="463" y="344.4059">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L15" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L15" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="449" y="353.0999"/>
<ellipse cx="454" cy="358.0999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L15" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L15" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="463" y="361.2059">m2() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="444" x2="536" y1="368.9999" y2="368.9999"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L8" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L8" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="26" y="330.7104">m1() : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L18" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L18" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<g id="elem_C_0001483353300536405088">
<rect codeLine="14" fill="#F1F1F1" height="123.1997" id="C_0001483353300536405088" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="272" x="136" y="274.6"/>
<ellipse cx="244.25" cy="290.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M239.25,291.7563 C239.25,294.2563 241.3906,296.0688 244.3125,296.0688 C245.5469,296.0688 246.7188,295.7719 247.4688,295.2563 C248.0781,294.8344 248.4063,294.4125 248.4063,294.0063 C248.4063,293.5375 247.9844,293.1313 247.4844,293.1313 C247.25,293.1313 247.0313,293.2094 246.8281,293.4125 C246.3906,293.85 246.3906,293.85 246.2188,293.9438 C245.7656,294.1781 245.125,294.3188 244.3594,294.3188 C242.3594,294.3188 241.0781,293.3031 241.0781,291.725 L241.0781,290.6781 C241.0781,288.975 242.2969,287.7719 244,287.7719 C244.5781,287.7719 245.1563,287.9125 245.625,288.1625 C246.0938,288.4281 246.2656,288.6156 246.3281,288.975 C246.4531,289.6469 246.7031,289.8969 247.2344,289.8969 C247.5156,289.8969 247.7969,289.7563 247.9844,289.5375 C248.1094,289.3656 248.1563,289.1938 248.1563,288.7563 L248.1563,287.3969 C248.1563,286.975 248.1406,286.8344 248.0156,286.6625 C247.8438,286.4125 247.5625,286.2563 247.2344,286.2563 C246.9219,286.2563 246.7188,286.3656 246.5,286.6313 C245.3281,286.1313 244.8906,286.0219 243.9375,286.0219 C241.2656,286.0219 239.25,288.0375 239.25,290.6625 L239.25,291.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="36" x="264.75" y="295.206">Proxy</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="9" x="402" y="271.6"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="7" x="403" y="285.8001">T</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="137" x2="407" y1="306.6" y2="306.6"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L20" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L20" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="142" y="315.5"/>
<ellipse cx="147" cy="320.5" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L20" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L20" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="246" x="156" y="323.6059">Proxy(std::shared_ptr&lt;T&gt; target) : void</text>
</a>
<line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="137" x2="407" y1="331.3999" y2="331.3999"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L24" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L24" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="142" y="340.2999"/>
<ellipse cx="147" cy="345.2999" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L24" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L24" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="156" y="348.4059">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L25" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L25" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="142" y="357.0998"/>
<ellipse cx="147" cy="362.0998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L25" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L25" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="156" y="365.2058">m2() : void</text>
</a>
<line style="stroke:#181818;stroke-width:0.5;" x1="137" x2="407" y1="372.9998" y2="372.9998"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L28" target="_top" title="m_target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L28" xlink:show="new" xlink:title="m_target" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="142" y="381.8997"/>
<rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="144" y="383.8997"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L28" target="_top" title="m_target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L28" xlink:show="new" xlink:title="m_target" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="190" x="156" y="390.0057">m_target : std::shared_ptr&lt;T&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L9" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L9" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="12" y="335.3047"/>
<ellipse cx="17" cy="340.3047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L18" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L18" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<g id="elem_C_0001644966842838139424">
<rect codeLine="23" fill="#F1F1F1" height="48" id="C_0001644966842838139424" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="114" x="141" y="165.6"/>
<ellipse cx="156" cy="181.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M151,182.7563 C151,185.2563 153.1406,187.0688 156.0625,187.0688 C157.2969,187.0688 158.4688,186.7719 159.2188,186.2563 C159.8281,185.8344 160.1563,185.4125 160.1563,185.0063 C160.1563,184.5375 159.7344,184.1313 159.2344,184.1313 C159,184.1313 158.7813,184.2094 158.5781,184.4125 C158.1406,184.85 158.1406,184.85 157.9688,184.9438 C157.5156,185.1781 156.875,185.3188 156.1094,185.3188 C154.1094,185.3188 152.8281,184.3031 152.8281,182.725 L152.8281,181.6781 C152.8281,179.975 154.0469,178.7719 155.75,178.7719 C156.3281,178.7719 156.9063,178.9125 157.375,179.1625 C157.8438,179.4281 158.0156,179.6156 158.0781,179.975 C158.2031,180.6469 158.4531,180.8969 158.9844,180.8969 C159.2656,180.8969 159.5469,180.7563 159.7344,180.5375 C159.8594,180.3656 159.9063,180.1938 159.9063,179.7563 L159.9063,178.3969 C159.9063,177.975 159.8906,177.8344 159.7656,177.6625 C159.5938,177.4125 159.3125,177.2563 158.9844,177.2563 C158.6719,177.2563 158.4688,177.3656 158.25,177.6313 C157.0781,177.1313 156.6406,177.0219 155.6875,177.0219 C153.0156,177.0219 151,179.0375 151,181.6625 L151,182.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="36" x="170" y="186.206">Proxy</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="44" x="214" y="162.6"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="42" x="215" y="176.8001">Target1</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="142" x2="254" y1="197.6" y2="197.6"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="142" x2="254" y1="205.6" y2="205.6"/>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L9" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L9" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="26" y="343.5151">m2() : void</text>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L18" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L18" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<g id="elem_C_0001190103100236298763">
<rect codeLine="27" fill="#F1F1F1" height="48" id="C_0001190103100236298763" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="114" x="290" y="165.6"/>
<ellipse cx="305" cy="181.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M300,182.7563 C300,185.2563 302.1406,187.0688 305.0625,187.0688 C306.2969,187.0688 307.4688,186.7719 308.2188,186.2563 C308.8281,185.8344 309.1563,185.4125 309.1563,185.0063 C309.1563,184.5375 308.7344,184.1313 308.2344,184.1313 C308,184.1313 307.7813,184.2094 307.5781,184.4125 C307.1406,184.85 307.1406,184.85 306.9688,184.9438 C306.5156,185.1781 305.875,185.3188 305.1094,185.3188 C303.1094,185.3188 301.8281,184.3031 301.8281,182.725 L301.8281,181.6781 C301.8281,179.975 303.0469,178.7719 304.75,178.7719 C305.3281,178.7719 305.9063,178.9125 306.375,179.1625 C306.8438,179.4281 307.0156,179.6156 307.0781,179.975 C307.2031,180.6469 307.4531,180.8969 307.9844,180.8969 C308.2656,180.8969 308.5469,180.7563 308.7344,180.5375 C308.8594,180.3656 308.9063,180.1938 308.9063,179.7563 L308.9063,178.3969 C308.9063,177.975 308.8906,177.8344 308.7656,177.6625 C308.5938,177.4125 308.3125,177.2563 307.9844,177.2563 C307.6719,177.2563 307.4688,177.3656 307.25,177.6313 C306.0781,177.1313 305.6406,177.0219 304.6875,177.0219 C302.0156,177.0219 300,179.0375 300,181.6625 L300,182.7563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="36" x="319" y="186.206">Proxy</text>
<rect fill="#FFFFFF" height="18.2001" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:2.0,2.0;" width="44" x="363" y="162.6"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="42" x="364" y="176.8001">Target2</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="291" x2="403" y1="197.6" y2="197.6"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="291" x2="403" y1="205.6" y2="205.6"/>
</g>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="92" y1="350.1094" y2="350.1094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L12" target="_top" title="Target2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L12" xlink:show="new" xlink:title="Target2" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1kmm0fxkl9sm8)" height="73.6094" id="C_0006015171275694677358" style="stroke: #A80036; stroke-width: 1.5;" width="87" x="414" y="284.5"/>
<ellipse cx="431.7" cy="300.5" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M434.6688,306.1406 Q434.0906,306.4375 433.45,306.5781 Q432.8094,306.7344 432.1063,306.7344 Q429.6063,306.7344 428.2781,305.0938 Q426.9656,303.4375 426.9656,300.3125 Q426.9656,297.1875 428.2781,295.5313 Q429.6063,293.875 432.1063,293.875 Q432.8094,293.875 433.45,294.0313 Q434.1063,294.1875 434.6688,294.4844 L434.6688,297.2031 Q434.0438,296.625 433.45,296.3594 Q432.8563,296.0781 432.2313,296.0781 Q430.8875,296.0781 430.2,297.1563 Q429.5125,298.2188 429.5125,300.3125 Q429.5125,302.4063 430.2,303.4844 Q430.8875,304.5469 432.2313,304.5469 Q432.8563,304.5469 433.45,304.2813 Q434.0438,304 434.6688,303.4219 L434.6688,306.1406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="49" x="446.3" y="304.6543">Target2</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="415" x2="500" y1="316.5" y2="316.5"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L31" target="_top" title="ProxyHolder" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L31" xlink:show="new" xlink:title="ProxyHolder" xlink:type="simple">
<g id="elem_C_0001906317303950647748">
<rect codeLine="31" fill="#F1F1F1" height="81.5999" id="C_0001906317303950647748" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="183" x="180.5" y="7"/>
<ellipse cx="228.75" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/>
<path d="M223.75,24.1563 C223.75,26.6563 225.8906,28.4688 228.8125,28.4688 C230.0469,28.4688 231.2188,28.1719 231.9688,27.6563 C232.5781,27.2344 232.9063,26.8125 232.9063,26.4063 C232.9063,25.9375 232.4844,25.5313 231.9844,25.5313 C231.75,25.5313 231.5313,25.6094 231.3281,25.8125 C230.8906,26.25 230.8906,26.25 230.7188,26.3438 C230.2656,26.5781 229.625,26.7188 228.8594,26.7188 C226.8594,26.7188 225.5781,25.7031 225.5781,24.125 L225.5781,23.0781 C225.5781,21.375 226.7969,20.1719 228.5,20.1719 C229.0781,20.1719 229.6563,20.3125 230.125,20.5625 C230.5938,20.8281 230.7656,21.0156 230.8281,21.375 C230.9531,22.0469 231.2031,22.2969 231.7344,22.2969 C232.0156,22.2969 232.2969,22.1563 232.4844,21.9375 C232.6094,21.7656 232.6563,21.5938 232.6563,21.1563 L232.6563,19.7969 C232.6563,19.375 232.6406,19.2344 232.5156,19.0625 C232.3438,18.8125 232.0625,18.6563 231.7344,18.6563 C231.4219,18.6563 231.2188,18.7656 231,19.0313 C229.8281,18.5313 229.3906,18.4219 228.4375,18.4219 C225.7656,18.4219 223.75,20.4375 223.75,23.0625 L223.75,24.1563 Z " fill="#000000"/>
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="78" x="249.25" y="27.606">ProxyHolder</text>
<line style="stroke:#181818;stroke-width:0.5;" x1="181.5" x2="362.5" y1="39" y2="39"/>
<line style="stroke:#181818;stroke-width:0.5;" x1="181.5" x2="362.5" y1="47" y2="47"/>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L33" target="_top" title="proxy1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L33" xlink:show="new" xlink:title="proxy1" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="186.5" y="55.9"/>
<ellipse cx="191.5" cy="60.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L33" target="_top" title="proxy1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L33" xlink:show="new" xlink:title="proxy1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="157" x="200.5" y="64.0059">proxy1 : Proxy&lt;Target1&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L34" target="_top" title="proxy2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L34" xlink:show="new" xlink:title="proxy2" xlink:type="simple">
<rect fill="#F1F1F1" height="10" style="stroke:none;stroke-width:1.0;" width="20" x="186.5" y="72.6999"/>
<ellipse cx="191.5" cy="77.6999" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L34" target="_top" title="proxy2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/427d110b37885e5ce52a6525f175236affea35fa/tests/t00025/t00025.cc#L34" xlink:show="new" xlink:title="proxy2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="157" x="200.5" y="80.8059">proxy2 : Proxy&lt;Target2&gt;</text>
</a>
</g>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L14" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L14" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="420" y="322.5"/>
<ellipse cx="425" cy="327.5" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L14" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L14" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="434" y="330.7104">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L15" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L15" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="420" y="335.3047"/>
<ellipse cx="425" cy="340.3047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L15" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L15" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="434" y="343.5151">m2() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="415" x2="500" y1="350.1094" y2="350.1094"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L18" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L18" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1kmm0fxkl9sm8)" height="107.2188" id="C_0011866826404291240710" style="stroke: #A80036; stroke-width: 1.5;" width="251" x="128" y="268"/>
<ellipse cx="227.25" cy="284" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M230.2188,289.6406 Q229.6406,289.9375 229,290.0781 Q228.3594,290.2344 227.6563,290.2344 Q225.1563,290.2344 223.8281,288.5938 Q222.5156,286.9375 222.5156,283.8125 Q222.5156,280.6875 223.8281,279.0313 Q225.1563,277.375 227.6563,277.375 Q228.3594,277.375 229,277.5313 Q229.6563,277.6875 230.2188,277.9844 L230.2188,280.7031 Q229.5938,280.125 229,279.8594 Q228.4063,279.5781 227.7813,279.5781 Q226.4375,279.5781 225.75,280.6563 Q225.0625,281.7188 225.0625,283.8125 Q225.0625,285.9063 225.75,286.9844 Q226.4375,288.0469 227.7813,288.0469 Q228.4063,288.0469 229,287.7813 Q229.5938,287.5 230.2188,286.9219 L230.2188,289.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="33" x="247.75" y="288.1543">Proxy</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="9" x="373" y="265"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="7" x="374" y="277.1387">T</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="129" x2="378" y1="300" y2="300"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L20" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L20" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="134" y="306"/>
<ellipse cx="139" cy="311" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L20" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L20" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="225" x="148" y="314.2104">Proxy(std::shared_ptr&lt;T&gt; target) : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="129" x2="378" y1="320.8047" y2="320.8047"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L24" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L24" xlink:show="new" xlink:title="m1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="134" y="326.8047"/>
<ellipse cx="139" cy="331.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L24" target="_top" title="m1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L24" xlink:show="new" xlink:title="m1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="148" y="335.0151">m1() : void</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L25" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L25" xlink:show="new" xlink:title="m2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="134" y="339.6094"/>
<ellipse cx="139" cy="344.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L25" target="_top" title="m2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L25" xlink:show="new" xlink:title="m2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="61" x="148" y="347.8198">m2() : void</text>
</a>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="129" x2="378" y1="354.4141" y2="354.4141"/>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L28" target="_top" title="m_target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L28" xlink:show="new" xlink:title="m_target" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="134" y="360.4141"/>
<rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="136" y="362.4141"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L28" target="_top" title="m_target" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L28" xlink:show="new" xlink:title="m_target" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="176" x="148" y="368.6245">m_target : std::shared_ptr&lt;T&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L18" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L18" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1kmm0fxkl9sm8)" height="48" id="C_0013159734742705115399" style="stroke: #A80036; stroke-width: 1.5;" width="118" x="90.5" y="159"/>
<ellipse cx="105.5" cy="175" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M108.4688,180.6406 Q107.8906,180.9375 107.25,181.0781 Q106.6094,181.2344 105.9063,181.2344 Q103.4063,181.2344 102.0781,179.5938 Q100.7656,177.9375 100.7656,174.8125 Q100.7656,171.6875 102.0781,170.0313 Q103.4063,168.375 105.9063,168.375 Q106.6094,168.375 107.25,168.5313 Q107.9063,168.6875 108.4688,168.9844 L108.4688,171.7031 Q107.8438,171.125 107.25,170.8594 Q106.6563,170.5781 106.0313,170.5781 Q104.6875,170.5781 104,171.6563 Q103.3125,172.7188 103.3125,174.8125 Q103.3125,176.9063 104,177.9844 Q104.6875,179.0469 106.0313,179.0469 Q106.6563,179.0469 107.25,178.7813 Q107.8438,178.5 108.4688,177.9219 L108.4688,180.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="33" x="119.5" y="179.1543">Proxy</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="51" x="160.5" y="156"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="49" x="161.5" y="168.1387">Target1</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="91.5" x2="207.5" y1="191" y2="191"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="91.5" x2="207.5" y1="199" y2="199"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L18" target="_top" title="Proxy" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L18" xlink:show="new" xlink:title="Proxy" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1kmm0fxkl9sm8)" height="48" id="C_0009520824801890390106" style="stroke: #A80036; stroke-width: 1.5;" width="118" x="243.5" y="159"/>
<ellipse cx="258.5" cy="175" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M261.4688,180.6406 Q260.8906,180.9375 260.25,181.0781 Q259.6094,181.2344 258.9063,181.2344 Q256.4063,181.2344 255.0781,179.5938 Q253.7656,177.9375 253.7656,174.8125 Q253.7656,171.6875 255.0781,170.0313 Q256.4063,168.375 258.9063,168.375 Q259.6094,168.375 260.25,168.5313 Q260.9063,168.6875 261.4688,168.9844 L261.4688,171.7031 Q260.8438,171.125 260.25,170.8594 Q259.6563,170.5781 259.0313,170.5781 Q257.6875,170.5781 257,171.6563 Q256.3125,172.7188 256.3125,174.8125 Q256.3125,176.9063 257,177.9844 Q257.6875,179.0469 259.0313,179.0469 Q259.6563,179.0469 260.25,178.7813 Q260.8438,178.5 261.4688,177.9219 L261.4688,180.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="33" x="272.5" y="179.1543">Proxy</text>
<rect fill="#FFFFFF" height="15.9688" style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" width="51" x="313.5" y="156"/>
<text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="49" x="314.5" y="168.1387">Target2</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="244.5" x2="360.5" y1="191" y2="191"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="244.5" x2="360.5" y1="199" y2="199"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L31" target="_top" title="ProxyHolder" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L31" xlink:show="new" xlink:title="ProxyHolder" xlink:type="simple">
<rect fill="#FEFECE" filter="url(#f1kmm0fxkl9sm8)" height="73.6094" id="C_0015250538431605181984" style="stroke: #A80036; stroke-width: 1.5;" width="169" x="141" y="8"/>
<ellipse cx="184.35" cy="24" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M187.3188,29.6406 Q186.7406,29.9375 186.1,30.0781 Q185.4594,30.2344 184.7563,30.2344 Q182.2563,30.2344 180.9281,28.5938 Q179.6156,26.9375 179.6156,23.8125 Q179.6156,20.6875 180.9281,19.0313 Q182.2563,17.375 184.7563,17.375 Q185.4594,17.375 186.1,17.5313 Q186.7563,17.6875 187.3188,17.9844 L187.3188,20.7031 Q186.6938,20.125 186.1,19.8594 Q185.5063,19.5781 184.8813,19.5781 Q183.5375,19.5781 182.85,20.6563 Q182.1625,21.7188 182.1625,23.8125 Q182.1625,25.9063 182.85,26.9844 Q183.5375,28.0469 184.8813,28.0469 Q185.5063,28.0469 186.1,27.7813 Q186.6938,27.5 187.3188,26.9219 L187.3188,29.6406 Z "/>
<text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="74" x="204.65" y="28.1543">ProxyHolder</text>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="142" x2="309" y1="40" y2="40"/>
<line style="stroke: #A80036; stroke-width: 1.5;" x1="142" x2="309" y1="48" y2="48"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L33" target="_top" title="proxy1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L33" xlink:show="new" xlink:title="proxy1" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="147" y="54"/>
<ellipse cx="152" cy="59" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L33" target="_top" title="proxy1" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L33" xlink:show="new" xlink:title="proxy1" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="143" x="161" y="62.2104">proxy1 : Proxy&lt;Target1&gt;</text>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L34" target="_top" title="proxy2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L34" xlink:show="new" xlink:title="proxy2" xlink:type="simple">
<rect fill="#FEFECE" height="10" style="stroke: none; stroke-width: 1.0;" width="20" x="147" y="66.8047"/>
<ellipse cx="152" cy="71.8047" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
</a>
<a href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L34" target="_top" title="proxy2" xlink:actuate="onRequest" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00025/t00025.cc#L34" xlink:show="new" xlink:title="proxy2" xlink:type="simple">
<text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="143" x="161" y="75.0151">proxy2 : Proxy&lt;Target2&gt;</text>
</a>
<path d="M132.54,207.16 C117.89,227.14 96.41,256.47 78.96,280.29 " fill="none" id="C_0013159734742705115399-&gt;C_0012590792276569553107" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="75.97,284.37,84.5201,279.4818,78.9287,280.3393,78.0711,274.7479,75.97,284.37" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M167.14,207.16 C176.66,219.65 188.96,235.79 201.28,251.96 " fill="none" id="C_0013159734742705115399-&gt;C_0011866826404291240710" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="206.94,247.84,213.49,267.99,195.81,256.33,206.94,247.84" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M328.79,207.16 C351.68,227.31 385.35,256.96 412.51,280.88 " fill="none" id="C_0009520824801890390106-&gt;C_0006015171275694677358" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="#A80036" points="416.47,284.37,412.3646,275.4176,412.7196,281.0633,407.0739,281.4183,416.47,284.37" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M294.19,207.16 C289.98,218.87 284.63,233.79 279.19,248.93 " fill="none" id="C_0009520824801890390106-&gt;C_0011866826404291240710" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/>
<polygon fill="none" points="285.69,251.53,272.35,267.99,272.52,246.8,285.69,251.53" style="stroke: #A80036; stroke-width: 1.0;"/>
<path d="M198.65,93.87 C195.23,99.97 191.78,106.13 188.5,112 C179.74,127.67 169.91,145.32 162.31,158.98 " fill="none" id="C_0015250538431605181984&lt;-C_0013159734742705115399" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="205.13,82.3,198.7072,85.5784,199.2631,92.768,205.6859,89.4896,205.13,82.3" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="194.5" cy="121.0664" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="43" x="201.5" y="125.0669">proxy1</text>
<path d="M252.45,93.59 C264.91,115.61 279.15,140.76 289.25,158.6 " fill="none" id="C_0015250538431605181984&lt;-C_0009520824801890390106" style="stroke: #A80036; stroke-width: 1.0;"/>
<polygon fill="#FFFFFF" points="245.93,82.09,245.4025,89.2818,251.8382,92.5348,252.3657,85.343,245.93,82.09" style="stroke: #A80036; stroke-width: 1.0;"/>
<ellipse cx="276.5" cy="121.0664" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="43" x="283.5" y="125.0669">proxy2</text>
<g id="link_C_0001644966842838139424_C_0001573849034571194138">
<path codeLine="36" d="M174.86,213.83 C153.08,235.71 124.2337,264.6784 98.1837,290.8384 " fill="none" id="C_0001644966842838139424-to-C_0001573849034571194138" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="93.95,295.09,103.1349,291.5351,97.4781,291.547,97.4662,285.8902,93.95,295.09" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001644966842838139424_C_0001483353300536405088">
<path codeLine="37" d="M209.89,213.83 C218.26,230.2 221.6874,236.8976 232.6174,258.2476 " fill="none" id="C_0001644966842838139424-to-C_0001483353300536405088" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="240.82,274.27,237.9582,255.5134,227.2766,260.9818,240.82,274.27" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001190103100236298763_C_0000751896409461834669">
<path codeLine="38" d="M369.98,213.83 C391.61,235.71 420.2411,264.6638 446.1111,290.8238 " fill="none" id="C_0001190103100236298763-to-C_0000751896409461834669" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="#181818" points="450.33,295.09,446.8458,285.878,446.8142,291.5348,441.1575,291.5033,450.33,295.09" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001190103100236298763_C_0001483353300536405088">
<path codeLine="39" d="M334.95,213.83 C326.46,230.2 322.9714,236.9434 311.8914,258.2934 " fill="none" id="C_0001190103100236298763-to-C_0001483353300536405088" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/>
<polygon fill="none" points="303.6,274.27,317.2169,261.0572,306.5658,255.5296,303.6,274.27" style="stroke:#181818;stroke-width:1.0;"/>
</g>
<g id="link_C_0001906317303950647748_C_0001644966842838139424">
<path codeLine="40" d="M245.1791,99.4674 C232.1191,124.1574 221.42,144.35 210.42,165.15 " fill="none" id="C_0001906317303950647748-backto-C_0001644966842838139424" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="250.79,88.86,244.4487,92.2934,245.1791,99.4674,251.5204,96.034,250.79,88.86" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="241" cy="127.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="39" x="248" y="131.677">proxy1</text>
</g>
<g id="link_C_0001906317303950647748_C_0001190103100236298763">
<path codeLine="41" d="M299.1644,99.4336 C312.4144,124.1236 323.26,144.35 334.42,165.15 " fill="none" id="C_0001906317303950647748-backto-C_0001190103100236298763" style="stroke:#181818;stroke-width:1.0;"/>
<polygon fill="none" points="293.49,88.86,292.8027,96.0383,299.1644,99.4336,299.8517,92.2553,293.49,88.86" style="stroke:#181818;stroke-width:1.0;"/>
<ellipse cx="324" cy="127.9" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/>
<text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="39" x="331" y="131.677">proxy2</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Some files were not shown because too many files have changed in this diff Show More