summaryrefslogtreecommitdiffstats
path: root/lldb/unittests/Utility/StringExtractorTest.cpp
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2016-08-29 19:58:14 +0000
committerZachary Turner <zturner@google.com>2016-08-29 19:58:14 +0000
commit54695a339f5d4f336865a564ab539ff1b5743223 (patch)
tree8613fa198a50f1f645644ecf602ec33a2159c606 /lldb/unittests/Utility/StringExtractorTest.cpp
parent8b4a30584a8e34893d3ded7923479bfc89b45f40 (diff)
downloadbcm5719-llvm-54695a339f5d4f336865a564ab539ff1b5743223.tar.gz
bcm5719-llvm-54695a339f5d4f336865a564ab539ff1b5743223.zip
Convert GetNameColonValue to return StringRefs.
StringExtractor::GetNameColonValue() looks for a substring of the form "<name>:<value>" and returns <name> and <value> to the caller. This results in two unnecessary string copies, since the name and value are not translated in any way and simply returned as-is. By converting this to return StringRefs we can get rid of hundreds of string copies. llvm-svn: 280000
Diffstat (limited to 'lldb/unittests/Utility/StringExtractorTest.cpp')
-rw-r--r--lldb/unittests/Utility/StringExtractorTest.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/lldb/unittests/Utility/StringExtractorTest.cpp b/lldb/unittests/Utility/StringExtractorTest.cpp
index 634425af9ae..5bcf10eb59a 100644
--- a/lldb/unittests/Utility/StringExtractorTest.cpp
+++ b/lldb/unittests/Utility/StringExtractorTest.cpp
@@ -408,8 +408,8 @@ TEST_F(StringExtractorTest, GetNameColonValueSuccess)
const char kNameColonPairs[] = "key1:value1;key2:value2;";
StringExtractor ex(kNameColonPairs);
- std::string name;
- std::string value;
+ llvm::StringRef name;
+ llvm::StringRef value;
EXPECT_TRUE(ex.GetNameColonValue(name, value));
EXPECT_EQ("key1", name);
EXPECT_EQ("value1", value);
@@ -425,8 +425,8 @@ TEST_F(StringExtractorTest, GetNameColonValueContainsColon)
const char kNameColonPairs[] = "key1:value1:value2;key2:value3;";
StringExtractor ex(kNameColonPairs);
- std::string name;
- std::string value;
+ llvm::StringRef name;
+ llvm::StringRef value;
EXPECT_TRUE(ex.GetNameColonValue(name, value));
EXPECT_EQ("key1", name);
EXPECT_EQ("value1:value2", value);
@@ -441,8 +441,8 @@ TEST_F(StringExtractorTest, GetNameColonValueNoSemicolon)
const char kNameColonPairs[] = "key1:value1";
StringExtractor ex(kNameColonPairs);
- std::string name;
- std::string value;
+ llvm::StringRef name;
+ llvm::StringRef value;
EXPECT_FALSE(ex.GetNameColonValue(name, value));
EXPECT_EQ(0, ex.GetBytesLeft());
}
@@ -452,8 +452,8 @@ TEST_F(StringExtractorTest, GetNameColonValueNoColon)
const char kNameColonPairs[] = "key1value1;";
StringExtractor ex(kNameColonPairs);
- std::string name;
- std::string value;
+ llvm::StringRef name;
+ llvm::StringRef value;
EXPECT_FALSE(ex.GetNameColonValue(name, value));
EXPECT_EQ(0, ex.GetBytesLeft());
}
OpenPOWER on IntegriCloud