Skip to content

Commit eada3d5

Browse files
committed
fixed handling of star imports
1 parent ed56ef5 commit eada3d5

File tree

14 files changed

+68
-39
lines changed

14 files changed

+68
-39
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
## dev branch / next version (2.x.x)
44

5+
## 2.1.4 (2022-05-02)
6+
7+
- fixed handling of star imports
8+
59
## 2.1.3 (2022-05-01)
610

711
- fixed package renaming

haxelib.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
"refactor"
99
],
1010
"description": "A code renaming tool for Haxe",
11-
"version": "2.1.3",
12-
"releasenote": "fixed package renaming",
11+
"version": "2.1.4",
12+
"releasenote": "fixed handling of star imports",
1313
"contributors": [
1414
"AlexHaxe"
1515
],

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@haxecheckstyle/haxe-rename",
3-
"version": "2.1.3",
3+
"version": "2.1.4",
44
"description": "Renaming tool for Haxe",
55
"repository": {
66
"type": "git",

src/refactor/discover/File.hx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,10 @@ class File {
4242
}
4343
var fullModule:String = '$packName.$moduleName';
4444
var fullSubModule:Null<String> = null;
45+
var isMainModule:Bool = true;
4546
if (moduleName != typeName) {
4647
fullSubModule = '$fullModule.$typeName';
48+
isMainModule = false;
4749
}
4850
for (importEntry in importList) {
4951
if (importEntry.moduleName.name == fullModule) {
@@ -58,6 +60,11 @@ class File {
5860
}
5961
return Imported;
6062
}
63+
if (isMainModule && importEntry.starImport) {
64+
if (importEntry.moduleName.name == packName) {
65+
return StarImported;
66+
}
67+
}
6168
}
6269

6370
if (importHxFile == null) {
@@ -152,4 +159,5 @@ enum ImportStatus {
152159
SamePackage;
153160
Imported;
154161
ImportedWithAlias(alias:String);
162+
StarImported;
155163
}

src/refactor/rename/RenameAnonStructField.hx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ class RenameAnonStructField {
6060
switch (use.file.importsModule(packName, mainModuleName, type.name.name)) {
6161
case None:
6262
continue;
63-
case Global | SamePackage | Imported | ImportedWithAlias(_):
63+
case Global | SamePackage | Imported | ImportedWithAlias(_) | StarImported:
6464
}
6565
changelist.addChange(use.pos.fileName, ReplaceText(context.what.toName, use.pos), use);
6666
}
@@ -140,7 +140,7 @@ class RenameAnonStructField {
140140
switch (baseTypeName.file.importsModule(use.file.getPackage(), use.file.getMainModulName(), baseTypeName.name)) {
141141
case None:
142142
continue;
143-
case Global | SamePackage | Imported | ImportedWithAlias(_):
143+
case Global | SamePackage | Imported | ImportedWithAlias(_) | StarImported:
144144
}
145145
return use.defineType;
146146
}

src/refactor/rename/RenameEnumField.hx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,7 @@ class RenameEnumField {
2424
if (alias != typeName) {
2525
continue;
2626
}
27-
case Global:
28-
case SamePackage:
29-
case Imported:
27+
case Global | SamePackage | Imported | StarImported:
3028
}
3129
RenameHelper.replaceTextWithPrefix(use, typeName, context.what.toName, changelist);
3230
}
@@ -65,7 +63,7 @@ class RenameEnumField {
6563
if (alias != typeName) {
6664
continue;
6765
}
68-
case Global | SamePackage | Imported:
66+
case Global | SamePackage | Imported | StarImported:
6967
}
7068
default:
7169
continue;

src/refactor/rename/RenameField.hx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ class RenameField {
122122
continue;
123123
case ImportedWithAlias(_):
124124
continue;
125-
case Global | SamePackage | Imported:
125+
case Global | SamePackage | Imported | StarImported:
126126
}
127127
RenameHelper.replaceTextWithPrefix(use, '${type.name.name}.', context.what.toName, changelist);
128128
}

src/refactor/rename/RenameHelper.hx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ class RenameHelper {
5353
var search:String = switch (use.file.importsModule(baseType.file.getPackage(), baseType.file.getMainModulName(), baseType.name.name)) {
5454
case None:
5555
continue;
56-
case Global | SamePackage | Imported:
56+
case Global | SamePackage | Imported | StarImported:
5757
baseType.name.name;
5858
case ImportedWithAlias(alias):
5959
alias;
@@ -316,7 +316,7 @@ class RenameHelper {
316316
switch (type.file.importsModule(candidate.file.getPackage(), candidate.file.getMainModulName(), candidate.name.name)) {
317317
case None:
318318
case ImportedWithAlias(_):
319-
case Global | SamePackage | Imported:
319+
case Global | SamePackage | Imported | StarImported:
320320
return candidate;
321321
}
322322
}
@@ -359,7 +359,7 @@ class RenameHelper {
359359
switch (hint.file.importsModule(type.file.getPackage(), type.file.getMainModulName(), type.name.name)) {
360360
case None:
361361
case ImportedWithAlias(_):
362-
case Global | SamePackage | Imported:
362+
case Global | SamePackage | Imported | StarImported:
363363
return Promise.resolve(KnownType(type, typeParams));
364364
}
365365
}

src/refactor/rename/RenamePackage.hx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ class RenamePackage {
6464
}
6565
switch (use.file.importsModule(packageName, mainTypeName, mainTypeName)) {
6666
case None:
67-
case Global | SamePackage:
67+
case Global | SamePackage | StarImported:
6868
var importPos:IdentifierPos = {fileName: use.pos.fileName, start: use.file.importInsertPos, end: use.file.importInsertPos}
6969
changelist.addChange(use.pos.fileName, InsertText('import $newMainModulName;\n', importPos), use);
7070
uniqueFiles.push(use.pos.fileName);

0 commit comments

Comments
 (0)