Embedded Template Library 1.0
Loading...
Searching...
No Matches
etl::u8string_ext Class Reference

#include <u8string.h>

Public Types

typedef iu8string base_type
typedef iu8string interface_type
typedef iu8string::value_type value_type
typedef iu8string::size_type size_type
Public Types inherited from etl::ibasic_string< char8_t >
typedef ibasic_string< char8_t > interface_type
typedef char8_t value_type
typedef char8_t & reference
typedef const char8_t & const_reference
typedef char8_t * pointer
typedef const char8_t * const_pointer
typedef char8_t * iterator
typedef const char8_t * const_iterator
typedef ETL_OR_STD::reverse_iterator< iterator > reverse_iterator
typedef ETL_OR_STD::reverse_iterator< const_iterator > const_reverse_iterator
typedef etl::iterator_traits< iterator >::difference_type difference_type
Public Types inherited from etl::string_base
typedef size_t size_type
Public Types inherited from etl::private_basic_string::string_base_statics< T >
typedef size_t size_type

Public Member Functions

 u8string_ext (value_type *buffer, size_type buffer_size)
 Constructor.
 u8string_ext (const etl::u8string_ext &other, value_type *buffer, size_type buffer_size)
 u8string_ext (const etl::iu8string &other, value_type *buffer, size_type buffer_size)
 u8string_ext (const etl::iu8string &other, value_type *buffer, size_type buffer_size, size_type position, size_type length=npos)
template<typename TPointer>
 u8string_ext (TPointer text, value_type *buffer, size_type buffer_size, typename etl::enable_if< etl::is_same< const value_type *, TPointer >::value, int >::type *=ETL_NULLPTR)
template<size_t Size>
 u8string_ext (const value_type(&literal)[Size], value_type *buffer, size_type buffer_size)
 u8string_ext (const value_type *text, size_type count, value_type *buffer, size_type buffer_size)
 u8string_ext (size_type count, value_type c, value_type *buffer, size_type buffer_size)
 u8string_ext (const etl::u8string_view &view, value_type *buffer, size_type buffer_size)
template<typename TIterator>
 u8string_ext (TIterator first, TIterator last, value_type *buffer, size_type buffer_size, typename etl::enable_if<!etl::is_integral< TIterator >::value, int >::type=0)
u8string_extoperator= (const u8string_ext &rhs)
 Assignment operator.
u8string_extoperator= (const iu8string &rhs)
 Assignment operator.
u8string_extoperator= (const value_type *text)
 Assignment operator.
u8string_extoperator= (const etl::u8string_view &view)
 Assignment operator.
void repair ()
 Fix the internal pointers after a low level memory copy.
Public Member Functions inherited from etl::ibasic_string< char8_t >
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
const_iterator cbegin () const
const_iterator cend () const
reverse_iterator rbegin ()
const_reverse_iterator rbegin () const
reverse_iterator rend ()
const_reverse_iterator rend () const
const_reverse_iterator crbegin () const
const_reverse_iterator crend () const
void resize (size_type new_size)
void resize (size_type new_size, char8_t value)
void resize_and_overwrite (size_type new_size, TOperation operation)
 Resizes the string and overwrites to data using the operation.
void uninitialized_resize (size_type new_size)
void fill (char8_t value)
reference operator[] (size_type i)
const_reference operator[] (size_type i) const
reference at (size_type i)
const_reference at (size_type i) const
reference front ()
const_reference front () const
reference back ()
const_reference back () const
pointer data ()
ETL_CONSTEXPR const_pointer data () const
pointer data_end ()
const_pointer data_end () const
void assign (const etl::ibasic_string< char8_t > &other)
void assign (const etl::ibasic_string< char8_t > &other, size_type subposition, size_type sublength)
void assign (TIterator first, TIterator last)
void assign (const_pointer str)
void assign (const_pointer str, size_type n)
void assign (const etl::basic_string_view< char8_t, TOtherTraits > &view)
 Assigns values to the string from a view.
void assign (size_type n, char8_t c)
void clear ()
 Clears the string.
