AWS IoT Device SDK C++ v2  1.33.0
AWS IoT Device SDK C++ v2
Public Types | Public Member Functions | Static Public Attributes | List of all members
Aws::Crt::basic_string_view< CharT, Traits > Class Template Reference

#include <StringView.h>

Public Types

using traits_type = Traits
 
using value_type = CharT
 
using pointer = value_type *
 
using const_pointer = const value_type *
 
using reference = value_type &
 
using const_reference = const value_type &
 
using const_iterator = const value_type *
 
using iterator = const_iterator
 
using const_reverse_iterator = std::reverse_iterator< const_iterator >
 
using reverse_iterator = const_reverse_iterator
 
using size_type = size_t
 
using difference_type = ptrdiff_t
 

Public Member Functions

constexpr basic_string_view () noexcept
 
constexpr basic_string_view (const basic_string_view &) noexcept=default
 
constexpr basic_string_view (const CharT *s) noexcept
 
constexpr basic_string_view (const CharT *s, size_type count) noexcept
 
basic_string_viewoperator= (const basic_string_view &) noexcept=default
 
constexpr const_iterator begin () const noexcept
 
constexpr const_iterator end () const noexcept
 
constexpr const_iterator cbegin () const noexcept
 
constexpr const_iterator cend () const noexcept
 
constexpr const_reverse_iterator rbegin () const noexcept
 
constexpr const_reverse_iterator rend () const noexcept
 
constexpr const_reverse_iterator crbegin () const noexcept
 
constexpr const_reverse_iterator crend () const noexcept
 
constexpr size_type size () const noexcept
 
constexpr size_type length () const noexcept
 
constexpr size_type max_size () const noexcept
 
constexpr bool empty () const noexcept
 
const_reference operator[] (size_type pos) const noexcept
 
const_reference at (size_type pos) const
 
const_reference front () const noexcept
 
const_reference back () const noexcept
 
constexpr const_pointer data () const noexcept
 
void remove_prefix (size_type n) noexcept
 
void remove_suffix (size_type n) noexcept
 
void swap (basic_string_view &other) noexcept
 
size_type copy (CharT *s, size_type n, size_type pos=0) const
 
basic_string_view substr (size_type pos=0, size_type n=npos) const noexcept(false)
 
int compare (const basic_string_view &s) const noexcept
 
constexpr int compare (size_type pos1, size_type n1, const basic_string_view &s) const
 
constexpr int compare (size_type pos1, size_type n1, const basic_string_view &s, size_type pos2, size_type n2) const
 
constexpr int compare (const CharT *s) const noexcept
 
constexpr int compare (size_type pos1, size_type n1, const CharT *s) const
 
constexpr int compare (size_type pos1, size_type n1, const CharT *s, size_type n2) const noexcept(false)
 
constexpr bool starts_with (const basic_string_view &other) const noexcept
 
constexpr bool starts_with (CharT c) const noexcept
 
constexpr bool starts_with (const CharT *s) const noexcept
 
constexpr bool ends_with (const basic_string_view &other) const noexcept
 
constexpr bool ends_with (CharT c) const noexcept
 
constexpr bool ends_with (const CharT *s) const noexcept
 
constexpr size_type find (const basic_string_view &s, size_type pos=0) const noexcept
 
size_type find (CharT c, size_type pos=0) const noexcept
 
size_type find (const CharT *s, size_type pos, size_type n) const noexcept
 
constexpr size_type find (const CharT *s, size_type pos=0) const noexcept
 
size_type rfind (basic_string_view s, size_type pos=npos) const noexcept
 
size_type rfind (CharT c, size_type pos=npos) const noexcept
 
size_type rfind (const CharT *s, size_type pos, size_type n) const noexcept
 
constexpr size_type rfind (const CharT *s, size_type pos=npos) const noexcept
 
constexpr size_type find_first_of (basic_string_view s, size_type pos=0) const noexcept
 
constexpr size_type find_first_of (CharT c, size_type pos=0) const noexcept
 
size_type find_first_of (const CharT *s, size_type pos, size_type n) const noexcept
 
constexpr size_type find_first_of (const CharT *s, size_type pos=0) const noexcept
 
constexpr size_type find_last_of (basic_string_view s, size_type pos=npos) const noexcept
 
