Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/include/internal/catch_stringref.cpp
diff options
context:
space:
mode:
authorMartin Hořeňovský2018-02-28 22:05:01 +0100
committerMartin Hořeňovský2018-02-28 22:49:00 +0100
commit05cd05743a75caeffbd6ad4c675ac68bc8e270f1 (patch)
tree8594799067c81c6efd0beabbb087cd9930143392 /include/internal/catch_stringref.cpp
parent950ccf4749dc3324543c0cba44f85ff81dd300af (diff)
downloadcatch3-05cd05743a75caeffbd6ad4c675ac68bc8e270f1.tar.gz
Provide a public method to get StringRef's underlying pointer
This allows reducing the amount of friends needed for its interface and some extra tricks later. The bad part is that the pointer can become invalidated via calls to other StringRef's public methods, but c'est la vie.
Diffstat (limited to 'include/internal/catch_stringref.cpp')
-rw-r--r--include/internal/catch_stringref.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/include/internal/catch_stringref.cpp b/include/internal/catch_stringref.cpp
index 46b25039..9e9095e4 100644
--- a/include/internal/catch_stringref.cpp
+++ b/include/internal/catch_stringref.cpp
@@ -43,7 +43,7 @@ namespace Catch {
const_cast<StringRef*>( this )->takeOwnership();
return m_start;
}
- auto StringRef::data() const noexcept -> char const* {
+ auto StringRef::currentData() const noexcept -> char const* {
return m_start;
}
@@ -112,11 +112,11 @@ namespace Catch {
}
auto operator << ( std::ostream& os, StringRef const& str ) -> std::ostream& {
- return os.write(str.m_start, str.m_size);
+ return os.write(str.currentData(), str.size());
}
auto operator+=( std::string& lhs, StringRef const& rhs ) -> std::string& {
- lhs.append(rhs.m_start, rhs.m_size);
+ lhs.append(rhs.currentData(), rhs.size());
return lhs;
}