LLVM  14.0.0git
Public Member Functions | Static Public Attributes | List of all members
StringView Class Reference

#include "llvm/Demangle/StringView.h"

Collaboration diagram for StringView:
Collaboration graph
[legend]

Public Member Functions

template<size_t N>
 StringView (const char(&Str)[N])
 
 StringView (const char *First_, const char *Last_)
 
 StringView (const char *First_, size_t Len)
 
 StringView (const char *Str)
 
 StringView ()
 
StringView substr (size_t Pos, size_t Len=npos) const
 
size_t find (char C, size_t From=0) const
 
StringView dropFront (size_t N=1) const
 
StringView dropBack (size_t N=1) const
 
char front () const
 
char back () const
 
char popFront ()
 
bool consumeFront (char C)
 
bool consumeFront (StringView S)
 
bool startsWith (char C) const
 
bool startsWith (StringView Str) const
 
const char & operator[] (size_t Idx) const
 
const char * begin () const
 
const char * end () const
 
size_t size () const
 
bool empty () const
 

Static Public Attributes

static const size_t npos = ~size_t(0)
 

Detailed Description

Definition at line 23 of file StringView.h.

Constructor & Destructor Documentation

◆ StringView() [1/5]

template<size_t N>
StringView::StringView ( const char(&)  Str[N])
inline

Definition at line 31 of file StringView.h.

References First.

◆ StringView() [2/5]

StringView::StringView ( const char *  First_,
const char *  Last_ 
)
inline

Definition at line 32 of file StringView.h.

References First.

◆ StringView() [3/5]

StringView::StringView ( const char *  First_,
size_t  Len 
)
inline

Definition at line 34 of file StringView.h.

References First.

◆ StringView() [4/5]

StringView::StringView ( const char *  Str)
inline

Definition at line 36 of file StringView.h.

References First.

◆ StringView() [5/5]

StringView::StringView ( )
inline

Definition at line 37 of file StringView.h.

References First.

Referenced by dropBack(), dropFront(), and substr().

Member Function Documentation

◆ back()

char StringView::back ( ) const
inline

Definition at line 72 of file StringView.h.

References assert(), empty(), and end().

◆ begin()

const char* StringView::begin ( ) const
inline

◆ consumeFront() [1/2]

bool StringView::consumeFront ( char  C)
inline

Definition at line 82 of file StringView.h.

References dropFront(), and startsWith().

◆ consumeFront() [2/2]

bool StringView::consumeFront ( StringView  S)
inline

Definition at line 89 of file StringView.h.

References dropFront(), S, and startsWith().

◆ dropBack()

StringView StringView::dropBack ( size_t  N = 1) const
inline

Definition at line 61 of file StringView.h.

References First, N, size(), and StringView().

◆ dropFront()

StringView StringView::dropFront ( size_t  N = 1) const
inline

◆ empty()

bool StringView::empty ( ) const
inline

◆ end()

const char* StringView::end ( ) const
inline

◆ find()

size_t StringView::find ( char  C,
size_t  From = 0 
) const
inline

Definition at line 44 of file StringView.h.

References First, From, llvm::min(), npos, P, and size().

◆ front()

char StringView::front ( ) const
inline

Definition at line 67 of file StringView.h.

References assert(), begin(), and empty().

◆ operator[]()

const char& StringView::operator[] ( size_t  Idx) const
inline

Definition at line 104 of file StringView.h.

References begin().

◆ popFront()

char StringView::popFront ( )
inline

Definition at line 77 of file StringView.h.

References assert(), empty(), and First.

◆ size()

size_t StringView::size ( ) const
inline

Definition at line 108 of file StringView.h.

References First.

Referenced by dropBack(), dropFront(), find(), operator==(), startsWith(), and substr().

◆ startsWith() [1/2]

bool StringView::startsWith ( char  C) const
inline

◆ startsWith() [2/2]

bool StringView::startsWith ( StringView  Str) const
inline

Definition at line 98 of file StringView.h.

References begin(), llvm::lltok::equal, and size().

◆ substr()

StringView StringView::substr ( size_t  Pos,
size_t  Len = npos 
) const
inline

Definition at line 39 of file StringView.h.

References assert(), begin(), llvm::min(), size(), and StringView().

Member Data Documentation

◆ npos

const size_t StringView::npos = ~size_t(0)
static

The documentation for this class was generated from the following file: