#include "Util.hpp"
+using nonstd::nullopt;
+using nonstd::optional;
+using nonstd::string_view;
+
Args::Args(Args&& other) noexcept : m_args(std::move(other.m_args))
{
}
return args;
}
-nonstd::optional<Args>
+optional<Args>
Args::from_gcc_atfile(const std::string& filename)
{
std::string argtext;
try {
argtext = Util::read_file(filename);
} catch (Error&) {
- return nonstd::nullopt;
+ return nullopt;
}
Args args;
}
void
-Args::erase_with_prefix(nonstd::string_view prefix)
+Args::erase_with_prefix(string_view prefix)
{
m_args.erase(std::remove_if(m_args.begin(),
m_args.end(),
}
Hash&
-Hash::hash(nonstd::string_view data)
+Hash::hash(string_view data)
{
hash(data.data(), data.length());
return *this;
line = line.substr(csi_seq.length());
}
size_t path_end = line.find(':');
- if (path_end == nonstd::string_view::npos) {
+ if (path_end == string_view::npos) {
result.append(line.data(), line.length());
} else {
std::string path(line.substr(0, path_end));
}
bool
-matches_dir_prefix_or_file(nonstd::string_view dir_prefix_or_file,
- nonstd::string_view path)
+matches_dir_prefix_or_file(string_view dir_prefix_or_file, string_view path)
{
return !dir_prefix_or_file.empty() && !path.empty()
&& dir_prefix_or_file.length() <= path.length()
}
static bool
-create_cachedir_tag(nonstd::string_view dir)
+create_cachedir_tag(string_view dir)
{
constexpr char cachedir_tag[] =
"Signature: 8a477f597d28d172789f06886806bc55\n"
#include "third_party/doctest.h"
+using nonstd::string_view;
+
TEST_SUITE_BEGIN("FormatNonstdStringView");
TEST_CASE("fmt::format and nonstd::string_view")
{
- nonstd::string_view null;
+ string_view null;
CHECK(fmt::format("{}", null) == "");
const std::string s = "0123456789";
- nonstd::string_view empty(s.data(), 0);
+ string_view empty(s.data(), 0);
CHECK(fmt::format("{}", empty) == "");
- nonstd::string_view empty_end(s.data() + s.length(), 0);
+ string_view empty_end(s.data() + s.length(), 0);
CHECK(fmt::format("{}", empty_end) == "");
- nonstd::string_view start(s.data(), 2);
+ string_view start(s.data(), 2);
CHECK(fmt::format("{}", start) == "01");
- nonstd::string_view middle(s.data() + 3, 4);
+ string_view middle(s.data() + 3, 4);
CHECK(fmt::format("{}", middle) == "3456");
- nonstd::string_view end(s.data() + s.length() - 2, 2);
+ string_view end(s.data() + s.length() - 2, 2);
CHECK(fmt::format("{}", end) == "89");
}