284 lines
20 KiB
XML
284 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 1446.28125 595" style="max-width: 1446.28px; background-color: white;" width="1446.28125" 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-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M292.6171875,370L292.6171875,374.1666666666667C292.6171875,378.3333333333333,292.6171875,386.6666666666667,292.6171875,395C292.6171875,403.3333333333333,292.6171875,411.6666666666667,292.6171875,415.8333333333333L292.6171875,420"/>
|
|
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id2" d="M543.8359375,132.3584405753217L501.9661458333333,139.96536714610144C460.0963541666667,147.57229371688115,376.3567708333333,162.78614685844056,334.4869791666667,174.55974009588695C292.6171875,186.33333333333334,292.6171875,194.66666666666666,292.6171875,198.83333333333334L292.6171875,203"/>
|
|
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id3" d="M829.2734375,153L829.2734375,157.16666666666666C829.2734375,161.33333333333334,829.2734375,169.66666666666666,829.2734375,185.33333333333334C829.2734375,201,829.2734375,224,829.2734375,235.5L829.2734375,247"/>
|
|
<path marker-start="url(#classDiagram-lollipopStart)" style="fill:none" class="edge-pattern-solid relation" id="id4" d="M1114.7109375,145.1426043878273L1138.8919270833333,150.61883698985608C1163.0729166666667,156.09506959188488,1211.4348958333333,167.04753479594243,1235.6158854166667,184.02376739797123C1259.796875,201,1259.796875,224,1259.796875,235.5L1259.796875,247"/>
|
|
</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>
|
|
<g class="nodes">
|
|
<a transform="translate(292.6171875, 503.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/2e861ee3dea4b484cbec7687f2cf71d63c69d2c2/tests/t00051/t00051.cc#L6">
|
|
<g title="B" id="classId-C_0000486675674447050206-0" class="node default clickable">
|
|
<rect height="167" width="200.09375" y="-83.5" x="-100.046875" class="outer title-state"/>
|
|
<line y2="-53.5" y1="-53.5" x2="100.046875" x1="-100.046875" class="divider"/>
|
|
<line y2="6.5" y1="6.5" x2="100.046875" x1="-100.046875" 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( -40.6796875, -76)" height="18" width="81.359375" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">B<F,FF=F></span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -92.546875, -42)" height="18" width="45.796875">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+f_ : F</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -92.546875, -20)" height="18" width="59.734375">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+ff_ : FF</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -92.546875, 14)" height="18" width="185.09375">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+B(F && f, FF && ff) : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -92.546875, 36)" height="18" width="67.140625">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+f() : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -92.546875, 58)" height="18" width="71.296875">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+ff() : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(292.6171875, 286.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/2e861ee3dea4b484cbec7687f2cf71d63c69d2c2/tests/t00051/t00051.cc#L6">
|
|
<g title="B" id="classId-C_0001969502737237579476-1" class="node default clickable">
|
|
<rect height="167" width="569.234375" y="-83.5" x="-284.6171875" class="outer title-state"/>
|
|
<line y2="-53.5" y1="-53.5" x2="284.6171875" x1="-284.6171875" class="divider"/>
|
|
<line y2="6.5" y1="6.5" x2="284.6171875" x1="-284.6171875" 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( -225.4453125, -76)" height="18" width="450.890625" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">B<(lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27)></span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -277.1171875, -42)" height="18" width="235.265625">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+f_ : (lambda at t00051.cc:43:18)</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -277.1171875, -20)" height="18" width="239.421875">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+ff_ : (lambda at t00051.cc:43:27)</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -277.1171875, 14)" height="18" width="554.234375">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+B((lambda at t00051.cc:43:18) && f, (lambda at t00051.cc:43:27) && ff) : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -277.1171875, 36)" height="18" width="67.140625">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+f() : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -277.1171875, 58)" height="18" width="71.296875">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+ff() : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(829.2734375, 80.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/2e861ee3dea4b484cbec7687f2cf71d63c69d2c2/tests/t00051/t00051.cc#L20">
|
|
<g title="A" id="classId-C_0001064663612772326174-2" class="node default clickable">
|
|
<rect height="145" width="570.875" y="-72.5" x="-285.4375" class="outer title-state"/>
|
|
<line y2="-42.5" y1="-42.5" x2="285.4375" x1="-285.4375" class="divider"/>
|
|
<line y2="-26.5" y1="-26.5" x2="285.4375" x1="-285.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;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -5.78125, -65)" 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>
|
|
<foreignObject transform="translate( -277.9375, -19)" height="18" width="315.734375">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">-get_function() : (lambda at t00051.cc:48:16)</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -277.9375, 3)" height="18" width="238.34375">
|
|
<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">-start_thread1() : custom_thread1</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -277.9375, 25)" height="18" width="238.34375">
|
|
<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">-start_thread2() : custom_thread2</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -277.9375, 47)" height="18" width="555.875">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">-start_thread3() : B<(lambda at t00051.cc:43:18),(lambda at t00051.cc:43:27)></span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(829.2734375, 286.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/2e861ee3dea4b484cbec7687f2cf71d63c69d2c2/tests/t00051/t00051.cc#L23">
|
|
<g title="A##custom_thread1" id="classId-C_0000267762118222214764-3" class="node default clickable">
|
|
<rect height="79" width="404.078125" y="-39.5" x="-202.0390625" class="outer title-state"/>
|
|
<line y2="-9.5" y1="-9.5" x2="202.0390625" x1="-202.0390625" class="divider"/>
|
|
<line y2="6.5" y1="6.5" x2="202.0390625" x1="-202.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;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -72.90625, -32)" height="18" width="145.8125" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">A::custom_thread1</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -194.5390625, 14)" height="18" width="389.078125">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+custom_thread1(Function && f, Args &&... args) : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(1259.796875, 286.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/2e861ee3dea4b484cbec7687f2cf71d63c69d2c2/tests/t00051/t00051.cc#L35">
|
|
<g title="A##custom_thread2" id="classId-C_0000728501319748477470-4" class="node default clickable">
|
|
<rect height="79" width="356.96875" y="-39.5" x="-178.484375" class="outer title-state"/>
|
|
<line y2="-9.5" y1="-9.5" x2="178.484375" x1="-178.484375" class="divider"/>
|
|
<line y2="6.5" y1="6.5" x2="178.484375" x1="-178.484375" 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( -72.90625, -32)" height="18" width="145.8125" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">A::custom_thread2</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -170.984375, 14)" height="18" width="341.96875">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+thread((lambda at t00051.cc:59:27) : &&) : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
</g>
|
|
</svg>
|