Skip to content

Commit 39a6a2e

Browse files
committed
chore(sdk): Rename Update::PushItems::position_hint to …::at.
1 parent ba1c797 commit 39a6a2e

File tree

3 files changed

+71
-122
lines changed

3 files changed

+71
-122
lines changed

crates/matrix-sdk/src/event_cache/linked_chunk/as_vector.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -145,11 +145,11 @@ impl UpdateToVectorDiff {
145145
/// `VectorDiff::Insert` need an index. To compute this index, the algorithm
146146
/// will iterate over all pairs to accumulate each chunk length until it
147147
/// finds the appropriate pair (given by
148-
/// [`Update::PushItems::position_hint`]). This is _the offset_. To this
149-
/// offset, the algorithm adds the position's index of the new items
150-
/// (still given by [`Update::PushItems::position_hint`]). This is
151-
/// _the index_. This logic works for all cases as long as pairs are
152-
/// maintained according to the rules hereinabove.
148+
/// [`Update::PushItems::at`]). This is _the offset_. To this offset, the
149+
/// algorithm adds the position's index of the new items (still given by
150+
/// [`Update::PushItems::at`]). This is _the index_. This logic works
151+
/// for all cases as long as pairs are maintained according to the rules
152+
/// hereinabove.
153153
///
154154
/// That's a pretty memory compact and computation efficient way to map a
155155
/// `Vec<Update<Item, Gap>>` into a `Vec<VectorDiff<Item>>`. The larger the
@@ -201,7 +201,7 @@ impl UpdateToVectorDiff {
201201
//
202202
// ```
203203
// Update::PushItems {
204-
// position_hint: Position(ChunkIdentifier(0), 1),
204+
// at: Position(ChunkIdentifier(0), 1),
205205
// items: vec!['w', 'x'],
206206
// }
207207
// Update::NewItemsChunk {
@@ -210,7 +210,7 @@ impl UpdateToVectorDiff {
210210
// next: Some(ChunkIdentifier(1)),
211211
// }
212212
// Update::PushItems {
213-
// position_hint: Position(ChunkIdentifier(2), 0),
213+
// at: Position(ChunkIdentifier(2), 0),
214214
// items: vec!['y', 'z'],
215215
// }
216216
// ```
@@ -220,7 +220,7 @@ impl UpdateToVectorDiff {
220220
// ```
221221
// Update::StartReattachItems
222222
// Update::PushItems {
223-
// position_hint: Position(ChunkIdentifier(2), 2),
223+
// at: Position(ChunkIdentifier(2), 2),
224224
// items: vec!['b']
225225
// }
226226
// Update::NewItemsChunk {
@@ -229,7 +229,7 @@ impl UpdateToVectorDiff {
229229
// next: Some(ChunkIdentifier(1)),
230230
// }
231231
// Update::PushItems {
232-
// position_hint: Position(ChunkIdentifier(3), 0),
232+
// at: Position(ChunkIdentifier(3), 0),
233233
// items: vec!['c'],
234234
// }
235235
// Update::EndReattachItems
@@ -320,7 +320,7 @@ impl UpdateToVectorDiff {
320320
let _ = self.chunks.remove(chunk_index);
321321
}
322322

323-
Update::PushItems { position_hint: position, items } => {
323+
Update::PushItems { at: position, items } => {
324324
let expected_chunk_identifier = position.chunk_identifier();
325325

326326
let (chunk_index, offset, chunk_length) = {

crates/matrix-sdk/src/event_cache/linked_chunk/mod.rs

Lines changed: 36 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -1089,7 +1089,7 @@ impl<const CAPACITY: usize, Item, Gap> Chunk<CAPACITY, Item, Gap> {
10891089

10901090
if let Some(updates) = updates.as_mut() {
10911091
updates.push(Update::PushItems {
1092-
position_hint: Position(identifier, start),
1092+
at: Position(identifier, start),
10931093
items: items[start..].to_vec(),
10941094
});
10951095
}
@@ -1104,7 +1104,7 @@ impl<const CAPACITY: usize, Item, Gap> Chunk<CAPACITY, Item, Gap> {
11041104

11051105
if let Some(updates) = updates.as_mut() {
11061106
updates.push(Update::PushItems {
1107-
position_hint: Position(identifier, start),
1107+
at: Position(identifier, start),
11081108
items: items[start..].to_vec(),
11091109
});
11101110
}
@@ -1299,14 +1299,14 @@ mod tests {
12991299
assert_items_eq!(linked_chunk, ['a']);
13001300
assert_eq!(
13011301
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'] }]
13031303
);
13041304

13051305
linked_chunk.push_items_back(['b', 'c']);
13061306
assert_items_eq!(linked_chunk, ['a', 'b', 'c']);
13071307
assert_eq!(
13081308
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'] }]
13101310
);
13111311

13121312
linked_chunk.push_items_back(['d', 'e']);
@@ -1319,7 +1319,7 @@ mod tests {
13191319
new: ChunkIdentifier(1),
13201320
next: None
13211321
},
1322-
PushItems { position_hint: Position(ChunkIdentifier(1), 0), items: vec!['d', 'e'] }
1322+
PushItems { at: Position(ChunkIdentifier(1), 0), items: vec!['d', 'e'] }
13231323
]
13241324
);
13251325

@@ -1328,22 +1328,19 @@ mod tests {
13281328
assert_eq!(
13291329
linked_chunk.updates().unwrap().take(),
13301330
&[
1331-
PushItems { position_hint: Position(ChunkIdentifier(1), 2), items: vec!['f'] },
1331+
PushItems { at: Position(ChunkIdentifier(1), 2), items: vec!['f'] },
13321332
NewItemsChunk {
13331333
previous: Some(ChunkIdentifier(1)),
13341334
new: ChunkIdentifier(2),
13351335
next: None,
13361336
},
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'] },
13411338
NewItemsChunk {
13421339
previous: Some(ChunkIdentifier(2)),
13431340
new: ChunkIdentifier(3),
13441341
next: None,
13451342
},
1346-
PushItems { position_hint: Position(ChunkIdentifier(3), 0), items: vec!['j'] },
1343+
PushItems { at: Position(ChunkIdentifier(3), 0), items: vec!['j'] },
13471344
]
13481345
);
13491346

@@ -1359,7 +1356,7 @@ mod tests {
13591356
assert_items_eq!(linked_chunk, ['a']);
13601357
assert_eq!(
13611358
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'] }]
13631360
);
13641361

13651362
linked_chunk.push_gap_back(());
@@ -1384,16 +1381,13 @@ mod tests {
13841381
new: ChunkIdentifier(2),
13851382
next: None,
13861383
},
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'] },
13911385
NewItemsChunk {
13921386
previous: Some(ChunkIdentifier(2)),
13931387
new: ChunkIdentifier(3),
13941388
next: None,
13951389
},
1396-
PushItems { position_hint: Position(ChunkIdentifier(3), 0), items: vec!['e'] },
1390+
PushItems { at: Position(ChunkIdentifier(3), 0), items: vec!['e'] },
13971391
]
13981392
);
13991393

@@ -1428,16 +1422,13 @@ mod tests {
14281422
new: ChunkIdentifier(6),
14291423
next: None,
14301424
},
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'] },
14351426
NewItemsChunk {
14361427
previous: Some(ChunkIdentifier(6)),
14371428
new: ChunkIdentifier(7),
14381429
next: None,
14391430
},
1440-
PushItems { position_hint: Position(ChunkIdentifier(7), 0), items: vec!['i'] },
1431+
PushItems { at: Position(ChunkIdentifier(7), 0), items: vec!['i'] },
14411432
]
14421433
);
14431434

@@ -1667,19 +1658,13 @@ mod tests {
16671658
assert_eq!(
16681659
linked_chunk.updates().unwrap().take(),
16691660
&[
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'] },
16741662
NewItemsChunk {
16751663
previous: Some(ChunkIdentifier(0)),
16761664
new: ChunkIdentifier(1),
16771665
next: None,
16781666
},
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'] },
16831668
]
16841669
);
16851670

@@ -1700,27 +1685,21 @@ mod tests {
17001685
linked_chunk.updates().unwrap().take(),
17011686
&[
17021687
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'] },
17071689
NewItemsChunk {
17081690
previous: Some(ChunkIdentifier(1)),
17091691
new: ChunkIdentifier(2),
17101692
next: None,
17111693
},
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'] },
17161695
StartReattachItems,
1717-
PushItems { position_hint: Position(ChunkIdentifier(2), 2), items: vec!['e'] },
1696+
PushItems { at: Position(ChunkIdentifier(2), 2), items: vec!['e'] },
17181697
NewItemsChunk {
17191698
previous: Some(ChunkIdentifier(2)),
17201699
new: ChunkIdentifier(3),
17211700
next: None,
17221701
},
1723-
PushItems { position_hint: Position(ChunkIdentifier(3), 0), items: vec!['f'] },
1702+
PushItems { at: Position(ChunkIdentifier(3), 0), items: vec!['f'] },
17241703
EndReattachItems,
17251704
]
17261705
);
@@ -1740,27 +1719,21 @@ mod tests {
17401719
linked_chunk.updates().unwrap().take(),
17411720
&[
17421721
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'] },
17471723
NewItemsChunk {
17481724
previous: Some(ChunkIdentifier(0)),
17491725
new: ChunkIdentifier(4),
17501726
next: Some(ChunkIdentifier(1)),
17511727
},
1752-
PushItems { position_hint: Position(ChunkIdentifier(4), 0), items: vec!['o'] },
1728+
PushItems { at: Position(ChunkIdentifier(4), 0), items: vec!['o'] },
17531729
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'] },
17581731
NewItemsChunk {
17591732
previous: Some(ChunkIdentifier(4)),
17601733
new: ChunkIdentifier(5),
17611734
next: Some(ChunkIdentifier(1)),
17621735
},
1763-
PushItems { position_hint: Position(ChunkIdentifier(5), 0), items: vec!['c'] },
1736+
PushItems { at: Position(ChunkIdentifier(5), 0), items: vec!['c'] },
17641737
EndReattachItems,
17651738
]
17661739
);
@@ -1780,12 +1753,9 @@ mod tests {
17801753
linked_chunk.updates().unwrap().take(),
17811754
&[
17821755
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'] },
17871757
StartReattachItems,
1788-
PushItems { position_hint: Position(ChunkIdentifier(5), 2), items: vec!['c'] },
1758+
PushItems { at: Position(ChunkIdentifier(5), 2), items: vec!['c'] },
17891759
EndReattachItems,
17901760
]
17911761
);
@@ -1804,10 +1774,7 @@ mod tests {
18041774
);
18051775
assert_eq!(
18061776
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'] }]
18111778
);
18121779
assert_eq!(linked_chunk.len(), 18);
18131780
}
@@ -1869,19 +1836,13 @@ mod tests {
18691836
assert_eq!(
18701837
linked_chunk.updates().unwrap().take(),
18711838
&[
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'] },
18761840
NewItemsChunk {
18771841
previous: Some(ChunkIdentifier(0)),
18781842
new: ChunkIdentifier(1),
18791843
next: None
18801844
},
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'] },
18851846
]
18861847
);
18871848

@@ -1907,10 +1868,7 @@ mod tests {
19071868
new: ChunkIdentifier(3),
19081869
next: Some(ChunkIdentifier(1)),
19091870
},
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'] },
19141872
EndReattachItems,
19151873
]
19161874
);
@@ -1939,7 +1897,7 @@ mod tests {
19391897
new: ChunkIdentifier(5),
19401898
next: Some(ChunkIdentifier(2)),
19411899
},
1942-
PushItems { position_hint: Position(ChunkIdentifier(5), 0), items: vec!['a'] },
1900+
PushItems { at: Position(ChunkIdentifier(5), 0), items: vec!['a'] },
19431901
EndReattachItems,
19441902
]
19451903
);
@@ -2055,7 +2013,7 @@ mod tests {
20552013
assert_eq!(
20562014
linked_chunk.updates().unwrap().take(),
20572015
&[
2058-
PushItems { position_hint: Position(ChunkIdentifier(0), 0), items: vec!['a', 'b'] },
2016+
PushItems { at: Position(ChunkIdentifier(0), 0), items: vec!['a', 'b'] },
20592017
NewGapChunk {
20602018
previous: Some(ChunkIdentifier(0)),
20612019
new: ChunkIdentifier(1),
@@ -2067,7 +2025,7 @@ mod tests {
20672025
new: ChunkIdentifier(2),
20682026
next: None,
20692027
},
2070-
PushItems { position_hint: Position(ChunkIdentifier(2), 0), items: vec!['l', 'm'] }
2028+
PushItems { at: Position(ChunkIdentifier(2), 0), items: vec!['l', 'm'] }
20712029
]
20722030
);
20732031

@@ -2091,19 +2049,13 @@ mod tests {
20912049
new: ChunkIdentifier(3),
20922050
next: Some(ChunkIdentifier(2)),
20932051
},
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'] },
20982053
NewItemsChunk {
20992054
previous: Some(ChunkIdentifier(3)),
21002055
new: ChunkIdentifier(4),
21012056
next: Some(ChunkIdentifier(2)),
21022057
},
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'] },
21072059
RemoveChunk(ChunkIdentifier(1)),
21082060
]
21092061
);
@@ -2143,16 +2095,13 @@ mod tests {
21432095
new: ChunkIdentifier(6),
21442096
next: None,
21452097
},
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'] },
21502099
NewItemsChunk {
21512100
previous: Some(ChunkIdentifier(6)),
21522101
new: ChunkIdentifier(7),
21532102
next: None,
21542103
},
2155-
PushItems { position_hint: Position(ChunkIdentifier(7), 0), items: vec!['z'] },
2104+
PushItems { at: Position(ChunkIdentifier(7), 0), items: vec!['z'] },
21562105
RemoveChunk(ChunkIdentifier(5)),
21572106
]
21582107
);

0 commit comments

Comments
 (0)