Skip to content

Commit

Permalink
General cleanup (Part 2) (#32998)
Browse files Browse the repository at this point in the history
* bucket-map: remove unused `mut`

* remove unnecessary explicit `into_iter()` calls

* don't default-construct unit-structs

* prefer `or_default()` to `or_insert_with(T::default())`

* replace "slow zero-filled vec initialization"

---------

Co-authored-by: Trent Nelson <[email protected]>
  • Loading branch information
Lichtso and t-nelson authored Aug 25, 2023
1 parent 9070d78 commit 29bbda0
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 31 deletions.
4 changes: 2 additions & 2 deletions bucket_map/src/bucket.rs
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ impl<'b, T: Clone + Copy + 'static> Bucket<T> {
/// if entry does not exist, return just the index of an empty entry appropriate for this key
/// returns (existing entry, index of the found or empty entry)
fn find_index_entry_mut(
index: &mut BucketStorage<IndexBucket<T>>,
index: &BucketStorage<IndexBucket<T>>,
key: &Pubkey,
random: u64,
) -> Result<(Option<IndexEntryPlaceInBucket<T>>, u64), BucketMapError> {
Expand Down Expand Up @@ -410,7 +410,7 @@ impl<'b, T: Clone + Copy + 'static> Bucket<T> {
return Err(BucketMapError::DataNoSpace((best_fit_bucket, 0)));
}
let max_search = self.index.max_search();
let (elem, elem_ix) = Self::find_index_entry_mut(&mut self.index, key, self.random)?;
let (elem, elem_ix) = Self::find_index_entry_mut(&self.index, key, self.random)?;
let elem = if let Some(elem) = elem {
elem
} else {
Expand Down
2 changes: 1 addition & 1 deletion program-runtime/src/loaded_programs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -443,7 +443,7 @@ impl LoadedPrograms {
key: Pubkey,
entry: Arc<LoadedProgram>,
) -> (bool, Arc<LoadedProgram>) {
let second_level = self.entries.entry(key).or_insert_with(Vec::new);
let second_level = self.entries.entry(key).or_default();
let index = second_level
.iter()
.position(|at| at.effective_slot >= entry.effective_slot);
Expand Down
14 changes: 4 additions & 10 deletions programs/system/src/system_processor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -621,8 +621,7 @@ mod tests {
fn create_default_recent_blockhashes_account() -> AccountSharedData {
#[allow(deprecated)]
recent_blockhashes_account::create_account_with_data_for_test(
vec![IterItem(0u64, &Hash::default(), 0); sysvar::recent_blockhashes::MAX_ENTRIES]
.into_iter(),
vec![IterItem(0u64, &Hash::default(), 0); sysvar::recent_blockhashes::MAX_ENTRIES],
)
}
fn create_default_rent_account() -> AccountSharedData {
Expand Down Expand Up @@ -1577,8 +1576,7 @@ mod tests {
#[allow(deprecated)]
let new_recent_blockhashes_account =
solana_sdk::recent_blockhashes_account::create_account_with_data_for_test(
vec![IterItem(0u64, &blockhash, 0); sysvar::recent_blockhashes::MAX_ENTRIES]
.into_iter(),
vec![IterItem(0u64, &blockhash, 0); sysvar::recent_blockhashes::MAX_ENTRIES],
);
mock_process_instruction(
&system_program::id(),
Expand Down Expand Up @@ -1863,9 +1861,7 @@ mod tests {
let blockhash_id = sysvar::recent_blockhashes::id();
#[allow(deprecated)]
let new_recent_blockhashes_account =
solana_sdk::recent_blockhashes_account::create_account_with_data_for_test(
vec![].into_iter(),
);
solana_sdk::recent_blockhashes_account::create_account_with_data_for_test(vec![]);
process_instruction(
&serialize(&SystemInstruction::InitializeNonceAccount(nonce_address)).unwrap(),
vec![
Expand Down Expand Up @@ -1928,9 +1924,7 @@ mod tests {
);
#[allow(deprecated)]
let new_recent_blockhashes_account =
solana_sdk::recent_blockhashes_account::create_account_with_data_for_test(
vec![].into_iter(),
);
solana_sdk::recent_blockhashes_account::create_account_with_data_for_test(vec![]);
mock_process_instruction(
&system_program::id(),
Vec::new(),
Expand Down
2 changes: 1 addition & 1 deletion runtime/src/serde_snapshot.rs
Original file line number Diff line number Diff line change
Expand Up @@ -516,7 +516,7 @@ where
(SerializableBankAndStorage::<newer::Context> {
bank,
snapshot_storages: storage,
phantom: std::marker::PhantomData::default(),
phantom: std::marker::PhantomData,
})
.serialize(s)
}
Expand Down
25 changes: 17 additions & 8 deletions sdk/src/recent_blockhashes_account.rs
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ mod tests {

#[test]
fn test_create_account_empty() {
let account = create_account_with_data_for_test(vec![].into_iter());
let account = create_account_with_data_for_test(vec![]);
let recent_blockhashes = from_account::<RecentBlockhashes, _>(&account).unwrap();
assert_eq!(recent_blockhashes, RecentBlockhashes::default());
}
Expand All @@ -106,9 +106,14 @@ mod tests {
fn test_create_account_full() {
let def_hash = Hash::default();
let def_lamports_per_signature = 0;
let account = create_account_with_data_for_test(
vec![IterItem(0u64, &def_hash, def_lamports_per_signature); MAX_ENTRIES].into_iter(),
);
let account = create_account_with_data_for_test(vec![
IterItem(
0u64,
&def_hash,
def_lamports_per_signature
);
MAX_ENTRIES
]);
let recent_blockhashes = from_account::<RecentBlockhashes, _>(&account).unwrap();
assert_eq!(recent_blockhashes.len(), MAX_ENTRIES);
}
Expand All @@ -117,10 +122,14 @@ mod tests {
fn test_create_account_truncate() {
let def_hash = Hash::default();
let def_lamports_per_signature = 0;
let account = create_account_with_data_for_test(
vec![IterItem(0u64, &def_hash, def_lamports_per_signature); MAX_ENTRIES + 1]
.into_iter(),
);
let account = create_account_with_data_for_test(vec![
IterItem(
0u64,
&def_hash,
def_lamports_per_signature
);
MAX_ENTRIES + 1
]);
let recent_blockhashes = from_account::<RecentBlockhashes, _>(&account).unwrap();
assert_eq!(recent_blockhashes.len(), MAX_ENTRIES);
}
Expand Down
16 changes: 7 additions & 9 deletions sdk/src/secp256k1_instruction.rs
Original file line number Diff line number Diff line change
Expand Up @@ -860,15 +860,13 @@ pub fn new_secp256k1_instruction(
let signature_arr = signature.serialize();
assert_eq!(signature_arr.len(), SIGNATURE_SERIALIZED_SIZE);

let mut instruction_data = vec![];
instruction_data.resize(
DATA_START
.saturating_add(eth_pubkey.len())
.saturating_add(signature_arr.len())
.saturating_add(message_arr.len())
.saturating_add(1),
0,
);
let instruction_data_len = DATA_START
.saturating_add(eth_pubkey.len())
.saturating_add(signature_arr.len())
.saturating_add(message_arr.len())
.saturating_add(1);
let mut instruction_data = vec![0; instruction_data_len];

let eth_address_offset = DATA_START;
instruction_data[eth_address_offset..eth_address_offset.saturating_add(eth_pubkey.len())]
.copy_from_slice(&eth_pubkey);
Expand Down

0 comments on commit 29bbda0

Please sign in to comment.