@@ -1089,7 +1089,7 @@ impl<const CAPACITY: usize, Item, Gap> Chunk<CAPACITY, Item, Gap> {
1089
1089
1090
1090
if let Some ( updates) = updates. as_mut ( ) {
1091
1091
updates. push ( Update :: PushItems {
1092
- position_hint : Position ( identifier, start) ,
1092
+ at : Position ( identifier, start) ,
1093
1093
items : items[ start..] . to_vec ( ) ,
1094
1094
} ) ;
1095
1095
}
@@ -1104,7 +1104,7 @@ impl<const CAPACITY: usize, Item, Gap> Chunk<CAPACITY, Item, Gap> {
1104
1104
1105
1105
if let Some ( updates) = updates. as_mut ( ) {
1106
1106
updates. push ( Update :: PushItems {
1107
- position_hint : Position ( identifier, start) ,
1107
+ at : Position ( identifier, start) ,
1108
1108
items : items[ start..] . to_vec ( ) ,
1109
1109
} ) ;
1110
1110
}
@@ -1299,14 +1299,14 @@ mod tests {
1299
1299
assert_items_eq ! ( linked_chunk, [ 'a' ] ) ;
1300
1300
assert_eq ! (
1301
1301
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1302
- & [ PushItems { position_hint : Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'a' ] } ]
1302
+ & [ PushItems { at : Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'a' ] } ]
1303
1303
) ;
1304
1304
1305
1305
linked_chunk. push_items_back ( [ 'b' , 'c' ] ) ;
1306
1306
assert_items_eq ! ( linked_chunk, [ 'a' , 'b' , 'c' ] ) ;
1307
1307
assert_eq ! (
1308
1308
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1309
- & [ PushItems { position_hint : Position ( ChunkIdentifier ( 0 ) , 1 ) , items: vec![ 'b' , 'c' ] } ]
1309
+ & [ PushItems { at : Position ( ChunkIdentifier ( 0 ) , 1 ) , items: vec![ 'b' , 'c' ] } ]
1310
1310
) ;
1311
1311
1312
1312
linked_chunk. push_items_back ( [ 'd' , 'e' ] ) ;
@@ -1319,7 +1319,7 @@ mod tests {
1319
1319
new: ChunkIdentifier ( 1 ) ,
1320
1320
next: None
1321
1321
} ,
1322
- PushItems { position_hint : Position ( ChunkIdentifier ( 1 ) , 0 ) , items: vec![ 'd' , 'e' ] }
1322
+ PushItems { at : Position ( ChunkIdentifier ( 1 ) , 0 ) , items: vec![ 'd' , 'e' ] }
1323
1323
]
1324
1324
) ;
1325
1325
@@ -1328,22 +1328,19 @@ mod tests {
1328
1328
assert_eq ! (
1329
1329
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1330
1330
& [
1331
- PushItems { position_hint : Position ( ChunkIdentifier ( 1 ) , 2 ) , items: vec![ 'f' ] } ,
1331
+ PushItems { at : Position ( ChunkIdentifier ( 1 ) , 2 ) , items: vec![ 'f' ] } ,
1332
1332
NewItemsChunk {
1333
1333
previous: Some ( ChunkIdentifier ( 1 ) ) ,
1334
1334
new: ChunkIdentifier ( 2 ) ,
1335
1335
next: None ,
1336
1336
} ,
1337
- PushItems {
1338
- position_hint: Position ( ChunkIdentifier ( 2 ) , 0 ) ,
1339
- items: vec![ 'g' , 'h' , 'i' ]
1340
- } ,
1337
+ PushItems { at: Position ( ChunkIdentifier ( 2 ) , 0 ) , items: vec![ 'g' , 'h' , 'i' ] } ,
1341
1338
NewItemsChunk {
1342
1339
previous: Some ( ChunkIdentifier ( 2 ) ) ,
1343
1340
new: ChunkIdentifier ( 3 ) ,
1344
1341
next: None ,
1345
1342
} ,
1346
- PushItems { position_hint : Position ( ChunkIdentifier ( 3 ) , 0 ) , items: vec![ 'j' ] } ,
1343
+ PushItems { at : Position ( ChunkIdentifier ( 3 ) , 0 ) , items: vec![ 'j' ] } ,
1347
1344
]
1348
1345
) ;
1349
1346
@@ -1359,7 +1356,7 @@ mod tests {
1359
1356
assert_items_eq ! ( linked_chunk, [ 'a' ] ) ;
1360
1357
assert_eq ! (
1361
1358
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1362
- & [ PushItems { position_hint : Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'a' ] } ]
1359
+ & [ PushItems { at : Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'a' ] } ]
1363
1360
) ;
1364
1361
1365
1362
linked_chunk. push_gap_back ( ( ) ) ;
@@ -1384,16 +1381,13 @@ mod tests {
1384
1381
new: ChunkIdentifier ( 2 ) ,
1385
1382
next: None ,
1386
1383
} ,
1387
- PushItems {
1388
- position_hint: Position ( ChunkIdentifier ( 2 ) , 0 ) ,
1389
- items: vec![ 'b' , 'c' , 'd' ]
1390
- } ,
1384
+ PushItems { at: Position ( ChunkIdentifier ( 2 ) , 0 ) , items: vec![ 'b' , 'c' , 'd' ] } ,
1391
1385
NewItemsChunk {
1392
1386
previous: Some ( ChunkIdentifier ( 2 ) ) ,
1393
1387
new: ChunkIdentifier ( 3 ) ,
1394
1388
next: None ,
1395
1389
} ,
1396
- PushItems { position_hint : Position ( ChunkIdentifier ( 3 ) , 0 ) , items: vec![ 'e' ] } ,
1390
+ PushItems { at : Position ( ChunkIdentifier ( 3 ) , 0 ) , items: vec![ 'e' ] } ,
1397
1391
]
1398
1392
) ;
1399
1393
@@ -1428,16 +1422,13 @@ mod tests {
1428
1422
new: ChunkIdentifier ( 6 ) ,
1429
1423
next: None ,
1430
1424
} ,
1431
- PushItems {
1432
- position_hint: Position ( ChunkIdentifier ( 6 ) , 0 ) ,
1433
- items: vec![ 'f' , 'g' , 'h' ]
1434
- } ,
1425
+ PushItems { at: Position ( ChunkIdentifier ( 6 ) , 0 ) , items: vec![ 'f' , 'g' , 'h' ] } ,
1435
1426
NewItemsChunk {
1436
1427
previous: Some ( ChunkIdentifier ( 6 ) ) ,
1437
1428
new: ChunkIdentifier ( 7 ) ,
1438
1429
next: None ,
1439
1430
} ,
1440
- PushItems { position_hint : Position ( ChunkIdentifier ( 7 ) , 0 ) , items: vec![ 'i' ] } ,
1431
+ PushItems { at : Position ( ChunkIdentifier ( 7 ) , 0 ) , items: vec![ 'i' ] } ,
1441
1432
]
1442
1433
) ;
1443
1434
@@ -1667,19 +1658,13 @@ mod tests {
1667
1658
assert_eq ! (
1668
1659
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1669
1660
& [
1670
- PushItems {
1671
- position_hint: Position ( ChunkIdentifier ( 0 ) , 0 ) ,
1672
- items: vec![ 'a' , 'b' , 'c' ]
1673
- } ,
1661
+ PushItems { at: Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'a' , 'b' , 'c' ] } ,
1674
1662
NewItemsChunk {
1675
1663
previous: Some ( ChunkIdentifier ( 0 ) ) ,
1676
1664
new: ChunkIdentifier ( 1 ) ,
1677
1665
next: None ,
1678
1666
} ,
1679
- PushItems {
1680
- position_hint: Position ( ChunkIdentifier ( 1 ) , 0 ) ,
1681
- items: vec![ 'd' , 'e' , 'f' ]
1682
- } ,
1667
+ PushItems { at: Position ( ChunkIdentifier ( 1 ) , 0 ) , items: vec![ 'd' , 'e' , 'f' ] } ,
1683
1668
]
1684
1669
) ;
1685
1670
@@ -1700,27 +1685,21 @@ mod tests {
1700
1685
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1701
1686
& [
1702
1687
DetachLastItems { at: Position ( ChunkIdentifier ( 1 ) , 1 ) } ,
1703
- PushItems {
1704
- position_hint: Position ( ChunkIdentifier ( 1 ) , 1 ) ,
1705
- items: vec![ 'w' , 'x' ]
1706
- } ,
1688
+ PushItems { at: Position ( ChunkIdentifier ( 1 ) , 1 ) , items: vec![ 'w' , 'x' ] } ,
1707
1689
NewItemsChunk {
1708
1690
previous: Some ( ChunkIdentifier ( 1 ) ) ,
1709
1691
new: ChunkIdentifier ( 2 ) ,
1710
1692
next: None ,
1711
1693
} ,
1712
- PushItems {
1713
- position_hint: Position ( ChunkIdentifier ( 2 ) , 0 ) ,
1714
- items: vec![ 'y' , 'z' ]
1715
- } ,
1694
+ PushItems { at: Position ( ChunkIdentifier ( 2 ) , 0 ) , items: vec![ 'y' , 'z' ] } ,
1716
1695
StartReattachItems ,
1717
- PushItems { position_hint : Position ( ChunkIdentifier ( 2 ) , 2 ) , items: vec![ 'e' ] } ,
1696
+ PushItems { at : Position ( ChunkIdentifier ( 2 ) , 2 ) , items: vec![ 'e' ] } ,
1718
1697
NewItemsChunk {
1719
1698
previous: Some ( ChunkIdentifier ( 2 ) ) ,
1720
1699
new: ChunkIdentifier ( 3 ) ,
1721
1700
next: None ,
1722
1701
} ,
1723
- PushItems { position_hint : Position ( ChunkIdentifier ( 3 ) , 0 ) , items: vec![ 'f' ] } ,
1702
+ PushItems { at : Position ( ChunkIdentifier ( 3 ) , 0 ) , items: vec![ 'f' ] } ,
1724
1703
EndReattachItems ,
1725
1704
]
1726
1705
) ;
@@ -1740,27 +1719,21 @@ mod tests {
1740
1719
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1741
1720
& [
1742
1721
DetachLastItems { at: Position ( ChunkIdentifier ( 0 ) , 0 ) } ,
1743
- PushItems {
1744
- position_hint: Position ( ChunkIdentifier ( 0 ) , 0 ) ,
1745
- items: vec![ 'l' , 'm' , 'n' ]
1746
- } ,
1722
+ PushItems { at: Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'l' , 'm' , 'n' ] } ,
1747
1723
NewItemsChunk {
1748
1724
previous: Some ( ChunkIdentifier ( 0 ) ) ,
1749
1725
new: ChunkIdentifier ( 4 ) ,
1750
1726
next: Some ( ChunkIdentifier ( 1 ) ) ,
1751
1727
} ,
1752
- PushItems { position_hint : Position ( ChunkIdentifier ( 4 ) , 0 ) , items: vec![ 'o' ] } ,
1728
+ PushItems { at : Position ( ChunkIdentifier ( 4 ) , 0 ) , items: vec![ 'o' ] } ,
1753
1729
StartReattachItems ,
1754
- PushItems {
1755
- position_hint: Position ( ChunkIdentifier ( 4 ) , 1 ) ,
1756
- items: vec![ 'a' , 'b' ]
1757
- } ,
1730
+ PushItems { at: Position ( ChunkIdentifier ( 4 ) , 1 ) , items: vec![ 'a' , 'b' ] } ,
1758
1731
NewItemsChunk {
1759
1732
previous: Some ( ChunkIdentifier ( 4 ) ) ,
1760
1733
new: ChunkIdentifier ( 5 ) ,
1761
1734
next: Some ( ChunkIdentifier ( 1 ) ) ,
1762
1735
} ,
1763
- PushItems { position_hint : Position ( ChunkIdentifier ( 5 ) , 0 ) , items: vec![ 'c' ] } ,
1736
+ PushItems { at : Position ( ChunkIdentifier ( 5 ) , 0 ) , items: vec![ 'c' ] } ,
1764
1737
EndReattachItems ,
1765
1738
]
1766
1739
) ;
@@ -1780,12 +1753,9 @@ mod tests {
1780
1753
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1781
1754
& [
1782
1755
DetachLastItems { at: Position ( ChunkIdentifier ( 5 ) , 0 ) } ,
1783
- PushItems {
1784
- position_hint: Position ( ChunkIdentifier ( 5 ) , 0 ) ,
1785
- items: vec![ 'r' , 's' ]
1786
- } ,
1756
+ PushItems { at: Position ( ChunkIdentifier ( 5 ) , 0 ) , items: vec![ 'r' , 's' ] } ,
1787
1757
StartReattachItems ,
1788
- PushItems { position_hint : Position ( ChunkIdentifier ( 5 ) , 2 ) , items: vec![ 'c' ] } ,
1758
+ PushItems { at : Position ( ChunkIdentifier ( 5 ) , 2 ) , items: vec![ 'c' ] } ,
1789
1759
EndReattachItems ,
1790
1760
]
1791
1761
) ;
@@ -1804,10 +1774,7 @@ mod tests {
1804
1774
) ;
1805
1775
assert_eq ! (
1806
1776
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1807
- & [ PushItems {
1808
- position_hint: Position ( ChunkIdentifier ( 3 ) , 1 ) ,
1809
- items: vec![ 'p' , 'q' ]
1810
- } ]
1777
+ & [ PushItems { at: Position ( ChunkIdentifier ( 3 ) , 1 ) , items: vec![ 'p' , 'q' ] } ]
1811
1778
) ;
1812
1779
assert_eq ! ( linked_chunk. len( ) , 18 ) ;
1813
1780
}
@@ -1869,19 +1836,13 @@ mod tests {
1869
1836
assert_eq ! (
1870
1837
linked_chunk. updates( ) . unwrap( ) . take( ) ,
1871
1838
& [
1872
- PushItems {
1873
- position_hint: Position ( ChunkIdentifier ( 0 ) , 0 ) ,
1874
- items: vec![ 'a' , 'b' , 'c' ]
1875
- } ,
1839
+ PushItems { at: Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'a' , 'b' , 'c' ] } ,
1876
1840
NewItemsChunk {
1877
1841
previous: Some ( ChunkIdentifier ( 0 ) ) ,
1878
1842
new: ChunkIdentifier ( 1 ) ,
1879
1843
next: None
1880
1844
} ,
1881
- PushItems {
1882
- position_hint: Position ( ChunkIdentifier ( 1 ) , 0 ) ,
1883
- items: vec![ 'd' , 'e' , 'f' ]
1884
- } ,
1845
+ PushItems { at: Position ( ChunkIdentifier ( 1 ) , 0 ) , items: vec![ 'd' , 'e' , 'f' ] } ,
1885
1846
]
1886
1847
) ;
1887
1848
@@ -1907,10 +1868,7 @@ mod tests {
1907
1868
new: ChunkIdentifier ( 3 ) ,
1908
1869
next: Some ( ChunkIdentifier ( 1 ) ) ,
1909
1870
} ,
1910
- PushItems {
1911
- position_hint: Position ( ChunkIdentifier ( 3 ) , 0 ) ,
1912
- items: vec![ 'b' , 'c' ]
1913
- } ,
1871
+ PushItems { at: Position ( ChunkIdentifier ( 3 ) , 0 ) , items: vec![ 'b' , 'c' ] } ,
1914
1872
EndReattachItems ,
1915
1873
]
1916
1874
) ;
@@ -1939,7 +1897,7 @@ mod tests {
1939
1897
new: ChunkIdentifier ( 5 ) ,
1940
1898
next: Some ( ChunkIdentifier ( 2 ) ) ,
1941
1899
} ,
1942
- PushItems { position_hint : Position ( ChunkIdentifier ( 5 ) , 0 ) , items: vec![ 'a' ] } ,
1900
+ PushItems { at : Position ( ChunkIdentifier ( 5 ) , 0 ) , items: vec![ 'a' ] } ,
1943
1901
EndReattachItems ,
1944
1902
]
1945
1903
) ;
@@ -2055,7 +2013,7 @@ mod tests {
2055
2013
assert_eq ! (
2056
2014
linked_chunk. updates( ) . unwrap( ) . take( ) ,
2057
2015
& [
2058
- PushItems { position_hint : Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'a' , 'b' ] } ,
2016
+ PushItems { at : Position ( ChunkIdentifier ( 0 ) , 0 ) , items: vec![ 'a' , 'b' ] } ,
2059
2017
NewGapChunk {
2060
2018
previous: Some ( ChunkIdentifier ( 0 ) ) ,
2061
2019
new: ChunkIdentifier ( 1 ) ,
@@ -2067,7 +2025,7 @@ mod tests {
2067
2025
new: ChunkIdentifier ( 2 ) ,
2068
2026
next: None ,
2069
2027
} ,
2070
- PushItems { position_hint : Position ( ChunkIdentifier ( 2 ) , 0 ) , items: vec![ 'l' , 'm' ] }
2028
+ PushItems { at : Position ( ChunkIdentifier ( 2 ) , 0 ) , items: vec![ 'l' , 'm' ] }
2071
2029
]
2072
2030
) ;
2073
2031
@@ -2091,19 +2049,13 @@ mod tests {
2091
2049
new: ChunkIdentifier ( 3 ) ,
2092
2050
next: Some ( ChunkIdentifier ( 2 ) ) ,
2093
2051
} ,
2094
- PushItems {
2095
- position_hint: Position ( ChunkIdentifier ( 3 ) , 0 ) ,
2096
- items: vec![ 'd' , 'e' , 'f' ]
2097
- } ,
2052
+ PushItems { at: Position ( ChunkIdentifier ( 3 ) , 0 ) , items: vec![ 'd' , 'e' , 'f' ] } ,
2098
2053
NewItemsChunk {
2099
2054
previous: Some ( ChunkIdentifier ( 3 ) ) ,
2100
2055
new: ChunkIdentifier ( 4 ) ,
2101
2056
next: Some ( ChunkIdentifier ( 2 ) ) ,
2102
2057
} ,
2103
- PushItems {
2104
- position_hint: Position ( ChunkIdentifier ( 4 ) , 0 ) ,
2105
- items: vec![ 'g' , 'h' ]
2106
- } ,
2058
+ PushItems { at: Position ( ChunkIdentifier ( 4 ) , 0 ) , items: vec![ 'g' , 'h' ] } ,
2107
2059
RemoveChunk ( ChunkIdentifier ( 1 ) ) ,
2108
2060
]
2109
2061
) ;
@@ -2143,16 +2095,13 @@ mod tests {
2143
2095
new: ChunkIdentifier ( 6 ) ,
2144
2096
next: None ,
2145
2097
} ,
2146
- PushItems {
2147
- position_hint: Position ( ChunkIdentifier ( 6 ) , 0 ) ,
2148
- items: vec![ 'w' , 'x' , 'y' ]
2149
- } ,
2098
+ PushItems { at: Position ( ChunkIdentifier ( 6 ) , 0 ) , items: vec![ 'w' , 'x' , 'y' ] } ,
2150
2099
NewItemsChunk {
2151
2100
previous: Some ( ChunkIdentifier ( 6 ) ) ,
2152
2101
new: ChunkIdentifier ( 7 ) ,
2153
2102
next: None ,
2154
2103
} ,
2155
- PushItems { position_hint : Position ( ChunkIdentifier ( 7 ) , 0 ) , items: vec![ 'z' ] } ,
2104
+ PushItems { at : Position ( ChunkIdentifier ( 7 ) , 0 ) , items: vec![ 'z' ] } ,
2156
2105
RemoveChunk ( ChunkIdentifier ( 5 ) ) ,
2157
2106
]
2158
2107
) ;
0 commit comments