@@ -41,6 +41,27 @@ class path {
41
41
42
42
// MARK: string conversions
43
43
44
+ auto wstring () const { return path_.wstring (); }
45
+ auto generic_string () const { return path_.generic_string (); }
46
+ auto generic_wstring () const { return path_.generic_wstring (); }
47
+ auto generic_u8string () const { return path_.generic_u8string (); }
48
+ auto generic_u16string () const { return path_.generic_u16string (); }
49
+ auto generic_u32string () const { return path_.generic_u32string (); }
50
+ auto string () const { return path_.string (); }
51
+ auto native () const noexcept { return path_.native (); }
52
+ auto u8string () const { return path_.u8string (); }
53
+ auto u16string () const { return path_.u16string (); }
54
+ auto u32string () const { return path_.u32string (); }
55
+ const auto c_str () const noexcept { return path_.c_str (); }
56
+
57
+ const std::filesystem::path& native_path () const { return path_; }
58
+
59
+ static constexpr auto preferred_separator = std::filesystem::path::preferred_separator;
60
+
61
+ bool empty () const noexcept { return path_.empty (); }
62
+ bool is_absolute () const { return path_.is_absolute (); }
63
+ bool is_relative () const { return path_.is_relative (); }
64
+
44
65
#if defined(TARGET_WIN32) // superfluous but usefull to facilitate testing on mac/linux
45
66
46
67
// TODO better (ideal) impl this just copy-pasted for proof of concept
@@ -65,26 +86,7 @@ class path {
65
86
explicit operator const std::filesystem::path::string_type () const { return path_.string (); }
66
87
#endif
67
88
68
- auto wstring () const { return path_.wstring (); }
69
- auto generic_string () const { return path_.generic_string (); }
70
- auto generic_wstring () const { return path_.generic_wstring (); }
71
- auto generic_u8string () const { return path_.generic_u8string (); }
72
- auto generic_u16string () const { return path_.generic_u16string (); }
73
- auto generic_u32string () const { return path_.generic_u32string (); }
74
- auto string () const { return path_.string (); }
75
- auto native () const noexcept { return path_.native (); }
76
- auto u8string () const { return path_.u8string (); }
77
- auto u16string () const { return path_.u16string (); }
78
- auto u32string () const { return path_.u32string (); }
79
- const auto c_str () const noexcept { return path_.c_str (); }
80
-
81
- const std::filesystem::path& native_path () const { return path_; }
82
-
83
- static constexpr auto preferred_separator = std::filesystem::path::preferred_separator;
84
-
85
- bool empty () const noexcept { return path_.empty (); }
86
- bool is_absolute () const { return path_.is_absolute (); }
87
- bool is_relative () const { return path_.is_relative (); }
89
+
88
90
89
91
// MARK: std::filesystem forwards
90
92
bool exists () const { return std::filesystem::exists (path_); }
0 commit comments