Skip to content

Commit ab85d7e

Browse files
committed
mex: is_absolute
1 parent 155c0d7 commit ab85d7e

File tree

5 files changed

+16
-3
lines changed

5 files changed

+16
-3
lines changed

buildfile.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,7 @@ function build_exe(context)
203203

204204

205205
srcs = {
206+
"src/is_absolute.cpp", ...
206207
"src/unlink.cpp", ...
207208
["src/is_admin.cpp", "src/admin_fs.cpp"] ...
208209
"src/is_char_device.cpp", ...

src/ffilesystem.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,16 @@ bool fs_is_url(std::string_view);
1313
int fs_is_wsl();
1414
bool fs_is_rosetta();
1515
bool fs_is_admin();
16+
17+
bool fs_is_absolute(std::string_view);
18+
1619
bool fs_is_symlink(std::string_view);
1720
bool fs_create_symlink(std::string_view, std::string_view);
1821
std::string fs_read_symlink(std::string_view);
1922

2023
std::string fs_parent(std::string_view);
24+
25+
std::string fs_root_dir(std::string_view);
2126
std::string fs_root_name(std::string_view);
2227

2328
bool fs_win32_is_symlink(std::string_view);

src/octave/proximate_to.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ DEFUN_DLD (proximate_to, args, nargout,
1616
std::error_code ec;
1717

1818
std::string out = std::filesystem::proximate(args(1).string_value(),
19-
args(0).string_value(), ec).generic_string();
19+
args(0).string_value(),
20+
ec).generic_string();
2021

2122
if(ec)
2223
octave_stdout << ec.message() << "\n";

src/octave/relative_to.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ DEFUN_DLD (relative_to, args, nargout,
1616
std::error_code ec;
1717

1818
std::string out = std::filesystem::relative(args(1).string_value(),
19-
args(0).string_value(), ec).generic_string();
19+
args(0).string_value(),
20+
ec).generic_string();
2021

2122
if(ec)
2223
octave_stdout << ec.message() << "\n";

src/pure.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,14 @@ std::string fs_as_posix(std::string_view path)
4343
return p.generic_string();
4444
}
4545

46+
std::string fs_root_dir(std::string_view path)
47+
{
48+
return std::filesystem::path(path).root_directory().string();
49+
}
50+
4651
std::string fs_root_name(std::string_view path)
4752
{
48-
return std::filesystem::path(path).root_name().generic_string();
53+
return std::filesystem::path(path).root_name().string();
4954
}
5055

5156

0 commit comments

Comments
 (0)