diff options
| author | Martin Hořeňovský | 2018-02-28 22:05:01 +0100 |
|---|---|---|
| committer | Martin Hořeňovský | 2018-02-28 22:49:00 +0100 |
| commit | 05cd05743a75caeffbd6ad4c675ac68bc8e270f1 (patch) | |
| tree | 8594799067c81c6efd0beabbb087cd9930143392 /include/internal/catch_stringref.cpp | |
| parent | 950ccf4749dc3324543c0cba44f85ff81dd300af (diff) | |
| download | catch3-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.cpp | 6 |
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; } |