dpp/serialization/json/
safe_fields.rs1use crate::contract_group::{ContractGroupMembership, ContractGroupRegistration};
2use crate::data_contract::associated_token::token_configuration_item::TokenConfigurationChangeItem;
3use crate::data_contract::associated_token::token_distribution_key::{
4 TokenDistributionInfo, TokenDistributionType,
5};
6use crate::data_contract::associated_token::token_perpetual_distribution::reward_distribution_moment::RewardDistributionMoment;
7use crate::data_contract::document_type::ContestedIndexFieldMatch;
8use crate::state_transition::batch_transition::batched_transition::{
9 BatchedTransition, DocumentTransition, TokenTransition,
10};
11use crate::state_transition::batch_transition::document_base_transition::DocumentBaseTransition;
12use crate::state_transition::batch_transition::token_base_transition::TokenBaseTransition;
13use crate::tokens::emergency_action::TokenEmergencyAction;
14use crate::tokens::gas_fees_paid_by::GasFeesPaidBy;
15use crate::tokens::token_payment_info::TokenPaymentInfo;
16use crate::tokens::token_pricing_schedule::TokenPricingSchedule;
17
18pub trait JsonSafeFields {}
43
44impl JsonSafeFields for bool {}
48impl JsonSafeFields for u8 {}
49impl JsonSafeFields for u16 {}
50impl JsonSafeFields for u32 {}
51impl JsonSafeFields for i8 {}
52impl JsonSafeFields for i16 {}
53impl JsonSafeFields for i32 {}
54impl JsonSafeFields for f32 {}
55impl JsonSafeFields for f64 {}
56impl JsonSafeFields for usize {}
57impl JsonSafeFields for isize {}
58impl JsonSafeFields for char {}
59impl JsonSafeFields for String {}
60impl JsonSafeFields for () {}
61impl<T: JsonSafeFields> JsonSafeFields for &T {}
62impl<const N: usize> JsonSafeFields for [u8; N] {}
63
64impl<T: JsonSafeFields> JsonSafeFields for Vec<T> {}
70impl<T: JsonSafeFields> JsonSafeFields for Option<T> {}
71impl<T: JsonSafeFields> JsonSafeFields for Box<T> {}
72impl<K: JsonSafeFields, V: JsonSafeFields> JsonSafeFields for std::collections::BTreeMap<K, V> {}
73impl<T: JsonSafeFields> JsonSafeFields for std::collections::BTreeSet<T> {}
74impl<K: JsonSafeFields, V: JsonSafeFields> JsonSafeFields for std::collections::HashMap<K, V> {}
75impl<T: JsonSafeFields> JsonSafeFields for std::collections::HashSet<T> {}
76
77impl JsonSafeFields for platform_value::Identifier {}
80impl JsonSafeFields for platform_value::BinaryData {}
81impl JsonSafeFields for platform_value::Bytes20 {}
82impl JsonSafeFields for platform_value::Bytes32 {}
83impl JsonSafeFields for platform_value::Bytes36 {}
84impl JsonSafeFields for platform_value::Value {}
85impl JsonSafeFields for platform_value::string_encoding::Encoding {}
86
87impl JsonSafeFields for dashcore::OutPoint {}
90
91impl JsonSafeFields
97 for crate::data_contract::change_control_rules::authorized_action_takers::AuthorizedActionTakers
98{
99}
100impl JsonSafeFields
101 for crate::data_contract::storage_requirements::keys_for_document_type::StorageKeyRequirements
102{
103}
104impl JsonSafeFields
105 for crate::data_contract::associated_token::token_marketplace_rules::v0::TokenTradeMode
106{
107}
108impl JsonSafeFields for crate::data_contract::associated_token::token_perpetual_distribution::distribution_recipient::TokenDistributionRecipient {}
109impl JsonSafeFields for crate::identity::Purpose {}
110impl JsonSafeFields for crate::identity::SecurityLevel {}
111impl JsonSafeFields for crate::identity::KeyType {}
112impl JsonSafeFields for crate::block::epoch::Epoch {}
113impl JsonSafeFields for crate::identity::identity_public_key::IdentityPublicKey {}
114impl JsonSafeFields for crate::identity::state_transition::asset_lock_proof::AssetLockProof {}
115impl JsonSafeFields for crate::address_funds::PlatformAddress {}
116impl JsonSafeFields for crate::address_funds::AddressFundsFeeStrategy {}
117impl JsonSafeFields for crate::withdrawal::Pooling {}
120impl JsonSafeFields for crate::identity::core_script::CoreScript {}
121impl JsonSafeFields for crate::voting::votes::Vote {}
122impl JsonSafeFields for DocumentBaseTransition {}
126impl JsonSafeFields for TokenPaymentInfo {}
128impl JsonSafeFields for GasFeesPaidBy {}
130impl JsonSafeFields for ContractGroupRegistration {}
131impl JsonSafeFields for ContractGroupMembership {}
132impl JsonSafeFields for TokenBaseTransition {}
137impl JsonSafeFields for DocumentTransition {}
142impl JsonSafeFields for TokenTransition {}
143impl JsonSafeFields for BatchedTransition {}
144impl JsonSafeFields for crate::voting::vote_choices::resource_vote_choice::ResourceVoteChoice {}
145impl JsonSafeFields for crate::group::action_event::GroupActionEvent {}
146impl JsonSafeFields for crate::tokens::token_event::TokenEvent {}
150impl JsonSafeFields for TokenEmergencyAction {}
152impl JsonSafeFields for TokenDistributionType {}
154impl JsonSafeFields for TokenPricingSchedule {}
160impl JsonSafeFields for TokenConfigurationChangeItem {}
163impl JsonSafeFields for RewardDistributionMoment {}
168impl JsonSafeFields for ContestedIndexFieldMatch {}
172impl JsonSafeFields for TokenDistributionInfo {}