Look inside of None-delimited groups when examining types

This commit is contained in:
David Tolnay
2020-05-29 17:58:34 -07:00
parent f7d06cae4c
commit c45a809d5c
5 changed files with 21 additions and 12 deletions
+2 -2
View File
@@ -5,7 +5,7 @@ use syn::punctuated::{Pair, Punctuated};
use syn::visit::{self, Visit};
use internals::ast::{Container, Data};
use internals::attr;
use internals::{attr, ungroup};
use proc_macro2::Span;
@@ -114,7 +114,7 @@ pub fn with_bound(
}
impl<'ast> Visit<'ast> for FindTyParams<'ast> {
fn visit_field(&mut self, field: &'ast syn::Field) {
if let syn::Type::Path(ty) = &field.ty {
if let syn::Type::Path(ty) = ungroup(&field.ty) {
if let Some(Pair::Punctuated(t, _)) = ty.path.segments.pairs().next() {
if self.all_type_params.contains(&t.ident) {
self.associated_type_usage.push(ty);