canonpath
ErrorsCollection

canonpath

Synthesised documentation from type/IO/Spec/Cygwin type/IO/Spec/Win32 type/IO/Spec/QNX type/IO/Spec/Unix

From type/IO/Spec/Cygwin

See Original text in context

method canonpath(Str() $path:$parent --> Str:D)

Returns a string that is a canonical representation of $path. If :$parent is set to true, will also clean up references to parent directories. NOTE: the routine does not access the filesystem.

IO::Spec::Cygwin.canonpath(C:\foo\\..\bar\..\ber).say;
# OUTPUT: «C:/foo/../bar/../ber␤» 
 
IO::Spec::Cygwin.canonpath("foo///./../bar/../ber").say;
# OUTPUT: «foo/../bar/../ber␤» 
 
IO::Spec::Cygwin.canonpath("foo///./../bar/../ber":parent).say;
# OUTPUT: «ber␤»

From type/IO/Spec/Win32

See Original text in context

method canonpath(Str() $path:$parent --> Str:D)

Returns a string that is a canonical representation of $path. If :$parent is set to true, will also clean up references to parent directories. NOTE: the routine does not access the filesystem.

IO::Spec::Win32.canonpath("C:/foo//../bar/../ber").say;
# OUTPUT: «C:\foo\..\bar\..\ber␤» 
 
IO::Spec::Win32.canonpath("C:/foo///./../bar/../ber").say;
# OUTPUT: «C:\foo\..\bar\..\ber␤» 
 
IO::Spec::Win32.canonpath("C:/foo///./../bar/../ber":parent).say;
# OUTPUT: «C:\ber␤»

From type/IO/Spec/QNX

See Original text in context

method canonpath(Str() $path:$parent --> Str:D)

Returns a string that is a canonical representation of $path. If :$parent is set to true, will also clean up references to parent directories. NOTE: the routine does not access the filesystem, so no symlinks are followed.

IO::Spec::QNX.canonpath("foo//../bar/../ber").say;
# OUTPUT: «foo/../bar/../ber␤» 
 
IO::Spec::QNX.canonpath("foo///./../bar/../ber").say;
# OUTPUT: «foo/../bar/../ber␤» 
 
IO::Spec::QNX.canonpath("foo///./../bar/../ber":parent).say;
# OUTPUT: «ber␤»

From type/IO/Spec/Unix

See Original text in context

method canonpath(Str() $path:$parent --> Str:D)

Returns a string that is a canonical representation of $path. If :$parent is set to true, will also clean up references to parent directories. NOTE: the routine does not access the filesystem, so no symlinks are followed.

IO::Spec::Unix.canonpath("foo//../bar/../ber").say;
# OUTPUT: «foo/../bar/../ber␤» 
 
IO::Spec::Unix.canonpath("foo///./../bar/../ber").say;
# OUTPUT: «foo/../bar/../ber␤» 
 
IO::Spec::Unix.canonpath("foo///./../bar/../ber":parent).say;
# OUTPUT: «ber␤»