void push_back (char8_t value)
void pop_back ()
ibasic_stringappend (const ibasic_string &str)
ibasic_stringappend (const ibasic_string &str, size_type subposition, size_type sublength=npos)
ibasic_stringappend (TIterator first, TIterator last)
ibasic_stringappend (const_pointer str)
ibasic_stringappend (const_pointer str, size_type n)
ibasic_stringappend (const etl::basic_string_view< char8_t, TOtherTraits > &view)
ibasic_stringappend (size_type n, char8_t c)
iterator insert (const_iterator position, char8_t value)
iterator insert (const_iterator position, size_type n, char8_t value)
iterator insert (const_iterator position, TIterator first, TIterator last)
iterator insert (const_iterator position, const etl::basic_string_view< char8_t, TOtherTraits > &view)
etl::ibasic_string< char8_t > & insert (size_type position, const etl::ibasic_string< char8_t > &str)
etl::ibasic_string< char8_t > & insert (size_type position, const etl::basic_string_view< char8_t, TOtherTraits > &view)
etl::ibasic_string< char8_t > & insert (size_type position, const etl::ibasic_string< char8_t > &str, size_type subposition, size_type sublength)
etl::ibasic_string< char8_t > & insert (size_type position, const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type subposition, size_type sublength)
etl::ibasic_string< char8_t > & insert (size_type position, const_pointer s)
etl::ibasic_string< char8_t > & insert (size_type position, const_pointer s, size_type n)
etl::ibasic_string< char8_t > & insert (size_type position, size_type n, value_type c)
etl::ibasic_string< char8_t > & erase (size_type position, size_type length_=npos)
iterator erase (iterator i_element)
iterator erase (const_iterator i_element)
iterator erase (const_iterator first, const_iterator last)
const_pointer c_str () const
 Return a pointer to a C string.
size_type copy (pointer dest, size_type count, size_type pos=0) const
size_type find (const ibasic_string< char8_t > &str, size_type pos=0) const
size_type find (const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type pos=0) const
size_type find (const_pointer s, size_type pos=0) const
size_type find (const_pointer s, size_type pos, size_type n) const
size_type find (char8_t c, size_type position=0) const
size_type rfind (const ibasic_string< char8_t > &str, size_type position=npos) const
size_type rfind (const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type pos=0) const
size_type rfind (const_pointer s, size_type position=npos) const
size_type rfind (const_pointer s, size_type position, size_type length_) const
size_type rfind (char8_t c, size_type position=npos) const
bool contains (const etl::ibasic_string< char8_t > &str) const
 Checks that the string is within this string.
bool contains (const etl::basic_string_view< char8_t, TOtherTraits > &view) const
 Checks that the view is within this string.
bool contains (const_pointer s) const
 Checks that text is within this string.
bool contains (value_type c) const
 Checks that character is within this string.
bool starts_with (const etl::ibasic_string< char8_t > &str) const
 Checks that the string is the start of this string.
bool starts_with (const etl::basic_string_view< char8_t, TOtherTraits > &view) const
 Checks that the view is the start of this string.
bool starts_with (const_pointer s) const
 Checks that the string is the start of this string.
bool starts_with (value_type c) const
 Checks that the character is the start of this string.
bool ends_with (const etl::ibasic_string< char8_t > &str) const
 Checks that the string is the end of this string.
bool ends_with (const etl::basic_string_view< char8_t, TOtherTraits > &view) const
 Checks that the view is the end of this string.
bool ends_with (const_pointer s) const
 Checks that the string is the end of this string.
bool ends_with (value_type c) const
 Checks that the character is the end of this string.
ibasic_stringreplace (size_type position, size_type length_, const ibasic_string &str)
ibasic_stringreplace (size_type position, size_type length_, const etl::basic_string_view< char8_t, TOtherTraits > &view)
ibasic_stringreplace (const_iterator first, const_iterator last, const ibasic_string &str)
ibasic_stringreplace (const_iterator first, const_iterator last, const etl::basic_string_view< char8_t, TOtherTraits > &view)
ibasic_stringreplace (size_type position, size_type length_, const ibasic_string &str, size_type subposition, size_type sublength)
 Replace characters from 'position' of 'length' with 'str' from 'subposition' of 'sublength'.
ibasic_stringreplace (size_type position, size_type length_, const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type subposition, size_type sublength)
 Replace characters from 'position' of 'length' with 'view' from 'subposition' of 'sublength'.
ibasic_stringreplace (size_type position, size_type length_, const_pointer s)
 Replace characters from 'position' of 'length' with pointed to string.
ibasic_stringreplace (const_iterator first, const_iterator last, const_pointer s, size_type n)
etl::enable_if< etl::is_same< TIterator, const_pointer >::value, ibasic_string >::typereplace (const_iterator first, const_iterator last, TIterator s)
 Replace characters from 'first' to 'last' with pointed to string.
