diff --git a/crates/engine/tree/src/tree/payload_processor/sparse_trie.rs b/crates/engine/tree/src/tree/payload_processor/sparse_trie.rs
index 6dd3933633..c9e469a279 100644
--- a/crates/engine/tree/src/tree/payload_processor/sparse_trie.rs
+++ b/crates/engine/tree/src/tree/payload_processor/sparse_trie.rs
@@ -196,14 +196,15 @@ where
/// Use this when the payload was invalid or cancelled - we don't want to preserve
/// potentially invalid trie state, but we keep the allocations for reuse.
pub(super) fn into_cleared_trie(
- mut self,
+ self,
max_nodes_capacity: usize,
max_values_capacity: usize,
) -> (SparseStateTrie, DeferredDrops) {
- self.trie.clear();
- self.trie.shrink_to(max_nodes_capacity, max_values_capacity);
- let deferred = self.trie.take_deferred_drops();
- (self.trie, deferred)
+ let Self { mut trie, .. } = self;
+ trie.clear();
+ trie.shrink_to(max_nodes_capacity, max_values_capacity);
+ let deferred = trie.take_deferred_drops();
+ (trie, deferred)
}
}
@@ -308,16 +309,17 @@ where
///
/// Should be called after the state root result has been sent.
pub(super) fn into_trie_for_reuse(
- mut self,
+ self,
prune_depth: usize,
max_storage_tries: usize,
max_nodes_capacity: usize,
max_values_capacity: usize,
) -> (SparseStateTrie, DeferredDrops) {
- self.trie.prune(prune_depth, max_storage_tries);
- self.trie.shrink_to(max_nodes_capacity, max_values_capacity);
- let deferred = self.trie.take_deferred_drops();
- (self.trie, deferred)
+ let Self { mut trie, .. } = self;
+ trie.prune(prune_depth, max_storage_tries);
+ trie.shrink_to(max_nodes_capacity, max_values_capacity);
+ let deferred = trie.take_deferred_drops();
+ (trie, deferred)
}
/// Clears and shrinks the trie, discarding all state.
@@ -325,14 +327,15 @@ where
/// Use this when the payload was invalid or cancelled - we don't want to preserve
/// potentially invalid trie state, but we keep the allocations for reuse.
pub(super) fn into_cleared_trie(
- mut self,
+ self,
max_nodes_capacity: usize,
max_values_capacity: usize,
) -> (SparseStateTrie, DeferredDrops) {
- self.trie.clear();
- self.trie.shrink_to(max_nodes_capacity, max_values_capacity);
- let deferred = self.trie.take_deferred_drops();
- (self.trie, deferred)
+ let Self { mut trie, .. } = self;
+ trie.clear();
+ trie.shrink_to(max_nodes_capacity, max_values_capacity);
+ let deferred = trie.take_deferred_drops();
+ (trie, deferred)
}
/// Runs the sparse trie task to completion.