constexpr size_type find_last_of (CharT c, size_type pos=npos) const noexcept
 
size_type find_last_of (const CharT *s, size_type pos, size_type n) const noexcept
 
constexpr size_type find_last_of (const CharT *s, size_type pos=npos) const noexcept
 
size_type find_first_not_of (basic_string_view s, size_type pos=0) const noexcept
 
size_type find_first_not_of (CharT c, size_type pos=0) const noexcept
 
size_type find_first_not_of (const CharT *s, size_type pos, size_type n) const noexcept
 
constexpr size_type find_first_not_of (const CharT *s, size_type pos=0) const noexcept
 
size_type find_last_not_of (basic_string_view s, size_type pos=npos) const noexcept
 
size_type find_last_not_of (CharT c, size_type pos=npos) const noexcept
 
size_type find_last_not_of (const CharT *s, size_type pos, size_type n) const noexcept
 
constexpr size_type find_last_not_of (const CharT *s, size_type pos=npos) const noexcept
 

Static Public Attributes

static constexpr size_type npos = static_cast<size_type>(-1)
 

Detailed Description

template<typename CharT, typename Traits = std::char_traits<CharT>>
class Aws::Crt::basic_string_view< CharT, Traits >

Custom string view implementation in order to meet C++11 baseline

Template Parameters
CharT
Traits

Member Typedef Documentation

◆ const_iterator

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::const_iterator = const value_type *

◆ const_pointer

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::const_pointer = const value_type *

◆ const_reference

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::const_reference = const value_type &

◆ const_reverse_iterator

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::const_reverse_iterator = std::reverse_iterator<const_iterator>

◆ difference_type

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::difference_type = ptrdiff_t

◆ iterator

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::iterator = const_iterator

◆ pointer

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::pointer = value_type *

◆ reference

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::reference = value_type &

◆ reverse_iterator

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::reverse_iterator = const_reverse_iterator

◆ size_type

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::size_type = size_t

◆ traits_type

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::traits_type = Traits

◆ value_type

template<typename CharT , typename Traits = std::char_traits<CharT>>
using Aws::Crt::basic_string_view< CharT, Traits >::value_type = CharT

Constructor & Destructor Documentation

