drive/state_transition_action/identity/identity_create/
transformer.rs

1use crate::state_transition_action::identity::identity_create::v0::IdentityCreateTransitionActionV0;
2use crate::state_transition_action::identity::identity_create::IdentityCreateTransitionAction;
3use dpp::asset_lock::reduced_asset_lock_value::AssetLockValue;
4use dpp::consensus::ConsensusError;
5use dpp::state_transition::identity_create_transition::IdentityCreateTransition;
6use dpp::state_transition::signable_bytes_hasher::SignableBytesHasher;
7
8impl IdentityCreateTransitionAction {
9    /// try from
10    pub fn try_from(
11        value: IdentityCreateTransition,
12        signable_bytes_hasher: SignableBytesHasher,
13        asset_lock_value_to_be_consumed: AssetLockValue,
14    ) -> Result<Self, ConsensusError> {
15        match value {
16            IdentityCreateTransition::V0(v0) => Ok(IdentityCreateTransitionActionV0::try_from(
17                v0,
18                signable_bytes_hasher,
19                asset_lock_value_to_be_consumed,
20            )?
21            .into()),
22        }
23    }
24
25    /// try from borrowed
26    pub fn try_from_borrowed(
27        value: &IdentityCreateTransition,
28        signable_bytes_hasher: SignableBytesHasher,
29        asset_lock_value_to_be_consumed: AssetLockValue,
30    ) -> Result<Self, ConsensusError> {
31        match value {
32            IdentityCreateTransition::V0(v0) => {
33                Ok(IdentityCreateTransitionActionV0::try_from_borrowed(
34                    v0,
35                    signable_bytes_hasher,
36                    asset_lock_value_to_be_consumed,
37                )?
38                .into())
39            }
40        }
41    }
42}