mirror of
https://github.com/rust-lang/rust.git
synced 2026-04-27 18:57:42 +03:00
Merge visit_field_def
This commit is contained in:
@@ -1505,14 +1505,10 @@ fn visit_attribute(&mut self, attr: &'a ast::Attribute) {
|
||||
visit::walk_attribute(self, attr);
|
||||
}
|
||||
|
||||
fn visit_field_def(&mut self, sf: &'a ast::FieldDef) {
|
||||
if sf.is_placeholder {
|
||||
self.visit_invoc(sf.id);
|
||||
} else {
|
||||
let vis = self.resolve_visibility(&sf.vis);
|
||||
self.r.feed_visibility(self.r.feed(sf.id), vis);
|
||||
visit::walk_field_def(self, sf);
|
||||
}
|
||||
pub(crate) fn brg_visit_field_def(&mut self, sf: &'a ast::FieldDef) {
|
||||
let vis = self.resolve_visibility(&sf.vis);
|
||||
self.r.feed_visibility(self.r.feed(sf.id), vis);
|
||||
visit::walk_field_def(self, sf);
|
||||
}
|
||||
|
||||
// Constructs the reduced graph for one variant. Variants exist in the
|
||||
|
||||
@@ -97,10 +97,11 @@ fn collect_field(&mut self, field: &'a FieldDef, index: Option<usize>) {
|
||||
let old_index = self.r.placeholder_field_indices.insert(field.id, index(self));
|
||||
assert!(old_index.is_none(), "placeholder field index is reset for a node ID");
|
||||
self.visit_macro_invoc(field.id);
|
||||
self.visit_invoc(field.id);
|
||||
} else {
|
||||
let name = field.ident.map_or_else(|| sym::integer(index(self)), |ident| ident.name);
|
||||
let def = self.create_def(field.id, Some(name), DefKind::Field, field.span);
|
||||
self.with_parent(def, |this| visit::walk_field_def(this, field));
|
||||
self.with_parent(def, |this| this.brg_visit_field_def(field));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user