core :: Path :: simplified=
.
, removing //
, and resolving ..
var path = "somedir/./tmp/../somefile".to_path
assert path.simplified.to_s == "somedir/somefile"
See String:simplify_path
for details.
The result does not depend of the file system, thus is cached for efficiency.
# The path simplified by removing useless `.`, removing `//`, and resolving `..`
#
# ~~~
# var path = "somedir/./tmp/../somefile".to_path
# assert path.simplified.to_s == "somedir/somefile"
# ~~~
#
# See `String:simplify_path` for details.
#
# The result does not depend of the file system, thus is cached for efficiency.
var simplified: Path is lazy do
var res = path.simplify_path.to_path
res.simplified = res
return res
end
lib/core/file.nit:399,2--413,4