◆ basic_string_view() [1/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr Aws::Crt::basic_string_view< CharT, Traits >::basic_string_view ( )
inlineconstexprnoexcept

◆ basic_string_view() [2/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr Aws::Crt::basic_string_view< CharT, Traits >::basic_string_view ( const basic_string_view< CharT, Traits > &  )
constexprdefaultnoexcept

◆ basic_string_view() [3/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr Aws::Crt::basic_string_view< CharT, Traits >::basic_string_view ( const CharT *  s)
inlineconstexprnoexcept

◆ basic_string_view() [4/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr Aws::Crt::basic_string_view< CharT, Traits >::basic_string_view ( const CharT *  s,
size_type  count 
)
inlineconstexprnoexcept

Member Function Documentation

◆ at()

template<typename CharT , typename Traits = std::char_traits<CharT>>
const_reference Aws::Crt::basic_string_view< CharT, Traits >::at ( size_type  pos) const
inline

◆ back()

template<typename CharT , typename Traits = std::char_traits<CharT>>
const_reference Aws::Crt::basic_string_view< CharT, Traits >::back ( ) const
inlinenoexcept

◆ begin()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_iterator Aws::Crt::basic_string_view< CharT, Traits >::begin ( ) const
inlineconstexprnoexcept

◆ cbegin()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_iterator Aws::Crt::basic_string_view< CharT, Traits >::cbegin ( ) const
inlineconstexprnoexcept

◆ cend()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_iterator Aws::Crt::basic_string_view< CharT, Traits >::cend ( ) const
inlineconstexprnoexcept

◆ compare() [1/6]

template<typename CharT , typename Traits = std::char_traits<CharT>>
int Aws::Crt::basic_string_view< CharT, Traits >::compare ( const basic_string_view< CharT, Traits > &  s) const
inlinenoexcept

◆ compare() [2/6]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr int Aws::Crt::basic_string_view< CharT, Traits >::compare ( const CharT *  s) const
inlineconstexprnoexcept

◆ compare() [3/6]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr int Aws::Crt::basic_string_view< CharT, Traits >::compare ( size_type  pos1,
size_type  n1,
const basic_string_view< CharT, Traits > &  s 
) const
inlineconstexpr

◆ compare() [4/6]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr int Aws::Crt::basic_string_view< CharT, Traits >::compare ( size_type  pos1,
size_type  n1,
const basic_string_view< CharT, Traits > &  s,
size_type  pos2,
size_type  n2 
) const
inlineconstexpr

◆ compare() [5/6]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr int Aws::Crt::basic_string_view< CharT, Traits >::compare ( size_type  pos1,
size_type  n1,
const CharT *  s 
) const
inlineconstexpr

◆ compare() [6/6]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr int Aws::Crt::basic_string_view< CharT, Traits >::compare ( size_type  pos1,
size_type  n1,
const CharT *  s,
size_type  n2 
) const
inlineconstexprnoexcept

◆ copy()

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::copy ( CharT *  s,
size_type  n,
size_type  pos = 0 
) const
inline

◆ crbegin()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_reverse_iterator Aws::Crt::basic_string_view< CharT, Traits >::crbegin ( ) const
inlineconstexprnoexcept

◆ crend()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_reverse_iterator Aws::Crt::basic_string_view< CharT, Traits >::crend ( ) const
inlineconstexprnoexcept

◆ data()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_pointer Aws::Crt::basic_string_view< CharT, Traits >::data ( ) const
inlineconstexprnoexcept

◆ empty()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr bool Aws::Crt::basic_string_view< CharT, Traits >::empty ( ) const
inlineconstexprnoexcept

◆ end()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_iterator Aws::Crt::basic_string_view< CharT, Traits >::end ( ) const
inlineconstexprnoexcept

◆ ends_with() [1/3]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr bool Aws::Crt::basic_string_view< CharT, Traits >::ends_with ( CharT  c) const
inlineconstexprnoexcept

◆ ends_with() [2/3]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr bool Aws::Crt::basic_string_view< CharT, Traits >::ends_with ( const basic_string_view< CharT, Traits > &  other) const
inlineconstexprnoexcept

◆ ends_with() [3/3]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr bool Aws::Crt::basic_string_view< CharT, Traits >::ends_with ( const CharT *  s) const
inlineconstexprnoexcept

◆ find() [1/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find ( CharT  c,
size_type  pos = 0 
) const
inlinenoexcept

◆ find() [2/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find ( const basic_string_view< CharT, Traits > &  s,
size_type  pos = 0 
) const
inlineconstexprnoexcept

◆ find() [3/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find ( const CharT *  s,
size_type  pos,
size_type  n 
) const
inlinenoexcept

◆ find() [4/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find ( const CharT *  s,
size_type  pos = 0 
) const
inlineconstexprnoexcept

◆ find_first_not_of() [1/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find_first_not_of ( basic_string_view< CharT, Traits >  s,
size_type  pos = 0 
) const
inlinenoexcept

◆ find_first_not_of() [2/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find_first_not_of ( CharT  c,
size_type  pos = 0 
) const
inlinenoexcept

◆ find_first_not_of() [3/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find_first_not_of ( const CharT *  s,
size_type  pos,
size_type  n 
) const
inlinenoexcept

◆ find_first_not_of() [4/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find_first_not_of ( const CharT *  s,
size_type  pos = 0 
) const
inlineconstexprnoexcept

◆ find_first_of() [1/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find_first_of ( basic_string_view< CharT, Traits >  s,
size_type  pos = 0 
) const
inlineconstexprnoexcept

◆ find_first_of() [2/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find_first_of ( CharT  c,
size_type  pos = 0 
) const
inlineconstexprnoexcept

◆ find_first_of() [3/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find_first_of ( const CharT *  s,
size_type  pos,
size_type  n 
) const
inlinenoexcept

◆ find_first_of() [4/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find_first_of ( const CharT *  s,
size_type  pos = 0 
) const
inlineconstexprnoexcept

◆ find_last_not_of() [1/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find_last_not_of ( basic_string_view< CharT, Traits >  s,
size_type  pos = npos 
) const
inlinenoexcept

◆ find_last_not_of() [2/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find_last_not_of ( CharT  c,
size_type  pos = npos 
) const
inlinenoexcept

◆ find_last_not_of() [3/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find_last_not_of ( const CharT *  s,
size_type  pos,
size_type  n 
) const
inlinenoexcept

◆ find_last_not_of() [4/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find_last_not_of ( const CharT *  s,
size_type  pos = npos 
) const
inlineconstexprnoexcept

◆ find_last_of() [1/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find_last_of ( basic_string_view< CharT, Traits >  s,
size_type  pos = npos 
) const
inlineconstexprnoexcept

◆ find_last_of() [2/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find_last_of ( CharT  c,
size_type  pos = npos 
) const
inlineconstexprnoexcept

◆ find_last_of() [3/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::find_last_of ( const CharT *  s,
size_type  pos,
size_type  n 
) const
inlinenoexcept

◆ find_last_of() [4/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::find_last_of ( const CharT *  s,
size_type  pos = npos 
) const
inlineconstexprnoexcept

◆ front()

template<typename CharT , typename Traits = std::char_traits<CharT>>
const_reference Aws::Crt::basic_string_view< CharT, Traits >::front ( ) const
inlinenoexcept

◆ length()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::length ( ) const
inlineconstexprnoexcept

◆ max_size()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::max_size ( ) const
inlineconstexprnoexcept

◆ operator=()

template<typename CharT , typename Traits = std::char_traits<CharT>>
basic_string_view& Aws::Crt::basic_string_view< CharT, Traits >::operator= ( const basic_string_view< CharT, Traits > &  )
defaultnoexcept

◆ operator[]()

template<typename CharT , typename Traits = std::char_traits<CharT>>
const_reference Aws::Crt::basic_string_view< CharT, Traits >::operator[] ( size_type  pos) const
inlinenoexcept

◆ rbegin()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_reverse_iterator Aws::Crt::basic_string_view< CharT, Traits >::rbegin ( ) const
inlineconstexprnoexcept

◆ remove_prefix()

template<typename CharT , typename Traits = std::char_traits<CharT>>
void Aws::Crt::basic_string_view< CharT, Traits >::remove_prefix ( size_type  n)
inlinenoexcept

◆ remove_suffix()

template<typename CharT , typename Traits = std::char_traits<CharT>>
void Aws::Crt::basic_string_view< CharT, Traits >::remove_suffix ( size_type  n)
inlinenoexcept

◆ rend()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr const_reverse_iterator Aws::Crt::basic_string_view< CharT, Traits >::rend ( ) const
inlineconstexprnoexcept

◆ rfind() [1/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::rfind ( basic_string_view< CharT, Traits >  s,
size_type  pos = npos 
) const
inlinenoexcept

◆ rfind() [2/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::rfind ( CharT  c,
size_type  pos = npos 
) const
inlinenoexcept

◆ rfind() [3/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
size_type Aws::Crt::basic_string_view< CharT, Traits >::rfind ( const CharT *  s,
size_type  pos,
size_type  n 
) const
inlinenoexcept

◆ rfind() [4/4]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::rfind ( const CharT *  s,
size_type  pos = npos 
) const
inlineconstexprnoexcept

◆ size()

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::size ( ) const
inlineconstexprnoexcept

◆ starts_with() [1/3]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr bool Aws::Crt::basic_string_view< CharT, Traits >::starts_with ( CharT  c) const
inlineconstexprnoexcept

◆ starts_with() [2/3]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr bool Aws::Crt::basic_string_view< CharT, Traits >::starts_with ( const basic_string_view< CharT, Traits > &  other) const
inlineconstexprnoexcept

◆ starts_with() [3/3]

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr bool Aws::Crt::basic_string_view< CharT, Traits >::starts_with ( const CharT *  s) const
inlineconstexprnoexcept

◆ substr()

template<typename CharT , typename Traits = std::char_traits<CharT>>
basic_string_view Aws::Crt::basic_string_view< CharT, Traits >::substr ( size_type  pos = 0,
size_type  n = npos 
) const
inlinenoexcept

◆ swap()

template<typename CharT , typename Traits = std::char_traits<CharT>>
void Aws::Crt::basic_string_view< CharT, Traits >::swap ( basic_string_view< CharT, Traits > &  other)
inlinenoexcept

Member Data Documentation

◆ npos

template<typename CharT , typename Traits = std::char_traits<CharT>>
constexpr size_type Aws::Crt::basic_string_view< CharT, Traits >::npos = static_cast<size_type>(-1)
staticconstexpr

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