diff --git a/structmeta-derive/src/struct_meta.rs b/structmeta-derive/src/struct_meta.rs index 649c93b..72c146f 100644 --- a/structmeta-derive/src/struct_meta.rs +++ b/structmeta-derive/src/struct_meta.rs @@ -1,7 +1,7 @@ use crate::syn_utils::*; use proc_macro2::{Span, TokenStream}; use quote::{format_ident, quote, quote_spanned}; -use std::collections::HashMap; +use std::collections::BTreeMap; use syn::{ ext::IdentExt, parse::{Parse, ParseStream}, @@ -52,7 +52,7 @@ struct Params<'a> { unnamed_required: Vec>, unnamed_optional: Vec>, unnamed_variadic: Option>, - named: HashMap>, + named: BTreeMap>, rest: Option>, } impl<'a> Params<'a> { @@ -60,7 +60,7 @@ impl<'a> Params<'a> { let mut unnamed_required = Vec::new(); let mut unnamed_optional = Vec::new(); let mut unnamed_variadic = None; - let mut named = HashMap::new(); + let mut named = BTreeMap::new(); let mut rest = None; for (index, field) in fields.iter().enumerate() { let span = field.span();