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

summaryrefslogtreecommitdiffhomepage
path: root/projects/SelfTest/UsageTests/ToStringVector.tests.cpp
diff options
context:
space:
mode:
authorMartin Hořeňovský2019-10-21 17:44:11 +0200
committerMartin Hořeňovský2019-10-25 13:57:52 +0200
commit50cc14c94c972fc743afca92b22ad7bdc63c429a (patch)
tree6654c82835e7784076b2ecd7b90d374968b5ac26 /projects/SelfTest/UsageTests/ToStringVector.tests.cpp
parent87b745da6625b7469e61de5910978a097caf8b74 (diff)
downloadcatch3-50cc14c94c972fc743afca92b22ad7bdc63c429a.tar.gz
Rework StringRef interface and internals
Now it no longer tries to be this weird hybrid between an owning and non-owning reference, and is only ever non-owning. This is also reflected in its interface, for example `StringRef::isNullTerminated` is now public, and `StringRef::c_str()` has the precondition that it is true. Overview of the changes: * The `StringRef::m_data` member has been completely removed, as it had no more uses. * `StringRef::isSubstring()` has been made public and renamed to `StringRef::isNullTerminated()`, so that the name reflects what the method actually does. * `StringRef::currentData()` has been renamed to `StringRef::data()`, to be in line with common C++ containers and container-alikes. * `StringRef::c_str()` will no longer silently make copies. It instead has a precondition that `isNullTerminated()` is true. * If the user needs a null-terminated string, they should use the `std::string` conversion operator and call `c_str()` on the resulting `std::string`. * Some small optimizations in various places. * Basic functionality is now `constexpr`.
Diffstat (limited to 'projects/SelfTest/UsageTests/ToStringVector.tests.cpp')
0 files changed, 0 insertions, 0 deletions