aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/ADT/StringRefTest.cpp
diff options
context:
space:
mode:
authorHenry Wong <movietravelcode@outlook.com>2018-06-08 12:42:12 +0000
committerHenry Wong <movietravelcode@outlook.com>2018-06-08 12:42:12 +0000
commit945c481a57a21ae25c40ae9a58469c652c88e2ce (patch)
tree0b6d43620407ea5abb81f9a96cde1a4bf5a12507 /llvm/unittests/ADT/StringRefTest.cpp
parent74fd1a658739255f3564db66c01d953260f07c8f (diff)
downloadllvm-945c481a57a21ae25c40ae9a58469c652c88e2ce.zip
llvm-945c481a57a21ae25c40ae9a58469c652c88e2ce.tar.gz
llvm-945c481a57a21ae25c40ae9a58469c652c88e2ce.tar.bz2
[ADT] Add `StringRef::rsplit(StringRef Separator)`.
Summary: Add `StringRef::rsplit(StringRef Separator)` to achieve the function of getting the tail substring according to the separator. A typical usage is to get `data` in `std::basic_string::data`. Reviewers: mehdi_amini, zturner, beanz, xbolva00, vsk Reviewed By: zturner, xbolva00, vsk Subscribers: vsk, xbolva00, llvm-commits, MTC Differential Revision: https://reviews.llvm.org/D47406 llvm-svn: 334283
Diffstat (limited to 'llvm/unittests/ADT/StringRefTest.cpp')
-rw-r--r--llvm/unittests/ADT/StringRefTest.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/unittests/ADT/StringRefTest.cpp b/llvm/unittests/ADT/StringRefTest.cpp
index 8c4099e..4087d6c 100644
--- a/llvm/unittests/ADT/StringRefTest.cpp
+++ b/llvm/unittests/ADT/StringRefTest.cpp
@@ -181,6 +181,17 @@ TEST(StringRefTest, Split) {
Str.rsplit('l'));
EXPECT_EQ(std::make_pair(StringRef("hell"), StringRef("")),
Str.rsplit('o'));
+
+ EXPECT_EQ(std::make_pair(StringRef("he"), StringRef("o")),
+ Str.rsplit("ll"));
+ EXPECT_EQ(std::make_pair(StringRef(""), StringRef("ello")),
+ Str.rsplit("h"));
+ EXPECT_EQ(std::make_pair(StringRef("hell"), StringRef("")),
+ Str.rsplit("o"));
+ EXPECT_EQ(std::make_pair(StringRef("hello"), StringRef("")),
+ Str.rsplit("::"));
+ EXPECT_EQ(std::make_pair(StringRef("hel"), StringRef("o")),
+ Str.rsplit("l"));
}
TEST(StringRefTest, Split2) {