stellar_xdr/generated/
contract_cost_params.rs1#[allow(unused_imports, clippy::wildcard_imports)]
2use super::*;
3
4#[cfg_attr(feature = "serde", cfg_eval::cfg_eval)]
11#[derive(Default, Clone, Hash, PartialEq, Eq, PartialOrd, Ord)]
12#[cfg_attr(feature = "arbitrary", derive(Arbitrary))]
13#[cfg_attr(
14 all(feature = "serde", feature = "alloc"),
15 serde_with::serde_as,
16 derive(serde::Serialize, serde::Deserialize),
17 serde(rename_all = "snake_case")
18)]
19#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
20#[derive(Debug)]
21pub struct ContractCostParams(pub VecM<ContractCostParamEntry, 1024>);
22
23impl From<ContractCostParams> for VecM<ContractCostParamEntry, 1024> {
24 #[must_use]
25 fn from(x: ContractCostParams) -> Self {
26 x.0
27 }
28}
29
30impl From<VecM<ContractCostParamEntry, 1024>> for ContractCostParams {
31 #[must_use]
32 fn from(x: VecM<ContractCostParamEntry, 1024>) -> Self {
33 ContractCostParams(x)
34 }
35}
36
37impl AsRef<VecM<ContractCostParamEntry, 1024>> for ContractCostParams {
38 #[must_use]
39 fn as_ref(&self) -> &VecM<ContractCostParamEntry, 1024> {
40 &self.0
41 }
42}
43
44impl ReadXdr for ContractCostParams {
45 #[cfg(feature = "std")]
46 fn read_xdr<R: Read>(r: &mut Limited<R>) -> Result<Self, Error> {
47 r.with_limited_depth(|r| {
48 let i = VecM::<ContractCostParamEntry, 1024>::read_xdr(r)?;
49 let v = ContractCostParams(i);
50 Ok(v)
51 })
52 }
53}
54
55impl WriteXdr for ContractCostParams {
56 #[cfg(feature = "std")]
57 fn write_xdr<W: Write>(&self, w: &mut Limited<W>) -> Result<(), Error> {
58 w.with_limited_depth(|w| self.0.write_xdr(w))
59 }
60}
61
62impl Deref for ContractCostParams {
63 type Target = VecM<ContractCostParamEntry, 1024>;
64 fn deref(&self) -> &Self::Target {
65 &self.0
66 }
67}
68
69impl From<ContractCostParams> for Vec<ContractCostParamEntry> {
70 #[must_use]
71 fn from(x: ContractCostParams) -> Self {
72 x.0 .0
73 }
74}
75
76impl TryFrom<Vec<ContractCostParamEntry>> for ContractCostParams {
77 type Error = Error;
78 fn try_from(x: Vec<ContractCostParamEntry>) -> Result<Self, Error> {
79 Ok(ContractCostParams(x.try_into()?))
80 }
81}
82
83#[cfg(feature = "alloc")]
84impl TryFrom<&Vec<ContractCostParamEntry>> for ContractCostParams {
85 type Error = Error;
86 fn try_from(x: &Vec<ContractCostParamEntry>) -> Result<Self, Error> {
87 Ok(ContractCostParams(x.try_into()?))
88 }
89}
90
91impl AsRef<Vec<ContractCostParamEntry>> for ContractCostParams {
92 #[must_use]
93 fn as_ref(&self) -> &Vec<ContractCostParamEntry> {
94 &self.0 .0
95 }
96}
97
98impl AsRef<[ContractCostParamEntry]> for ContractCostParams {
99 #[cfg(feature = "alloc")]
100 #[must_use]
101 fn as_ref(&self) -> &[ContractCostParamEntry] {
102 &self.0 .0
103 }
104 #[cfg(not(feature = "alloc"))]
105 #[must_use]
106 fn as_ref(&self) -> &[ContractCostParamEntry] {
107 self.0 .0
108 }
109}