ibasic_stringreplace (const_iterator first, const_iterator last, const value_type(&literal)[Size])
 Replace characters from 'first' 'last' with pointed to literal string.
ibasic_stringreplace (size_type position, size_type length_, const_pointer s, size_type n)
 Replace characters from 'position' of 'length' with 'n' characters from pointed to string.
ibasic_stringreplace (size_type position, size_type length_, size_type n, value_type c)
 Replace characters from 'position' of 'length' with 'n' copies of 'c'.
ibasic_stringreplace (const_iterator first, const_iterator last, size_type n, value_type c)
 Replace characters from 'first' of 'last' with 'n' copies of 'c'.
ibasic_stringreplace (const_iterator first, const_iterator last, TIterator first_replace, TIterator last_replace)
 Replace characters from 'first' of 'last' with characters from 'first_replace' to 'last_replace'.
int compare (const ibasic_string &str) const
 Compare with string.
int compare (const etl::basic_string_view< char8_t, TOtherTraits > &view) const
 Compare with etl::basic_string_view.
int compare (size_type position, size_type length_, const ibasic_string &str) const
 Compare position / length with string.
int compare (size_type position, size_type length_, const etl::basic_string_view< char8_t, TOtherTraits > &view) const
 Compare position / length with etl::basic_string_view.
int compare (size_type position, size_type length_, const ibasic_string &str, size_type subposition, size_type sublength) const
 Compare position / length with string / subposition / sublength.
int compare (size_type position, size_type length_, const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type subposition, size_type sublength) const
 Compare position / length with etl::basic_string_view. / subposition / sublength.
int compare (const value_type *s) const
 Compare with C string.
int compare (size_type position, size_type length_, const_pointer s) const
 Compare position / length with C string.
int compare (size_type position, size_type length_, const_pointer s, size_type n) const
 Compare position / length with C string / n.
size_type find_first_of (const ibasic_string< char8_t > &str, size_type position=0) const
size_type find_first_of (const_pointer s, size_type position=0) const
size_type find_first_of (const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type position=0) const
size_type find_first_of (const_pointer s, size_type position, size_type n) const
size_type find_first_of (value_type c, size_type position=0) const
size_type find_last_of (const ibasic_string< char8_t > &str, size_type position=npos) const
size_type find_last_of (const_pointer s, size_type position=npos) const
size_type find_last_of (const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type position=npos) const
size_type find_last_of (const_pointer s, size_type position, size_type n) const
size_type find_last_of (value_type c, size_type position=npos) const
size_type find_first_not_of (const ibasic_string< char8_t > &str, size_type position=0) const
size_type find_first_not_of (const_pointer s, size_type position=0) const
size_type find_first_not_of (const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type position=0) const
size_type find_first_not_of (const_pointer s, size_type position, size_type n) const
size_type find_first_not_of (value_type c, size_type position=0) const
size_type find_last_not_of (const ibasic_string< char8_t > &str, size_type position=npos) const
size_type find_last_not_of (const_pointer s, size_type position=npos) const
size_type find_last_not_of (const etl::basic_string_view< char8_t, TOtherTraits > &view, size_type position=npos) const
size_type find_last_not_of (const_pointer s, size_type position, size_type n) const
size_type find_last_not_of (value_type c, size_type position=npos) const
ibasic_stringoperator= (const ibasic_string &rhs)
 Assignment operator.
ibasic_stringoperator= (const_pointer rhs)
 Assignment operator.
ibasic_stringoperator= (const etl::basic_string_view< char8_t, TOtherTraits > &view)
 Assignment operator.
ibasic_stringoperator+= (const ibasic_string &rhs)
 += operator.
ibasic_stringoperator+= (const etl::basic_string_view< char8_t, TOtherTraits > &rhs)
 += operator.
ibasic_stringoperator+= (const_pointer rhs)
 += operator.
ibasic_stringoperator+= (char8_t rhs)
 += operator.
void initialize_free_space ()
 Clears the free space to string terminator value.
void trim_to_terminator ()
Public Member Functions inherited from etl::string_base
size_type size () const
size_type length () const
bool empty () const
bool full () const
size_type capacity () const
size_type max_size () const
size_type available () const
bool is_truncated () const
ETL_DEPRECATED bool truncated () const
void clear_truncated ()
 Clears the 'truncated' flag.
