mirror of
https://github.com/Expand-sys/CCash
synced 2026-03-22 12:37:08 +11:00
31 lines
No EOL
733 B
C++
31 lines
No EOL
733 B
C++
#include "substr_view.h"
|
|
|
|
substr_view::substr_view(std::string_view str, size_t begin_init, size_t end_init) noexcept
|
|
{
|
|
begin = str.begin() + begin_init;
|
|
if (!end_init)
|
|
{
|
|
end = str.size() - begin_init;
|
|
}
|
|
else
|
|
{
|
|
end = end_init - begin_init;
|
|
}
|
|
}
|
|
bool substr_view::operator==(const std::string &str) const noexcept
|
|
{
|
|
if (str.size() != end)
|
|
{
|
|
return false;
|
|
}
|
|
for (size_t i = 0; i < end; ++i)
|
|
{
|
|
if (*(begin + end) == str[i])
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
return true;
|
|
}
|
|
const char *substr_view::data() const noexcept { return begin; }
|
|
std::string_view substr_view::str_view() const noexcept { return std::string_view(data(), end); } |