31std::string_view
fileName(std::string_view path)
33 std::size_t lastSlash = path.rfind(
'/');
34 std::size_t lastBackSlash = path.rfind(
'\\');
35 std::size_t lastSeparator;
36 if (lastSlash == std::string::npos && lastBackSlash == std::string::npos) {
38 }
else if (lastSlash == std::string::npos) {
39 lastSeparator = lastBackSlash;
40 }
else if (lastBackSlash == std::string::npos) {
41 lastSeparator = lastSlash;
43 lastSeparator = lastSlash > lastBackSlash ? lastSlash : lastBackSlash;
45 return path.substr(lastSeparator + 1);
53 std::size_t lastSlash = path.rfind(
'/');
54 std::size_t lastBackSlash = path.rfind(
'\\');
55 std::size_t lastSeparator;
56 if (lastSlash == std::string::npos && lastBackSlash == std::string::npos) {
57 return std::string_view();
58 }
else if (lastSlash == std::string::npos) {
59 lastSeparator = lastBackSlash;
60 }
else if (lastBackSlash == std::string::npos) {
61 lastSeparator = lastSlash;
63 lastSeparator = lastSlash > lastBackSlash ? lastSlash : lastBackSlash;
65 return path.substr(0, lastSeparator + 1);