mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-27 12:48:00 +00:00
use custom ext::Opt for default_value in DeclStorageLine (#1722)
instead of ext::Seq
This commit is contained in:
@@ -74,8 +74,7 @@ struct AddExtraGenesisLine {
|
||||
pub extra_field: ext::Parens<Ident>,
|
||||
pub coldot_token: Token![:],
|
||||
pub extra_type: syn::Type,
|
||||
// FIXME #1570: use a custom ext::Option instead (syn option on '=' fails)
|
||||
pub default_value: ext::Seq<DeclStorageDefault>,
|
||||
pub default_value: ext::Opt<DeclStorageDefault>,
|
||||
}
|
||||
|
||||
#[derive(Parse, ToTokens, Debug)]
|
||||
@@ -91,8 +90,7 @@ struct DeclStorageLine {
|
||||
pub build: Option<DeclStorageBuild>,
|
||||
pub coldot_token: Token![:],
|
||||
pub storage_type: DeclStorageType,
|
||||
// FIXME #1570: use a custom ext::Option instead (syn option on '=' fails)
|
||||
pub default_value: ext::Seq<DeclStorageDefault>,
|
||||
pub default_value: ext::Opt<DeclStorageDefault>,
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -203,7 +203,7 @@ fn decl_store_extra_genesis(
|
||||
config_field.extend(quote!( pub #ident: #storage_type, ));
|
||||
opt_build = Some(build.as_ref().map(|b| &b.expr.content).map(|b|quote!( #b ))
|
||||
.unwrap_or_else(|| quote!( (|config: &GenesisConfig<#traitinstance>| config.#ident.clone()) )));
|
||||
let fielddefault = default_value.inner.get(0).as_ref().map(|d| &d.expr).map(|d|
|
||||
let fielddefault = default_value.inner.as_ref().map(|d| &d.expr).map(|d|
|
||||
if type_infos.is_option {
|
||||
quote!( #d.unwrap_or_default() )
|
||||
} else {
|
||||
@@ -270,7 +270,7 @@ fn decl_store_extra_genesis(
|
||||
genesis_extrafields.extend(quote!{
|
||||
#attrs pub #extrafield: #extra_type,
|
||||
});
|
||||
let extra_default = default_value.inner.get(0).map(|d| &d.expr).map(|e| quote!{ #e })
|
||||
let extra_default = default_value.inner.as_ref().map(|d| &d.expr).map(|e| quote!{ #e })
|
||||
.unwrap_or_else(|| quote!( Default::default() ));
|
||||
genesis_extrafields_default.extend(quote!{
|
||||
#extrafield: #extra_default,
|
||||
@@ -403,7 +403,7 @@ fn decl_storage_items(
|
||||
|
||||
let type_infos = get_type_infos(storage_type);
|
||||
let gettype = type_infos.full_type;
|
||||
let fielddefault = default_value.inner.get(0).as_ref().map(|d| &d.expr).map(|d| quote!( #d ))
|
||||
let fielddefault = default_value.inner.as_ref().map(|d| &d.expr).map(|d| quote!( #d ))
|
||||
.unwrap_or_else(|| quote!{ Default::default() });
|
||||
|
||||
let typ = type_infos.typ;
|
||||
@@ -643,7 +643,7 @@ fn store_functions_to_metadata (
|
||||
#scrate::storage::generator::StorageFunctionModifier::Default
|
||||
}
|
||||
};
|
||||
let default = default_value.inner.get(0).as_ref().map(|d| &d.expr)
|
||||
let default = default_value.inner.as_ref().map(|d| &d.expr)
|
||||
.map(|d| {
|
||||
quote!( #d )
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user