diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/std/paths.nim | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/std/paths.nim b/lib/std/paths.nim index ac2e5cea4..664dedd31 100644 --- a/lib/std/paths.nim +++ b/lib/std/paths.nim @@ -9,7 +9,7 @@ export osseps import std/envvars import std/private/osappdirs -import std/pathnorm +import std/[pathnorm, hashes, sugar, strutils] from std/private/ospaths2 import joinPath, splitPath, ReadDirEffect, WriteDirEffect, @@ -25,6 +25,13 @@ export ReadDirEffect, WriteDirEffect type Path* = distinct string +func hash*(x: Path): Hash = + let x = x.string.dup(normalizePath) + if FileSystemCaseSensitive: + result = x.hash + else: + result = x.toLowerAscii.hash + template `$`*(x: Path): string = string(x) |