add EachWithBreak(), fixes #13

This commit is contained in:
Martin Angers
2013-05-24 11:25:42 -04:00
parent 27b24066a6
commit 948b88c36f
6 changed files with 856 additions and 2 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
Copyright (c) 2012, Martin Angers & Contributors
Copyright (c) 2012-2013, Martin Angers & Contributors
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+405
View File
@@ -0,0 +1,405 @@
<?xml version="1.0"?>
<!-- Generated by SVGo -->
<svg width="1024" height="768"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<g style="font-size:20px;font-family:sans-serif">
<rect x="0" y="0" width="1024" height="768" style="fill:white"/>
<text x="100" y="50" style="font-size:150%"></text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="118" width="0" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="607" y="133" style="text-anchor:end">+0.10%</text>
</g>
<text x="100" y="138" style="text-anchor:start">BenchmarkFirst</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="144" width="0" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="617" y="159" style="text-anchor:start">-0.10%</text>
</g>
<text x="100" y="164" style="text-anchor:start">BenchmarkLast</text>
<g style="font-style:italic;font-size:75%">
<rect x="604" y="170" width="8" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="599" y="185" style="text-anchor:end">+2.86%</text>
</g>
<text x="100" y="190" style="text-anchor:start">BenchmarkEq</text>
<g style="font-style:italic;font-size:75%">
<rect x="604" y="196" width="8" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="599" y="211" style="text-anchor:end">+2.67%</text>
</g>
<text x="100" y="216" style="text-anchor:start">BenchmarkSlice</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="222" width="32" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="649" y="237" style="text-anchor:start">-10.82%</text>
</g>
<text x="100" y="242" style="text-anchor:start">BenchmarkGet</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="248" width="132" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="749" y="263" style="text-anchor:start">-44.06%</text>
</g>
<text x="100" y="268" style="text-anchor:start">BenchmarkIndex</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="274" width="156" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="773" y="289" style="text-anchor:start">-52.26%</text>
</g>
<text x="100" y="294" style="text-anchor:start">BenchmarkIndexSelector</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="300" width="27" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="644" y="315" style="text-anchor:start">-9.32%</text>
</g>
<text x="100" y="320" style="text-anchor:start">BenchmarkIndexOfNode</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="326" width="7" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="624" y="341" style="text-anchor:start">-2.48%</text>
</g>
<text x="100" y="346" style="text-anchor:start">BenchmarkIndexOfSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="352" width="104" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="721" y="367" style="text-anchor:start">-34.96%</text>
</g>
<text x="100" y="372" style="text-anchor:start">BenchmarkMetalReviewExample</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="378" width="177" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="794" y="393" style="text-anchor:start">-59.16%</text>
</g>
<text x="100" y="398" style="text-anchor:start">BenchmarkAdd</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="404" width="0" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="617" y="419" style="text-anchor:start">+0.00%</text>
</g>
<text x="100" y="424" style="text-anchor:start">BenchmarkAddSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="602" y="430" width="10" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="597" y="445" style="text-anchor:end">+3.47%</text>
</g>
<text x="100" y="450" style="text-anchor:start">BenchmarkAddNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="456" width="7" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="624" y="471" style="text-anchor:start">-2.51%</text>
</g>
<text x="100" y="476" style="text-anchor:start">BenchmarkAndSelf</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="482" width="41" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="658" y="497" style="text-anchor:start">-13.96%</text>
</g>
<text x="100" y="502" style="text-anchor:start">BenchmarkFilter</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="508" width="43" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="660" y="523" style="text-anchor:start">-14.53%</text>
</g>
<text x="100" y="528" style="text-anchor:start">BenchmarkNot</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="534" width="11" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="628" y="549" style="text-anchor:start">-3.81%</text>
</g>
<text x="100" y="554" style="text-anchor:start">BenchmarkFilterFunction</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="560" width="8" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="625" y="575" style="text-anchor:start">-2.83%</text>
</g>
<text x="100" y="580" style="text-anchor:start">BenchmarkNotFunction</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="586" width="13" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="630" y="601" style="text-anchor:start">-4.63%</text>
</g>
<text x="100" y="606" style="text-anchor:start">BenchmarkFilterNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="612" width="6" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="623" y="627" style="text-anchor:start">-2.32%</text>
</g>
<text x="100" y="632" style="text-anchor:start">BenchmarkNotNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="638" width="12" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="629" y="653" style="text-anchor:start">-4.23%</text>
</g>
<text x="100" y="658" style="text-anchor:start">BenchmarkFilterSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="664" width="9" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="626" y="679" style="text-anchor:start">-3.31%</text>
</g>
<text x="100" y="684" style="text-anchor:start">BenchmarkNotSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="690" width="101" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="718" y="705" style="text-anchor:start">-33.69%</text>
</g>
<text x="100" y="710" style="text-anchor:start">BenchmarkHas</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="716" width="13" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="630" y="731" style="text-anchor:start">-4.53%</text>
</g>
<text x="100" y="736" style="text-anchor:start">BenchmarkHasNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="742" width="15" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="632" y="757" style="text-anchor:start">-5.30%</text>
</g>
<text x="100" y="762" style="text-anchor:start">BenchmarkHasSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="578" y="768" width="34" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="573" y="783" style="text-anchor:end">+11.35%</text>
</g>
<text x="100" y="788" style="text-anchor:start">BenchmarkEnd</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="794" width="9" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="626" y="809" style="text-anchor:start">-3.33%</text>
</g>
<text x="100" y="814" style="text-anchor:start">BenchmarkEach</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="820" width="27" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="644" y="835" style="text-anchor:start">-9.16%</text>
</g>
<text x="100" y="840" style="text-anchor:start">BenchmarkMap</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="846" width="57" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="674" y="861" style="text-anchor:start">-19.15%</text>
</g>
<text x="100" y="866" style="text-anchor:start">BenchmarkAttr</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="872" width="9" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="626" y="887" style="text-anchor:start">-3.24%</text>
</g>
<text x="100" y="892" style="text-anchor:start">BenchmarkText</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="898" width="183" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="800" y="913" style="text-anchor:start">-61.25%</text>
</g>
<text x="100" y="918" style="text-anchor:start">BenchmarkLength</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="924" width="35" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="652" y="939" style="text-anchor:start">-11.92%</text>
</g>
<text x="100" y="944" style="text-anchor:start">BenchmarkHtml</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="950" width="49" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="666" y="965" style="text-anchor:start">-16.46%</text>
</g>
<text x="100" y="970" style="text-anchor:start">BenchmarkIs</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="976" width="81" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="698" y="991" style="text-anchor:start">-27.31%</text>
</g>
<text x="100" y="996" style="text-anchor:start">BenchmarkIsPositional</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1002" width="40" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="657" y="1017" style="text-anchor:start">-13.49%</text>
</g>
<text x="100" y="1022" style="text-anchor:start">BenchmarkIsFunction</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1028" width="5" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="622" y="1043" style="text-anchor:start">-1.71%</text>
</g>
<text x="100" y="1048" style="text-anchor:start">BenchmarkIsSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1054" width="9" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="626" y="1069" style="text-anchor:start">-3.03%</text>
</g>
<text x="100" y="1074" style="text-anchor:start">BenchmarkIsNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1080" width="60" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="677" y="1095" style="text-anchor:start">-20.30%</text>
</g>
<text x="100" y="1100" style="text-anchor:start">BenchmarkHasClass</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1106" width="33" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="650" y="1121" style="text-anchor:start">-11.29%</text>
</g>
<text x="100" y="1126" style="text-anchor:start">BenchmarkContains</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1132" width="152" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="769" y="1147" style="text-anchor:start">-50.88%</text>
</g>
<text x="100" y="1152" style="text-anchor:start">BenchmarkFind</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1158" width="135" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="752" y="1173" style="text-anchor:start">-45.28%</text>
</g>
<text x="100" y="1178" style="text-anchor:start">BenchmarkFindWithinSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="544" y="1184" width="68" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="539" y="1199" style="text-anchor:end">+22.95%</text>
</g>
<text x="100" y="1204" style="text-anchor:start">BenchmarkFindSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="544" y="1210" width="68" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="539" y="1225" style="text-anchor:end">+22.68%</text>
</g>
<text x="100" y="1230" style="text-anchor:start">BenchmarkFindNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1236" width="195" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="812" y="1251" style="text-anchor:start">-65.08%</text>
</g>
<text x="100" y="1256" style="text-anchor:start">BenchmarkContents</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1262" width="179" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="796" y="1277" style="text-anchor:start">-59.77%</text>
</g>
<text x="100" y="1282" style="text-anchor:start">BenchmarkContentsFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1288" width="192" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="809" y="1303" style="text-anchor:start">-64.31%</text>
</g>
<text x="100" y="1308" style="text-anchor:start">BenchmarkChildren</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1314" width="118" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="735" y="1329" style="text-anchor:start">-39.56%</text>
</g>
<text x="100" y="1334" style="text-anchor:start">BenchmarkChildrenFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1340" width="19" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="636" y="1355" style="text-anchor:start">-6.61%</text>
</g>
<text x="100" y="1360" style="text-anchor:start">BenchmarkParent</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1366" width="32" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="649" y="1381" style="text-anchor:start">-10.92%</text>
</g>
<text x="100" y="1386" style="text-anchor:start">BenchmarkParentFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1392" width="5" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="622" y="1407" style="text-anchor:start">-1.72%</text>
</g>
<text x="100" y="1412" style="text-anchor:start">BenchmarkParents</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1418" width="7" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="624" y="1433" style="text-anchor:start">-2.37%</text>
</g>
<text x="100" y="1438" style="text-anchor:start">BenchmarkParentsFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1444" width="142" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="759" y="1459" style="text-anchor:start">-47.60%</text>
</g>
<text x="100" y="1464" style="text-anchor:start">BenchmarkParentsUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1470" width="109" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="726" y="1485" style="text-anchor:start">-36.39%</text>
</g>
<text x="100" y="1490" style="text-anchor:start">BenchmarkParentsUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1496" width="107" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="724" y="1511" style="text-anchor:start">-35.99%</text>
</g>
<text x="100" y="1516" style="text-anchor:start">BenchmarkParentsUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1522" width="146" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="763" y="1537" style="text-anchor:start">-48.84%</text>
</g>
<text x="100" y="1542" style="text-anchor:start">BenchmarkParentsFilteredUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1548" width="98" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="715" y="1563" style="text-anchor:start">-32.75%</text>
</g>
<text x="100" y="1568" style="text-anchor:start">BenchmarkParentsFilteredUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1574" width="99" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="716" y="1589" style="text-anchor:start">-33.12%</text>
</g>
<text x="100" y="1594" style="text-anchor:start">BenchmarkParentsFilteredUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1600" width="89" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="706" y="1615" style="text-anchor:start">-29.78%</text>
</g>
<text x="100" y="1620" style="text-anchor:start">BenchmarkSiblings</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1626" width="92" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="709" y="1641" style="text-anchor:start">-30.89%</text>
</g>
<text x="100" y="1646" style="text-anchor:start">BenchmarkSiblingsFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1652" width="204" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="821" y="1667" style="text-anchor:start">-68.19%</text>
</g>
<text x="100" y="1672" style="text-anchor:start">BenchmarkNext</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1678" width="199" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="816" y="1693" style="text-anchor:start">-66.59%</text>
</g>
<text x="100" y="1698" style="text-anchor:start">BenchmarkNextFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1704" width="93" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="710" y="1719" style="text-anchor:start">-31.08%</text>
</g>
<text x="100" y="1724" style="text-anchor:start">BenchmarkNextAll</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1730" width="90" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="707" y="1745" style="text-anchor:start">-30.03%</text>
</g>
<text x="100" y="1750" style="text-anchor:start">BenchmarkNextAllFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1756" width="204" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="821" y="1771" style="text-anchor:start">-68.32%</text>
</g>
<text x="100" y="1776" style="text-anchor:start">BenchmarkPrev</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1782" width="199" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="816" y="1797" style="text-anchor:start">-66.65%</text>
</g>
<text x="100" y="1802" style="text-anchor:start">BenchmarkPrevFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1808" width="129" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="746" y="1823" style="text-anchor:start">-43.33%</text>
</g>
<text x="100" y="1828" style="text-anchor:start">BenchmarkPrevAll</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1834" width="129" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="746" y="1849" style="text-anchor:start">-43.24%</text>
</g>
<text x="100" y="1854" style="text-anchor:start">BenchmarkPrevAllFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1860" width="162" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="779" y="1875" style="text-anchor:start">-54.27%</text>
</g>
<text x="100" y="1880" style="text-anchor:start">BenchmarkNextUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1886" width="113" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="730" y="1901" style="text-anchor:start">-37.90%</text>
</g>
<text x="100" y="1906" style="text-anchor:start">BenchmarkNextUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1912" width="129" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="746" y="1927" style="text-anchor:start">-43.21%</text>
</g>
<text x="100" y="1932" style="text-anchor:start">BenchmarkNextUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1938" width="147" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="764" y="1953" style="text-anchor:start">-49.33%</text>
</g>
<text x="100" y="1958" style="text-anchor:start">BenchmarkPrevUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1964" width="111" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="728" y="1979" style="text-anchor:start">-37.02%</text>
</g>
<text x="100" y="1984" style="text-anchor:start">BenchmarkPrevUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1990" width="133" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="750" y="2005" style="text-anchor:start">-44.59%</text>
</g>
<text x="100" y="2010" style="text-anchor:start">BenchmarkPrevUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2016" width="173" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="790" y="2031" style="text-anchor:start">-57.79%</text>
</g>
<text x="100" y="2036" style="text-anchor:start">BenchmarkNextFilteredUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2042" width="109" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="726" y="2057" style="text-anchor:start">-36.61%</text>
</g>
<text x="100" y="2062" style="text-anchor:start">BenchmarkNextFilteredUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2068" width="113" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="730" y="2083" style="text-anchor:start">-37.81%</text>
</g>
<text x="100" y="2088" style="text-anchor:start">BenchmarkNextFilteredUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2094" width="177" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="794" y="2109" style="text-anchor:start">-59.21%</text>
</g>
<text x="100" y="2114" style="text-anchor:start">BenchmarkPrevFilteredUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2120" width="108" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="725" y="2135" style="text-anchor:start">-36.20%</text>
</g>
<text x="100" y="2140" style="text-anchor:start">BenchmarkPrevFilteredUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2146" width="108" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="725" y="2161" style="text-anchor:start">-36.05%</text>
</g>
<text x="100" y="2166" style="text-anchor:start">BenchmarkPrevFilteredUntilNodes</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 21 KiB

