drive/state_transition_action/identity/identity_topup/
transformer.rs1use crate::state_transition_action::identity::identity_topup::v0::IdentityTopUpTransitionActionV0;
2use crate::state_transition_action::identity::identity_topup::IdentityTopUpTransitionAction;
3use dpp::asset_lock::reduced_asset_lock_value::AssetLockValue;
4use dpp::consensus::ConsensusError;
5use dpp::state_transition::identity_topup_transition::IdentityTopUpTransition;
6use dpp::state_transition::signable_bytes_hasher::SignableBytesHasher;
7
8impl IdentityTopUpTransitionAction {
9 pub fn try_from(
11 value: IdentityTopUpTransition,
12 signable_bytes_hasher: SignableBytesHasher,
13 top_up_asset_lock_value: AssetLockValue,
14 ) -> Result<Self, ConsensusError> {
15 match value {
16 IdentityTopUpTransition::V0(v0) => Ok(IdentityTopUpTransitionActionV0::try_from(
17 v0,
18 signable_bytes_hasher,
19 top_up_asset_lock_value,
20 )?
21 .into()),
22 }
23 }
24
25 pub fn try_from_borrowed(
27 value: &IdentityTopUpTransition,
28 signable_bytes_hasher: SignableBytesHasher,
29 top_up_asset_lock_value: AssetLockValue,
30 ) -> Result<Self, ConsensusError> {
31 match value {
32 IdentityTopUpTransition::V0(v0) => {
33 Ok(IdentityTopUpTransitionActionV0::try_from_borrowed(
34 v0,
35 signable_bytes_hasher,
36 top_up_asset_lock_value,
37 )?
38 .into())
39 }
40 }
41 }
42}