Skip to content

Commit de5f00f

Browse files
mgoldenbergHywan
authored andcommitted
refactor(indexeddb): use references in IndexedEventRelationKey::KeyComponents
Signed-off-by: Michael Goldenberg <[email protected]>
1 parent 33c16b2 commit de5f00f

File tree

3 files changed

+10
-10
lines changed

3 files changed

+10
-10
lines changed

crates/matrix-sdk-indexeddb/src/event_cache_store/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -488,7 +488,7 @@ impl_event_cache_store! {
488488
match filters {
489489
Some(relation_types) if !relation_types.is_empty() => {
490490
for relation_type in relation_types {
491-
let relation = (event_id.to_owned(), relation_type.clone());
491+
let relation = (event_id, relation_type);
492492
let events = transaction.get_events_by_relation(room_id, relation).await?;
493493
for event in events {
494494
let position = event.position().map(Into::into);
@@ -498,7 +498,7 @@ impl_event_cache_store! {
498498
}
499499
_ => {
500500
for event in
501-
transaction.get_events_by_related_event(room_id, event_id.to_owned()).await?
501+
transaction.get_events_by_related_event(room_id, event_id).await?
502502
{
503503
let position = event.position().map(Into::into);
504504
related_events.push((event.into(), position));

crates/matrix-sdk-indexeddb/src/event_cache_store/serializer/types.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@ impl Indexed for Event {
340340
let relation = self.relation().map(|(related_event, relation_type)| {
341341
IndexedEventRelationKey::encode(
342342
room_id,
343-
(related_event, RelationType::from(relation_type)),
343+
(&related_event, &RelationType::from(relation_type)),
344344
serializer,
345345
)
346346
});
@@ -441,7 +441,7 @@ impl IndexedEventRelationKey {
441441
/// events which are related to the given event.
442442
pub fn with_related_event_id(
443443
&self,
444-
related_event_id: &OwnedEventId,
444+
related_event_id: &EventId,
445445
serializer: &IndexeddbSerializer,
446446
) -> Self {
447447
let room_id = self.0.clone();
@@ -455,11 +455,11 @@ impl IndexedEventRelationKey {
455455
impl IndexedKey<Event> for IndexedEventRelationKey {
456456
const INDEX: Option<&'static str> = Some(keys::EVENTS_RELATION);
457457

458-
type KeyComponents<'a> = (OwnedEventId, RelationType);
458+
type KeyComponents<'a> = (&'a EventId, &'a RelationType);
459459

460460
fn encode(
461461
room_id: &RoomId,
462-
(related_event_id, relation_type): (OwnedEventId, RelationType),
462+
(related_event_id, relation_type): (&EventId, &RelationType),
463463
serializer: &IndexeddbSerializer,
464464
) -> Self {
465465
let room_id = serializer.encode_key_as_string(keys::ROOMS, room_id);

crates/matrix-sdk-indexeddb/src/event_cache_store/transaction.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -632,7 +632,7 @@ impl<'a> IndexeddbEventCacheStoreTransaction<'a> {
632632
pub async fn get_events_by_relation(
633633
&self,
634634
room_id: &RoomId,
635-
range: impl Into<IndexedKeyRange<(OwnedEventId, RelationType)>>,
635+
range: impl Into<IndexedKeyRange<(&EventId, &RelationType)>>,
636636
) -> Result<Vec<Event>, IndexeddbEventCacheStoreTransactionError> {
637637
let range = range.into().encoded(room_id, self.serializer.inner());
638638
self.get_items_by_key::<Event, IndexedEventRelationKey>(room_id, range).await
@@ -643,12 +643,12 @@ impl<'a> IndexeddbEventCacheStoreTransaction<'a> {
643643
pub async fn get_events_by_related_event(
644644
&self,
645645
room_id: &RoomId,
646-
related_event_id: OwnedEventId,
646+
related_event_id: &EventId,
647647
) -> Result<Vec<Event>, IndexeddbEventCacheStoreTransactionError> {
648648
let lower = IndexedEventRelationKey::lower_key(room_id, self.serializer.inner())
649-
.with_related_event_id(&related_event_id, self.serializer.inner());
649+
.with_related_event_id(related_event_id, self.serializer.inner());
650650
let upper = IndexedEventRelationKey::upper_key(room_id, self.serializer.inner())
651-
.with_related_event_id(&related_event_id, self.serializer.inner());
651+
.with_related_event_id(related_event_id, self.serializer.inner());
652652
let range = IndexedKeyRange::Bound(lower, upper);
653653
self.get_items_by_key::<Event, IndexedEventRelationKey>(room_id, range).await
654654
}

0 commit comments

Comments
 (0)