From: Ian Jackson Date: Wed, 19 Mar 2025 18:56:01 +0000 (+0000) Subject: config derive: Use a define X-Git-Tag: debian/1.3.1~10^2~8 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=commitdiff_plain;h=b0778944de6ec94cef0833f3f476a9439822b882;p=hippotat.git config derive: Use a define This abolishes the helper type. Signed-off-by: Ian Jackson --- diff --git a/src/config_derive.rs b/src/config_derive.rs index aa42c95..fd35ef1 100644 --- a/src/config_derive.rs +++ b/src/config_derive.rs @@ -65,12 +65,8 @@ define_derive_deftly! { InstanceConfig expect items: - struct InstanceConfigSKLs { $( - $fname: SectionKindList, - ) } - const FIELD_SKLS: InstanceConfigSKLs = InstanceConfigSKLs { - $( - $fname: ${if fmeta(skl) { + ${define FIELD_SKL { + ${if fmeta(skl) { ${fmeta(skl) as expr} } else { ${select1 @@ -81,15 +77,13 @@ define_derive_deftly! { fmeta( computed ) { SKL::None } } }} - , - ) - }; + }} impl InstanceConfig { const FIELDS : & 'static [(& 'static str, SectionKindList)] = &[ $( ( stringify!($fname), - FIELD_SKLS.$fname, + $FIELD_SKL, ), ) ]; @@ -111,7 +105,7 @@ define_derive_deftly! { }} ( stringify!($fname), - FIELD_SKLS.$fname, + $FIELD_SKL, )?, ) }