void set_secure ()
 Sets the 'secure' flag to the requested state.
bool is_secure () const
 Gets the 'secure' state flag.

Additional Inherited Members

Static Public Attributes inherited from etl::private_basic_string::string_base_statics< T >
static ETL_CONSTANT uint_least8_t IS_TRUNCATED = etl::bit<0>::value
static ETL_CONSTANT uint_least8_t CLEAR_AFTER_USE = etl::bit<1>::value
static ETL_CONSTANT size_type npos = etl::integral_limits<size_type>::max
Protected Member Functions inherited from etl::ibasic_string< char8_t >
 ibasic_string (char8_t *p_buffer_, size_type MAX_SIZE_)
 Constructor.
void initialise ()
 Initialise the string.
void repair_buffer (char8_t *p_buffer_)
 Fix the internal pointers after a low level memory copy.
 ~ibasic_string ()
 Destructor.
iterator to_iterator (const_iterator itr) const
 Convert from const_iterator to iterator.
bool is_within_buffer (const_pointer ptr) const
 Checks if a pointer is within the buffer.
Protected Member Functions inherited from etl::string_base
 string_base (size_type max_size_)
 Constructor.
void set_truncated (bool status)
 Sets the 'truncated' flag.
 ~string_base ()
 Destructor.
Protected Attributes inherited from etl::string_base
size_type current_size
 The current number of elements in the string.
const size_type CAPACITY
 The maximum number of elements in the string.
etl::flags< uint_least8_t > flags

Detailed Description

A string implementation that uses a fixed size external buffer.

Constructor & Destructor Documentation

◆ u8string_ext() [1/9]

etl::u8string_ext::u8string_ext ( const etl::u8string_ext & other,
value_type * buffer,
size_type buffer_size )
inline

Copy constructor.

Parameters
otherThe other u8string_ext.

◆ u8string_ext() [2/9]

etl::u8string_ext::u8string_ext ( const etl::iu8string & other,
value_type * buffer,
size_type buffer_size )
inline

From other iu8string.

Parameters
otherThe other iu8string.

◆ u8string_ext() [3/9]

etl::u8string_ext::u8string_ext ( const etl::iu8string & other,
value_type * buffer,
size_type buffer_size,
size_type position,
size_type length = npos )
inline

From other u8string_ext, position, length.

Parameters
otherThe other u8string_ext.
positionThe position of the first character.
lengthThe number of characters. Default = npos.

◆ u8string_ext() [4/9]

template<typename TPointer>
etl::u8string_ext::u8string_ext ( TPointer text,
value_type * buffer,
size_type buffer_size,
typename etl::enable_if< etl::is_same< const value_type *, TPointer >::value, int >::type * = ETL_NULLPTR )
inline

Constructor, from null terminated text.

Parameters
textThe initial text of the u8string_ext.

◆ u8string_ext() [5/9]

template<size_t Size>
etl::u8string_ext::u8string_ext ( const value_type(&) literal[Size],
value_type * buffer,
size_type buffer_size )
inline

Constructor, from null terminated literal text.

Parameters
textThe initial text of the u8string_ext.

◆ u8string_ext() [6/9]

etl::u8string_ext::u8string_ext ( const value_type * text,
size_type count,
value_type * buffer,
size_type buffer_size )
inline

Constructor, from null terminated text and count.

Parameters
textThe initial text of the u8string_ext.
countThe number of characters to copy.

◆ u8string_ext() [7/9]

etl::u8string_ext::u8string_ext ( size_type count,
value_type c,
value_type * buffer,
size_type buffer_size )
inline

Constructor, from initial size and value.

Parameters
initialSizeThe initial size of the u8string_ext.
valueThe value to fill the u8string_ext with.

◆ u8string_ext() [8/9]

etl::u8string_ext::u8string_ext ( const etl::u8string_view & view,
value_type * buffer,
size_type buffer_size )
inlineexplicit

From u8string_view.

Parameters
viewThe u8string_view.

◆ u8string_ext() [9/9]

template<typename TIterator>
etl::u8string_ext::u8string_ext ( TIterator first,
TIterator last,
value_type * buffer,
size_type buffer_size,
typename etl::enable_if<!etl::is_integral< TIterator >::value, int >::type = 0 )
inline

Constructor, from an iterator range.

Template Parameters
TIteratorThe iterator type.
Parameters
firstThe iterator to the first element.
lastThe iterator to the last element + 1.

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