Skip to content

Commit

Permalink
Merge pull request #490 from joelverhagen/dedupe
Browse files Browse the repository at this point in the history
Disambiguate duplicate module names
  • Loading branch information
yanghuan committed Jan 16, 2024
2 parents 08b8bb8 + 3e6bbe5 commit a694e83
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions CSharp.lua/LuaSyntaxGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -264,8 +264,22 @@ private void Write(LuaCompilationUnitSyntax luaCompilationUnit, string outFile)

public void Generate(string outFolder) {
List<string> modules = new List<string>();
HashSet<string> uniqueModules = new HashSet<string>(StringComparer.OrdinalIgnoreCase);
foreach (var luaCompilationUnit in Create()) {
string outFile = GetOutFileAbsolutePath(luaCompilationUnit.FilePath, outFolder, out string module);
string originalModule = module;
string outFileExtension = Path.GetExtension(outFile);
string outFileBase = outFile.Substring(0, outFile.Length - outFileExtension.Length);
int suffix = 1;
while (true) {
if (uniqueModules.Add(module)) {
break;
}

suffix++;
module = originalModule + "_" + suffix;
outFile = outFileBase + "_" + suffix + outFileExtension;
}
Write(luaCompilationUnit, outFile);
modules.Add(module);
}
Expand Down

0 comments on commit a694e83

Please sign in to comment.