mirror of
https://github.com/typst/typst
synced 2025-05-15 01:25:28 +08:00
Fix unnecessary import rename warning (#5828)
This commit is contained in:
parent
f64d029fe6
commit
20dd19c64e
@ -44,11 +44,10 @@ impl Eval for ast::ModuleImport<'_> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// If there is a rename, import the source itself under that name.
|
// If there is a rename, import the source itself under that name.
|
||||||
let bare_name = self.bare_name();
|
|
||||||
let new_name = self.new_name();
|
let new_name = self.new_name();
|
||||||
if let Some(new_name) = new_name {
|
if let Some(new_name) = new_name {
|
||||||
if let Ok(source_name) = &bare_name {
|
if let ast::Expr::Ident(ident) = self.source() {
|
||||||
if source_name == new_name.as_str() {
|
if ident.as_str() == new_name.as_str() {
|
||||||
// Warn on `import x as x`
|
// Warn on `import x as x`
|
||||||
vm.engine.sink.warn(warning!(
|
vm.engine.sink.warn(warning!(
|
||||||
new_name.span(),
|
new_name.span(),
|
||||||
@ -57,6 +56,7 @@ impl Eval for ast::ModuleImport<'_> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Define renamed module on the scope.
|
||||||
vm.define(new_name, source.clone());
|
vm.define(new_name, source.clone());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -255,6 +255,10 @@
|
|||||||
// Warning: 17-21 unnecessary import rename to same name
|
// Warning: 17-21 unnecessary import rename to same name
|
||||||
#import enum as enum
|
#import enum as enum
|
||||||
|
|
||||||
|
--- import-rename-necessary ---
|
||||||
|
#import "module.typ" as module: a
|
||||||
|
#test(module.a, a)
|
||||||
|
|
||||||
--- import-rename-unnecessary-mixed ---
|
--- import-rename-unnecessary-mixed ---
|
||||||
// Warning: 17-21 unnecessary import rename to same name
|
// Warning: 17-21 unnecessary import rename to same name
|
||||||
#import enum as enum: item
|
#import enum as enum: item
|
||||||
@ -263,10 +267,6 @@
|
|||||||
// Warning: 31-35 unnecessary import rename to same name
|
// Warning: 31-35 unnecessary import rename to same name
|
||||||
#import enum as enum: item as item
|
#import enum as enum: item as item
|
||||||
|
|
||||||
--- import-item-rename-unnecessary-string ---
|
|
||||||
// Warning: 25-31 unnecessary import rename to same name
|
|
||||||
#import "module.typ" as module
|
|
||||||
|
|
||||||
--- import-item-rename-unnecessary-but-ok ---
|
--- import-item-rename-unnecessary-but-ok ---
|
||||||
#import "modul" + "e.typ" as module
|
#import "modul" + "e.typ" as module
|
||||||
#test(module.b, 1)
|
#test(module.b, 1)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user