drive/state_transition_action/shielded/shielded_withdrawal/
transformer.rs1use crate::state_transition_action::shielded::shielded_withdrawal::v0::ShieldedWithdrawalTransitionActionV0;
2use crate::state_transition_action::shielded::shielded_withdrawal::ShieldedWithdrawalTransitionAction;
3use dpp::fee::Credits;
4use dpp::prelude::ConsensusValidationResult;
5use dpp::state_transition::shielded_withdrawal_transition::ShieldedWithdrawalTransition;
6
7impl ShieldedWithdrawalTransitionAction {
8 pub fn try_from_transition(
10 value: &ShieldedWithdrawalTransition,
11 current_total_balance: Credits,
12 creation_time_ms: u64,
13 ) -> ConsensusValidationResult<Self> {
14 match value {
15 ShieldedWithdrawalTransition::V0(v0) => {
16 let result = ShieldedWithdrawalTransitionActionV0::try_from_transition(
17 v0,
18 current_total_balance,
19 creation_time_ms,
20 );
21 result.map(|action| action.into())
22 }
23 }
24 }
25}