From: Duncan Sands Date: Tue, 21 Feb 2012 12:00:25 +0000 (+0000) Subject: Move the implementation of StringRef::split out of StringExtras.cpp X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=bf8653ff3b70d2a1bb059a958d7612954408d998;p=oota-llvm.git Move the implementation of StringRef::split out of StringExtras.cpp and into StringRef.cpp, which is where the other StringRef stuff is. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151054 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Support/StringExtras.cpp b/lib/Support/StringExtras.cpp index 49c5ac4252c..d77ad7f55a1 100644 --- a/lib/Support/StringExtras.cpp +++ b/lib/Support/StringExtras.cpp @@ -57,24 +57,3 @@ void llvm::SplitString(StringRef Source, S = getToken(S.second, Delimiters); } } - -void llvm::StringRef::split(SmallVectorImpl &A, - StringRef Separators, int MaxSplit, - bool KeepEmpty) const { - StringRef rest = *this; - - // rest.data() is used to distinguish cases like "a," that splits into - // "a" + "" and "a" that splits into "a" + 0. - for (int splits = 0; - rest.data() != NULL && (MaxSplit < 0 || splits < MaxSplit); - ++splits) { - std::pair p = rest.split(Separators); - - if (p.first.size() != 0 || KeepEmpty) - A.push_back(p.first); - rest = p.second; - } - // If we have a tail left, add it. - if (rest.data() != NULL && (rest.size() != 0 || KeepEmpty)) - A.push_back(rest); -} diff --git a/lib/Support/StringRef.cpp b/lib/Support/StringRef.cpp index 4d20903e84b..0227b9c2190 100644 --- a/lib/Support/StringRef.cpp +++ b/lib/Support/StringRef.cpp @@ -229,6 +229,27 @@ StringRef::size_type StringRef::find_last_of(StringRef Chars, return npos; } +void StringRef::split(SmallVectorImpl &A, + StringRef Separators, int MaxSplit, + bool KeepEmpty) const { + StringRef rest = *this; + + // rest.data() is used to distinguish cases like "a," that splits into + // "a" + "" and "a" that splits into "a" + 0. + for (int splits = 0; + rest.data() != NULL && (MaxSplit < 0 || splits < MaxSplit); + ++splits) { + std::pair p = rest.split(Separators); + + if (p.first.size() != 0 || KeepEmpty) + A.push_back(p.first); + rest = p.second; + } + // If we have a tail left, add it. + if (rest.data() != NULL && (rest.size() != 0 || KeepEmpty)) + A.push_back(rest); +} + //===----------------------------------------------------------------------===// // Helpful Algorithms //===----------------------------------------------------------------------===//