+420
View File
@@ -0,0 +1,420 @@
<?xml version="1.0"?>
<!-- Generated by SVGo -->
<svg width="1024" height="768"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<g style="font-size:20px;font-family:sans-serif">
<rect x="0" y="0" width="1024" height="768" style="fill:white"/>
<text x="100" y="50" style="font-size:150%"></text>
<g style="font-style:italic;font-size:75%">
<rect x="606" y="118" width="6" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="601" y="133" style="text-anchor:end">+2.12%</text>
</g>
<text x="100" y="138" style="text-anchor:start">BenchmarkFirst</text>
<g style="font-style:italic;font-size:75%">
<rect x="609" y="144" width="3" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="604" y="159" style="text-anchor:end">+1.06%</text>
</g>
<text x="100" y="164" style="text-anchor:start">BenchmarkLast</text>
<g style="font-style:italic;font-size:75%">
<rect x="602" y="170" width="10" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="597" y="185" style="text-anchor:end">+3.63%</text>
</g>
<text x="100" y="190" style="text-anchor:start">BenchmarkEq</text>
<g style="font-style:italic;font-size:75%">
<rect x="604" y="196" width="8" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="599" y="211" style="text-anchor:end">+2.67%</text>
</g>
<text x="100" y="216" style="text-anchor:start">BenchmarkSlice</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="222" width="72" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="689" y="237" style="text-anchor:start">-24.26%</text>
</g>
<text x="100" y="242" style="text-anchor:start">BenchmarkGet</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="248" width="125" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="742" y="263" style="text-anchor:start">-41.71%</text>
</g>
<text x="100" y="268" style="text-anchor:start">BenchmarkIndex</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="274" width="151" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="768" y="289" style="text-anchor:start">-50.42%</text>
</g>
<text x="100" y="294" style="text-anchor:start">BenchmarkIndexSelector</text>
<g style="font-style:italic;font-size:75%">
<rect x="595" y="300" width="17" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="590" y="315" style="text-anchor:end">+5.94%</text>
</g>
<text x="100" y="320" style="text-anchor:start">BenchmarkIndexOfNode</text>
<g style="font-style:italic;font-size:75%">
<rect x="588" y="326" width="24" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="583" y="341" style="text-anchor:end">+8.26%</text>
</g>
<text x="100" y="346" style="text-anchor:start">BenchmarkIndexOfSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="352" width="98" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="715" y="367" style="text-anchor:start">-32.94%</text>
</g>
<text x="100" y="372" style="text-anchor:start">BenchmarkMetalReviewExample</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="378" width="170" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="787" y="393" style="text-anchor:start">-56.84%</text>
</g>
<text x="100" y="398" style="text-anchor:start">BenchmarkAdd</text>
<g style="font-style:italic;font-size:75%">
<rect x="593" y="404" width="19" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="588" y="419" style="text-anchor:end">+6.63%</text>
</g>
<text x="100" y="424" style="text-anchor:start">BenchmarkAddSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="584" y="430" width="28" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="579" y="445" style="text-anchor:end">+9.42%</text>
</g>
<text x="100" y="450" style="text-anchor:start">BenchmarkAddNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="604" y="456" width="8" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="599" y="471" style="text-anchor:end">+2.93%</text>
</g>
<text x="100" y="476" style="text-anchor:start">BenchmarkAndSelf</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="482" width="41" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="658" y="497" style="text-anchor:start">-13.75%</text>
</g>
<text x="100" y="502" style="text-anchor:start">BenchmarkFilter</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="508" width="44" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="661" y="523" style="text-anchor:start">-14.90%</text>
</g>
<text x="100" y="528" style="text-anchor:start">BenchmarkNot</text>
<g style="font-style:italic;font-size:75%">
<rect x="609" y="534" width="3" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="604" y="549" style="text-anchor:end">+1.07%</text>
</g>
<text x="100" y="554" style="text-anchor:start">BenchmarkFilterFunction</text>
<g style="font-style:italic;font-size:75%">
<rect x="598" y="560" width="14" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="593" y="575" style="text-anchor:end">+4.91%</text>
</g>
<text x="100" y="580" style="text-anchor:start">BenchmarkNotFunction</text>
<g style="font-style:italic;font-size:75%">
<rect x="609" y="586" width="3" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="604" y="601" style="text-anchor:end">+1.03%</text>
</g>
<text x="100" y="606" style="text-anchor:start">BenchmarkFilterNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="600" y="612" width="12" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="595" y="627" style="text-anchor:end">+4.22%</text>
</g>
<text x="100" y="632" style="text-anchor:start">BenchmarkNotNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="638" width="3" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="620" y="653" style="text-anchor:start">-1.00%</text>
</g>
<text x="100" y="658" style="text-anchor:start">BenchmarkFilterSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="600" y="664" width="12" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="595" y="679" style="text-anchor:end">+4.00%</text>
</g>
<text x="100" y="684" style="text-anchor:start">BenchmarkNotSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="690" width="96" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="713" y="705" style="text-anchor:start">-32.12%</text>
</g>
<text x="100" y="710" style="text-anchor:start">BenchmarkHas</text>
<g style="font-style:italic;font-size:75%">
<rect x="608" y="716" width="4" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="603" y="731" style="text-anchor:end">+1.59%</text>
</g>
<text x="100" y="736" style="text-anchor:start">BenchmarkHasNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="608" y="742" width="4" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="603" y="757" style="text-anchor:end">+1.56%</text>
</g>
<text x="100" y="762" style="text-anchor:start">BenchmarkHasSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="566" y="768" width="46" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="561" y="783" style="text-anchor:end">+15.54%</text>
</g>
<text x="100" y="788" style="text-anchor:start">BenchmarkEnd</text>
<g style="font-style:italic;font-size:75%">
<rect x="607" y="794" width="5" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="602" y="809" style="text-anchor:end">+1.77%</text>
</g>
<text x="100" y="814" style="text-anchor:start">BenchmarkEach</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="820" width="10" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="627" y="835" style="text-anchor:start">-3.61%</text>
</g>
<text x="100" y="840" style="text-anchor:start">BenchmarkMap</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="846" width="49" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="666" y="861" style="text-anchor:start">-16.48%</text>
</g>
<text x="100" y="866" style="text-anchor:start">BenchmarkAttr</text>
<g style="font-style:italic;font-size:75%">
<rect x="609" y="872" width="3" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="604" y="887" style="text-anchor:end">+1.33%</text>
</g>
<text x="100" y="892" style="text-anchor:start">BenchmarkText</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="898" width="177" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="794" y="913" style="text-anchor:start">-59.21%</text>
</g>
<text x="100" y="918" style="text-anchor:start">BenchmarkLength</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="924" width="27" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="644" y="939" style="text-anchor:start">-9.01%</text>
</g>
<text x="100" y="944" style="text-anchor:start">BenchmarkHtml</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="950" width="50" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="667" y="965" style="text-anchor:start">-16.73%</text>
</g>
<text x="100" y="970" style="text-anchor:start">BenchmarkIs</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="976" width="75" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="692" y="991" style="text-anchor:start">-25.08%</text>
</g>
<text x="100" y="996" style="text-anchor:start">BenchmarkIsPositional</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1002" width="34" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="651" y="1017" style="text-anchor:start">-11.55%</text>
</g>
<text x="100" y="1022" style="text-anchor:start">BenchmarkIsFunction</text>
<g style="font-style:italic;font-size:75%">
<rect x="609" y="1028" width="3" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="604" y="1043" style="text-anchor:end">+1.28%</text>
</g>
<text x="100" y="1048" style="text-anchor:start">BenchmarkIsSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="606" y="1054" width="6" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="601" y="1069" style="text-anchor:end">+2.10%</text>
</g>
<text x="100" y="1074" style="text-anchor:start">BenchmarkIsNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1080" width="47" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="664" y="1095" style="text-anchor:start">-15.99%</text>
</g>
<text x="100" y="1100" style="text-anchor:start">BenchmarkHasClass</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1106" width="7" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="624" y="1121" style="text-anchor:start">-2.65%</text>
</g>
<text x="100" y="1126" style="text-anchor:start">BenchmarkContains</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1132" width="145" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="762" y="1147" style="text-anchor:start">-48.54%</text>
</g>
<text x="100" y="1152" style="text-anchor:start">BenchmarkFind</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1158" width="128" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="745" y="1173" style="text-anchor:start">-42.71%</text>
</g>
<text x="100" y="1178" style="text-anchor:start">BenchmarkFindWithinSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="526" y="1184" width="86" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="521" y="1199" style="text-anchor:end">+28.77%</text>
</g>
<text x="100" y="1204" style="text-anchor:start">BenchmarkFindSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="527" y="1210" width="85" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="522" y="1225" style="text-anchor:end">+28.47%</text>
</g>
<text x="100" y="1230" style="text-anchor:start">BenchmarkFindNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1236" width="188" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="805" y="1251" style="text-anchor:start">-62.84%</text>
</g>
<text x="100" y="1256" style="text-anchor:start">BenchmarkContents</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1262" width="174" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="791" y="1277" style="text-anchor:start">-58.06%</text>
</g>
<text x="100" y="1282" style="text-anchor:start">BenchmarkContentsFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1288" width="189" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="806" y="1303" style="text-anchor:start">-63.13%</text>
</g>
<text x="100" y="1308" style="text-anchor:start">BenchmarkChildren</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1314" width="114" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="731" y="1329" style="text-anchor:start">-38.24%</text>
</g>
<text x="100" y="1334" style="text-anchor:start">BenchmarkChildrenFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1340" width="10" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="627" y="1355" style="text-anchor:start">-3.66%</text>
</g>
<text x="100" y="1360" style="text-anchor:start">BenchmarkParent</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1366" width="18" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="635" y="1381" style="text-anchor:start">-6.06%</text>
</g>
<text x="100" y="1386" style="text-anchor:start">BenchmarkParentFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="602" y="1392" width="10" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="597" y="1407" style="text-anchor:end">+3.64%</text>
</g>
<text x="100" y="1412" style="text-anchor:start">BenchmarkParents</text>
<g style="font-style:italic;font-size:75%">
<rect x="608" y="1418" width="4" height="20" style="fill-opacity:0.3;fill:red"/>
<text x="603" y="1433" style="text-anchor:end">+1.44%</text>
</g>
<text x="100" y="1438" style="text-anchor:start">BenchmarkParentsFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1444" width="133" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="750" y="1459" style="text-anchor:start">-44.35%</text>
</g>
<text x="100" y="1464" style="text-anchor:start">BenchmarkParentsUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1470" width="95" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="712" y="1485" style="text-anchor:start">-31.99%</text>
</g>
<text x="100" y="1490" style="text-anchor:start">BenchmarkParentsUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1496" width="97" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="714" y="1511" style="text-anchor:start">-32.62%</text>
</g>
<text x="100" y="1516" style="text-anchor:start">BenchmarkParentsUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1522" width="137" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="754" y="1537" style="text-anchor:start">-45.83%</text>
</g>
<text x="100" y="1542" style="text-anchor:start">BenchmarkParentsFilteredUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1548" width="90" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="707" y="1563" style="text-anchor:start">-30.05%</text>
</g>
<text x="100" y="1568" style="text-anchor:start">BenchmarkParentsFilteredUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1574" width="89" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="706" y="1589" style="text-anchor:start">-29.97%</text>
</g>
<text x="100" y="1594" style="text-anchor:start">BenchmarkParentsFilteredUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1600" width="77" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="694" y="1615" style="text-anchor:start">-25.96%</text>
</g>
<text x="100" y="1620" style="text-anchor:start">BenchmarkSiblings</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1626" width="80" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="697" y="1641" style="text-anchor:start">-26.67%</text>
</g>
<text x="100" y="1646" style="text-anchor:start">BenchmarkSiblingsFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1652" width="199" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="816" y="1667" style="text-anchor:start">-66.40%</text>
</g>
<text x="100" y="1672" style="text-anchor:start">BenchmarkNext</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1678" width="193" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="810" y="1693" style="text-anchor:start">-64.46%</text>
</g>
<text x="100" y="1698" style="text-anchor:start">BenchmarkNextFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1704" width="79" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="696" y="1719" style="text-anchor:start">-26.50%</text>
</g>
<text x="100" y="1724" style="text-anchor:start">BenchmarkNextAll</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1730" width="78" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="695" y="1745" style="text-anchor:start">-26.27%</text>
</g>
<text x="100" y="1750" style="text-anchor:start">BenchmarkNextAllFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1756" width="200" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="817" y="1771" style="text-anchor:start">-66.84%</text>
</g>
<text x="100" y="1776" style="text-anchor:start">BenchmarkPrev</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1782" width="193" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="810" y="1797" style="text-anchor:start">-64.35%</text>
</g>
<text x="100" y="1802" style="text-anchor:start">BenchmarkPrevFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1808" width="120" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="737" y="1823" style="text-anchor:start">-40.05%</text>
</g>
<text x="100" y="1828" style="text-anchor:start">BenchmarkPrevAll</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1834" width="119" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="736" y="1849" style="text-anchor:start">-39.74%</text>
</g>
<text x="100" y="1854" style="text-anchor:start">BenchmarkPrevAllFiltered</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1860" width="155" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="772" y="1875" style="text-anchor:start">-51.73%</text>
</g>
<text x="100" y="1880" style="text-anchor:start">BenchmarkNextUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1886" width="100" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="717" y="1901" style="text-anchor:start">-33.42%</text>
</g>
<text x="100" y="1906" style="text-anchor:start">BenchmarkNextUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1912" width="121" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="738" y="1927" style="text-anchor:start">-40.42%</text>
</g>
<text x="100" y="1932" style="text-anchor:start">BenchmarkNextUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1938" width="140" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="757" y="1953" style="text-anchor:start">-46.87%</text>
</g>
<text x="100" y="1958" style="text-anchor:start">BenchmarkPrevUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1964" width="99" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="716" y="1979" style="text-anchor:start">-33.14%</text>
</g>
<text x="100" y="1984" style="text-anchor:start">BenchmarkPrevUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="1990" width="123" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="740" y="2005" style="text-anchor:start">-41.19%</text>
</g>
<text x="100" y="2010" style="text-anchor:start">BenchmarkPrevUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2016" width="167" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="784" y="2031" style="text-anchor:start">-55.92%</text>
</g>
<text x="100" y="2036" style="text-anchor:start">BenchmarkNextFilteredUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2042" width="97" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="714" y="2057" style="text-anchor:start">-32.49%</text>
</g>
<text x="100" y="2062" style="text-anchor:start">BenchmarkNextFilteredUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2068" width="99" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="716" y="2083" style="text-anchor:start">-33.00%</text>
</g>
<text x="100" y="2088" style="text-anchor:start">BenchmarkNextFilteredUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2094" width="175" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="792" y="2109" style="text-anchor:start">-58.54%</text>
</g>
<text x="100" y="2114" style="text-anchor:start">BenchmarkPrevFilteredUntil</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2120" width="101" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="718" y="2135" style="text-anchor:start">-33.80%</text>
</g>
<text x="100" y="2140" style="text-anchor:start">BenchmarkPrevFilteredUntilSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2146" width="100" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="717" y="2161" style="text-anchor:start">-33.44%</text>
</g>
<text x="100" y="2166" style="text-anchor:start">BenchmarkPrevFilteredUntilNodes</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2172" width="74" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="691" y="2187" style="text-anchor:start">-24.82%</text>
</g>
<text x="100" y="2192" style="text-anchor:start">BenchmarkClosest</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2198" width="103" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="720" y="2213" style="text-anchor:start">-34.45%</text>
</g>
<text x="100" y="2218" style="text-anchor:start">BenchmarkClosestSelection</text>
<g style="font-style:italic;font-size:75%">
<rect x="612" y="2224" width="105" height="20" style="fill-opacity:0.3;fill:green"/>
<text x="722" y="2239" style="text-anchor:start">-35.30%</text>
</g>
<text x="100" y="2244" style="text-anchor:start">BenchmarkClosestNodes</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 22 KiB

