From bb62dde9b0f33d81e84979629a956f9e7922dd1c Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Fri, 19 Jul 2019 10:01:59 +0200 Subject: [PATCH] macro: common defs: add default, and sort Signed-off-by: Wolfgang Bumiller --- proxmox-api-macro/src/api_def.rs | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/proxmox-api-macro/src/api_def.rs b/proxmox-api-macro/src/api_def.rs index 7cc5a1e1..68e41062 100644 --- a/proxmox-api-macro/src/api_def.rs +++ b/proxmox-api-macro/src/api_def.rs @@ -87,19 +87,21 @@ impl CommonTypeDefinition { #[derive(Builder)] pub struct ParameterDefinition { + #[builder(default)] + pub default: Option, #[builder(default)] pub description: Option, #[builder(default)] - pub validate: Option, + pub maximum: Option, #[builder(default)] pub minimum: Option, #[builder(default)] - pub maximum: Option, + pub validate: Option, } impl ParameterDefinition { pub fn builder() -> ParameterDefinitionBuilder { - ParameterDefinitionBuilder::default() + Default::default() } pub fn from_object(obj: Object) -> Result { @@ -108,17 +110,20 @@ impl ParameterDefinition { let obj_span = obj.span(); for (key, value) in obj { match key.as_str() { + "default" => { + def.default(Some(value.expect_expr()?)); + } "description" => { def.description(Some(value.expect_lit_str()?)); } - "validate" => { - def.validate(Some(value.expect_expr()?)); + "maximum" => { + def.maximum(Some(value.expect_expr()?)); } "minimum" => { def.minimum(Some(value.expect_expr()?)); } - "maximum" => { - def.maximum(Some(value.expect_expr()?)); + "validate" => { + def.validate(Some(value.expect_expr()?)); } other => c_bail!(key.span(), "invalid key in type definition: {}", other), }