d2/e2etests/testdata/stable/code_snippet/elk/sketch.exp.svg

39 lines
507 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="utf-8"?>
<svg
style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
2022-11-30 00:02:37 +00:00
width="1382" height="366" viewBox="-88 -88 1382 366"><style type="text/css">
<![CDATA[
.shape {
2022-11-12 18:31:11 +00:00
shape-rendering: geometricPrecision;
stroke-linejoin: round;
}
.connection {
2022-11-12 18:31:11 +00:00
stroke-linecap: round;
stroke-linejoin: round;
}
2022-11-12 18:31:11 +00:00
]]>
2022-11-30 00:02:37 +00:00
</style><g id="hey"><g class="shape" ></g><g transform="translate(225.000000 12.000000)" style="opacity:1.000000"><rect class="shape" width="755" height="166" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic">//&#160;RegisterHash&#160;registers&#160;a&#160;function&#160;that&#160;returns&#160;a&#160;new&#160;instance&#160;of&#160;the&#160;given
</tspan></text><text class="text-mono" x="0" y="2.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#999988" font-style="italic">//&#160;hash&#160;function.&#160;This&#160;is&#160;intended&#160;to&#160;be&#160;called&#160;from&#160;the&#160;init&#160;function&#160;in
</tspan></text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#999988" font-style="italic">//&#160;packages&#160;that&#160;implement&#160;hash&#160;functions.
</tspan></text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#000000" font-weight="bold">func</tspan>&#160;<tspan fill="#990000" font-weight="bold">RegisterHash</tspan>(h&#160;Hash,&#160;f&#160;<tspan fill="#000000" font-weight="bold">func</tspan>()&#160;hash.Hash)&#160;{
</text><text class="text-mono" x="0" y="5.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;<tspan fill="#000000" font-weight="bold">if</tspan>&#160;h&#160;<tspan fill="#000000" font-weight="bold">&gt;=</tspan>&#160;maxHash&#160;{
</text><text class="text-mono" x="0" y="6.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<tspan fill="#0086b3">panic</tspan>(<tspan fill="#dd1144">&quot;crypto:&#160;RegisterHash&#160;of&#160;unknown&#160;hash&#160;function&quot;</tspan>)
</text><text class="text-mono" x="0" y="7.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;}
</text><text class="text-mono" x="0" y="8.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;hashes[h]&#160;=&#160;f
2022-11-30 00:02:37 +00:00
</text><text class="text-mono" x="0" y="9.000000em" xml:space="preserve">}</text></g></g></g><g id="x"><g class="shape" ><rect x="12" y="32" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="98.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">x</text></g><g id="y"><g class="shape" ><rect x="1080" y="32" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1137.000000" y="98.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">y</text></g><g id="(x -&gt; hey)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 95.000000 L 221.000000 95.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /></g><g id="(hey -&gt; y)[0]"><path d="M 982.000000 95.000000 L 1076.000000 95.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /></g><style type="text/css"><![CDATA[
.text-bold {
font-family: "font-bold";
}
@font-face {
font-family: font-bold;
src: url("data:application/font-woff;base64,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AHQAZQAgAGcAQQBsAHQAZQByAG4AYQB0AGUAIABhAFMAdAByAGEAaQBnAGgAdAAgAGwAUwBsAGEAcwBoAGUAZAAgAHoAZQByAG8AUAByAGUAZgBlAHIAcgBlAGQAIABBAHQAaABhAGIAYQBzAGsAYQBuACAAbwBnAG8AbgBlAGsAcwBoAHQAdABwADoALwAvAHMAYwByAGkAcAB0AHMALgBzAGkAbAAuAG8AcgBnAC8ATwBGAEwAVABoAGkAcwAgAEYAbwBuAHQAIABTAG8AZgB0AHcAYQByAGUAIABpAHMAIABsAGkAYwBlAG4AcwBlAGQAIAB1AG4AZABlAHIAIAB0AGgAZQAgAFMASQBMACAATwBwAGUAbgAgAEYAbwBuAHQAIABMAGkAYwBlAG4AcwBlACwAIABWAGUAcgBzAGkAbwBuACAAMQAuADEALgAgAFQAaABpAHMAIABsAGkAYwBlAG4AcwBlACAAaQBzACAAYQB2AGEAaQBsAGEAYgBsAGUAIAB3AGkAdABoACAAYQAgAEYAQQBRACAAYQB0ADoAIABoAHQAdABwADoALwAvAHMAYwByAGkAcAB0AHMALgBzAGkAbAAuAG8AcgBnAC8ATwBGAEwALgAgAFQAaABpAHMAIABGAG8AbgB0ACAAUwBvAGYAdAB3AGEAcgBlACAAaQBzACAAZABpAHMAdAByAGkAYgB1AHQAZQBkACAAbwBuACAAYQBuACAgGABBAFMAIABJAFMgGQAgAEIAQQBTAEkAUwAsACAAVwBJAFQASABPAFUAVAAgAFcAQQBSAFIAQQBOAFQASQBFAFMAIABPAFIAIABDAE8ATgBEAEkAVABJAE8ATgBTACAATwBGACAAQQBOAFkAIABLAEkATgBEACwAIABlAGkAdABoAGUAcgAgAGUAeABwAHIAZQBzAHMAIABvAHIAIABpAG0AcABsAGkAZQBkAC4AIABTAGUAZQAgAHQAaABlACAAUwBJAEwAIABPAHAAZQBuACAARgBvAG4AdAAgAEwAaQBjAGUAbgBzAGUAIABmAG8AcgAgAHQAaABlACAAcwBwAGUAYwBpAGYAaQBjACAAbABhAG4AZwB1AGEAZwBlACwAIABwAGUAcgBtAGkAcwBzAGkAbwBuAHMAIABhAG4AZAAgAGwAaQBtAGkAdABhAHQAaQBvAG4AcwAgAGcAbwB2AGUAcgBuAGkAbgBnACAAeQBvAHUAcgAgAHUAcwBlACAAbwBmACAAdABoAGkAcwAgAEYAbwBuAHQAIABTAG8AZgB0AHcAYQByAGUALgBoAHQAdABwADoALwAvAHcAdwB3AC4AYQBkAG8AYgBlAC4AYwBvAG0ALwB0AHkAcABlAFAAYQB1AGwAIABEAC4AIABIAHUAbgB0AEEAZABvAGIAZQAgAFMAeQBzAHQAZQBtAHMAIABJAG4AYwBvAHIAcABvAHIAYQB0AGUAZABTAG8AdQByAGMAZQAgAGkAcwAgAGEAIAB0AHIAYQBkAGUAbQBhAHIAawAgAG8AZgAgAEEAZABvAGIAZQAgAFMAeQBzAHQAZQBtAHMAIABJAG4AYwBvAHIAcABvAHIAYQB0AGUAZAAgAGkAbgAgAHQAaABlACAAVQBuAGkAdABlAG
}
.text-mono {
font-family: "font-mono";
}
@font-face {
font-family: font-mono;
src: url("data:application/font-woff;base64,AAEAAAAPAIAAAwBwQkFTRWUeXb0AAejUAAAARkRTSUcAAAABAAIdsAAAAAhHREVG8Yj03gAB6RwAAALqR1BPU6UIFdkAAewIAAAUXEdTVUIB/10FAAIAZAAAHUpPUy8yld/X+AAAAXgAAABgY21hcAdzcEIAAA4cAAAzZmdseWYb7v/zAABNyAABUS5oZWFkGanOOgAAAPwAAAA2aGhlYQYzAIgAAAE0AAAAJGhtdHgMtA+PAAAB2AAADEJsb2NhJ2DThAAAQYQAAAxCbWF4cAZUAmEAAAFYAAAAIG5hbWXcnQMfAAGe+AAAEM5wb3N0K4oCyQABr8gAADkMAAEAAAACCboWS6s0Xw889QADA+gAAAAA3B0N9wAAAADcHHNL/z/+OgMZBCQAAAADAAIAAAAAAAAAAQAAA9j+7wAAAlj/P/8/AxkAAQAAAAAAAAAAAAAAAAAAAAEAAQAABiAB+AAqAGUABgABAAAAAAAAAAAAAAAAAAMAAwADAlgBkAAFAAACigJYAAAASwKKAlgAAAFeADIBIwAAAgsFCQMEAwICBCAAAvcCADgDAAAAAAAAAABBREJPAEAAIP//Au7/BgAAA9gBEWAAAZ8AAAAAAeYClAAAACAAAwJYAD4AAAAgAGMAQQBXAHIAhQA1AE8AXwBRAGIAhgBIAFIAMABmADAAZABDACoATwArAAoANgAmAEEAUQBdAFAAPABEAGcASABdAFoANwBqAEoAOgBdADwAXQA8AJIARwBFAE0AMwAIAEAAMQBHACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIP///////wAaAGMAQQBBAEEAQQBBAFcAVwBXAFcADAAUAHIAcgByAHIAcgByAHIAcgBzAHIAcgByAHIAcgByAHIAcgByADUANQA1ADUANQA1ADUANQA1AE8ATwBPABsATwAKAF8AXwBfAF8AXwBfAF8AXwBfAF8AXwBfAFEAYgBiAGIAfACGAIYAhgA3AIYACgCGAEgASABIAFIAUgBSAFIAUgBSAFIAUgAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAkACQAIQBkAGQAZABkAGQAZABkAEMAQwBDAEMAQwBDAEMAQwBOACoAKgAqACoAKgAqAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwArAAoACgAKAAoAJgAmACYAJgAmACYAJgAmAEEAQQBBAEEAQQBBAAwAZQA7AFUAcABEAFkAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAEkAUQBRAFEAUQBRAFEAUQBRABEAEQARABQAXQBQAFAAUABQAFAANgA8ADwAPAA8AEQARABEAEQARABEAEQARABEAEQARABEAEQARABEAEQARABEAEgASABIAEgASABIAEgASP/v//UAXQBdACcAXQAUAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaADcAagBqAGoAagBKAEoASgBKAEoASgBKACMAOgA6ADoAXQBdAF0AXQBdAF0AXQBd/+oAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwANQA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8AAsAkgBmAJIAkgCDAIMAQABHAEcARwBHAEcARwBHAEcAWABnAEUARQBFAEUARQBFAEUATQBNAE0ATQBNAE0ATQBNAE0ATQBNAE0ATQBNAE0ATQBNAE0ATQBNAE0ATQBNADMACAAIAAgACAAxADEAMQAxADEAMQAxADEARwBHAEcARwBHAEcAPABdAF0ANwBd//gAUABeAF0AXQA9AFAAPAA8AD8APABzAEUAFgBbAD4APQA3ADwAPABOADMAPABNAF0AXQBdAFoAVgA4ABwASgBKAEoATwCUACoAKgA6//sAXQBgADwAIQAsAD8APwA/AJIAkgBjAGMARwA4ADgANgBFAAIAMgBNADMACAAxADkARwBHADsAAAAZADAARwBZAEcAUgBUADwAUgA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAOQA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPABjAGMAYwBjAGMAYwBjAGMAYwBjAGMAYwBjAGMAWgBjAFoAYwA4AGMAYwBjAGMAYwBjAGMAYwAt//wAYwBjACAAYwCHACsAcgBBAE8AMABfAGIAKwBIAFIARgAwAE8AZgBLACoAJgAaADYALAAmACQAGAAYABgAXwAYACgAJgAYADkAXQAwAEEAWwB0AF0ASABRAGQAOABUAC8AXABAABsAXQA8AEIATwAsADgANQAiAFoAXQBPACwAJQA5AFsAXQBRAFEAQABPAE8AIgBRAE8AZAA+AFsAkgBEAMUA2wDbAQEA8AEJAPAAiwELAPsA6ADoANwA0QEJAJAAigCQAJQAnwCfAH8AkQCLAJMA5QDkAPYA8ACqAKoAqgCsALYAtgAgAGMAYwCHABYAcgABAD4ATgBOAGYAAgBIAE8AMABPAGYAQQAqAC8AGgA2AE8AQQAoACYAEwA3AGIALgAsAB4AcgByAAUAhwBCAEMAXwBfAFH/+AAnAAUAZgBOAC8ASwAYADAAJgCHADwAAQA+AGYAEwBPAEEAJgAmADYAQQBbAF8AAQAg//8AcgA7AE4AMAAwAC8ALwBRAEsAaACSACoARAAGAD4AZABkAG4AHQBAAF0APABdAF0AUABCADEAIABAAF4AWAA6ADoAIwBGAH0APQAsADcARABEABQAkgBQAEcAWgBaADf/+QA6ABQAbgBkADEAZwApADwARgCiAEgABgA+AG4AIQBdAFAAMwAzAEAAWABdAAYASgBRABEARABFAGQAPAA8ADEAMQA8ADwAVQBjAGMAYwACACoARwBhAEUAOQAnADgATQBGAEQAQwBHAGEARwBhAEUAOQAnADgATgBGAEQAQwBHAGEARwBhAEUAOQAnADgATQBGAEQAQwBHAGEA2wDFANsAxQAgAOMA4wBtAHkA9QCCANEA2QBeAGYA2QBmANQAxQDTAFIAYABVAFUAVQBQAAAAUAAAANsAlwCLAKYAmgCLAHUApgCaAIsAdQCKAHUAmAAAADwAPAA+/2YA0AB6AOEAYgB4AGMAYwEHAGMBBwBUAH8AfwBbAEgAnABdAA4AVwAOAF4AdADhAGIA4QBiALoAYgDiAGIA4QBiAB4AHgBw//sADwAxADEAVwBoAIYAhgCGAFUAjQCvAJIAjgCUAI4AlwCcAJcAkQDsANMA+wD0AI0ArwCSAI4AlACOAJcAnACXAJEA7ADTAPsA9AChANAArQCsAKwArACwALcArwCtAOwA1QD7APQAoQDQAK0ArACsAKwAsAC3AK8ArQDsANUA+wD0AKMAiQCOAKMArAC1AIkAkQDGAJUArwCvAIwAvQDEAEYArwCOAKwAiQDzAKIApACfAIsANACfAIwAkgCRAJEAkQCOAK8AkgCgAIkAiQCtAPsA3gClAD0AOgBVAE0ANQA6AHEAMQBgAE4ALgAqABwAbQAqAFQAPQBgAGwALQA3ADcAKgBFABwAHAAcABsAMAAcABwAHwAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAUwAbAFUAVQBmAFUA1wBVAFUAeABrAFUAVQBVAG8AVQBMAEwAVQBVAGAAVf/8AK8BAQCpAPAAVABMALoBCQCZAD4AKwAmACAARgBPAEYANAAbAHQAGgARACEAHQAhAGAAUQBWAGcAEQAhAB0AIf/0AFUAPABKAD4AVwBJAEkAIQA+AD4APgA+AD4APgAqACoAFf/nAEQAM//n/+f/+gBNAAQACQAJAAUACQAJAB3/uf/g//z/5gAtADz/9P/9AGAAMQEBANEA2QDiAL4AoADKAMoAgACkAOwAkQCRAPkApwDsAKQA+QB/AJQApwCQAL4AxQDqAM0A0gA1AKQAsQDRAOwA6wEJAJ
}]]></style></svg>