diff options
author | Brad King <brad.king@kitware.com> | 2001-10-31 23:56:19 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2001-10-31 23:56:19 (GMT) |
commit | eb6e54c64b86a4696fedc1935d3ad1609ce53c0f (patch) | |
tree | 58ef67c0c030b5f24db6df5ee1ad857a7bf409e8 | |
parent | 4ba36ca453792be53916d29ee056f94232fd85f7 (diff) | |
download | CMake-eb6e54c64b86a4696fedc1935d3ad1609ce53c0f.zip CMake-eb6e54c64b86a4696fedc1935d3ad1609ce53c0f.tar.gz CMake-eb6e54c64b86a4696fedc1935d3ad1609ce53c0f.tar.bz2 |
ENH: Replaced cmStdString implementation to make it more transparently a std:string.
-rw-r--r-- | Source/cmStandardIncludes.h | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index aaafcfc..0b0852a 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -136,13 +136,23 @@ inline bool operator==(std::string const& a, const char* b) // when combined with a map or set, the symbols can be > 2000 chars! struct cmStdString : public std::string { - typedef std::string Parent; - cmStdString(const char* s) : Parent(s) - { - } - cmStdString(std::string const&s) : Parent(s) - { - } + typedef std::string StdString; + typedef StdString::value_type value_type; + typedef StdString::pointer pointer; + typedef StdString::reference reference; + typedef StdString::const_reference const_reference; + typedef StdString::size_type size_type; + typedef StdString::difference_type difference_type; + typedef StdString::iterator iterator; + typedef StdString::const_iterator const_iterator; + typedef StdString::reverse_iterator reverse_iterator; + typedef StdString::const_reverse_iterator const_reverse_iterator; + + cmStdString(): StdString() {} + cmStdString(const value_type* s): StdString(s) {} + cmStdString(const value_type* s, size_type n): StdString(s, n) {} + cmStdString(const StdString& s, size_type pos=0, size_type n=npos): + StdString(s, pos, n) {} }; #endif |