Files
clang-uml/docs/test_cases/t00077_class_mermaid.svg
2024-06-19 18:26:38 +02:00

338 lines
23 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 199.609375 771" style="max-width: 199.609px; background-color: white;" width="199.609375" 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-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id1" d="M34.625,76L34.625,83.5C34.625,91,34.625,106,34.625,122.83333333333333C34.625,139.66666666666666,34.625,158.33333333333334,34.625,167.66666666666666L34.625,177"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M55.45862699468085,491L53.13544437056737,496.6666666666667C50.812261746453906,502.3333333333333,46.16589649822695,513.6666666666666,43.84271387411348,526.8333333333334C41.51953125,540,41.51953125,555,41.51953125,562.5L41.51953125,570"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M123.92418550531914,491L126.24736812943263,496.6666666666667C128.5705507535461,502.3333333333333,133.21691600177306,513.6666666666666,135.54009862588654,525C137.86328125,536.3333333333334,137.86328125,547.6666666666666,137.86328125,553.3333333333334L137.86328125,559"/>
<path marker-start="url(#classDiagram-extensionStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M34.625,234L34.625,243.33333333333334C34.625,252.66666666666666,34.625,271.3333333333333,37.28068484042553,286.3333333333333C39.936369680851065,301.3333333333333,45.24773936170212,312.6666666666667,47.90342420212766,318.3333333333333L50.55910904255319,324"/>
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id5" d="M137.86328125,638L137.86328125,643.6666666666666C137.86328125,649.3333333333334,137.86328125,660.6666666666666,137.86328125,672C137.86328125,683.3333333333334,137.86328125,694.6666666666666,137.86328125,700.3333333333334L137.86328125,706"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id6" d="M144.7578125,256L144.7578125,261.6666666666667C144.7578125,267.3333333333333,144.7578125,278.6666666666667,142.10212765957445,290C139.44644281914893,301.3333333333333,134.13507313829788,312.6666666666667,131.47938829787233,318.3333333333333L128.8237034574468,324"/>
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M144.7578125,87L144.7578125,92.66666666666667C144.7578125,98.33333333333333,144.7578125,109.66666666666667,144.7578125,121C144.7578125,132.33333333333334,144.7578125,143.66666666666666,144.7578125,149.33333333333334L144.7578125,155"/>
</g>
<g class="edgeLabels">
<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 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(137.86328125, 525)" class="edgeLabel">
<g transform="translate(-6.8984375, -9)" class="label">
<foreignObject height="18" width="13.796875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+f</span>
</span>
</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 transform="translate(137.86328125, 672)" class="edgeLabel">
<g transform="translate(-8.9765625, -9)" class="label">
<foreignObject height="18" width="17.953125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+ff</span>
</span>
</div>
</foreignObject>
</g>
</g>
<g transform="translate(144.7578125, 290)" class="edgeLabel">
<g transform="translate(-9.125, -9)" class="label">
<foreignObject height="18" width="18.25">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+b</span>
</span>
</div>
</foreignObject>
</g>
</g>
<g transform="translate(144.7578125, 121)" class="edgeLabel">
<g transform="translate(-8.671875, -9)" class="label">
<foreignObject height="18" width="17.34375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="edgeLabel">
<span class="edgeLabel">+k</span>
</span>
</div>
</foreignObject>
</g>
</g>
</g>
<g class="nodes">
<a transform="translate(41.51953125, 598.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00077/t00077.cc#L14">
<g title="H" id="classId-C_0004471280448157207059-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">H</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(34.625, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00077/t00077.cc#L17">
<g title="Base" id="classId-C_0000962922109375459669-1" class="node default clickable">
<rect height="57" width="53.25" y="-28.5" x="-26.625" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="26.625" x1="-26.625" class="divider"/>
<line y2="17.5" y1="17.5" x2="26.625" x1="-26.625" 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( -19.125, -21)" height="18" width="38.25" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">Base</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(34.625, 205.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00077/t00077.cc#L19">
<g title="A" id="classId-C_0011110555698388355337-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"/>
<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(89.69140625, 407.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00077/t00077.cc#L21">
<g title="B" id="classId-C_0000611485414721657062-3" class="node default clickable">
<rect height="167" width="122.15625" y="-83.5" x="-61.078125" class="outer title-state"/>
<line y2="-53.5" y1="-53.5" x2="61.078125" x1="-61.078125" class="divider"/>
<line y2="50.5" y1="50.5" x2="61.078125" x1="-61.078125" 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, -76)" 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( -53.578125, -42)" height="18" width="68.921875">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+c : Color</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.578125, -20)" height="18" width="36.90625">
<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">+f : F </span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.578125, 2)" height="18" width="44.03125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+g : G</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.578125, 24)" height="18" width="34.234375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+j : J</span>
</div>
</foreignObject>
<foreignObject transform="translate( -53.578125, 58)" height="18" width="107.15625">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+a(H * h) : void</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(137.86328125, 734.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00077/t00077.cc#L46">
<g title="FF" id="classId-C_0000100067327928786611-4" class="node default clickable">
<rect height="57" width="34.546875" y="-28.5" x="-17.2734375" class="outer title-state"/>
<line y2="1.5" y1="1.5" x2="17.2734375" x1="-17.2734375" class="divider"/>
<line y2="17.5" y1="17.5" x2="17.2734375" x1="-17.2734375" 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( -9.7734375, -21)" height="18" width="19.546875" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">FF</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(137.86328125, 598.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00077/t00077.cc#L47">
<g title="F" id="classId-C_0004107826685860758244-5" class="node default clickable">
<rect height="79" width="66.125" y="-39.5" x="-33.0625" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="33.0625" x1="-33.0625" class="divider"/>
<line y2="28.5" y1="28.5" x2="33.0625" x1="-33.0625" 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( -4.890625, -32)" height="18" width="9.78125" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">F</span>
</div>
</foreignObject>
<foreignObject transform="translate( -25.5625, 2)" height="18" width="51.125">
<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">+ff : FF </span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(144.7578125, 205.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00077/t00077.cc#L60">
<g title="K" id="classId-C_0002855344937087077573-6" class="node default clickable">
<rect height="101" width="93.703125" y="-50.5" x="-46.8515625" class="outer title-state"/>
<line y2="-20.5" y1="-20.5" x2="46.8515625" x1="-46.8515625" class="divider"/>
<line y2="39.5" y1="39.5" x2="46.8515625" x1="-46.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;">
<span class="nodeLabel"/>
</div>
</foreignObject>
<foreignObject transform="translate( -5.78125, -43)" 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">K</span>
</div>
</foreignObject>
<foreignObject transform="translate( -39.3515625, -9)" height="18" width="42.25">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+b : B</span>
</div>
</foreignObject>
<foreignObject transform="translate( -39.3515625, 13)" height="18" width="78.703125">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+kkk : KKK</span>
</div>
</foreignObject>
</g>
</g>
</a>
<a transform="translate(144.7578125, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/e41b0da6776e43f4d4f0bb41619a04e152c35cb6/tests/t00077/t00077.cc#L65">
<g title="KK" id="classId-C_0016909696417266973013-7" class="node default clickable">
<rect height="79" width="56.359375" y="-39.5" x="-28.1796875" class="outer title-state"/>
<line y2="-9.5" y1="-9.5" x2="28.1796875" x1="-28.1796875" class="divider"/>
<line y2="28.5" y1="28.5" x2="28.1796875" x1="-28.1796875" 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( -11.5546875, -32)" height="18" width="23.109375" class="classTitle">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">KK</span>
</div>
</foreignObject>
<foreignObject transform="translate( -20.6796875, 2)" height="18" width="41.359375">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
<span class="nodeLabel">+k : K</span>
</div>
</foreignObject>
</g>
</g>
</a>
</g>
</g>
</g>
</svg>