diff options
author | Brad King <brad.king@kitware.com> | 2018-09-25 23:43:41 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2018-12-12 13:10:15 (GMT) |
commit | ff69763ca08fbd3a9831ec0c8adb32a7111b1a46 (patch) | |
tree | 2ed587456b95ba27ab334a6f19f5703620463736 /Source/CMakeLists.txt | |
parent | 410a3e4b22c72794d4f96e41c1d37d84d6e7e54d (diff) | |
download | CMake-ff69763ca08fbd3a9831ec0c8adb32a7111b1a46.zip CMake-ff69763ca08fbd3a9831ec0c8adb32a7111b1a46.tar.gz CMake-ff69763ca08fbd3a9831ec0c8adb32a7111b1a46.tar.bz2 |
String: Add a custom string type
Create a `cm::String` type that holds a view of a string buffer and
optionally shares ownership of the buffer. Instances can either
borrow longer-lived storage (e.g. static storage of string literals)
or internally own a `std::string` instance. In the latter case,
share ownership with copies and substrings. Allocate a new internal
string only on operations that require mutation.
This will allow us to recover string sharing semantics that we
used to get from C++98 std::string copy-on-write implementations.
Such implementations are not allowed by C++11 so code our own in
a custom string type instead.
Diffstat (limited to 'Source/CMakeLists.txt')
-rw-r--r-- | Source/CMakeLists.txt | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt index 4bf2e73..0ce09d4 100644 --- a/Source/CMakeLists.txt +++ b/Source/CMakeLists.txt @@ -568,6 +568,8 @@ set(SRCS cmSiteNameCommand.h cmSourceGroupCommand.cxx cmSourceGroupCommand.h + cmString.cxx + cmString.hxx cmStringReplaceHelper.cxx cmStringCommand.cxx cmStringCommand.h |