Commit b5e21db
committed
Auto merge of rust-lang#68499 - ssomers:btree_search_tidying, r=Mark-Simulacrum
BtreeMap range_search spruced up
rust-lang#39457 created a lower level entry point for `range_search` to operate on, but it's really not hard to move it up a level of abstraction, making it somewhat shorter and reusing existing unsafe code (`new_edge` is unsafe although it is currently not tagged as such).
Benchmark added. Comparison says there's no real difference:
```
>cargo benchcmp old3.txt new3.txt --threshold 5
name old3.txt ns/iter new3.txt ns/iter diff ns/iter diff % speedup
btree::map::find_seq_100 19 21 2 10.53% x 0.90
btree::map::range_excluded_unbounded 3,117 2,838 -279 -8.95% x 1.10
btree::map::range_included_unbounded 1,768 1,871 103 5.83% x 0.94
btree::set::intersection_10k_neg_vs_10k_pos 35 37 2 5.71% x 0.95
btree::set::intersection_staggered_100_vs_10k 2,488 2,314 -174 -6.99% x 1.08
btree::set::is_subset_10k_vs_100 3 2 -1 -33.33% x 1.50
```
r? @Mark-Simulacrum4 files changed
+101
-42
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
3 | 4 | | |
4 | 5 | | |
5 | 6 | | |
| |||
200 | 201 | | |
201 | 202 | | |
202 | 203 | | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1861 | 1861 | | |
1862 | 1862 | | |
1863 | 1863 | | |
1864 | | - | |
1865 | 1864 | | |
1866 | 1865 | | |
1867 | | - | |
1868 | | - | |
1869 | | - | |
| 1866 | + | |
| 1867 | + | |
| 1868 | + | |
1870 | 1869 | | |
1871 | | - | |
| 1870 | + | |
1872 | 1871 | | |
1873 | | - | |
| 1872 | + | |
1874 | 1873 | | |
1875 | | - | |
1876 | | - | |
| 1874 | + | |
| 1875 | + | |
1877 | 1876 | | |
1878 | | - | |
| 1877 | + | |
1879 | 1878 | | |
1880 | | - | |
| 1879 | + | |
1881 | 1880 | | |
1882 | | - | |
1883 | | - | |
1884 | | - | |
| 1881 | + | |
| 1882 | + | |
| 1883 | + | |
1885 | 1884 | | |
1886 | 1885 | | |
1887 | | - | |
1888 | | - | |
1889 | | - | |
| 1886 | + | |
| 1887 | + | |
| 1888 | + | |
1890 | 1889 | | |
1891 | | - | |
| 1890 | + | |
1892 | 1891 | | |
1893 | | - | |
| 1892 | + | |
1894 | 1893 | | |
1895 | | - | |
1896 | | - | |
| 1894 | + | |
| 1895 | + | |
1897 | 1896 | | |
1898 | | - | |
| 1897 | + | |
1899 | 1898 | | |
1900 | | - | |
| 1899 | + | |
1901 | 1900 | | |
1902 | | - | |
1903 | | - | |
1904 | | - | |
| 1901 | + | |
| 1902 | + | |
| 1903 | + | |
1905 | 1904 | | |
1906 | 1905 | | |
1907 | | - | |
1908 | | - | |
1909 | | - | |
1910 | | - | |
1911 | | - | |
1912 | | - | |
1913 | | - | |
| 1906 | + | |
| 1907 | + | |
1914 | 1908 | | |
1915 | | - | |
1916 | | - | |
1917 | | - | |
1918 | | - | |
1919 | | - | |
1920 | | - | |
1921 | | - | |
1922 | | - | |
1923 | 1909 | | |
1924 | 1910 | | |
1925 | 1911 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
34 | 35 | | |
35 | 36 | | |
36 | 37 | | |
| |||
832 | 833 | | |
833 | 834 | | |
834 | 835 | | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
835 | 844 | | |
836 | 845 | | |
837 | 846 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
13 | 17 | | |
14 | 18 | | |
15 | 19 | | |
| |||
32 | 36 | | |
33 | 37 | | |
34 | 38 | | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
35 | 43 | | |
36 | 44 | | |
37 | 45 | | |
| |||
50 | 58 | | |
51 | 59 | | |
52 | 60 | | |
53 | | - | |
54 | | - | |
| 61 | + | |
| 62 | + | |
55 | 63 | | |
56 | 64 | | |
57 | 65 | | |
| |||
0 commit comments