diff options
author | Timothee Cour <timothee.cour2@gmail.com> | 2019-09-06 11:26:48 -0700 |
---|---|---|
committer | Timothee Cour <timothee.cour2@gmail.com> | 2019-09-06 11:26:48 -0700 |
commit | 4129993689fa86826a2bf320356f372165fc1803 (patch) | |
tree | e14f5e4184286565e54e4f1028baf3757f54a82e | |
parent | e0f3e8432af6a64d01be089a2247565e1f754b3a (diff) | |
download | Nim-4129993689fa86826a2bf320356f372165fc1803.tar.gz |
fix #12130 ; improve naming scheme in fakePackageName
-rw-r--r-- | compiler/packagehandling.nim | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/compiler/packagehandling.nim b/compiler/packagehandling.nim index b9db61b4d..54fbe23a4 100644 --- a/compiler/packagehandling.nim +++ b/compiler/packagehandling.nim @@ -39,13 +39,11 @@ proc getPackageName*(conf: ConfigRef; path: string): string = if parents <= 0: break proc fakePackageName*(conf: ConfigRef; path: AbsoluteFile): string = - # foo/../bar becomes foo7_7bar - result = relativeTo(path, conf.projectPath, '/').string.multiReplace( - {"/": "7", "..": "_", "7": "77", "_": "__", ":": "8", "8": "88"}) + # foo/../bar becomes foo@..@bar + result = relativeTo(path, conf.projectPath, '/').string.multiReplace({"/": "@", "@": "@@"}) proc demanglePackageName*(path: string): string = - result = path.multiReplace( - {"88": "8", "8": ":", "77": "7", "__": "_", "_7": "../", "7": "/"}) + result = path.multiReplace({"@@": "@", "@": "/"}) proc withPackageName*(conf: ConfigRef; path: AbsoluteFile): AbsoluteFile = let x = getPackageName(conf, path.string) |