Files
clang-uml/docs/test_cases/t00029_class_mermaid.svg
2024-06-18 22:25:19 +02:00

296 lines
20 KiB
XML

<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 916.234375 286" style="max-width: 916.234px; background-color: white;" width="916.234375" 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>
<g>
<defs>
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="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">
<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">
<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">
<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">
<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">
<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">
<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">
<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>
</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="M782.1869498239437,142L779.1466769366198,149.5C776.1064040492957,157,770.0258582746479,172,766.985585387324,185.16666666666666C763.9453125,198.33333333333334,763.9453125,209.66666666666666,763.9453125,215.33333333333334L763.9453125,221"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M832.0474251760563,142L835.0876980633802,149.5C838.1279709507043,157,844.2085167253521,172,847.248789612676,185.16666666666666C850.2890625,198.33333333333334,850.2890625,209.66666666666666,850.2890625,215.33333333333334L850.2890625,221"/>
</g>
<g class="edgeLabels">
<g transform="translate(763.9453125, 187)" class="edgeLabel">
<g transform="translate(-13.5703125, -9)" class="label">
<foreignObject height="18" width="27.140625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+g1</span>
</span>
</div>
</foreignObject>
</g>
</g>
<g transform="translate(850.2890625, 187)" class="edgeLabel">
<g transform="translate(-13.5703125, -9)" class="label">
<foreignObject height="18" width="27.140625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+g4</span>
</span>
</div>
</foreignObject>
</g>
</g>
</g>
<g class="nodes">
<a transform="translate(21.28125, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L7">
<g title="A" id="classId-C_0015767958614130952114-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, -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">A</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(128.8125, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L12">
<g title="C" id="classId-C_0004350131114162787762-1" class="node default clickable">
<rect height="79" width="88.5" y="-39.5" x="-44.25" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="44.25" x1="-44.25" class="divider"/>
<line y2="28.5" y1="28.5" x2="44.25" x1="-44.25" 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( -20.0078125, -32)" height="18" width="40.015625" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">C&lt;T&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -36.75, 2)" height="18" width="73.5">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-param : T</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(267.3125, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L17">
<g title="D" id="classId-C_0011975319755435865873-2" class="node default clickable">
<rect height="79" width="88.5" y="-39.5" x="-44.25" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="44.25" x1="-44.25" class="divider"/>
<line y2="28.5" y1="28.5" x2="44.25" x1="-44.25" 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, -32)" 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">D</span>
</div>
</foreignObject>
<foreignObject transform="translate( -36.75, 2)" height="18" width="73.5">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">-param : T</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(422.4375, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L21">
<g title="E" id="classId-C_0015494984659652737759-3" 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( -5.3359375, -43)" height="18" width="10.671875" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">E</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.375, -9)" height="18" width="26.703125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">one</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.375, 13)" height="18" width="24.90625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">two</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.375, 35)" height="18" width="36.46875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">three</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(763.9453125, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L26">
<g title="G1" id="classId-C_0015845744510705526108-4" class="node default clickable">
<rect height="57" width="36.34375" y="-28.5" x="-18.171875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="18.171875" x1="-18.171875" class="divider"/>
<line y2="17.5" y1="17.5" x2="18.171875" x1="-18.171875" 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( -10.671875, -21)" height="18" width="21.34375" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">G1</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(551.484375, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L28">
<g title="G2" id="classId-C_0017637017708750132732-5" class="node default clickable">
<rect height="57" width="36.34375" y="-28.5" x="-18.171875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="18.171875" x1="-18.171875" class="divider"/>
<line y2="17.5" y1="17.5" x2="18.171875" x1="-18.171875" 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( -10.671875, -21)" height="18" width="21.34375" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">G2</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(637.828125, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L30">
<g title="G3" id="classId-C_0006137444133320565051-6" class="node default clickable">
<rect height="57" width="36.34375" y="-28.5" x="-18.171875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="18.171875" x1="-18.171875" class="divider"/>
<line y2="17.5" y1="17.5" x2="18.171875" x1="-18.171875" 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( -10.671875, -21)" height="18" width="21.34375" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">G3</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(850.2890625, 249.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L32">
<g title="G4" id="classId-C_0005720596983394161714-7" class="node default clickable">
<rect height="57" width="36.34375" y="-28.5" x="-18.171875" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="18.171875" x1="-18.171875" class="divider"/>
<line y2="17.5" y1="17.5" x2="18.171875" x1="-18.171875" 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( -10.671875, -21)" height="18" width="21.34375" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">G4</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(807.1171875, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/9a43ebe739f894d2752a14cfc96ea865f63c381a/tests/t00029/t00029.cc#L34">
<g title="R" id="classId-C_0002789997853279223281-8" class="node default clickable">
<rect height="123" width="202.234375" y="-61.5" x="-101.1171875" class="outer title-state"/>
<line y2="-31.5" y1="-31.5" x2="101.1171875" x1="-101.1171875" class="divider"/>
<line y2="50.5" y1="50.5" x2="101.1171875" x1="-101.1171875" 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, -54)" 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">R</span>
</div>
</foreignObject>
<foreignObject transform="translate( -93.6171875, -20)" height="18" width="61.828125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+g1 : G1</span>
</div>
</foreignObject>
<foreignObject transform="translate( -93.6171875, 2)" height="18" width="76.9375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+g3 : G3 &amp;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -93.6171875, 24)" height="18" width="187.234375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+g4 : std::shared_ptr&lt;G4&gt;</span>
</div>
</foreignObject>
</g>
</g>
</a>
</g>
</g>
</g>
</svg>