+2 -1
View File
@@ -1,4 +1,4 @@
// Copyright (c) 2012, Martin Angers & Contributors
// Copyright (c) 2012-2013, Martin Angers & Contributors
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
@@ -60,6 +60,7 @@ The various methods are split into files based on the category of behavior:
* iteration.go : methods to loop over the selection's nodes.
- Each()
- EachWithBreak()
- Map()
* property.go : methods that inspect and get the node's properties values.
+13
View File
@@ -9,6 +9,19 @@ func (this *Selection) Each(f func(int, *Selection)) *Selection {
return this
}
// EachWithBreak() iterates over a Selection object, executing a function for each
// matched element. It is identical to `Each()` except that it is possible to break
// out of the loop by returning `false` in the callback function. It returns the
// current Selection object.
func (this *Selection) EachWithBreak(f func(int, *Selection) bool) *Selection {
for i, n := range this.Nodes {
if !f(i, newSingleSelection(n, this.document)) {
return this
}
}
return this
}
// Map() passes each element in the current matched set through a function,
// producing a slice of string holding the returned values.
func (this *Selection) Map(f func(int, *Selection) string) (result []string) {
+15
View File
@@ -19,6 +19,21 @@ func TestEach(t *testing.T) {
AssertLength(t, sel.Nodes, 6)
}
func TestEachWithBreak(t *testing.T) {
var cnt int
sel := Doc().Find(".hero-unit .row-fluid").EachWithBreak(func(i int, n *Selection) bool {
cnt++
t.Logf("At index %v, node %v", i, n.Nodes[0].Data)
return false
}).Find("a")
if cnt != 1 {
t.Errorf("Expected Each() to call function 1 time, got %v times.", cnt)
}
AssertLength(t, sel.Nodes, 6)
}
func TestEachEmptySelection(t *testing.T) {
var cnt int