14 #ifndef LLVM_ADT_SMALLSTRING_H
15 #define LLVM_ADT_SMALLSTRING_H
24 template<
unsigned InternalLen>
34 template<
typename ItTy>
45 void assign(
size_t NumElts,
char Elt) {
50 template<
typename in_iter>
73 template<
typename in_iter>
78 void append(
size_t NumInputs,
char Elt) {
147 size_t find(
char C,
size_t From = 0)
const {
StringRef slice(size_t Start, size_t End) const
Return a reference to the substring from [Start, End).
void push_back(const T &Elt)
int compare_lower(StringRef RHS) const
compare_lower - Compare two strings, ignoring case.
void assign(StringRef RHS)
Assign from a StringRef.
SmallString(ItTy S, ItTy E)
Initialize with a range.
size_t find(StringRef Str, size_t From=0) const
Search for the first string Str in the string.
size_t find(char C, size_t From=0) const
Search for the first character C in the string.
void append(const SmallVectorImpl< char > &RHS)
Append from a SmallVector.
bool endswith(StringRef Suffix) const
Check if this string ends with the given Suffix.
bool equals_lower(StringRef RHS) const
Check for string equality, ignoring case.
size_t rfind(char C, size_t From=npos) const
Search for the last character C in the string.
StringRef substr(size_t Start, size_t N=npos) const
Return a reference to the substring from [Start, Start + N).
int compare_numeric(StringRef RHS) const
compare_numeric - Compare two strings, treating sequences of digits as numbers.
size_t find_last_of(char C, size_t From=StringRef::npos) const
Find the last character in the string that is C, or npos if not found.
int compare(StringRef RHS) const
Compare two strings; the result is -1, 0, or 1 if this string is lexicographically less than...
StringRef substr(size_t Start, size_t N=StringRef::npos) const
Return a reference to the substring from [Start, Start + N).
SmallString & operator+=(char C)
void append(size_t NumInputs, char Elt)
int compare(StringRef RHS) const
compare - Compare two strings; the result is -1, 0, or 1 if this string is lexicographically less tha...
SmallString & operator+=(StringRef RHS)
size_t rfind(StringRef Str) const
Search for the last string Str in the string.
size_t count(char C) const
Return the number of occurrences of C in the string.
size_t find_first_not_of(StringRef Chars, size_t From=0) const
Find the first character in the string that is not in the string Chars, or npos if not found...
void assign(const SmallVectorImpl< char > &RHS)
Assign from a SmallVector.
bool equals(StringRef RHS) const
Check for string equality.
void assign(size_type NumElts, const T &Elt)
size_t rfind(char C, size_t From=StringRef::npos) const
Search for the last character C in the string.
SmallString(StringRef S)
Initialize from a StringRef.
int compare_lower(StringRef RHS) const
compare_lower - Compare two strings, ignoring case.
SmallString - A SmallString is just a SmallVector with methods and accessors that make it work better...
void append(in_iter S, in_iter E)
Append from an iterator pair.
size_t find_last_of(StringRef Chars, size_t From=StringRef::npos) const
Find the last character in the string that is in C, or npos if not found.
size_t count(StringRef Str) const
Return the number of non-overlapped occurrences of Str in the string.
void append(StringRef RHS)
Append from a StringRef.
size_t count(char C) const
Return the number of occurrences of C in the string.
SmallString()
Default ctor - Initialize to empty.
size_t find(char C, size_t From=0) const
find - Search for the first character C in the string.
bool startswith(StringRef Prefix) const
startswith - Check if this string starts with the given Prefix.
void assign(size_t NumElts, char Elt)
Assign from a repeated element.
void append(in_iter in_start, in_iter in_end)
Add the specified range to the end of the SmallVector.
size_t find_first_not_of(char C, size_t From=0) const
Find the first character in the string that is not C or npos if not found.
size_t find_last_of(char C, size_t From=npos) const
Find the last character in the string that is C, or npos if not found.
bool startswith(StringRef Prefix) const
Check if this string starts with the given Prefix.
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small...
bool endswith(StringRef Suffix) const
endswith - Check if this string ends with the given Suffix.
StringRef str() const
Explicit conversion to StringRef.
bool equals(StringRef RHS) const
equals - Check for string equality, this is more efficient than compare() when the relative ordering ...
size_t find_first_of(StringRef Chars, size_t From=0) const
Find the first character in the string that is in Chars, or npos if not found.
pointer data()
Return a pointer to the vector's buffer, even if empty().
bool equals_lower(StringRef RHS) const
equals_lower - Check for string equality, ignoring case.
size_t find_first_not_of(char C, size_t From=0) const
Find the first character in the string that is not C or npos if not found.
size_t find_first_of(char C, size_t From=0) const
Find the first character in the string that is C, or npos if not found.
int compare_numeric(StringRef RHS) const
compare_numeric - Compare two strings, treating sequences of digits as numbers.
StringRef - Represent a constant reference to a string, i.e.
StringRef slice(size_t Start, size_t End) const
Return a reference to the substring from [Start, End).
size_t find_first_of(char C, size_t From=0) const
Find the first character in the string that is C, or npos if not found.
const SmallString & operator=(StringRef RHS)
void assign(in_iter S, in_iter E)
Assign from an iterator pair.