diff options
Diffstat (limited to 'alacritty_config_derive/src/config_deserialize/de_struct.rs')
-rw-r--r-- | alacritty_config_derive/src/config_deserialize/de_struct.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/alacritty_config_derive/src/config_deserialize/de_struct.rs b/alacritty_config_derive/src/config_deserialize/de_struct.rs index 4245764f..1846f925 100644 --- a/alacritty_config_derive/src/config_deserialize/de_struct.rs +++ b/alacritty_config_derive/src/config_deserialize/de_struct.rs @@ -115,7 +115,7 @@ fn field_deserializer(field_streams: &mut FieldStreams, field: &Field) -> Result }; // Iterate over all #[config(...)] attributes. - for attr in field.attrs.iter().filter(|attr| crate::path_ends_with(&attr.path, "config")) { + for attr in field.attrs.iter().filter(|attr| attr.path().is_ident("config")) { let parsed = match attr.parse_args::<Attr>() { Ok(parsed) => parsed, Err(_) => continue, @@ -161,7 +161,7 @@ fn field_deserializer(field_streams: &mut FieldStreams, field: &Field) -> Result // Create token stream for deserializing "none" string into `Option<T>`. if let Type::Path(type_path) = &field.ty { - if crate::path_ends_with(&type_path.path, "Option") { + if type_path.path.segments.iter().last().map_or(false, |s| s.ident == "Option") { match_assignment_stream = quote! { if value.as_str().map_or(false, |s| s.eq_ignore_ascii_case("none")) { config.#ident = None; |