|
LLVM
8.0.1
|
SmallString - A SmallString is just a SmallVector with methods and accessors that make it work better as a string (e.g. More...
#include "llvm/ADT/SmallString.h"


Public Member Functions | |
| SmallString ()=default | |
| Default ctor - Initialize to empty. More... | |
| SmallString (StringRef S) | |
| Initialize from a StringRef. More... | |
| template<typename ItTy > | |
| SmallString (ItTy S, ItTy E) | |
| Initialize with a range. More... | |
String Assignment | |
| void | assign (size_t NumElts, char Elt) |
| Assign from a repeated element. More... | |
| template<typename in_iter > | |
| void | assign (in_iter S, in_iter E) |
| Assign from an iterator pair. More... | |
| void | assign (StringRef RHS) |
| Assign from a StringRef. More... | |
| void | assign (const SmallVectorImpl< char > &RHS) |
| Assign from a SmallVector. More... | |
String Concatenation | |
| template<typename in_iter > | |
| void | append (in_iter S, in_iter E) |
| Append from an iterator pair. More... | |
| void | append (size_t NumInputs, char Elt) |
| void | append (StringRef RHS) |
| Append from a StringRef. More... | |
| void | append (const SmallVectorImpl< char > &RHS) |
| Append from a SmallVector. More... | |
String Comparison | |
| bool | equals (StringRef RHS) const |
| Check for string equality. More... | |
| bool | equals_lower (StringRef RHS) const |
| Check for string equality, ignoring case. More... | |
| int | compare (StringRef RHS) const |
Compare two strings; the result is -1, 0, or 1 if this string is lexicographically less than, equal to, or greater than the RHS. More... | |
| int | compare_lower (StringRef RHS) const |
| compare_lower - Compare two strings, ignoring case. More... | |
| int | compare_numeric (StringRef RHS) const |
| compare_numeric - Compare two strings, treating sequences of digits as numbers. More... | |
String Predicates | |
| bool | startswith (StringRef Prefix) const |
startswith - Check if this string starts with the given Prefix. More... | |
| bool | endswith (StringRef Suffix) const |
endswith - Check if this string ends with the given Suffix. More... | |
String Searching | |
| size_t | find (char C, size_t From=0) const |
find - Search for the first character C in the string. More... | |
| size_t | find (StringRef Str, size_t From=0) const |
Search for the first string Str in the string. More... | |
| size_t | rfind (char C, size_t From=StringRef::npos) const |
Search for the last character C in the string. More... | |
| size_t | rfind (StringRef Str) const |
Search for the last string Str in the string. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
Helpful Algorithms | |
| size_t | count (char C) const |
Return the number of occurrences of C in the string. More... | |
| size_t | count (StringRef Str) const |
Return the number of non-overlapped occurrences of Str in the string. More... | |
Substring Operations | |
| StringRef | substr (size_t Start, size_t N=StringRef::npos) const |
| Return a reference to the substring from [Start, Start + N). More... | |
| StringRef | slice (size_t Start, size_t End) const |
| Return a reference to the substring from [Start, End). More... | |
| StringRef | str () const |
| Explicit conversion to StringRef. More... | |
| const char * | c_str () |
| operator StringRef () const | |
| Implicit conversion to StringRef. More... | |
| const SmallString & | operator= (StringRef RHS) |
| SmallString & | operator+= (StringRef RHS) |
| SmallString & | operator+= (char C) |
Public Member Functions inherited from llvm::SmallVector< char, InternalLen > | |
| SmallVector () | |
| SmallVector (size_t Size, const char &Value=char()) | |
| SmallVector (ItTy S, ItTy E) | |
| SmallVector (const iterator_range< RangeTy > &R) | |
| SmallVector (std::initializer_list< char > IL) | |
| SmallVector (const SmallVector &RHS) | |
| SmallVector (SmallVector &&RHS) | |
| SmallVector (SmallVectorImpl< char > &&RHS) | |
| ~SmallVector () | |
| const SmallVector & | operator= (const SmallVector &RHS) |
| const SmallVector & | operator= (SmallVector &&RHS) |
| const SmallVector & | operator= (SmallVectorImpl< char > &&RHS) |
| const SmallVector & | operator= (std::initializer_list< char > IL) |
Public Member Functions inherited from llvm::SmallVectorImpl< char > | |
| SmallVectorImpl (const SmallVectorImpl &)=delete | |
| ~SmallVectorImpl () | |
| void | clear () |
| void | resize (size_type N) |
| void | resize (size_type N, const char &NV) |
| void | reserve (size_type N) |
| LLVM_NODISCARD char | pop_back_val () |
| void | swap (SmallVectorImpl &RHS) |
| void | append (in_iter in_start, in_iter in_end) |
| Add the specified range to the end of the SmallVector. More... | |
| void | append (size_type NumInputs, const char &Elt) |
| Add the specified range to the end of the SmallVector. More... | |
| void | append (std::initializer_list< char > IL) |
| void | assign (size_type NumElts, const char &Elt) |
| void | assign (in_iter in_start, in_iter in_end) |
| void | assign (std::initializer_list< char > IL) |
| iterator | erase (const_iterator CI) |
| iterator | erase (const_iterator CS, const_iterator CE) |
| iterator | insert (iterator I, char &&Elt) |
| iterator | insert (iterator I, const char &Elt) |
| iterator | insert (iterator I, size_type NumToInsert, const char &Elt) |
| iterator | insert (iterator I, ItTy From, ItTy To) |
| void | insert (iterator I, std::initializer_list< char > IL) |
| void | emplace_back (ArgTypes &&... Args) |
| SmallVectorImpl & | operator= (const SmallVectorImpl &RHS) |
| SmallVectorImpl & | operator= (SmallVectorImpl &&RHS) |
| bool | operator== (const SmallVectorImpl &RHS) const |
| bool | operator!= (const SmallVectorImpl &RHS) const |
| bool | operator< (const SmallVectorImpl &RHS) const |
Public Member Functions inherited from llvm::SmallVectorTemplateBase< T, bool > | |
| void | push_back (const T &Elt) |
| void | push_back (T &&Elt) |
| void | pop_back () |
Public Member Functions inherited from llvm::SmallVectorTemplateCommon< T > | |
| LLVM_ATTRIBUTE_ALWAYS_INLINE iterator | begin () |
| LLVM_ATTRIBUTE_ALWAYS_INLINE const_iterator | begin () const |
| LLVM_ATTRIBUTE_ALWAYS_INLINE iterator | end () |
| LLVM_ATTRIBUTE_ALWAYS_INLINE const_iterator | end () const |
| reverse_iterator | rbegin () |
| const_reverse_iterator | rbegin () const |
| reverse_iterator | rend () |
| const_reverse_iterator | rend () const |
| size_type | size_in_bytes () const |
| size_type | max_size () const |
| size_t | capacity_in_bytes () const |
| pointer | data () |
| Return a pointer to the vector's buffer, even if empty(). More... | |
| const_pointer | data () const |
| Return a pointer to the vector's buffer, even if empty(). More... | |
| LLVM_ATTRIBUTE_ALWAYS_INLINE reference | operator[] (size_type idx) |
| LLVM_ATTRIBUTE_ALWAYS_INLINE const_reference | operator[] (size_type idx) const |
| reference | front () |
| const_reference | front () const |
| reference | back () |
| const_reference | back () const |
Public Member Functions inherited from llvm::SmallVectorBase | |
| size_t | size () const |
| size_t | capacity () const |
| LLVM_NODISCARD bool | empty () const |
| void | set_size (size_t Size) |
Set the array size to N, which the current array must have enough capacity for. More... | |
Additional Inherited Members | |
Public Types inherited from llvm::SmallVectorImpl< char > | |
| using | iterator = typename SuperClass::iterator |
| using | const_iterator = typename SuperClass::const_iterator |
| using | size_type = typename SuperClass::size_type |
Public Types inherited from llvm::SmallVectorTemplateCommon< T > | |
| using | size_type = size_t |
| using | difference_type = ptrdiff_t |
| using | value_type = T |
| using | iterator = T * |
| using | const_iterator = const T * |
| using | const_reverse_iterator = std::reverse_iterator< const_iterator > |
| using | reverse_iterator = std::reverse_iterator< iterator > |
| using | reference = T & |
| using | const_reference = const T & |
| using | pointer = T * |
| using | const_pointer = const T * |
Protected Member Functions inherited from llvm::SmallVectorImpl< char > | |
| SmallVectorImpl (unsigned N) | |
Protected Member Functions inherited from llvm::SmallVectorTemplateBase< T, bool > | |
| SmallVectorTemplateBase (size_t Size) | |
| void | grow (size_t MinSize=0) |
| Grow the allocated memory (without initializing new elements), doubling the size of the allocated memory. More... | |
Protected Member Functions inherited from llvm::SmallVectorTemplateCommon< T > | |
| SmallVectorTemplateCommon (size_t Size) | |
| void | grow_pod (size_t MinCapacity, size_t TSize) |
| bool | isSmall () const |
| Return true if this is a smallvector which has not had dynamic memory allocated for it. More... | |
| void | resetToSmall () |
| Put this vector in a state of being small. More... | |
Protected Member Functions inherited from llvm::SmallVectorBase | |
| SmallVectorBase ()=delete | |
| SmallVectorBase (void *FirstEl, size_t Capacity) | |
| void | grow_pod (void *FirstEl, size_t MinCapacity, size_t TSize) |
| This is an implementation of the grow() method which only works on POD-like data types and is out of line to reduce code duplication. More... | |
Static Protected Member Functions inherited from llvm::SmallVectorTemplateBase< T, bool > | |
| static void | destroy_range (T *S, T *E) |
| template<typename It1 , typename It2 > | |
| static void | uninitialized_move (It1 I, It1 E, It2 Dest) |
| Move the range [I, E) into the uninitialized memory starting with "Dest", constructing elements as needed. More... | |
| template<typename It1 , typename It2 > | |
| static void | uninitialized_copy (It1 I, It1 E, It2 Dest) |
| Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements as needed. More... | |
Protected Attributes inherited from llvm::SmallVectorBase | |
| void * | BeginX |
| unsigned | Size = 0 |
| unsigned | Capacity |
SmallString - A SmallString is just a SmallVector with methods and accessors that make it work better as a string (e.g.
operator+ etc).
Definition at line 26 of file SmallString.h.
|
default |
Default ctor - Initialize to empty.
|
inline |
Initialize from a StringRef.
Definition at line 32 of file SmallString.h.
|
inline |
Initialize with a range.
Definition at line 36 of file SmallString.h.
|
inline |
Append from an iterator pair.
Definition at line 75 of file SmallString.h.
Referenced by llvm::FileCheck::buildCheckPrefixRegex(), ExpandResponseFile(), getImplibPath(), llvm::unittest::getInputFileDirectory(), llvm::R600TargetMachine::getSubtargetImpl(), llvm::GCNTargetMachine::getSubtargetImpl(), mangleCoveragePath(), llvm::sys::path::native(), llvm::SmallString< 256 >::operator+=(), parseBackslash(), rotateSign(), llvm::HexagonTargetObjectFile::shouldPutJumpTableInFunctionSection(), and truncateToSize().
|
inline |
Definition at line 79 of file SmallString.h.
|
inline |
Append from a StringRef.
Definition at line 84 of file SmallString.h.
|
inline |
Append from a SmallVector.
Definition at line 89 of file SmallString.h.
|
inline |
Assign from a repeated element.
Definition at line 46 of file SmallString.h.
|
inline |
Assign from an iterator pair.
Definition at line 52 of file SmallString.h.
|
inline |
Assign from a StringRef.
Definition at line 58 of file SmallString.h.
|
inline |
Assign from a SmallVector.
Definition at line 64 of file SmallString.h.
|
inline |
Definition at line 270 of file SmallString.h.
Referenced by CrashHandler(), ExpandResponseFile(), getVFSEntries(), llvm::LTOModule::makeBuffer(), llvm::OProfileWrapper::OProfileWrapper(), printSymbolizedStackTrace(), llvm::write_double(), writeGeneratedObject(), and llvm::LTOCodeGenerator::writeMergedModules().
|
inline |
Compare two strings; the result is -1, 0, or 1 if this string is lexicographically less than, equal to, or greater than the RHS.
Definition at line 110 of file SmallString.h.
|
inline |
compare_lower - Compare two strings, ignoring case.
Definition at line 115 of file SmallString.h.
|
inline |
compare_numeric - Compare two strings, treating sequences of digits as numbers.
Definition at line 121 of file SmallString.h.
|
inline |
Return the number of occurrences of C in the string.
Definition at line 223 of file SmallString.h.
|
inline |
Return the number of non-overlapped occurrences of Str in the string.
Definition at line 229 of file SmallString.h.
|
inline |
endswith - Check if this string ends with the given Suffix.
Definition at line 135 of file SmallString.h.
|
inline |
Check for string equality.
This is more efficient than compare() when the relative ordering of inequal strings isn't needed.
Definition at line 99 of file SmallString.h.
Referenced by llvm::object::ExportEntry::operator==().
|
inline |
Check for string equality, ignoring case.
Definition at line 104 of file SmallString.h.
|
inline |
find - Search for the first character C in the string.
C, or npos if not found. Definition at line 147 of file SmallString.h.
|
inline |
Search for the first string Str in the string.
Str, or npos if not found. Definition at line 155 of file SmallString.h.
|
inline |
Find the first character in the string that is not C or npos if not found.
Definition at line 191 of file SmallString.h.
|
inline |
Find the first character in the string that is not in the string Chars, or npos if not found.
Complexity: O(size() + Chars.size())
Definition at line 199 of file SmallString.h.
|
inline |
Find the first character in the string that is C, or npos if not found.
Same as find.
Definition at line 177 of file SmallString.h.
|
inline |
Find the first character in the string that is in Chars, or npos if not found.
Complexity: O(size() + Chars.size())
Definition at line 185 of file SmallString.h.
|
inline |
Find the last character in the string that is C, or npos if not found.
Definition at line 205 of file SmallString.h.
|
inline |
Find the last character in the string that is in C, or npos if not found.
Complexity: O(size() + Chars.size())
Definition at line 213 of file SmallString.h.
|
inline |
Implicit conversion to StringRef.
Definition at line 277 of file SmallString.h.
|
inline |
Definition at line 285 of file SmallString.h.
|
inline |
Definition at line 289 of file SmallString.h.
|
inline |
Definition at line 280 of file SmallString.h.
|
inline |
Search for the last character C in the string.
C, or npos if not found. Definition at line 163 of file SmallString.h.
|
inline |
Search for the last string Str in the string.
Str, or npos if not found. Definition at line 171 of file SmallString.h.
|
inline |
Return a reference to the substring from [Start, End).
| Start | The index of the starting character in the substring; if the index is npos or greater than the length of the string then the empty substring will be returned. |
| End | The index following the last character to include in the substring. If this is npos, or less than Start, or exceeds the number of characters remaining in the string, the string suffix (starting with Start) will be returned. |
Definition at line 260 of file SmallString.h.
Referenced by llvm::X86TargetMachine::getSubtargetImpl().
|
inline |
startswith - Check if this string starts with the given Prefix.
Definition at line 130 of file SmallString.h.
|
inline |
Explicit conversion to StringRef.
Definition at line 267 of file SmallString.h.
Referenced by llvm::SmallString< 256 >::compare(), llvm::SmallString< 256 >::compare_lower(), llvm::SmallString< 256 >::compare_numeric(), computeRelativePath(), llvm::SmallString< 256 >::count(), CrashHandler(), llvm::createGraphFilename(), emitComments(), llvm::MCDwarfLineStr::emitSection(), llvm::StringToOffsetTable::EmitString(), llvm::SmallString< 256 >::endswith(), llvm::SmallString< 256 >::equals(), llvm::SmallString< 256 >::equals_lower(), ExpandResponseFile(), llvm::SmallString< 256 >::find(), llvm::SmallString< 256 >::find_first_not_of(), llvm::SmallString< 256 >::find_first_of(), llvm::SmallString< 256 >::find_last_of(), llvm::sys::Process::FindInEnvPath(), findInputFile(), llvm::symbolize::LLVMSymbolizer::flush(), llvm::LanaiMCInstLower::GetConstantPoolIndexSymbol(), llvm::LineEditor::getDefaultHistoryPath(), llvm::DWARFDebugLine::LineTable::getFileNameByIndex(), llvm::ModuleSummaryIndex::getGlobalNameForLocal(), getImplibPath(), llvm::LanaiMCInstLower::GetJumpTableSymbol(), llvm::ExecutionEngine::getMangledName(), getOutputPath(), llvm::lto::getThinLTOOutputFile(), llvm::object::MachOObjectFile::getVersionString(), llvm::vfs::VFSFromYamlDirIterImpl::increment(), llvm::lto::localCache(), mangleCoveragePath(), llvm::SmallString< 256 >::operator StringRef(), pathHasTraversal(), llvm::MCContext::RemapDebugPaths(), llvm::sys::fs::directory_entry::replace_filename(), llvm::SmallString< 256 >::rfind(), llvm::vfs::InMemoryFileSystem::setCurrentWorkingDirectory(), llvm::HexagonTargetObjectFile::shouldPutJumpTableInFunctionSection(), llvm::SmallString< 256 >::startswith(), and llvm::APInt::toString().
|
inline |
Return a reference to the substring from [Start, Start + N).
| Start | The index of the starting character in the substring; if the index is npos or greater than the length of the string then the empty substring will be returned. |
| N | The number of characters to included in the substring. If N exceeds the number of characters remaining in the string, the string suffix (starting with Start) will be returned. |
Definition at line 246 of file SmallString.h.
1.8.13