Skip to main content

proxmox_api/generated/nodes/node/lxc/vmid/
resize.rs

1#[derive(Debug, Clone)]
2pub struct ResizeClient<T> {
3    client: T,
4    path: String,
5}
6impl<T> ResizeClient<T>
7where
8    T: crate::client::Client,
9{
10    pub fn new(client: T, parent_path: &str) -> Self {
11        Self {
12            client,
13            path: format!("{}{}", parent_path, "/resize"),
14        }
15    }
16}
17impl<T> ResizeClient<T>
18where
19    T: crate::client::Client,
20{
21    #[doc = "Resize a container mount point."]
22    #[doc = ""]
23    #[doc = "Permission check: perm(\"/vms/{vmid}\", [\"VM.Config.Disk\"], any)"]
24    pub async fn put(&self, params: PutParams) -> Result<String, T::Error> {
25        let path = self.path.to_string();
26        self.client.put(&path, &params).await
27    }
28}
29impl PutParams {
30    pub fn new(disk: Disk, size: SizeStr) -> Self {
31        Self {
32            disk,
33            size,
34            digest: ::std::default::Default::default(),
35            additional_properties: ::std::default::Default::default(),
36        }
37    }
38}
39#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
40pub struct PutParams {
41    #[serde(skip_serializing_if = "Option::is_none", default)]
42    #[doc = "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications."]
43    #[doc = ""]
44    pub digest: Option<DigestStr>,
45    #[doc = "The disk you want to resize."]
46    #[doc = ""]
47    pub disk: Disk,
48    #[doc = "The new size. With the '+' sign the value is added to the actual size of the volume and without it, the value is taken as an absolute one. Shrinking disk size is not supported."]
49    #[doc = ""]
50    pub size: SizeStr,
51    #[serde(
52        flatten,
53        default,
54        skip_serializing_if = "::std::collections::HashMap::is_empty"
55    )]
56    pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
57}
58#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize, PartialEq)]
59#[doc = "The disk you want to resize."]
60#[doc = ""]
61pub enum Disk {
62    #[serde(rename = "mp0")]
63    Mp0,
64    #[serde(rename = "mp1")]
65    Mp1,
66    #[serde(rename = "mp10")]
67    Mp10,
68    #[serde(rename = "mp100")]
69    Mp100,
70    #[serde(rename = "mp101")]
71    Mp101,
72    #[serde(rename = "mp102")]
73    Mp102,
74    #[serde(rename = "mp103")]
75    Mp103,
76    #[serde(rename = "mp104")]
77    Mp104,
78    #[serde(rename = "mp105")]
79    Mp105,
80    #[serde(rename = "mp106")]
81    Mp106,
82    #[serde(rename = "mp107")]
83    Mp107,
84    #[serde(rename = "mp108")]
85    Mp108,
86    #[serde(rename = "mp109")]
87    Mp109,
88    #[serde(rename = "mp11")]
89    Mp11,
90    #[serde(rename = "mp110")]
91    Mp110,
92    #[serde(rename = "mp111")]
93    Mp111,
94    #[serde(rename = "mp112")]
95    Mp112,
96    #[serde(rename = "mp113")]
97    Mp113,
98    #[serde(rename = "mp114")]
99    Mp114,
100    #[serde(rename = "mp115")]
101    Mp115,
102    #[serde(rename = "mp116")]
103    Mp116,
104    #[serde(rename = "mp117")]
105    Mp117,
106    #[serde(rename = "mp118")]
107    Mp118,
108    #[serde(rename = "mp119")]
109    Mp119,
110    #[serde(rename = "mp12")]
111    Mp12,
112    #[serde(rename = "mp120")]
113    Mp120,
114    #[serde(rename = "mp121")]
115    Mp121,
116    #[serde(rename = "mp122")]
117    Mp122,
118    #[serde(rename = "mp123")]
119    Mp123,
120    #[serde(rename = "mp124")]
121    Mp124,
122    #[serde(rename = "mp125")]
123    Mp125,
124    #[serde(rename = "mp126")]
125    Mp126,
126    #[serde(rename = "mp127")]
127    Mp127,
128    #[serde(rename = "mp128")]
129    Mp128,
130    #[serde(rename = "mp129")]
131    Mp129,
132    #[serde(rename = "mp13")]
133    Mp13,
134    #[serde(rename = "mp130")]
135    Mp130,
136    #[serde(rename = "mp131")]
137    Mp131,
138    #[serde(rename = "mp132")]
139    Mp132,
140    #[serde(rename = "mp133")]
141    Mp133,
142    #[serde(rename = "mp134")]
143    Mp134,
144    #[serde(rename = "mp135")]
145    Mp135,
146    #[serde(rename = "mp136")]
147    Mp136,
148    #[serde(rename = "mp137")]
149    Mp137,
150    #[serde(rename = "mp138")]
151    Mp138,
152    #[serde(rename = "mp139")]
153    Mp139,
154    #[serde(rename = "mp14")]
155    Mp14,
156    #[serde(rename = "mp140")]
157    Mp140,
158    #[serde(rename = "mp141")]
159    Mp141,
160    #[serde(rename = "mp142")]
161    Mp142,
162    #[serde(rename = "mp143")]
163    Mp143,
164    #[serde(rename = "mp144")]
165    Mp144,
166    #[serde(rename = "mp145")]
167    Mp145,
168    #[serde(rename = "mp146")]
169    Mp146,
170    #[serde(rename = "mp147")]
171    Mp147,
172    #[serde(rename = "mp148")]
173    Mp148,
174    #[serde(rename = "mp149")]
175    Mp149,
176    #[serde(rename = "mp15")]
177    Mp15,
178    #[serde(rename = "mp150")]
179    Mp150,
180    #[serde(rename = "mp151")]
181    Mp151,
182    #[serde(rename = "mp152")]
183    Mp152,
184    #[serde(rename = "mp153")]
185    Mp153,
186    #[serde(rename = "mp154")]
187    Mp154,
188    #[serde(rename = "mp155")]
189    Mp155,
190    #[serde(rename = "mp156")]
191    Mp156,
192    #[serde(rename = "mp157")]
193    Mp157,
194    #[serde(rename = "mp158")]
195    Mp158,
196    #[serde(rename = "mp159")]
197    Mp159,
198    #[serde(rename = "mp16")]
199    Mp16,
200    #[serde(rename = "mp160")]
201    Mp160,
202    #[serde(rename = "mp161")]
203    Mp161,
204    #[serde(rename = "mp162")]
205    Mp162,
206    #[serde(rename = "mp163")]
207    Mp163,
208    #[serde(rename = "mp164")]
209    Mp164,
210    #[serde(rename = "mp165")]
211    Mp165,
212    #[serde(rename = "mp166")]
213    Mp166,
214    #[serde(rename = "mp167")]
215    Mp167,
216    #[serde(rename = "mp168")]
217    Mp168,
218    #[serde(rename = "mp169")]
219    Mp169,
220    #[serde(rename = "mp17")]
221    Mp17,
222    #[serde(rename = "mp170")]
223    Mp170,
224    #[serde(rename = "mp171")]
225    Mp171,
226    #[serde(rename = "mp172")]
227    Mp172,
228    #[serde(rename = "mp173")]
229    Mp173,
230    #[serde(rename = "mp174")]
231    Mp174,
232    #[serde(rename = "mp175")]
233    Mp175,
234    #[serde(rename = "mp176")]
235    Mp176,
236    #[serde(rename = "mp177")]
237    Mp177,
238    #[serde(rename = "mp178")]
239    Mp178,
240    #[serde(rename = "mp179")]
241    Mp179,
242    #[serde(rename = "mp18")]
243    Mp18,
244    #[serde(rename = "mp180")]
245    Mp180,
246    #[serde(rename = "mp181")]
247    Mp181,
248    #[serde(rename = "mp182")]
249    Mp182,
250    #[serde(rename = "mp183")]
251    Mp183,
252    #[serde(rename = "mp184")]
253    Mp184,
254    #[serde(rename = "mp185")]
255    Mp185,
256    #[serde(rename = "mp186")]
257    Mp186,
258    #[serde(rename = "mp187")]
259    Mp187,
260    #[serde(rename = "mp188")]
261    Mp188,
262    #[serde(rename = "mp189")]
263    Mp189,
264    #[serde(rename = "mp19")]
265    Mp19,
266    #[serde(rename = "mp190")]
267    Mp190,
268    #[serde(rename = "mp191")]
269    Mp191,
270    #[serde(rename = "mp192")]
271    Mp192,
272    #[serde(rename = "mp193")]
273    Mp193,
274    #[serde(rename = "mp194")]
275    Mp194,
276    #[serde(rename = "mp195")]
277    Mp195,
278    #[serde(rename = "mp196")]
279    Mp196,
280    #[serde(rename = "mp197")]
281    Mp197,
282    #[serde(rename = "mp198")]
283    Mp198,
284    #[serde(rename = "mp199")]
285    Mp199,
286    #[serde(rename = "mp2")]
287    Mp2,
288    #[serde(rename = "mp20")]
289    Mp20,
290    #[serde(rename = "mp200")]
291    Mp200,
292    #[serde(rename = "mp201")]
293    Mp201,
294    #[serde(rename = "mp202")]
295    Mp202,
296    #[serde(rename = "mp203")]
297    Mp203,
298    #[serde(rename = "mp204")]
299    Mp204,
300    #[serde(rename = "mp205")]
301    Mp205,
302    #[serde(rename = "mp206")]
303    Mp206,
304    #[serde(rename = "mp207")]
305    Mp207,
306    #[serde(rename = "mp208")]
307    Mp208,
308    #[serde(rename = "mp209")]
309    Mp209,
310    #[serde(rename = "mp21")]
311    Mp21,
312    #[serde(rename = "mp210")]
313    Mp210,
314    #[serde(rename = "mp211")]
315    Mp211,
316    #[serde(rename = "mp212")]
317    Mp212,
318    #[serde(rename = "mp213")]
319    Mp213,
320    #[serde(rename = "mp214")]
321    Mp214,
322    #[serde(rename = "mp215")]
323    Mp215,
324    #[serde(rename = "mp216")]
325    Mp216,
326    #[serde(rename = "mp217")]
327    Mp217,
328    #[serde(rename = "mp218")]
329    Mp218,
330    #[serde(rename = "mp219")]
331    Mp219,
332    #[serde(rename = "mp22")]
333    Mp22,
334    #[serde(rename = "mp220")]
335    Mp220,
336    #[serde(rename = "mp221")]
337    Mp221,
338    #[serde(rename = "mp222")]
339    Mp222,
340    #[serde(rename = "mp223")]
341    Mp223,
342    #[serde(rename = "mp224")]
343    Mp224,
344    #[serde(rename = "mp225")]
345    Mp225,
346    #[serde(rename = "mp226")]
347    Mp226,
348    #[serde(rename = "mp227")]
349    Mp227,
350    #[serde(rename = "mp228")]
351    Mp228,
352    #[serde(rename = "mp229")]
353    Mp229,
354    #[serde(rename = "mp23")]
355    Mp23,
356    #[serde(rename = "mp230")]
357    Mp230,
358    #[serde(rename = "mp231")]
359    Mp231,
360    #[serde(rename = "mp232")]
361    Mp232,
362    #[serde(rename = "mp233")]
363    Mp233,
364    #[serde(rename = "mp234")]
365    Mp234,
366    #[serde(rename = "mp235")]
367    Mp235,
368    #[serde(rename = "mp236")]
369    Mp236,
370    #[serde(rename = "mp237")]
371    Mp237,
372    #[serde(rename = "mp238")]
373    Mp238,
374    #[serde(rename = "mp239")]
375    Mp239,
376    #[serde(rename = "mp24")]
377    Mp24,
378    #[serde(rename = "mp240")]
379    Mp240,
380    #[serde(rename = "mp241")]
381    Mp241,
382    #[serde(rename = "mp242")]
383    Mp242,
384    #[serde(rename = "mp243")]
385    Mp243,
386    #[serde(rename = "mp244")]
387    Mp244,
388    #[serde(rename = "mp245")]
389    Mp245,
390    #[serde(rename = "mp246")]
391    Mp246,
392    #[serde(rename = "mp247")]
393    Mp247,
394    #[serde(rename = "mp248")]
395    Mp248,
396    #[serde(rename = "mp249")]
397    Mp249,
398    #[serde(rename = "mp25")]
399    Mp25,
400    #[serde(rename = "mp250")]
401    Mp250,
402    #[serde(rename = "mp251")]
403    Mp251,
404    #[serde(rename = "mp252")]
405    Mp252,
406    #[serde(rename = "mp253")]
407    Mp253,
408    #[serde(rename = "mp254")]
409    Mp254,
410    #[serde(rename = "mp255")]
411    Mp255,
412    #[serde(rename = "mp26")]
413    Mp26,
414    #[serde(rename = "mp27")]
415    Mp27,
416    #[serde(rename = "mp28")]
417    Mp28,
418    #[serde(rename = "mp29")]
419    Mp29,
420    #[serde(rename = "mp3")]
421    Mp3,
422    #[serde(rename = "mp30")]
423    Mp30,
424    #[serde(rename = "mp31")]
425    Mp31,
426    #[serde(rename = "mp32")]
427    Mp32,
428    #[serde(rename = "mp33")]
429    Mp33,
430    #[serde(rename = "mp34")]
431    Mp34,
432    #[serde(rename = "mp35")]
433    Mp35,
434    #[serde(rename = "mp36")]
435    Mp36,
436    #[serde(rename = "mp37")]
437    Mp37,
438    #[serde(rename = "mp38")]
439    Mp38,
440    #[serde(rename = "mp39")]
441    Mp39,
442    #[serde(rename = "mp4")]
443    Mp4,
444    #[serde(rename = "mp40")]
445    Mp40,
446    #[serde(rename = "mp41")]
447    Mp41,
448    #[serde(rename = "mp42")]
449    Mp42,
450    #[serde(rename = "mp43")]
451    Mp43,
452    #[serde(rename = "mp44")]
453    Mp44,
454    #[serde(rename = "mp45")]
455    Mp45,
456    #[serde(rename = "mp46")]
457    Mp46,
458    #[serde(rename = "mp47")]
459    Mp47,
460    #[serde(rename = "mp48")]
461    Mp48,
462    #[serde(rename = "mp49")]
463    Mp49,
464    #[serde(rename = "mp5")]
465    Mp5,
466    #[serde(rename = "mp50")]
467    Mp50,
468    #[serde(rename = "mp51")]
469    Mp51,
470    #[serde(rename = "mp52")]
471    Mp52,
472    #[serde(rename = "mp53")]
473    Mp53,
474    #[serde(rename = "mp54")]
475    Mp54,
476    #[serde(rename = "mp55")]
477    Mp55,
478    #[serde(rename = "mp56")]
479    Mp56,
480    #[serde(rename = "mp57")]
481    Mp57,
482    #[serde(rename = "mp58")]
483    Mp58,
484    #[serde(rename = "mp59")]
485    Mp59,
486    #[serde(rename = "mp6")]
487    Mp6,
488    #[serde(rename = "mp60")]
489    Mp60,
490    #[serde(rename = "mp61")]
491    Mp61,
492    #[serde(rename = "mp62")]
493    Mp62,
494    #[serde(rename = "mp63")]
495    Mp63,
496    #[serde(rename = "mp64")]
497    Mp64,
498    #[serde(rename = "mp65")]
499    Mp65,
500    #[serde(rename = "mp66")]
501    Mp66,
502    #[serde(rename = "mp67")]
503    Mp67,
504    #[serde(rename = "mp68")]
505    Mp68,
506    #[serde(rename = "mp69")]
507    Mp69,
508    #[serde(rename = "mp7")]
509    Mp7,
510    #[serde(rename = "mp70")]
511    Mp70,
512    #[serde(rename = "mp71")]
513    Mp71,
514    #[serde(rename = "mp72")]
515    Mp72,
516    #[serde(rename = "mp73")]
517    Mp73,
518    #[serde(rename = "mp74")]
519    Mp74,
520    #[serde(rename = "mp75")]
521    Mp75,
522    #[serde(rename = "mp76")]
523    Mp76,
524    #[serde(rename = "mp77")]
525    Mp77,
526    #[serde(rename = "mp78")]
527    Mp78,
528    #[serde(rename = "mp79")]
529    Mp79,
530    #[serde(rename = "mp8")]
531    Mp8,
532    #[serde(rename = "mp80")]
533    Mp80,
534    #[serde(rename = "mp81")]
535    Mp81,
536    #[serde(rename = "mp82")]
537    Mp82,
538    #[serde(rename = "mp83")]
539    Mp83,
540    #[serde(rename = "mp84")]
541    Mp84,
542    #[serde(rename = "mp85")]
543    Mp85,
544    #[serde(rename = "mp86")]
545    Mp86,
546    #[serde(rename = "mp87")]
547    Mp87,
548    #[serde(rename = "mp88")]
549    Mp88,
550    #[serde(rename = "mp89")]
551    Mp89,
552    #[serde(rename = "mp9")]
553    Mp9,
554    #[serde(rename = "mp90")]
555    Mp90,
556    #[serde(rename = "mp91")]
557    Mp91,
558    #[serde(rename = "mp92")]
559    Mp92,
560    #[serde(rename = "mp93")]
561    Mp93,
562    #[serde(rename = "mp94")]
563    Mp94,
564    #[serde(rename = "mp95")]
565    Mp95,
566    #[serde(rename = "mp96")]
567    Mp96,
568    #[serde(rename = "mp97")]
569    Mp97,
570    #[serde(rename = "mp98")]
571    Mp98,
572    #[serde(rename = "mp99")]
573    Mp99,
574    #[serde(rename = "rootfs")]
575    Rootfs,
576}
577impl TryFrom<&str> for Disk {
578    type Error = String;
579    fn try_from(value: &str) -> Result<Self, <Self as TryFrom<&str>>::Error> {
580        match value {
581            "mp0" => Ok(Self::Mp0),
582            "mp1" => Ok(Self::Mp1),
583            "mp10" => Ok(Self::Mp10),
584            "mp100" => Ok(Self::Mp100),
585            "mp101" => Ok(Self::Mp101),
586            "mp102" => Ok(Self::Mp102),
587            "mp103" => Ok(Self::Mp103),
588            "mp104" => Ok(Self::Mp104),
589            "mp105" => Ok(Self::Mp105),
590            "mp106" => Ok(Self::Mp106),
591            "mp107" => Ok(Self::Mp107),
592            "mp108" => Ok(Self::Mp108),
593            "mp109" => Ok(Self::Mp109),
594            "mp11" => Ok(Self::Mp11),
595            "mp110" => Ok(Self::Mp110),
596            "mp111" => Ok(Self::Mp111),
597            "mp112" => Ok(Self::Mp112),
598            "mp113" => Ok(Self::Mp113),
599            "mp114" => Ok(Self::Mp114),
600            "mp115" => Ok(Self::Mp115),
601            "mp116" => Ok(Self::Mp116),
602            "mp117" => Ok(Self::Mp117),
603            "mp118" => Ok(Self::Mp118),
604            "mp119" => Ok(Self::Mp119),
605            "mp12" => Ok(Self::Mp12),
606            "mp120" => Ok(Self::Mp120),
607            "mp121" => Ok(Self::Mp121),
608            "mp122" => Ok(Self::Mp122),
609            "mp123" => Ok(Self::Mp123),
610            "mp124" => Ok(Self::Mp124),
611            "mp125" => Ok(Self::Mp125),
612            "mp126" => Ok(Self::Mp126),
613            "mp127" => Ok(Self::Mp127),
614            "mp128" => Ok(Self::Mp128),
615            "mp129" => Ok(Self::Mp129),
616            "mp13" => Ok(Self::Mp13),
617            "mp130" => Ok(Self::Mp130),
618            "mp131" => Ok(Self::Mp131),
619            "mp132" => Ok(Self::Mp132),
620            "mp133" => Ok(Self::Mp133),
621            "mp134" => Ok(Self::Mp134),
622            "mp135" => Ok(Self::Mp135),
623            "mp136" => Ok(Self::Mp136),
624            "mp137" => Ok(Self::Mp137),
625            "mp138" => Ok(Self::Mp138),
626            "mp139" => Ok(Self::Mp139),
627            "mp14" => Ok(Self::Mp14),
628            "mp140" => Ok(Self::Mp140),
629            "mp141" => Ok(Self::Mp141),
630            "mp142" => Ok(Self::Mp142),
631            "mp143" => Ok(Self::Mp143),
632            "mp144" => Ok(Self::Mp144),
633            "mp145" => Ok(Self::Mp145),
634            "mp146" => Ok(Self::Mp146),
635            "mp147" => Ok(Self::Mp147),
636            "mp148" => Ok(Self::Mp148),
637            "mp149" => Ok(Self::Mp149),
638            "mp15" => Ok(Self::Mp15),
639            "mp150" => Ok(Self::Mp150),
640            "mp151" => Ok(Self::Mp151),
641            "mp152" => Ok(Self::Mp152),
642            "mp153" => Ok(Self::Mp153),
643            "mp154" => Ok(Self::Mp154),
644            "mp155" => Ok(Self::Mp155),
645            "mp156" => Ok(Self::Mp156),
646            "mp157" => Ok(Self::Mp157),
647            "mp158" => Ok(Self::Mp158),
648            "mp159" => Ok(Self::Mp159),
649            "mp16" => Ok(Self::Mp16),
650            "mp160" => Ok(Self::Mp160),
651            "mp161" => Ok(Self::Mp161),
652            "mp162" => Ok(Self::Mp162),
653            "mp163" => Ok(Self::Mp163),
654            "mp164" => Ok(Self::Mp164),
655            "mp165" => Ok(Self::Mp165),
656            "mp166" => Ok(Self::Mp166),
657            "mp167" => Ok(Self::Mp167),
658            "mp168" => Ok(Self::Mp168),
659            "mp169" => Ok(Self::Mp169),
660            "mp17" => Ok(Self::Mp17),
661            "mp170" => Ok(Self::Mp170),
662            "mp171" => Ok(Self::Mp171),
663            "mp172" => Ok(Self::Mp172),
664            "mp173" => Ok(Self::Mp173),
665            "mp174" => Ok(Self::Mp174),
666            "mp175" => Ok(Self::Mp175),
667            "mp176" => Ok(Self::Mp176),
668            "mp177" => Ok(Self::Mp177),
669            "mp178" => Ok(Self::Mp178),
670            "mp179" => Ok(Self::Mp179),
671            "mp18" => Ok(Self::Mp18),
672            "mp180" => Ok(Self::Mp180),
673            "mp181" => Ok(Self::Mp181),
674            "mp182" => Ok(Self::Mp182),
675            "mp183" => Ok(Self::Mp183),
676            "mp184" => Ok(Self::Mp184),
677            "mp185" => Ok(Self::Mp185),
678            "mp186" => Ok(Self::Mp186),
679            "mp187" => Ok(Self::Mp187),
680            "mp188" => Ok(Self::Mp188),
681            "mp189" => Ok(Self::Mp189),
682            "mp19" => Ok(Self::Mp19),
683            "mp190" => Ok(Self::Mp190),
684            "mp191" => Ok(Self::Mp191),
685            "mp192" => Ok(Self::Mp192),
686            "mp193" => Ok(Self::Mp193),
687            "mp194" => Ok(Self::Mp194),
688            "mp195" => Ok(Self::Mp195),
689            "mp196" => Ok(Self::Mp196),
690            "mp197" => Ok(Self::Mp197),
691            "mp198" => Ok(Self::Mp198),
692            "mp199" => Ok(Self::Mp199),
693            "mp2" => Ok(Self::Mp2),
694            "mp20" => Ok(Self::Mp20),
695            "mp200" => Ok(Self::Mp200),
696            "mp201" => Ok(Self::Mp201),
697            "mp202" => Ok(Self::Mp202),
698            "mp203" => Ok(Self::Mp203),
699            "mp204" => Ok(Self::Mp204),
700            "mp205" => Ok(Self::Mp205),
701            "mp206" => Ok(Self::Mp206),
702            "mp207" => Ok(Self::Mp207),
703            "mp208" => Ok(Self::Mp208),
704            "mp209" => Ok(Self::Mp209),
705            "mp21" => Ok(Self::Mp21),
706            "mp210" => Ok(Self::Mp210),
707            "mp211" => Ok(Self::Mp211),
708            "mp212" => Ok(Self::Mp212),
709            "mp213" => Ok(Self::Mp213),
710            "mp214" => Ok(Self::Mp214),
711            "mp215" => Ok(Self::Mp215),
712            "mp216" => Ok(Self::Mp216),
713            "mp217" => Ok(Self::Mp217),
714            "mp218" => Ok(Self::Mp218),
715            "mp219" => Ok(Self::Mp219),
716            "mp22" => Ok(Self::Mp22),
717            "mp220" => Ok(Self::Mp220),
718            "mp221" => Ok(Self::Mp221),
719            "mp222" => Ok(Self::Mp222),
720            "mp223" => Ok(Self::Mp223),
721            "mp224" => Ok(Self::Mp224),
722            "mp225" => Ok(Self::Mp225),
723            "mp226" => Ok(Self::Mp226),
724            "mp227" => Ok(Self::Mp227),
725            "mp228" => Ok(Self::Mp228),
726            "mp229" => Ok(Self::Mp229),
727            "mp23" => Ok(Self::Mp23),
728            "mp230" => Ok(Self::Mp230),
729            "mp231" => Ok(Self::Mp231),
730            "mp232" => Ok(Self::Mp232),
731            "mp233" => Ok(Self::Mp233),
732            "mp234" => Ok(Self::Mp234),
733            "mp235" => Ok(Self::Mp235),
734            "mp236" => Ok(Self::Mp236),
735            "mp237" => Ok(Self::Mp237),
736            "mp238" => Ok(Self::Mp238),
737            "mp239" => Ok(Self::Mp239),
738            "mp24" => Ok(Self::Mp24),
739            "mp240" => Ok(Self::Mp240),
740            "mp241" => Ok(Self::Mp241),
741            "mp242" => Ok(Self::Mp242),
742            "mp243" => Ok(Self::Mp243),
743            "mp244" => Ok(Self::Mp244),
744            "mp245" => Ok(Self::Mp245),
745            "mp246" => Ok(Self::Mp246),
746            "mp247" => Ok(Self::Mp247),
747            "mp248" => Ok(Self::Mp248),
748            "mp249" => Ok(Self::Mp249),
749            "mp25" => Ok(Self::Mp25),
750            "mp250" => Ok(Self::Mp250),
751            "mp251" => Ok(Self::Mp251),
752            "mp252" => Ok(Self::Mp252),
753            "mp253" => Ok(Self::Mp253),
754            "mp254" => Ok(Self::Mp254),
755            "mp255" => Ok(Self::Mp255),
756            "mp26" => Ok(Self::Mp26),
757            "mp27" => Ok(Self::Mp27),
758            "mp28" => Ok(Self::Mp28),
759            "mp29" => Ok(Self::Mp29),
760            "mp3" => Ok(Self::Mp3),
761            "mp30" => Ok(Self::Mp30),
762            "mp31" => Ok(Self::Mp31),
763            "mp32" => Ok(Self::Mp32),
764            "mp33" => Ok(Self::Mp33),
765            "mp34" => Ok(Self::Mp34),
766            "mp35" => Ok(Self::Mp35),
767            "mp36" => Ok(Self::Mp36),
768            "mp37" => Ok(Self::Mp37),
769            "mp38" => Ok(Self::Mp38),
770            "mp39" => Ok(Self::Mp39),
771            "mp4" => Ok(Self::Mp4),
772            "mp40" => Ok(Self::Mp40),
773            "mp41" => Ok(Self::Mp41),
774            "mp42" => Ok(Self::Mp42),
775            "mp43" => Ok(Self::Mp43),
776            "mp44" => Ok(Self::Mp44),
777            "mp45" => Ok(Self::Mp45),
778            "mp46" => Ok(Self::Mp46),
779            "mp47" => Ok(Self::Mp47),
780            "mp48" => Ok(Self::Mp48),
781            "mp49" => Ok(Self::Mp49),
782            "mp5" => Ok(Self::Mp5),
783            "mp50" => Ok(Self::Mp50),
784            "mp51" => Ok(Self::Mp51),
785            "mp52" => Ok(Self::Mp52),
786            "mp53" => Ok(Self::Mp53),
787            "mp54" => Ok(Self::Mp54),
788            "mp55" => Ok(Self::Mp55),
789            "mp56" => Ok(Self::Mp56),
790            "mp57" => Ok(Self::Mp57),
791            "mp58" => Ok(Self::Mp58),
792            "mp59" => Ok(Self::Mp59),
793            "mp6" => Ok(Self::Mp6),
794            "mp60" => Ok(Self::Mp60),
795            "mp61" => Ok(Self::Mp61),
796            "mp62" => Ok(Self::Mp62),
797            "mp63" => Ok(Self::Mp63),
798            "mp64" => Ok(Self::Mp64),
799            "mp65" => Ok(Self::Mp65),
800            "mp66" => Ok(Self::Mp66),
801            "mp67" => Ok(Self::Mp67),
802            "mp68" => Ok(Self::Mp68),
803            "mp69" => Ok(Self::Mp69),
804            "mp7" => Ok(Self::Mp7),
805            "mp70" => Ok(Self::Mp70),
806            "mp71" => Ok(Self::Mp71),
807            "mp72" => Ok(Self::Mp72),
808            "mp73" => Ok(Self::Mp73),
809            "mp74" => Ok(Self::Mp74),
810            "mp75" => Ok(Self::Mp75),
811            "mp76" => Ok(Self::Mp76),
812            "mp77" => Ok(Self::Mp77),
813            "mp78" => Ok(Self::Mp78),
814            "mp79" => Ok(Self::Mp79),
815            "mp8" => Ok(Self::Mp8),
816            "mp80" => Ok(Self::Mp80),
817            "mp81" => Ok(Self::Mp81),
818            "mp82" => Ok(Self::Mp82),
819            "mp83" => Ok(Self::Mp83),
820            "mp84" => Ok(Self::Mp84),
821            "mp85" => Ok(Self::Mp85),
822            "mp86" => Ok(Self::Mp86),
823            "mp87" => Ok(Self::Mp87),
824            "mp88" => Ok(Self::Mp88),
825            "mp89" => Ok(Self::Mp89),
826            "mp9" => Ok(Self::Mp9),
827            "mp90" => Ok(Self::Mp90),
828            "mp91" => Ok(Self::Mp91),
829            "mp92" => Ok(Self::Mp92),
830            "mp93" => Ok(Self::Mp93),
831            "mp94" => Ok(Self::Mp94),
832            "mp95" => Ok(Self::Mp95),
833            "mp96" => Ok(Self::Mp96),
834            "mp97" => Ok(Self::Mp97),
835            "mp98" => Ok(Self::Mp98),
836            "mp99" => Ok(Self::Mp99),
837            "rootfs" => Ok(Self::Rootfs),
838            v => Err(format!("Unknown variant {v}")),
839        }
840    }
841}
842#[derive(Debug, Clone, PartialEq, PartialOrd)]
843pub struct DigestStr {
844    value: String,
845}
846impl crate::types::bounded_string::BoundedString for DigestStr {
847    const MIN_LENGTH: Option<usize> = None::<usize>;
848    const MAX_LENGTH: Option<usize> = Some(40usize);
849    const DEFAULT: Option<&'static str> = None::<&'static str>;
850    const PATTERN: Option<&'static str> = None::<&'static str>;
851    const TYPE_DESCRIPTION: &'static str = "a string with length at most 40";
852    fn get_value(&self) -> &str {
853        &self.value
854    }
855    fn new(value: String) -> Result<Self, crate::types::bounded_string::BoundedStringError> {
856        Self::validate(&value)?;
857        Ok(Self { value })
858    }
859}
860impl std::convert::TryFrom<String> for DigestStr {
861    type Error = crate::types::bounded_string::BoundedStringError;
862    fn try_from(value: String) -> Result<Self, Self::Error> {
863        crate::types::bounded_string::BoundedString::new(value)
864    }
865}
866impl ::serde::Serialize for DigestStr {
867    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
868    where
869        S: ::serde::Serializer,
870    {
871        crate::types::bounded_string::serialize_bounded_string(self, serializer)
872    }
873}
874impl<'de> ::serde::Deserialize<'de> for DigestStr {
875    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
876    where
877        D: ::serde::Deserializer<'de>,
878    {
879        crate::types::bounded_string::deserialize_bounded_string(deserializer)
880    }
881}
882#[derive(Debug, Clone, PartialEq, PartialOrd)]
883pub struct SizeStr {
884    value: String,
885}
886impl crate::types::bounded_string::BoundedString for SizeStr {
887    const MIN_LENGTH: Option<usize> = None::<usize>;
888    const MAX_LENGTH: Option<usize> = None::<usize>;
889    const DEFAULT: Option<&'static str> = None::<&'static str>;
890    const PATTERN: Option<&'static str> = Some("\\+?\\d+(\\.\\d+)?[KMGT]?");
891    const TYPE_DESCRIPTION: &'static str =
892        "a string with pattern r\"\\+?\\d+(\\.\\d+)?[KMGT]?\" and no length constraints";
893    fn get_value(&self) -> &str {
894        &self.value
895    }
896    fn new(value: String) -> Result<Self, crate::types::bounded_string::BoundedStringError> {
897        Self::validate(&value)?;
898        Ok(Self { value })
899    }
900}
901impl std::convert::TryFrom<String> for SizeStr {
902    type Error = crate::types::bounded_string::BoundedStringError;
903    fn try_from(value: String) -> Result<Self, Self::Error> {
904        crate::types::bounded_string::BoundedString::new(value)
905    }
906}
907impl ::serde::Serialize for SizeStr {
908    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
909    where
910        S: ::serde::Serializer,
911    {
912        crate::types::bounded_string::serialize_bounded_string(self, serializer)
913    }
914}
915impl<'de> ::serde::Deserialize<'de> for SizeStr {
916    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
917    where
918        D: ::serde::Deserializer<'de>,
919    {
920        crate::types::bounded_string::deserialize_bounded_string(deserializer)
921    }
922}