stellar_xdr/generated/
config_setting_contract_ledger_cost_v0.rs1#[allow(unused_imports, clippy::wildcard_imports)]
2use super::*;
3
4#[cfg_attr(feature = "alloc", derive(Default))]
45#[derive(Clone, Debug, Hash, PartialEq, Eq, PartialOrd, Ord)]
46#[cfg_attr(feature = "serde", cfg_eval::cfg_eval)]
47#[cfg_attr(feature = "arbitrary", derive(Arbitrary))]
48#[cfg_attr(
49 all(feature = "serde", feature = "alloc"),
50 serde_with::serde_as,
51 derive(serde::Serialize, serde::Deserialize),
52 serde(rename_all = "snake_case")
53)]
54#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
55pub struct ConfigSettingContractLedgerCostV0 {
56 pub ledger_max_disk_read_entries: u32,
57 pub ledger_max_disk_read_bytes: u32,
58 pub ledger_max_write_ledger_entries: u32,
59 pub ledger_max_write_bytes: u32,
60 pub tx_max_disk_read_entries: u32,
61 pub tx_max_disk_read_bytes: u32,
62 pub tx_max_write_ledger_entries: u32,
63 pub tx_max_write_bytes: u32,
64 #[cfg_attr(
65 all(feature = "serde", feature = "alloc"),
66 serde_as(as = "NumberOrString")
67 )]
68 pub fee_disk_read_ledger_entry: i64,
69 #[cfg_attr(
70 all(feature = "serde", feature = "alloc"),
71 serde_as(as = "NumberOrString")
72 )]
73 pub fee_write_ledger_entry: i64,
74 #[cfg_attr(
75 all(feature = "serde", feature = "alloc"),
76 serde_as(as = "NumberOrString")
77 )]
78 pub fee_disk_read1_kb: i64,
79 #[cfg_attr(
80 all(feature = "serde", feature = "alloc"),
81 serde_as(as = "NumberOrString")
82 )]
83 pub soroban_state_target_size_bytes: i64,
84 #[cfg_attr(
85 all(feature = "serde", feature = "alloc"),
86 serde_as(as = "NumberOrString")
87 )]
88 pub rent_fee1_kb_soroban_state_size_low: i64,
89 #[cfg_attr(
90 all(feature = "serde", feature = "alloc"),
91 serde_as(as = "NumberOrString")
92 )]
93 pub rent_fee1_kb_soroban_state_size_high: i64,
94 pub soroban_state_rent_fee_growth_factor: u32,
95}
96
97impl ReadXdr for ConfigSettingContractLedgerCostV0 {
98 #[cfg(feature = "std")]
99 fn read_xdr<R: Read>(r: &mut Limited<R>) -> Result<Self, Error> {
100 r.with_limited_depth(|r| {
101 Ok(Self {
102 ledger_max_disk_read_entries: u32::read_xdr(r)?,
103 ledger_max_disk_read_bytes: u32::read_xdr(r)?,
104 ledger_max_write_ledger_entries: u32::read_xdr(r)?,
105 ledger_max_write_bytes: u32::read_xdr(r)?,
106 tx_max_disk_read_entries: u32::read_xdr(r)?,
107 tx_max_disk_read_bytes: u32::read_xdr(r)?,
108 tx_max_write_ledger_entries: u32::read_xdr(r)?,
109 tx_max_write_bytes: u32::read_xdr(r)?,
110 fee_disk_read_ledger_entry: i64::read_xdr(r)?,
111 fee_write_ledger_entry: i64::read_xdr(r)?,
112 fee_disk_read1_kb: i64::read_xdr(r)?,
113 soroban_state_target_size_bytes: i64::read_xdr(r)?,
114 rent_fee1_kb_soroban_state_size_low: i64::read_xdr(r)?,
115 rent_fee1_kb_soroban_state_size_high: i64::read_xdr(r)?,
116 soroban_state_rent_fee_growth_factor: u32::read_xdr(r)?,
117 })
118 })
119 }
120}
121
122impl WriteXdr for ConfigSettingContractLedgerCostV0 {
123 #[cfg(feature = "std")]
124 fn write_xdr<W: Write>(&self, w: &mut Limited<W>) -> Result<(), Error> {
125 w.with_limited_depth(|w| {
126 self.ledger_max_disk_read_entries.write_xdr(w)?;
127 self.ledger_max_disk_read_bytes.write_xdr(w)?;
128 self.ledger_max_write_ledger_entries.write_xdr(w)?;
129 self.ledger_max_write_bytes.write_xdr(w)?;
130 self.tx_max_disk_read_entries.write_xdr(w)?;
131 self.tx_max_disk_read_bytes.write_xdr(w)?;
132 self.tx_max_write_ledger_entries.write_xdr(w)?;
133 self.tx_max_write_bytes.write_xdr(w)?;
134 self.fee_disk_read_ledger_entry.write_xdr(w)?;
135 self.fee_write_ledger_entry.write_xdr(w)?;
136 self.fee_disk_read1_kb.write_xdr(w)?;
137 self.soroban_state_target_size_bytes.write_xdr(w)?;
138 self.rent_fee1_kb_soroban_state_size_low.write_xdr(w)?;
139 self.rent_fee1_kb_soroban_state_size_high.write_xdr(w)?;
140 self.soroban_state_rent_fee_growth_factor.write_xdr(w)?;
141 Ok(())
142 })
143 }
144}