mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-22 21:36:11 +01:00
Cleanup StringRef impl a bit
This commit is contained in:
parent
c95072408f
commit
b9baae6d93
@ -17,12 +17,12 @@ namespace Catch {
|
|||||||
: StringRef( rawChars, static_cast<StringRef::size_type>(std::strlen(rawChars) ) )
|
: StringRef( rawChars, static_cast<StringRef::size_type>(std::strlen(rawChars) ) )
|
||||||
{}
|
{}
|
||||||
|
|
||||||
auto StringRef::operator == ( StringRef const& other ) const noexcept -> bool {
|
auto StringRef::operator == ( StringRef other ) const noexcept -> bool {
|
||||||
return m_size == other.m_size
|
return m_size == other.m_size
|
||||||
&& (std::memcmp( m_start, other.m_start, m_size ) == 0);
|
&& (std::memcmp( m_start, other.m_start, m_size ) == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool StringRef::operator<(StringRef const& rhs) const noexcept {
|
bool StringRef::operator<(StringRef rhs) const noexcept {
|
||||||
if (m_size < rhs.m_size) {
|
if (m_size < rhs.m_size) {
|
||||||
return strncmp(m_start, rhs.m_start, m_size) <= 0;
|
return strncmp(m_start, rhs.m_start, m_size) <= 0;
|
||||||
}
|
}
|
||||||
@ -50,8 +50,8 @@ namespace Catch {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
auto operator << ( std::ostream& os, StringRef const& str ) -> std::ostream& {
|
auto operator << ( std::ostream& os, StringRef str ) -> std::ostream& {
|
||||||
return os.write(str.data(), str.size());
|
return os.write(str.data(), static_cast<std::streamsize>(str.size()));
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string operator+(StringRef lhs, StringRef rhs) {
|
std::string operator+(StringRef lhs, StringRef rhs) {
|
||||||
@ -62,7 +62,7 @@ namespace Catch {
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto operator+=( std::string& lhs, StringRef const& rhs ) -> std::string& {
|
auto operator+=( std::string& lhs, StringRef rhs ) -> std::string& {
|
||||||
lhs.append(rhs.data(), rhs.size());
|
lhs.append(rhs.data(), rhs.size());
|
||||||
return lhs;
|
return lhs;
|
||||||
}
|
}
|
||||||
|
@ -49,8 +49,8 @@ namespace Catch {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public: // operators
|
public: // operators
|
||||||
auto operator == ( StringRef const& other ) const noexcept -> bool;
|
auto operator == ( StringRef other ) const noexcept -> bool;
|
||||||
auto operator != (StringRef const& other) const noexcept -> bool {
|
auto operator != (StringRef other) const noexcept -> bool {
|
||||||
return !(*this == other);
|
return !(*this == other);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -59,7 +59,7 @@ namespace Catch {
|
|||||||
return m_start[index];
|
return m_start[index];
|
||||||
}
|
}
|
||||||
|
|
||||||
bool operator<(StringRef const& rhs) const noexcept;
|
bool operator<(StringRef rhs) const noexcept;
|
||||||
|
|
||||||
public: // named queries
|
public: // named queries
|
||||||
constexpr auto empty() const noexcept -> bool {
|
constexpr auto empty() const noexcept -> bool {
|
||||||
@ -90,8 +90,8 @@ namespace Catch {
|
|||||||
constexpr const_iterator end() const { return m_start + m_size; }
|
constexpr const_iterator end() const { return m_start + m_size; }
|
||||||
|
|
||||||
|
|
||||||
friend std::string& operator += (std::string& lhs, StringRef const& sr);
|
friend std::string& operator += (std::string& lhs, StringRef sr);
|
||||||
friend std::ostream& operator << (std::ostream& os, StringRef const& sr);
|
friend std::ostream& operator << (std::ostream& os, StringRef sr);
|
||||||
friend std::string operator+(StringRef lhs, StringRef rhs);
|
friend std::string operator+(StringRef lhs, StringRef rhs);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user