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