Files
clang-uml/docs/test_cases/t00033_class_mermaid.svg
2024-05-04 19:11:29 +02:00

322 lines
22 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 415.41796875 607" style="max-width: 415.418px; background-color: white;" width="415.41796875" 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-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M280.83148619186045,459L274.9604832848837,465C269.08948037790697,471,257.3474745639535,483,251.47647165697674,493.1666666666667C245.60546875,503.3333333333333,245.60546875,511.6666666666667,245.60546875,515.8333333333334L245.60546875,520"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M336.60601380813955,459L342.47701671511624,465C348.34801962209303,471,360.0900254360465,483,365.9610283430232,493.1666666666667C371.83203125,503.3333333333333,371.83203125,511.6666666666667,371.83203125,515.8333333333334L371.83203125,520"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M276.53415697674416,330L281.8982558139535,336C287.26235465116275,342,297.9905523255814,354,303.35465116279073,366C308.71875,378,308.71875,390,308.71875,396L308.71875,402"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M225.57521802325581,330L220.21111918604652,336C214.84702034883722,342,204.11882267441862,354,198.7547238372093,364.1666666666667C193.390625,374.3333333333333,193.390625,382.6666666666667,193.390625,386.8333333333333L193.390625,391"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M204.68713492990653,212L212.41506035825546,216.16666666666666C220.14298578660433,220.33333333333334,235.59883664330218,228.66666666666666,243.32676207165107,238.83333333333334C251.0546875,249,251.0546875,261,251.0546875,267L251.0546875,273"/>
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M98.96911507009347,212L91.24118964174455,216.16666666666666C83.51326421339564,220.33333333333334,68.05741335669782,228.66666666666666,60.32948792834892,237C52.6015625,245.33333333333334,52.6015625,253.66666666666666,52.6015625,257.8333333333333L52.6015625,262"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M151.828125,87L151.828125,92.66666666666667C151.828125,98.33333333333333,151.828125,109.66666666666667,151.828125,121C151.828125,132.33333333333334,151.828125,143.66666666666666,151.828125,149.33333333333334L151.828125,155"/>
</g>
<g class="edgeLabels">
<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(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(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(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(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(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(151.828125, 121)" class="edgeLabel">
<g transform="translate(-17.5703125, -9)" class="label">
<foreignObject height="18" width="35.140625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+abc</span>
</span>
</div>
</foreignObject>
</g>
</g>
</g>
<g class="nodes">
<a transform="translate(52.6015625, 301.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/7fcd0dc0ddf47cf95d771d246b3fec780ea144c7/tests/t00033/t00033.cc#L7">
<g title="A" id="classId-C_0002036031998980633871-0" class="node default clickable">
<rect height="79" width="73.859375" y="-39.5" x="-36.9296875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="36.9296875" x1="-36.9296875" class="divider"/>
<line y2="28.5" y1="28.5" x2="36.9296875" x1="-36.9296875" 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">A&lt;T&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -29.4296875, 2)" height="18" width="58.859375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+aaa : T</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(193.390625, 430.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/7fcd0dc0ddf47cf95d771d246b3fec780ea144c7/tests/t00033/t00033.cc#L11">
<g title="B" id="classId-C_0000765515233845859023-1" class="node default clickable">
<rect height="79" width="73.859375" y="-39.5" x="-36.9296875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="36.9296875" x1="-36.9296875" class="divider"/>
<line y2="28.5" y1="28.5" x2="36.9296875" x1="-36.9296875" 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">B&lt;T&gt;</span>
</div>
</foreignObject>
<foreignObject transform="translate( -29.4296875, 2)" height="18" width="58.859375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+bbb : T</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(371.83203125, 559.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/7fcd0dc0ddf47cf95d771d246b3fec780ea144c7/tests/t00033/t00033.cc#L15">
<g title="C" id="classId-C_0001436835384265552869-2" class="node default clickable">
<rect height="79" width="71.171875" y="-39.5" x="-35.5859375" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="35.5859375" x1="-35.5859375" class="divider"/>
<line y2="28.5" y1="28.5" x2="35.5859375" x1="-35.5859375" 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( -28.0859375, 2)" height="18" width="56.171875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+ccc : T</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(245.60546875, 559.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/7fcd0dc0ddf47cf95d771d246b3fec780ea144c7/tests/t00033/t00033.cc#L19">
<g title="D" id="classId-C_0002199581366769423637-3" class="node default clickable">
<rect height="79" width="81.28125" y="-39.5" x="-40.640625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="40.640625" x1="-40.640625" class="divider"/>
<line y2="28.5" y1="28.5" x2="40.640625" x1="-40.640625" 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( -33.140625, 2)" height="18" width="66.28125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+ddd : int</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(308.71875, 430.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/7fcd0dc0ddf47cf95d771d246b3fec780ea144c7/tests/t00033/t00033.cc#L7">
<g title="C" id="classId-C_0001609446044604054241-4" class="node default clickable">
<rect height="57" width="56.796875" y="-28.5" x="-28.3984375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="28.3984375" x1="-28.3984375" class="divider"/>
<line y2="17.5" y1="17.5" x2="28.3984375" x1="-28.3984375" 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.8984375, -21)" height="18" width="41.796875" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">C&lt;D&gt;</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(251.0546875, 301.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/7fcd0dc0ddf47cf95d771d246b3fec780ea144c7/tests/t00033/t00033.cc#L7">
<g title="B" id="classId-C_0000384927316081978893-5" class="node default clickable">
<rect height="57" width="223.046875" y="-28.5" x="-111.5234375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="111.5234375" x1="-111.5234375" class="divider"/>
<line y2="17.5" y1="17.5" x2="111.5234375" x1="-111.5234375" 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( -104.0234375, -21)" height="18" width="208.046875" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">B&lt;std::unique_ptr&lt;C&lt;D&gt;&gt;&gt;</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(151.828125, 183.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/7fcd0dc0ddf47cf95d771d246b3fec780ea144c7/tests/t00033/t00033.cc#L7">
<g title="A" id="classId-C_0001747493965420341251-6" class="node default clickable">
<rect height="57" width="253.296875" y="-28.5" x="-126.6484375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="126.6484375" x1="-126.6484375" class="divider"/>
<line y2="17.5" y1="17.5" x2="126.6484375" x1="-126.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;">
<span class="nodeLabel"/>
</div>
</foreignObject>
<foreignObject transform="translate( -119.1484375, -21)" height="18" width="238.296875" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">A&lt;B&lt;std::unique_ptr&lt;C&lt;D&gt;&gt;&gt;&gt;</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(151.828125, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/7fcd0dc0ddf47cf95d771d246b3fec780ea144c7/tests/t00033/t00033.cc#L23">
<g title="R" id="classId-C_0001866392706312766470-7" class="node default clickable">
<rect height="79" width="287.65625" y="-39.5" x="-143.828125" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="143.828125" x1="-143.828125" class="divider"/>
<line y2="28.5" y1="28.5" x2="143.828125" x1="-143.828125" 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">R</span>
</div>
</foreignObject>
<foreignObject transform="translate( -136.328125, 2)" height="18" width="272.65625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+abc : A&lt;B&lt;std::unique_ptr&lt;C&lt;D&gt;&gt;&gt;&gt;</span>
</div>
</foreignObject>
</g>
</g>
</a>
</g>
</g>
</g>
</svg>