dpp/state_transition/state_transitions/shielded/unshield_transition/
mod.rs1pub mod accessors;
2pub mod methods;
3mod state_transition_estimated_fee_validation;
4mod state_transition_like;
5mod state_transition_validation;
6pub mod v0;
7mod version;
8
9use crate::state_transition::unshield_transition::v0::UnshieldTransitionV0;
10use crate::state_transition::unshield_transition::v0::UnshieldTransitionV0Signable;
11use crate::state_transition::StateTransitionFieldTypes;
12
13pub type UnshieldTransitionLatest = UnshieldTransitionV0;
14
15use crate::identity::state_transition::OptionallyAssetLockProved;
16use crate::ProtocolError;
17use bincode::{Decode, Encode};
18use derive_more::From;
19use platform_serialization_derive::{PlatformDeserialize, PlatformSerialize, PlatformSignable};
20use platform_versioning::PlatformVersioned;
21#[cfg(feature = "serde-conversion")]
22use serde::{Deserialize, Serialize};
23
24#[derive(
25 Debug,
26 Clone,
27 Encode,
28 Decode,
29 PlatformDeserialize,
30 PlatformSerialize,
31 PlatformSignable,
32 PlatformVersioned,
33 From,
34 PartialEq,
35)]
36#[cfg_attr(
37 feature = "serde-conversion",
38 derive(Serialize, Deserialize),
39 serde(tag = "$version")
40)]
41#[platform_serialize(unversioned)] #[platform_version_path_bounds(
43 "dpp.state_transition_serialization_versions.unshield_state_transition"
44)]
45pub enum UnshieldTransition {
46 #[cfg_attr(feature = "serde-conversion", serde(rename = "0"))]
47 V0(UnshieldTransitionV0),
48}
49
50impl OptionallyAssetLockProved for UnshieldTransition {}
51
52impl StateTransitionFieldTypes for UnshieldTransition {
53 fn signature_property_paths() -> Vec<&'static str> {
54 vec![]
55 }
56
57 fn identifiers_property_paths() -> Vec<&'static str> {
58 vec![]
59 }
60
61 fn binary_property_paths() -> Vec<&'static str> {
62 vec![]
63 }
64}