From fde852218fbbfe760b7f33920859962e450f85b3 Mon Sep 17 00:00:00 2001 From: Tyera Eulberg Date: Thu, 18 Jan 2024 11:56:54 -0700 Subject: [PATCH] Replace filter_map to parameterize RewardType filter expression --- rpc/src/rpc.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/rpc/src/rpc.rs b/rpc/src/rpc.rs index 88c5600aabb023..4a566f26bc1f10 100644 --- a/rpc/src/rpc.rs +++ b/rpc/src/rpc.rs @@ -527,7 +527,7 @@ impl JsonRpcRequestProcessor { &self, slot: Slot, addresses: &[String], - reward_type_filter: &F, + reward_type_filter: F, config: &RpcEpochConfig, ) -> Result> where @@ -593,6 +593,9 @@ impl JsonRpcRequestProcessor { } let bank = self.get_bank_with_config(slot_context)?; + let partitioned_epoch_reward_enabled = bank + .feature_set + .is_active(&feature_set::enable_partitioned_epoch_reward::id()); let first_confirmed_block_in_epoch = *self .get_blocks_with_limit(first_slot_in_epoch, 1, config.commitment) @@ -609,7 +612,7 @@ impl JsonRpcRequestProcessor { self.get_reward_map( first_confirmed_block_in_epoch, &addresses, - &|reward_type| -> bool { + |reward_type| -> bool { reward_type == RewardType::Voting || (!partitioned_epoch_reward_enabled && reward_type == RewardType::Staking) }, @@ -668,7 +671,7 @@ impl JsonRpcRequestProcessor { .get_reward_map( slot, addresses, - &|reward_type| -> bool { reward_type == RewardType::Staking }, + |reward_type| -> bool { reward_type == RewardType::Staking }, &config, ) .await?;