Commit 63fbff1
committed
Make
`VacantEntry` now stores a `Tag` instead of a full `hash: u64`. This
means that `OccupiedEntry` doesn't need to store anything, because it
can get that tag from the control byte for `remove -> VacantEntry`.
The `get_bucket_entry` method doesn't need a hash argument either.
Also, since `OccupiedEntry` is now smaller, `enum Entry` will be the
same size as `VacantEntry` by using a niche for the discriminant.
(Although this is not _guaranteed_ by the compiler.)HashTable entries use Tag instead of a full hash1 parent 8ad61ce commit 63fbff1
2 files changed
+54
-35
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
848 | 848 | | |
849 | 849 | | |
850 | 850 | | |
| 851 | + | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
| 855 | + | |
| 856 | + | |
| 857 | + | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
| 861 | + | |
| 862 | + | |
| 863 | + | |
851 | 864 | | |
852 | 865 | | |
853 | 866 | | |
| |||
1183 | 1196 | | |
1184 | 1197 | | |
1185 | 1198 | | |
1186 | | - | |
1187 | | - | |
| 1199 | + | |
| 1200 | + | |
1188 | 1201 | | |
1189 | 1202 | | |
1190 | 1203 | | |
| |||
1193 | 1206 | | |
1194 | 1207 | | |
1195 | 1208 | | |
| 1209 | + | |
| 1210 | + | |
| 1211 | + | |
| 1212 | + | |
| 1213 | + | |
| 1214 | + | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
| 1224 | + | |
| 1225 | + | |
| 1226 | + | |
1196 | 1227 | | |
1197 | | - | |
| 1228 | + | |
1198 | 1229 | | |
1199 | 1230 | | |
1200 | 1231 | | |
| |||
1269 | 1300 | | |
1270 | 1301 | | |
1271 | 1302 | | |
1272 | | - | |
| 1303 | + | |
1273 | 1304 | | |
1274 | | - | |
| 1305 | + | |
1275 | 1306 | | |
1276 | | - | |
| 1307 | + | |
1277 | 1308 | | |
1278 | 1309 | | |
1279 | 1310 | | |
| |||
2456 | 2487 | | |
2457 | 2488 | | |
2458 | 2489 | | |
2459 | | - | |
| 2490 | + | |
2460 | 2491 | | |
2461 | | - | |
| 2492 | + | |
2462 | 2493 | | |
2463 | 2494 | | |
2464 | 2495 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
303 | 304 | | |
304 | 305 | | |
305 | 306 | | |
306 | | - | |
307 | 307 | | |
308 | 308 | | |
309 | 309 | | |
| |||
413 | 413 | | |
414 | 414 | | |
415 | 415 | | |
416 | | - | |
417 | 416 | | |
418 | 417 | | |
419 | 418 | | |
420 | 419 | | |
421 | | - | |
| 420 | + | |
422 | 421 | | |
423 | 422 | | |
424 | 423 | | |
425 | 424 | | |
426 | 425 | | |
427 | 426 | | |
428 | | - | |
429 | | - | |
430 | | - | |
431 | | - | |
432 | | - | |
433 | | - | |
| 427 | + | |
| 428 | + | |
434 | 429 | | |
435 | 430 | | |
436 | 431 | | |
| |||
447 | 442 | | |
448 | 443 | | |
449 | 444 | | |
450 | | - | |
451 | | - | |
| 445 | + | |
452 | 446 | | |
453 | | - | |
454 | | - | |
455 | | - | |
| 447 | + | |
456 | 448 | | |
457 | | - | |
| 449 | + | |
458 | 450 | | |
459 | 451 | | |
460 | 452 | | |
461 | | - | |
| 453 | + | |
462 | 454 | | |
463 | 455 | | |
464 | 456 | | |
465 | 457 | | |
466 | 458 | | |
467 | 459 | | |
468 | 460 | | |
469 | | - | |
| 461 | + | |
470 | 462 | | |
471 | | - | |
472 | | - | |
| 463 | + | |
473 | 464 | | |
474 | 465 | | |
475 | 466 | | |
| |||
573 | 564 | | |
574 | 565 | | |
575 | 566 | | |
576 | | - | |
577 | 567 | | |
578 | 568 | | |
579 | 569 | | |
| |||
1771 | 1761 | | |
1772 | 1762 | | |
1773 | 1763 | | |
1774 | | - | |
1775 | 1764 | | |
1776 | 1765 | | |
1777 | 1766 | | |
| |||
1840 | 1829 | | |
1841 | 1830 | | |
1842 | 1831 | | |
1843 | | - | |
| 1832 | + | |
1844 | 1833 | | |
1845 | 1834 | | |
1846 | 1835 | | |
1847 | | - | |
1848 | | - | |
| 1836 | + | |
| 1837 | + | |
1849 | 1838 | | |
1850 | 1839 | | |
1851 | 1840 | | |
| |||
2083 | 2072 | | |
2084 | 2073 | | |
2085 | 2074 | | |
2086 | | - | |
| 2075 | + | |
2087 | 2076 | | |
2088 | 2077 | | |
2089 | 2078 | | |
| |||
2134 | 2123 | | |
2135 | 2124 | | |
2136 | 2125 | | |
2137 | | - | |
| 2126 | + | |
2138 | 2127 | | |
2139 | 2128 | | |
2140 | | - | |
2141 | 2129 | | |
2142 | 2130 | | |
2143 | 2131 | | |
| |||
0 commit comments