Use overlay ID for module import lookup (#4514)

* Add id to import pattern

* Finish testing importing in a block
This commit is contained in:
Jakub Žádník
2022-02-18 03:58:24 +02:00
committed by GitHub
parent c7c427723b
commit bccce0ab46
6 changed files with 53 additions and 12 deletions

View File

@ -2093,6 +2093,8 @@ pub fn parse_import_pattern(
);
};
let maybe_overlay_id = working_set.find_overlay(&head);
let (import_pattern, err) = if let Some(tail_span) = spans.get(1) {
// FIXME: expand this to handle deeper imports once we support module imports
let tail = working_set.get_span_contents(*tail_span);
@ -2101,6 +2103,7 @@ pub fn parse_import_pattern(
ImportPattern {
head: ImportPatternHead {
name: head,
id: maybe_overlay_id,
span: *head_span,
},
members: vec![ImportPatternMember::Glob { span: *tail_span }],
@ -2129,6 +2132,7 @@ pub fn parse_import_pattern(
ImportPattern {
head: ImportPatternHead {
name: head,
id: maybe_overlay_id,
span: *head_span,
},
members: vec![ImportPatternMember::List { names: output }],
@ -2141,6 +2145,7 @@ pub fn parse_import_pattern(
ImportPattern {
head: ImportPatternHead {
name: head,
id: maybe_overlay_id,
span: *head_span,
},
members: vec![],
@ -2155,6 +2160,7 @@ pub fn parse_import_pattern(
ImportPattern {
head: ImportPatternHead {
name: head,
id: maybe_overlay_id,
span: *head_span,
},
members: vec![ImportPatternMember::Name {
@ -2171,6 +2177,7 @@ pub fn parse_import_pattern(
ImportPattern {
head: ImportPatternHead {
name: head,
id: maybe_overlay_id,
span: *head_span,
},
members: vec![],