PLCnext API Documentation 23.6.0.37
Classes | Typedefs | Functions | Variables
String

Classes

class  Arp::BasicString< C, Alloc >
 
struct  std::hash< Arp::BasicString< C, Alloc > >
 The hash functor of class BasicString. More...
 

Typedefs

using Arp::BasicString< C, Alloc >::Allocator = Alloc
 The characters allocator type.
 
using Arp::BasicString< C, Alloc >::AllocatorTraits = std::allocator_traits< Alloc >
 
using Arp::BasicString< C, Alloc >::CharType = C
 The character type.
 
using Arp::BasicString< C, Alloc >::SelfType = BasicString< CharType, Allocator >
 The self type.
 
using Arp::BasicString< C, Alloc >::BaseString = std::basic_string< CharType, std::char_traits< CharType >, Allocator >
 The type of the basic std string.
 
using Arp::BasicString< C, Alloc >::Tokens = std::vector< SelfType >
 Used by Split() operation.
 
using Arp::BasicString< C, Alloc >::Bytes = std::vector< byte >
 Conversion from and to byte array.
 
using Arp::BasicString< C, Alloc >::allocator_type = Allocator
 The allocator type of this type.
 
using Arp::BasicString< C, Alloc >::value_type = CharType
 The char type of this type.
 
using Arp::BasicString< C, Alloc >::size_type = typename BaseString::size_type
 The size type of this type.
 
using Arp::BasicString< C, Alloc >::difference_type = typename BaseString::difference_type
 The difference type of this type.
 
using Arp::BasicString< C, Alloc >::reference = typename BaseString::reference
 The reference type of this type.
 
using Arp::BasicString< C, Alloc >::const_reference = typename BaseString::const_reference
 The const reference type of this type.
 
using Arp::BasicString< C, Alloc >::pointer = typename AllocatorTraits::pointer
 The pointer type of this type.
 
using Arp::BasicString< C, Alloc >::const_pointer = typename AllocatorTraits::const_pointer
 The const pointer type of this type.
 
using Arp::BasicString< C, Alloc >::iterator = typename BaseString::iterator
 The iterator type of this type.
 
using Arp::BasicString< C, Alloc >::const_iterator = typename BaseString::const_iterator
 The const iterator type of this type.
 
using Arp::BasicString< C, Alloc >::reverse_iterator = typename BaseString::reverse_iterator
 The reverse iterator type of this type.
 
using Arp::BasicString< C, Alloc >::const_reverse_iterator = typename BaseString::const_reverse_iterator
 The const reverse iterator type of this type.
 

Functions

 Arp::BasicString< C, Alloc >::BasicString ()=default
 The default constructor constructs an empty string instance.
 
 Arp::BasicString< C, Alloc >::BasicString (const SelfType &arg)=default
 The copy constructor copies the as argument passed string deeply. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const SelfType &arg, const Allocator &alloc)
 This constructor copies the as argument passed string deeply. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const Allocator &alloc)
 This constructor creates an empty string instance. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const SelfType &arg, size_type offset, size_type count=NPos)
 This constructor copies the as argument passed string partially. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const SelfType &arg, size_type offset, size_type count, const Allocator &alloc)
 This constructor copies the as argument passed string partially. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const CharType *pChars, size_type count)
 This constructor copies the as argument passed C-string. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const CharType *pChars, size_type count, const Allocator &alloc)
 This constructor copies the as argument passed C-string. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const CharType *pChars)
 This constructor copies the as argument passed C-string. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const CharType *pChars, const Allocator &alloc)
 This constructor copies the as argument passed C-string. More...
 
 Arp::BasicString< C, Alloc >::BasicString (size_type count, CharType c)
 Fills the string with count consecutive copies of character c . More...
 
 Arp::BasicString< C, Alloc >::BasicString (size_type count, CharType c, const Allocator &alloc)
 Fills the string with count consecutive copies of character c . More...
 
 Arp::BasicString< C, Alloc >::BasicString (SelfType &&arg) noexcept=default
 This move constructor moves the as argument passed string to this string. More...
 
 Arp::BasicString< C, Alloc >::BasicString (SelfType &&arg, const Allocator &alloc)
 This move constructor moves the as argument passed string to this string. More...
 
 Arp::BasicString< C, Alloc >::BasicString (std::initializer_list< CharType > arg, const Allocator &alloc=Allocator())
 Copies each of the characters in initList , in the same order. More...
 
 Arp::BasicString< C, Alloc >::BasicString (iterator first, iterator last, const Allocator &alloc=Allocator())
 Copies the sequence of characters in the range [first,last), in the same order.. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const_iterator first, const_iterator last, const Allocator &alloc=Allocator())
 Copies the sequence of characters in the range [first,last), in the same order.. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const Bytes &bytes, const Allocator &alloc=Allocator())
 Copies the as arguments passed bytes to this string. More...
 
 Arp::BasicString< C, Alloc >::BasicString (const BaseString &arg)
 This copy constructor copies the as argument passed std::string to this string. More...
 
 Arp::BasicString< C, Alloc >::BasicString (BaseString &&arg)
 This move constructor moves the as argument passed std::string to this string. More...
 
 Arp::BasicString< C, Alloc >::~BasicString ()=default
 The destructor deallocates all memory of this instance.
 
SelfTypeArp::BasicString< C, Alloc >::operator= (SelfType &&right) noexcept=default
 This move assignment operator moves the right-hand-side operand to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::operator= (std::initializer_list< CharType > right)
 This assignment operator copies each of the characters in the right-hand-side operand to this string, in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::operator= (const SelfType &right)=default
 This assignment operator copies the the right-hand-side operand to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::operator= (const CharType *right)
 This assignment operator copies the right-hand-side operand to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::operator= (CharType c)
 This assignment operator copies the right-hand-side operand to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::operator+= (std::initializer_list< CharType > right)
 This assignment operator appends each of the characters in the right-hand-side operand to this string, in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::operator+= (const SelfType &right)
 This assignment operator appends the the right-hand-side operand to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::operator+= (const CharType *right)
 This assignment operator appends the the right-hand-side operand to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::operator+= (CharType c)
 This assignment operator appends the the right-hand-side operand to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (SelfType &&arg)
 This operation moves the as argument passed string to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (std::initializer_list< CharType > arg)
 This operation copies each of the characters in the argument to this string, in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (const SelfType &arg)
 This operation copies the the argument to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (const SelfType &arg, size_type offset, size_type count=NPos)
 This operation copies the as argument passed string partially. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (const BaseString &arg)
 This operation copies the argument to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (BaseString &&arg)
 This operation moves the argument to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (const CharType *pChars, size_type count)
 This operation copies the as argument passed C-string partially. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (const CharType *pChars)
 This operation copies the as argument passed C-string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (size_type count, CharType c)
 Fills this string with count consecutive copies of character c . More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (iterator first, iterator last)
 Copies the sequence of characters in the range [first,last), in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (const_iterator first, const_iterator last)
 Copies the sequence of characters in the range [first,last), in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::Assign (const_pointer first, const_pointer last)
 Copies the sequence of characters in the range [first,last), in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (std::initializer_list< CharType > arg)
 This operation appends each of the characters in the argument to this string, in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (const SelfType &arg)
 This operation appends the the argument to this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (const SelfType &arg, size_type offset, size_type count=NPos)
 This operation appends the as argument passed string partially. More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (const CharType *pChars, size_type count)
 This operation appends the as argument passed C-string partially. More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (const CharType *pChars)
 This operation appends the as argument passed C-string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (size_type count, CharType c)
 Appends to this string count consecutive copies of character c . More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (iterator first, iterator last)
 Appends the sequence of characters in the range [first,last), in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (const_iterator first, const_iterator last)
 Appends the sequence of characters in the range [first,last), in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::Append (const_pointer first, const_pointer last)
 Appends the sequence of characters in the range [first,last), in the same order. More...
 
iterator Arp::BasicString< C, Alloc >::Insert (const_iterator where, std::initializer_list< CharType > arg)
 This operation inserts each of the characters in the argument to this string, in the same order. More...
 
SelfTypeArp::BasicString< C, Alloc >::Insert (size_type offset, const SelfType &arg)
 This operation inserts the the argument at the given position. More...
 
SelfTypeArp::BasicString< C, Alloc >::Insert (size_type offset, const SelfType &arg, size_type argOffset, size_type count=NPos)
 This operation inserts the as argument passed string partially. More...
 
SelfTypeArp::BasicString< C, Alloc >::Insert (size_type offset, const CharType *pChars, size_type count)
 This operation inserts the as argument passed string partially. More...
 
SelfTypeArp::BasicString< C, Alloc >::Insert (size_type offset, const CharType *pChars)
 This operation inserts the as argument passed string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Insert (size_type offset, size_type count, CharType c)
 Inserts count consecutive copies of character c at position offset . More...
 
iterator Arp::BasicString< C, Alloc >::Insert (const_iterator where, CharType c)
 Inserts character c at position where . More...
 
iterator Arp::BasicString< C, Alloc >::Insert (const_iterator where, size_type count, CharType c)
 Inserts character c at position where . More...
 
iterator Arp::BasicString< C, Alloc >::Insert (const_iterator where, iterator first, iterator last)
 Inserts a range of chars [first;last) at position where . More...
 
iterator Arp::BasicString< C, Alloc >::Insert (const_iterator where, const_iterator first, const_iterator last)
 Inserts a range of chars [first;last) at position where . More...
 
iterator Arp::BasicString< C, Alloc >::Insert (const_iterator where, const_pointer first, const_pointer last)
 Inserts a range of chars [first;last) at position where . More...
 
SelfTypeArp::BasicString< C, Alloc >::Erase (size_type offset=0)
 This operation erases chars from this string. More...
 
SelfTypeArp::BasicString< C, Alloc >::Erase (size_type offset, size_type count)
 This operation erases chars from this string. More...
 
iterator Arp::BasicString< C, Alloc >::Erase (const_iterator where)
 This operation erases a char from a string. More...
 
iterator Arp::BasicString< C, Alloc >::Erase (const_iterator first, const_iterator last)
 Erases a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, std::initializer_list< CharType > chars)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (size_type offset, size_type length, const SelfType &arg)
 Replaces a range of chars. More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (size_type offset, size_type length, const SelfType &arg, size_type offsetArg, size_type count=NPos)
 Replaces a range of chars. More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (size_type offset, size_type length, const CharType *pChars, size_type count)
 Replaces a range of chars. More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (size_type offset, size_type length, const CharType *pChars)
 Replaces a range of chars. More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (size_type offset, size_type length, size_type count, CharType c)
 Replaces a range of chars by a character. More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, const SelfType &arg)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, const CharType *pChars, size_type count)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, const CharType *pChars)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, size_type count, CharType c)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, iterator first2, iterator last2)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, const_iterator first2, const_iterator last2)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, const_pointer first2, const_pointer last2)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::Replace (const_iterator first, const_iterator last, pointer first2, pointer last2)
 Replaces a range of chars [first;last). More...
 
SelfTypeArp::BasicString< C, Alloc >::ReplaceAll (const SelfType &pattern, const SelfType &replacement)
 Replaces a given pattern by a replacement string. More...
 
iterator Arp::BasicString< C, Alloc >::begin ()
 Returns the begin iterator of this string. More...
 
const_iterator Arp::BasicString< C, Alloc >::begin () const
 Returns the begin iterator of this string. More...
 
iterator Arp::BasicString< C, Alloc >::end ()
 Returns the end iterator of this string. More...
 
const_iterator Arp::BasicString< C, Alloc >::end () const
 Returns the end iterator of this string. More...
 
iterator Arp::BasicString< C, Alloc >::Begin ()
 Returns the begin iterator of this string. More...
 
const_iterator Arp::BasicString< C, Alloc >::Begin () const
 Returns the begin iterator of this string. More...
 
iterator Arp::BasicString< C, Alloc >::End ()
 Returns the end iterator of this string. More...
 
const_iterator Arp::BasicString< C, Alloc >::End () const
 Returns the end iterator of this string. More...
 
reverse_iterator Arp::BasicString< C, Alloc >::ReverseBegin ()
 Returns the begin iterator of this string for reverse iterating. More...
 
const_reverse_iterator Arp::BasicString< C, Alloc >::ReverseBegin () const
 Returns the begin iterator of this string for reverse iterating. More...
 
reverse_iterator Arp::BasicString< C, Alloc >::ReverseEnd ()
 Returns the end iterator of this string for reverse iterating. More...
 
const_reverse_iterator Arp::BasicString< C, Alloc >::ReverseEnd () const
 Returns the end iterator of this string for reverse iterating. More...
 
const_iterator Arp::BasicString< C, Alloc >::ConstBegin () const
 Returns the begin iterator of this const string. More...
 
const_iterator Arp::BasicString< C, Alloc >::ConstEnd () const
 Returns the end iterator of this const string. More...
 
const_reverse_iterator Arp::BasicString< C, Alloc >::ConstReverseBegin () const
 Returns the begin iterator of this const string for reverse iterating. More...
 
const_reverse_iterator Arp::BasicString< C, Alloc >::ConstReverseEnd () const
 Returns the end iterator of this const string for reverse iterating. More...
 
void Arp::BasicString< C, Alloc >::ShrinkToFit ()
 Might reduce the capacity of this string to its size.
 
void Arp::BasicString< C, Alloc >::PushBack (CharType c)
 Appends the character c to this string. More...
 
void Arp::BasicString< C, Alloc >::PopBack ()
 Removes the character at the end of this string. More...
 
reference Arp::BasicString< C, Alloc >::Front ()
 Returns a reference to the first character in the string. More...
 
const_reference Arp::BasicString< C, Alloc >::Front () const
 Returns a const reference to the first character in the string. More...
 
reference Arp::BasicString< C, Alloc >::Back ()
 Returns a reference to the last character in the string. More...
 
const_reference Arp::BasicString< C, Alloc >::Back () const
 Returns a const reference to the last character in the string. More...
 
reference Arp::BasicString< C, Alloc >::At (size_type offset)
 Returns a const reference to the character at position offset . More...
 
const_reference Arp::BasicString< C, Alloc >::At (size_type offset) const
 Returns a const reference to the character at position offset . More...
 
reference Arp::BasicString< C, Alloc >::operator[] (size_type offset)
 Returns a reference to the character at position offset . More...
 
const_reference Arp::BasicString< C, Alloc >::operator[] (size_type offset) const
 Returns a const reference to the character at position offset . More...
 
size_type Arp::BasicString< C, Alloc >::Length () const
 Returns the number of char elements in this string. More...
 
size_type Arp::BasicString< C, Alloc >::Size () const
 Returns the number of char elements in this string. More...
 
size_type Arp::BasicString< C, Alloc >::MaxSize () const
 Returns the number maximum size any string might have.
 
size_type Arp::BasicString< C, Alloc >::Capacity () const
 Rceturns the capacity of this string. More...
 
bool Arp::BasicString< C, Alloc >::IsEmpty () const
 Determines if this string is empty. More...
 
void Arp::BasicString< C, Alloc >::Resize (size_type newSize)
 Resizes this string to the specified new size. More...
 
void Arp::BasicString< C, Alloc >::Resize (size_type newSize, CharType c)
 Resizes this string to the specified new size. More...
 
void Arp::BasicString< C, Alloc >::Reserve (size_type newCapacity=0)
 Reserves memory upto the specified newCapacity . More...
 
void Arp::BasicString< C, Alloc >::Clear ()
 Clears the content of this string, but does not modify the capacity.
 
size_type Arp::BasicString< C, Alloc >::Find (const SelfType &pattern, size_type offset=0) const
 Finds the first substring which equal to pattern . More...
 
size_type Arp::BasicString< C, Alloc >::Find (const CharType *pChars, size_type offset, size_type count) const
 Finds the first substring which equal to pChars . More...
 
size_type Arp::BasicString< C, Alloc >::Find (const CharType *pChars, size_type offset=0) const
 Finds the first substring which equal to pChars . More...
 
size_type Arp::BasicString< C, Alloc >::Find (CharType c, size_type offset=0) const
 Finds the first char which equal to c . More...
 
size_type Arp::BasicString< C, Alloc >::ReverseFind (const SelfType &pattern, size_type offset=NPos) const
 Finds the last substring which equal to pattern . More...
 
size_type Arp::BasicString< C, Alloc >::ReverseFind (const CharType *pChars, size_type offset, size_type count) const
 Finds the last substring which equal to pChars . More...
 
size_type Arp::BasicString< C, Alloc >::ReverseFind (const CharType *pChars, size_type offset=NPos) const
 Finds the last substring which equal to pChars . More...
 
size_type Arp::BasicString< C, Alloc >::ReverseFind (CharType c, size_type offset=NPos) const
 Finds the last char which equal to c . More...
 
size_type Arp::BasicString< C, Alloc >::FindFirstOf (const SelfType &chars, size_type offset=0) const
 Finds the first occurence of any character in chars . More...
 
size_type Arp::BasicString< C, Alloc >::FindFirstOf (const CharType *pChars, size_type offset, size_type count) const
 Finds the first occurence of any character in pChars . More...
 
size_type Arp::BasicString< C, Alloc >::FindFirstOf (const CharType *pChars, size_type offset=0) const
 Finds the first occurence of any character in pChars . More...
 
size_type Arp::BasicString< C, Alloc >::FindFirstOf (CharType c, size_type offset=0) const
 Finds the first occurence of character c . More...
 
size_type Arp::BasicString< C, Alloc >::FindLastOf (const SelfType &chars, size_type pos=NPos) const
 Finds the last occurence of any character in chars . More...
 
size_type Arp::BasicString< C, Alloc >::FindLastOf (const CharType *pChars, size_type pos, size_type count) const
 Finds the last occurence of any character in pChars . More...
 
size_type Arp::BasicString< C, Alloc >::FindLastOf (const CharType *pChars, size_type pos=NPos) const
 Finds the last occurence of any character in pChars . More...
 
size_type Arp::BasicString< C, Alloc >::FindLastOf (CharType c, size_type pos=NPos) const
 Finds the last occurence of character c . More...
 
size_type Arp::BasicString< C, Alloc >::FindFirstNotOf (const SelfType &chars, size_type offset=0) const
 Finds the first occurence of any character which is not in chars . More...
 
size_type Arp::BasicString< C, Alloc >::FindFirstNotOf (const CharType *pChars, size_type offset, size_type count) const
 Finds the first occurence of any character which is not in pChars . More...
 
size_type Arp::BasicString< C, Alloc >::FindFirstNotOf (const CharType *pChars, size_type offset=0) const
 Finds the first occurence of any character which is not in pChars . More...
 
size_type Arp::BasicString< C, Alloc >::FindFirstNotOf (CharType c, size_type offset=0) const
 Finds the first occurence of any character which is not equal to c . More...
 
size_type Arp::BasicString< C, Alloc >::FindLastNotOf (const SelfType &chars, size_type pos=NPos) const
 Finds the last occurence of any character which is not in chars . More...
 
size_type Arp::BasicString< C, Alloc >::FindLastNotOf (const CharType *pChars, size_type pos, size_type count) const
 Finds the last occurence of any character which is not in pChars . More...
 
size_type Arp::BasicString< C, Alloc >::FindLastNotOf (const CharType *pChars, size_type pos=NPos) const
 Finds the last occurence of any character which is not in pChars . More...
 
size_type Arp::BasicString< C, Alloc >::FindLastNotOf (CharType c, size_type pos=NPos) const
 Finds the last occurence of any character which is not equal to c . More...
 
int Arp::BasicString< C, Alloc >::Compare (const SelfType &other) const
 Compares this string to the other string lexicographical. More...
 
int Arp::BasicString< C, Alloc >::Compare (size_type offset, size_type count, const SelfType &other) const
 Compares this string to the other string lexicographical. More...
 
int Arp::BasicString< C, Alloc >::Compare (size_type offset, size_type count, const SelfType &other, size_type offsetOther, size_type countOther=NPos) const
 Compares a substring of this string to a substring of the other string lexicographical. More...
 
int Arp::BasicString< C, Alloc >::Compare (const CharType *pOther) const
 Compares this string to the pOther string lexicographical. More...
 
int Arp::BasicString< C, Alloc >::Compare (size_type offset, size_type count, const CharType *pOther) const
 Compares this string to the pOther string lexicographical. More...
 
int Arp::BasicString< C, Alloc >::Compare (size_type offset, size_type count, const CharType *pOther, size_type countOther) const
 Compares a substring of this string to a substring of the pOther string lexicographical. More...
 
bool Arp::BasicString< C, Alloc >::StartWith (const CharType *pChars) const
 Determines if this string starts with the pChars C-string. More...
 
bool Arp::BasicString< C, Alloc >::StartWith (const SelfType &pattern) const
 Determines if this string starts with the pattern string. More...
 
bool Arp::BasicString< C, Alloc >::EndWith (const CharType *pChars) const
 Determines if this string ends with the pChars C-string. More...
 
bool Arp::BasicString< C, Alloc >::EndWith (const SelfType &pattern) const
 Determines if this string starts with the pattern string. More...
 
template<typename... Args>
static SelfType Arp::BasicString< C, Alloc >::Format (const SelfType &format, const Args &... args)
 Formats the format string using the .NET/Python syntax with the given variadic arguments. More...
 
template<typename... Args>
static SelfType Arp::BasicString< C, Alloc >::Format (const char *format, const Args &... args)
 Formats the format C-string using the .NET/Python syntax with the given variadic arguments. More...
 
const BaseStringArp::BasicString< C, Alloc >::GetBaseString () const
 Gets the basic std string. More...
 
const CharTypeArp::BasicString< C, Alloc >::CStr () const
 Gets the character data of this string. More...
 
 Arp::BasicString< C, Alloc >::operator const CharType * () const
 Converts this string implicitly to a C-string. More...
 
 Arp::BasicString< C, Alloc >::operator const BaseString & () const
 Converts this string implicitly to a std string. More...
 
SelfType Arp::BasicString< C, Alloc >::Substr (size_type offset=0, size_type count=NPos) const
 Gets a substring of this string. More...
 
Allocator Arp::BasicString< C, Alloc >::GetAllocator () const
 Gets the allocator of this string. More...
 
void Arp::BasicString< C, Alloc >::Swap (SelfType &other)
 Swaps the content of this string with the content of the other string. More...
 
Bytes Arp::BasicString< C, Alloc >::ToBytes () const
 Copies this string to a byte array. More...
 
SelfType Arp::BasicString< C, Alloc >::TrimLeft () const
 Removes left appended white-spaces from this string More...
 
SelfType Arp::BasicString< C, Alloc >::TrimRight () const
 Removes right appended white-spaces from this string More...
 
SelfType Arp::BasicString< C, Alloc >::Trim () const
 Removes left and rigth appended white-spaces from this string More...
 
Tokens Arp::BasicString< C, Alloc >::Split (char delimiter, bool trimTokens=true, bool removeEmptyTokens=true) const
 Splits this string into tokens using the specified delimiter characters (multiple). More...
 
Tokens Arp::BasicString< C, Alloc >::Split (const char delimiters[], size_t delimitersCount, bool trimTokens=true, bool removeEmptyTokens=true) const
 Splits this string into tokens using the specified delimiter characters (multiple). More...
 
Tokens Arp::BasicString< C, Alloc >::SplitByWord (const SelfType &delimiter, bool trimTokens=true, bool removeEmptyTokens=true) const
 Splits this string into tokens using the specified (single) delimiter string. More...
 
template<class CharType , class Alloc >
void Arp::swap (BasicString< CharType, Alloc > &left, BasicString< CharType, Alloc > &right) noexcept
 Swaps the content of the left string with the content of the right string. More...
 
template<class CharType , class Alloc >
std::ostream & Arp::operator<< (std::ostream &os, const BasicString< CharType, Alloc > &right)
 Streams the right string to the outstream os . More...
 
template<class CharType , class Alloc >
std::istream & Arp::operator>> (std::istream &is, BasicString< CharType, Alloc > &right)
 Streams the instream is into the right string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (const BasicString< CharType, Alloc > &left, const BasicString< CharType, Alloc > &right)
 Concatenates the right string to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (const CharType *left, const BasicString< CharType, Alloc > &right)
 Concatenates the right string to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (const CharType left, const BasicString< CharType, Alloc > &right)
 Concatenates the right string to the left character. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (const BasicString< CharType, Alloc > &left, const CharType *right)
 Concatenates the right C-string to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (const BasicString< CharType, Alloc > &left, const CharType right)
 Concatenates the right character to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (const BasicString< CharType, Alloc > &left, BasicString< CharType, Alloc > &&right)
 Concatenates the right string to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (BasicString< CharType, Alloc > &&left, const BasicString< CharType, Alloc > &right)
 Concatenates the right string to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (BasicString< CharType, Alloc > &&left, BasicString< CharType, Alloc > &&right)
 Concatenates the right string to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (const CharType *left, BasicString< CharType, Alloc > &&right)
 Concatenates the right string to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (const CharType left, BasicString< CharType, Alloc > &&right)
 Concatenates the right string to the left character. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (BasicString< CharType, Alloc > &&left, const CharType *right)
 Concatenates the right string to the left string. More...
 
template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ (BasicString< CharType, Alloc > &&left, const CharType right)
 Concatenates the right character to the left string. More...
 
template<class CharType , class Alloc >
bool Arp::operator== (const BasicString< CharType, Alloc > &left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string on equality. More...
 
template<class CharType , class Alloc >
bool Arp::operator== (const CharType *left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string on equality. More...
 
template<class CharType , class Alloc >
bool Arp::operator== (const BasicString< CharType, Alloc > &left, const CharType *right)
 Compares the left string to the right string on equality. More...
 
template<class CharType , class Alloc >
bool Arp::operator!= (const BasicString< CharType, Alloc > &left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string on inequality. More...
 
template<class CharType , class Alloc >
bool Arp::operator!= (const CharType *left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string on inequality. More...
 
template<class CharType , class Alloc >
bool Arp::operator!= (const BasicString< CharType, Alloc > &left, const CharType *right)
 Compares the left string to the right string on inequality. More...
 
template<class CharType , class Alloc >
bool Arp::operator< (const BasicString< CharType, Alloc > &left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator< (const CharType *left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator< (const BasicString< CharType, Alloc > &left, const CharType *right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator> (const BasicString< CharType, Alloc > &left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator> (const CharType *left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator> (const BasicString< CharType, Alloc > &left, const CharType *right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator<= (const BasicString< CharType, Alloc > &left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator<= (const CharType *left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator<= (const BasicString< CharType, Alloc > &left, const CharType *right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator>= (const BasicString< CharType, Alloc > &left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator>= (const CharType *left, const BasicString< CharType, Alloc > &right)
 Compares the left string to the right string. More...
 
template<class CharType , class Alloc >
bool Arp::operator>= (const BasicString< CharType, Alloc > &left, const CharType *right)
 Compares the left string to the right string. More...
 

Variables

static const size_type Arp::BasicString< C, Alloc >::NPos = size_type(-1)
 This position value is returned when find operations do not match, or is used as default value for any length parameter meaning 'until the end of the string'.
 
static const SelfType Arp::BasicString< C, Alloc >::Empty
 An emtpy static string instance.
 
static const SelfType Arp::BasicString< C, Alloc >::NewLine
 This static string instance represents the (platform specific) new line string.
 

Detailed Description

Function Documentation

◆ Append() [1/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( const CharType pChars)
inline

This operation appends the as argument passed C-string.

Parameters
pCharsThe argument to append.

◆ Append() [2/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( const CharType pChars,
size_type  count 
)
inline

This operation appends the as argument passed C-string partially.

Parameters
pCharsThe argument to append partially.
countThe number of chars to append from pChars .

◆ Append() [3/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( const SelfType arg)
inline

This operation appends the the argument to this string.

Parameters
argThe argument to append.
Returns
A reference to this instance.

◆ Append() [4/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( const SelfType arg,
size_type  offset,
size_type  count = NPos 
)
inline

This operation appends the as argument passed string partially.

Parameters
argThe argument to append partially.
offsetThe offset of arg to append the chars from.
countThe number of chars to append from arg .

◆ Append() [5/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( const_iterator  first,
const_iterator  last 
)
inline

Appends the sequence of characters in the range [first,last), in the same order.

Parameters
firstThe begin iterator specifying the range of chars to append.
lastThe end iterator specifying the range of chars to append.

◆ Append() [6/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( const_pointer  first,
const_pointer  last 
)
inline

Appends the sequence of characters in the range [first,last), in the same order.

Parameters
firstThe begin iterator specifying the range of chars to append.
lastThe end iterator specifying the range of chars to append.

◆ Append() [7/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( iterator  first,
iterator  last 
)
inline

Appends the sequence of characters in the range [first,last), in the same order.

Parameters
firstThe begin iterator specifying the range of chars to append.
lastThe end iterator specifying the range of chars to append.

◆ Append() [8/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( size_type  count,
CharType  c 
)
inline

Appends to this string count consecutive copies of character c .

Parameters
countThe number of chars to append to this string.
cThe char used to append this string.

◆ Append() [9/9]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Append ( std::initializer_list< CharType arg)
inline

This operation appends each of the characters in the argument to this string, in the same order.

Parameters
argThe initializer list of chars to append.
Returns
A reference to this instance.

◆ Assign() [1/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( BaseString &&  arg)
inline

This operation moves the argument to this string.

Parameters
argThe argument to move.
Returns
A reference to this instance.

◆ Assign() [2/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( const BaseString arg)
inline

This operation copies the argument to this string.

Parameters
argThe argument to copy.
Returns
A reference to this instance.

◆ Assign() [3/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( const CharType pChars)
inline

This operation copies the as argument passed C-string.

Parameters
pCharsThe argument to copy.

◆ Assign() [4/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( const CharType pChars,
size_type  count 
)
inline

This operation copies the as argument passed C-string partially.

Parameters
pCharsThe argument to copy partially.
countThe number of chars to copy from pChars .

◆ Assign() [5/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( const SelfType arg)
inline

This operation copies the the argument to this string.

Parameters
argThe argument to copy.
Returns
A reference to this instance.

◆ Assign() [6/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( const SelfType arg,
size_type  offset,
size_type  count = NPos 
)
inline

This operation copies the as argument passed string partially.

Parameters
argThe argument to copy partially.
offsetThe offset of arg to copy the chars from.
countThe number of chars to copy from arg .

◆ Assign() [7/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( const_iterator  first,
const_iterator  last 
)
inline

Copies the sequence of characters in the range [first,last), in the same order.

Parameters
firstThe begin iterator specifying the range of chars to copy.
lastThe end iterator specifying the range of chars to copy.

◆ Assign() [8/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( const_pointer  first,
const_pointer  last 
)
inline

Copies the sequence of characters in the range [first,last), in the same order.

Parameters
firstThe begin iterator specifying the range of chars to copy.
lastThe end iterator specifying the range of chars to copy.

◆ Assign() [9/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( iterator  first,
iterator  last 
)
inline

Copies the sequence of characters in the range [first,last), in the same order.

Parameters
firstThe begin iterator specifying the range of chars to copy.
lastThe end iterator specifying the range of chars to copy.

◆ Assign() [10/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( SelfType &&  arg)
inline

This operation moves the as argument passed string to this string.

Parameters
argThe right-hand-side argument to move.
Returns
A reference to this instance.

◆ Assign() [11/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( size_type  count,
CharType  c 
)
inline

Fills this string with count consecutive copies of character c .

Parameters
countThe number of chars to fill this string with.
cThe char used to fill this string.

◆ Assign() [12/12]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Assign ( std::initializer_list< CharType arg)
inline

This operation copies each of the characters in the argument to this string, in the same order.

Parameters
argThe initializer list of chars to copy.
Returns
A reference to this instance.

◆ At() [1/2]

template<class C , class Alloc = std::allocator<C>>
reference Arp::BasicString< C, Alloc >::At ( size_type  offset)
inline

Returns a const reference to the character at position offset .

Parameters
offsetThe index of the character to refer.
Exceptions
std::out_of_rangeIf offset is out of range.
Returns
A reference to the character at position offset .

◆ At() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_reference Arp::BasicString< C, Alloc >::At ( size_type  offset) const
inline

Returns a const reference to the character at position offset .

Parameters
offsetThe index of the character to refer.
Exceptions
std::out_of_rangeIf offset is out of range.
Returns
A const reference to the character at position offset .

◆ Back() [1/2]

template<class C , class Alloc = std::allocator<C>>
reference Arp::BasicString< C, Alloc >::Back ( )
inline

Returns a reference to the last character in the string.

The behavior is undefined if this string is empty.

Returns
A reference to the last character in the string.

◆ Back() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_reference Arp::BasicString< C, Alloc >::Back ( ) const
inline

Returns a const reference to the last character in the string.

The behavior is undefined if this string is empty.

Returns
A const reference to the last character in the string.

◆ BasicString() [1/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( BaseString &&  arg)
inline

This move constructor moves the as argument passed std::string to this string.

Parameters
argThe argument to move.

◆ BasicString() [2/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const Allocator alloc)
inlineexplicit

This constructor creates an empty string instance.

Parameters
allocThe allocator to use.

◆ BasicString() [3/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const BaseString arg)
inline

This copy constructor copies the as argument passed std::string to this string.

Parameters
argThe argument to copy.

◆ BasicString() [4/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const Bytes bytes,
const Allocator alloc = Allocator() 
)
inlineexplicit

Copies the as arguments passed bytes to this string.

Parameters
bytesThe bytes to copy to this string.
allocThe allocator to use.

◆ BasicString() [5/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const CharType pChars)
inline

This constructor copies the as argument passed C-string.

Parameters
pCharsThe C-string to copy.

◆ BasicString() [6/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const CharType pChars,
const Allocator alloc 
)
inline

This constructor copies the as argument passed C-string.

Parameters
pCharsThe C-string to copy.
allocThe allocator to use.

◆ BasicString() [7/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const CharType pChars,
size_type  count 
)
inline

This constructor copies the as argument passed C-string.

Parameters
pCharsThe C-string to copy.
countThe number of chars to copy from pChars .

◆ BasicString() [8/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const CharType pChars,
size_type  count,
const Allocator alloc 
)
inline

This constructor copies the as argument passed C-string.

Parameters
pCharsThe C-string to copy.
countThe number of chars to copy from pChars .
allocThe allocator to use.

◆ BasicString() [9/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const SelfType arg)
default

The copy constructor copies the as argument passed string deeply.

Parameters
argThe argument to copy.

◆ BasicString() [10/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const SelfType arg,
const Allocator alloc 
)
inline

This constructor copies the as argument passed string deeply.

Parameters
argThe argument to copy deeply.
allocThe allocator to use.

◆ BasicString() [11/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const SelfType arg,
size_type  offset,
size_type  count,
const Allocator alloc 
)
inline

This constructor copies the as argument passed string partially.

Parameters
argThe argument to copy partially.
offsetThe offset of arg to copy the chars from.
countThe number of chars to copy from arg .
allocThe allocator to use.

◆ BasicString() [12/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const SelfType arg,
size_type  offset,
size_type  count = NPos 
)
inline

This constructor copies the as argument passed string partially.

Parameters
argThe argument to copy partially.
offsetThe offset of arg to copy the chars from.
countThe number of chars to copy from arg .

◆ BasicString() [13/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( const_iterator  first,
const_iterator  last,
const Allocator alloc = Allocator() 
)
inline

Copies the sequence of characters in the range [first,last), in the same order..

Parameters
firstThe begin iterator specifying the range of chars to copy.
lastThe end iterator specifying the range of chars to copy.
allocThe allocator to use.

◆ BasicString() [14/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( iterator  first,
iterator  last,
const Allocator alloc = Allocator() 
)
inline

Copies the sequence of characters in the range [first,last), in the same order..

Parameters
firstThe begin iterator specifying the range of chars to copy.
lastThe end iterator specifying the range of chars to copy.
allocThe allocator to use.

◆ BasicString() [15/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( SelfType &&  arg)
defaultnoexcept

This move constructor moves the as argument passed string to this string.

Parameters
argThe argument to move.

◆ BasicString() [16/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( SelfType &&  arg,
const Allocator alloc 
)
inline

This move constructor moves the as argument passed string to this string.

Parameters
argThe argument to move.
allocThe allocator to use.

◆ BasicString() [17/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( size_type  count,
CharType  c 
)
inline

Fills the string with count consecutive copies of character c .

Parameters
countThe number of chars to fill this string with.
cThe char used to fill this string.

◆ BasicString() [18/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( size_type  count,
CharType  c,
const Allocator alloc 
)
inline

Fills the string with count consecutive copies of character c .

Parameters
countThe number of chars to fill this string with.
cThe char used to fill this string.
allocThe allocator to use.

◆ BasicString() [19/19]

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::BasicString ( std::initializer_list< CharType arg,
const Allocator alloc = Allocator() 
)
inline

Copies each of the characters in initList , in the same order.

Parameters
argThe initializer list of chars to copy.
allocThe allocator to use.

◆ begin() [1/2]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::begin ( )
inline

Returns the begin iterator of this string.

Returns
The begin iterator of this string.

This implemention is intended to support range base for loops and is required by C++ compilers. Do not use this operation directly.

◆ Begin() [1/2]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Begin ( )
inline

Returns the begin iterator of this string.

Returns
The begin iterator of this string.

◆ begin() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_iterator Arp::BasicString< C, Alloc >::begin ( ) const
inline

Returns the begin iterator of this string.

Returns
The begin iterator of this string.

This implemention is intended to support range base for loops and is required by C++ compilers. Do not use this operation directly.

◆ Begin() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_iterator Arp::BasicString< C, Alloc >::Begin ( ) const
inline

Returns the begin iterator of this string.

Returns
The begin iterator of this string.

◆ Capacity()

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::Capacity ( ) const
inline

Rceturns the capacity of this string.

The capacity of a string might differ from its size, because the string class acts like any other container class. If it is desired that a the capacity of string should be reduced to its size, call ShrinkToFit operation.

See also
ShrinkToFit

Use ShrinkToFit operation to reduce the capacity of a string to its size.

Returns
The capacity of this string.

◆ Compare() [1/6]

template<class C , class Alloc = std::allocator<C>>
int Arp::BasicString< C, Alloc >::Compare ( const CharType pOther) const
inline

Compares this string to the pOther string lexicographical.

Parameters
pOtherThe other C-string to compare this string to.
Returns
A negative value if this string is less than the pOther , a positive value if this string is greater than the <paramref name= "pOther" / >, or zero if the strings are equal.

◆ Compare() [2/6]

template<class C , class Alloc = std::allocator<C>>
int Arp::BasicString< C, Alloc >::Compare ( const SelfType other) const
inline

Compares this string to the other string lexicographical.

Parameters
otherThe other string to compare this string to.
Returns
A negative value if this string is less than the other , a positive value if this string is greater than the <paramref name= "other" / >, or zero if the strings are equal.

◆ Compare() [3/6]

template<class C , class Alloc = std::allocator<C>>
int Arp::BasicString< C, Alloc >::Compare ( size_type  offset,
size_type  count,
const CharType pOther 
) const
inline

Compares this string to the pOther string lexicographical.

Parameters
pOtherThe other C-string to compare this string to.
offsetThe position of the first character in this string to compare.
countThe number of characters of this string to compare.
Returns
A negative value if this string is less than the pOther , a positive value if this string is greater than the <paramref name= "pOther" / >, or zero if the strings are equal.

◆ Compare() [4/6]

template<class C , class Alloc = std::allocator<C>>
int Arp::BasicString< C, Alloc >::Compare ( size_type  offset,
size_type  count,
const CharType pOther,
size_type  countOther 
) const
inline

Compares a substring of this string to a substring of the pOther string lexicographical.

Parameters
pOtherThe other C-string to compare this string to.
offsetThe position of the first character in this string to compare.
countThe number of characters of this string to compare.
countOtherThe number of characters of the other string to compare.
Returns
A negative value if the substring of this string is less than the substring of the pOther string, a positive value if the substring of this string is greater than the substring of the pOther string, or zero if the substrings are equal.

◆ Compare() [5/6]

template<class C , class Alloc = std::allocator<C>>
int Arp::BasicString< C, Alloc >::Compare ( size_type  offset,
size_type  count,
const SelfType other 
) const
inline

Compares this string to the other string lexicographical.

Parameters
otherThe other string to compare this string to.
offsetThe position of the first character in this string to compare.
countThe number of characters of this string to compare.
Returns
A negative value if this string is less than the other , a positive value if this string is greater than the <paramref name= "other" / >, or zero if the strings are equal.

◆ Compare() [6/6]

template<class C , class Alloc = std::allocator<C>>
int Arp::BasicString< C, Alloc >::Compare ( size_type  offset,
size_type  count,
const SelfType other,
size_type  offsetOther,
size_type  countOther = NPos 
) const
inline

Compares a substring of this string to a substring of the other string lexicographical.

Parameters
otherThe other string to compare this string to.
offsetThe position of the first character in this string to compare.
countThe number of characters of this string to compare.
offsetOtherThe position of the first character in the other string to compare.
countOtherThe number of characters of the other string to compare.
Returns
A negative value if the substring of this string is less than the substring of the other string, a positive value if the substring of this string is greater than the substring of the other string, or zero if the substrings are equal.

◆ ConstBegin()

template<class C , class Alloc = std::allocator<C>>
const_iterator Arp::BasicString< C, Alloc >::ConstBegin ( ) const
inline

Returns the begin iterator of this const string.

Returns
The begin iterator of this const string.

◆ ConstEnd()

template<class C , class Alloc = std::allocator<C>>
const_iterator Arp::BasicString< C, Alloc >::ConstEnd ( ) const
inline

Returns the end iterator of this const string.

Returns
The end iterator of this const string.

◆ ConstReverseBegin()

template<class C , class Alloc = std::allocator<C>>
const_reverse_iterator Arp::BasicString< C, Alloc >::ConstReverseBegin ( ) const
inline

Returns the begin iterator of this const string for reverse iterating.

Returns
The begin iterator for reverse iterating.

◆ ConstReverseEnd()

template<class C , class Alloc = std::allocator<C>>
const_reverse_iterator Arp::BasicString< C, Alloc >::ConstReverseEnd ( ) const
inline

Returns the end iterator of this const string for reverse iterating.

Returns
The end iterator for reverse iterating.

◆ CStr()

template<class C , class Alloc = std::allocator<C>>
const CharType * Arp::BasicString< C, Alloc >::CStr ( ) const
inline

Gets the character data of this string.

Returns
The C-string of this string.

◆ end() [1/2]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::end ( )
inline

Returns the end iterator of this string.

Returns
The end iterator of this string.

This implemention is intended to support range base for loops and is required by C++ compilers. Do not use this operation directly.

◆ End() [1/2]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::End ( )
inline

Returns the end iterator of this string.

Returns
The end iterator of this string.

◆ end() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_iterator Arp::BasicString< C, Alloc >::end ( ) const
inline

Returns the end iterator of this string.

Returns
The end iterator of this string.

This implemention is intended to support range base for loops and is required by C++ compilers. Do not use this operation directly.

◆ End() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_iterator Arp::BasicString< C, Alloc >::End ( ) const
inline

Returns the end iterator of this string.

Returns
The end iterator of this string.

◆ EndWith() [1/2]

template<class C , class Alloc = std::allocator<C>>
bool Arp::BasicString< C, Alloc >::EndWith ( const CharType pChars) const
inline

Determines if this string ends with the pChars C-string.

Parameters
pCharsThe C-string to compare this string to.
Returns
true if this string ends with the pChars C-string, otherwise false.

◆ EndWith() [2/2]

template<class C , class Alloc = std::allocator<C>>
bool Arp::BasicString< C, Alloc >::EndWith ( const SelfType pattern) const
inline

Determines if this string starts with the pattern string.

Parameters
patternThe string to compare this string to.
Returns
true if this string starts with the pattern string, otherwise false.

◆ Erase() [1/4]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Erase ( const_iterator  first,
const_iterator  last 
)
inline

Erases a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to insert.
lastThe end iterator specifying the range of chars to insert.
Returns
An iterator which points to the first position behind erased chars, this is the end() iterator.

◆ Erase() [2/4]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Erase ( const_iterator  where)
inline

This operation erases a char from a string.

Parameters
whereThe start position from where the chars are erased. If this is the begin iterator the entire string is cleared.
Returns
An iterator which points to the first position behind erased chars, this is the end() iterator.

◆ Erase() [3/4]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Erase ( size_type  offset,
size_type  count 
)
inline

This operation erases chars from this string.

Parameters
offsetThe start position from where the chars are erased.
countThe number of chars to erase.
Returns
A reference to this instance.

◆ Erase() [4/4]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Erase ( size_type  offset = 0)
inline

This operation erases chars from this string.

Parameters
offsetThe start position from where the chars are erased. If this is 0 the entire string is cleared.
Returns
A reference to this instance.

◆ Find() [1/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::Find ( CharType  c,
size_type  offset = 0 
) const
inline

Finds the first char which equal to c .

Parameters
cThe char to search for.
offsetThe position at which to start the search.
Returns
The position of the first char matching c or NPos if the char could not be found.

◆ Find() [2/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::Find ( const CharType pChars,
size_type  offset,
size_type  count 
) const
inline

Finds the first substring which equal to pChars .

Parameters
pCharsThe C-string to search for.
offsetThe position at which to start the search.
countThe length of the substring to search for.
Returns
The position of the first char of the found substring or NPos if the substring could not be found.

◆ Find() [3/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::Find ( const CharType pChars,
size_type  offset = 0 
) const
inline

Finds the first substring which equal to pChars .

Parameters
pCharsThe C-string to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found substring or NPos if the substring could not be found.

◆ Find() [4/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::Find ( const SelfType pattern,
size_type  offset = 0 
) const
inline

Finds the first substring which equal to pattern .

Parameters
patternThe pattern to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found substring or NPos if the substring could not be found.

◆ FindFirstNotOf() [1/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindFirstNotOf ( CharType  c,
size_type  offset = 0 
) const
inline

Finds the first occurence of any character which is not equal to c .

Parameters
cThe character not to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found char or NPos if the char could not be found.
See also
Find(char, size_t)

This operation is equivalent to the corresponding Find operation

◆ FindFirstNotOf() [2/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindFirstNotOf ( const CharType pChars,
size_type  offset,
size_type  count 
) const
inline

Finds the first occurence of any character which is not in pChars .

Parameters
pCharsThe characters not to search for.
offsetThe position at which to start the search.
countThe length of the C-string identifying characters to search for.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindFirstNotOf() [3/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindFirstNotOf ( const CharType pChars,
size_type  offset = 0 
) const
inline

Finds the first occurence of any character which is not in pChars .

Parameters
pCharsThe characters not to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindFirstNotOf() [4/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindFirstNotOf ( const SelfType chars,
size_type  offset = 0 
) const
inline

Finds the first occurence of any character which is not in chars .

Parameters
charsThe characters not to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindFirstOf() [1/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindFirstOf ( CharType  c,
size_type  offset = 0 
) const
inline

Finds the first occurence of character c .

Parameters
cThe character to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found char or NPos if the char could not be found.
See also
Find(char, size_t)

This operation is equivalent to the corresponding Find operation

◆ FindFirstOf() [2/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindFirstOf ( const CharType pChars,
size_type  offset,
size_type  count 
) const
inline

Finds the first occurence of any character in pChars .

Parameters
pCharsThe characters to search for.
offsetThe position at which to start the search.
countThe length of the C-string identifying characters to search for.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindFirstOf() [3/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindFirstOf ( const CharType pChars,
size_type  offset = 0 
) const
inline

Finds the first occurence of any character in pChars .

Parameters
pCharsThe characters to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindFirstOf() [4/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindFirstOf ( const SelfType chars,
size_type  offset = 0 
) const
inline

Finds the first occurence of any character in chars .

Parameters
charsThe characters to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindLastNotOf() [1/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindLastNotOf ( CharType  c,
size_type  pos = NPos 
) const
inline

Finds the last occurence of any character which is not equal to c .

Parameters
cThe character not to search for.
posPosition of the last character in the string to be considered in the search.
Returns
The position of the first char of the found char or NPos if the char could not be found.
See also
Find(char, size_t)

This operation is equivalent to the corresponding Find operation

◆ FindLastNotOf() [2/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindLastNotOf ( const CharType pChars,
size_type  pos,
size_type  count 
) const
inline

Finds the last occurence of any character which is not in pChars .

Parameters
pCharsThe characters not to search for.
posPosition of the last character in the string to be considered in the search.
countThe length of the C-string identifying characters to search for.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindLastNotOf() [3/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindLastNotOf ( const CharType pChars,
size_type  pos = NPos 
) const
inline

Finds the last occurence of any character which is not in pChars .

Parameters
pCharsThe characters not to search for.
posPosition of the last character in the string to be considered in the search.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindLastNotOf() [4/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindLastNotOf ( const SelfType chars,
size_type  pos = NPos 
) const
inline

Finds the last occurence of any character which is not in chars .

Parameters
charsThe characters not to search for.
posPosition of the last character in the string to be considered in the search.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindLastOf() [1/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindLastOf ( CharType  c,
size_type  pos = NPos 
) const
inline

Finds the last occurence of character c .

Parameters
cThe character to search for.
posPosition of the last character in the string to be considered in the search.
Returns
The position of the first char of the found char or NPos if the char could not be found.
See also
ReverseFind(char, size_t)

This operation is equivalent to the corresponding ReverseFind operation.

◆ FindLastOf() [2/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindLastOf ( const CharType pChars,
size_type  pos,
size_type  count 
) const
inline

Finds the last occurence of any character in pChars .

Parameters
pCharsThe characters to search for.
posPosition of the last character in the string to be considered in the search.
countThe length of the C-string identifying characters to search for.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindLastOf() [3/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindLastOf ( const CharType pChars,
size_type  pos = NPos 
) const
inline

Finds the last occurence of any character in pChars .

Parameters
pCharsThe characters to search for.
posPosition of the last character in the string to be considered in the search.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ FindLastOf() [4/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::FindLastOf ( const SelfType chars,
size_type  pos = NPos 
) const
inline

Finds the last occurence of any character in chars .

Parameters
charsThe characters to search for.
posPosition of the last character in the string to be considered in the search.
Returns
The position of the first char of the found char or NPos if none of the chars could not be found.

◆ Format() [1/2]

template<class C , class Alloc = std::allocator<C>>
template<typename... Args>
static SelfType Arp::BasicString< C, Alloc >::Format ( const char *  format,
const Args &...  args 
)
inlinestatic

Formats the format C-string using the .NET/Python syntax with the given variadic arguments.

Parameters
formatThe C-string to format using .NET/Python syntax for placeholders like {}, {1} or {2}.
argsThe variadic arguments to format into the format string.
Returns
The formatted string.

◆ Format() [2/2]

template<class C , class Alloc = std::allocator<C>>
template<typename... Args>
static SelfType Arp::BasicString< C, Alloc >::Format ( const SelfType format,
const Args &...  args 
)
inlinestatic

Formats the format string using the .NET/Python syntax with the given variadic arguments.

Parameters
formatThe string to format using .NET/Python syntax for placeholders like {}, {1} or {2}.
argsThe variadic arguments to format into the format string.
Returns
The formatted string.

◆ Front() [1/2]

template<class C , class Alloc = std::allocator<C>>
reference Arp::BasicString< C, Alloc >::Front ( )
inline

Returns a reference to the first character in the string.

The behavior is undefined if this string is empty.

Returns
A reference to the first character in the string.

◆ Front() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_reference Arp::BasicString< C, Alloc >::Front ( ) const
inline

Returns a const reference to the first character in the string.

The behavior is undefined if this string is empty.

Returns
A const reference to the first character in the string.

◆ GetAllocator()

template<class C , class Alloc = std::allocator<C>>
Allocator Arp::BasicString< C, Alloc >::GetAllocator ( ) const
inline

Gets the allocator of this string.

Returns
The allocator of this string.

◆ GetBaseString()

template<class C , class Alloc = std::allocator<C>>
const BaseString & Arp::BasicString< C, Alloc >::GetBaseString ( ) const
inline

Gets the basic std string.

Returns
The basic std string.

◆ Insert() [1/11]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Insert ( const_iterator  where,
CharType  c 
)
inline

Inserts character c at position where .

Parameters
whereThe position where to insert the char.
cThe char to insert into this string.
Returns
An iterator which points to the position behind inserted character.

◆ Insert() [2/11]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Insert ( const_iterator  where,
const_iterator  first,
const_iterator  last 
)
inline

Inserts a range of chars [first;last) at position where .

Parameters
whereThe position where to insert the char.
firstThe begin iterator specifying the range of chars to insert.
lastThe end iterator specifying the range of chars to insert.
Returns
An iterator which points to the position behind inserted character.

◆ Insert() [3/11]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Insert ( const_iterator  where,
const_pointer  first,
const_pointer  last 
)
inline

Inserts a range of chars [first;last) at position where .

Parameters
whereThe position where to insert the char.
firstThe begin iterator specifying the range of chars to insert.
lastThe end iterator specifying the range of chars to insert.
Returns
An iterator which points to the position behind inserted character.

◆ Insert() [4/11]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Insert ( const_iterator  where,
iterator  first,
iterator  last 
)
inline

Inserts a range of chars [first;last) at position where .

Parameters
whereThe position where to insert the char.
firstThe begin iterator specifying the range of chars to insert.
lastThe end iterator specifying the range of chars to insert.
Returns
An iterator which points to the position behind inserted character.

◆ Insert() [5/11]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Insert ( const_iterator  where,
size_type  count,
CharType  c 
)
inline

Inserts character c at position where .

Parameters
whereThe position where to insert the char.
countThe number of chars to insert.
cThe char used to insert into this string.
Returns
An iterator which points to the position behind inserted character.

◆ Insert() [6/11]

template<class C , class Alloc = std::allocator<C>>
iterator Arp::BasicString< C, Alloc >::Insert ( const_iterator  where,
std::initializer_list< CharType arg 
)
inline

This operation inserts each of the characters in the argument to this string, in the same order.

Parameters
whereThe position to insert the character at.
argThe initializer list of chars to insert.
Returns
An iterator which points to the position behind inserted characters.

◆ Insert() [7/11]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Insert ( size_type  offset,
const CharType pChars 
)
inline

This operation inserts the as argument passed string.

Parameters
offsetThe start position where to insert the chars.
pCharsThe C-string to insert.
Returns
A reference to this instance.

◆ Insert() [8/11]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Insert ( size_type  offset,
const CharType pChars,
size_type  count 
)
inline

This operation inserts the as argument passed string partially.

Parameters
offsetThe start position where to insert the chars.
pCharsThe C-string to insert partially.
countThe number of chars to insert from pChars .
Returns
A reference to this instance.

◆ Insert() [9/11]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Insert ( size_type  offset,
const SelfType arg 
)
inline

This operation inserts the the argument at the given position.

Parameters
argThe argument to insert.
offsetThe position to insert argument at.
Returns
A reference to this instance.

◆ Insert() [10/11]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Insert ( size_type  offset,
const SelfType arg,
size_type  argOffset,
size_type  count = NPos 
)
inline

This operation inserts the as argument passed string partially.

Parameters
offsetThe start position where to insert the chars.
argThe argument to insert partially.
argOffsetThe offset of arg to insert the chars from.
countThe number of chars to insert from arg .
Returns
A reference to this instance.

◆ Insert() [11/11]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Insert ( size_type  offset,
size_type  count,
CharType  c 
)
inline

Inserts count consecutive copies of character c at position offset .

Parameters
offsetThe start position where to insert the chars.
countThe number of chars to insert.
cThe char used to insert into this string.
Returns
A reference to this instance.

◆ IsEmpty()

template<class C , class Alloc = std::allocator<C>>
bool Arp::BasicString< C, Alloc >::IsEmpty ( void  ) const
inline

Determines if this string is empty.

Returns
true if this string is empty, otherwise false.

◆ Length()

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::Length ( ) const
inline

Returns the number of char elements in this string.

This operation does not count the null terminator. Furtermore it does not return the number of characters for other encodings than ASCII encoding. E.g. if the encoding is UTF8, the number of characters might differs from the length or size of the string.

See also
Size

Returns the same value than the Size operation.

Returns
The number of char elements in this string.

◆ operator const BaseString &()

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::operator const BaseString & ( ) const
inline

Converts this string implicitly to a std string.

Returns
The basic std string.

◆ operator const CharType *()

template<class C , class Alloc = std::allocator<C>>
Arp::BasicString< C, Alloc >::operator const CharType * ( ) const
inline

Converts this string implicitly to a C-string.

Returns
The C-string of this string.

◆ operator!=() [1/3]

template<class CharType , class Alloc >
bool Arp::operator!= ( const BasicString< CharType, Alloc > &  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string on inequality.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the strings are not equal, otherwise false.

◆ operator!=() [2/3]

template<class CharType , class Alloc >
bool Arp::operator!= ( const BasicString< CharType, Alloc > &  left,
const CharType *  right 
)
inline

Compares the left string to the right string on inequality.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the strings are not equal, otherwise false.

◆ operator!=() [3/3]

template<class CharType , class Alloc >
bool Arp::operator!= ( const CharType *  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string on inequality.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the strings are not equal, otherwise false.

◆ operator+() [1/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( BasicString< CharType, Alloc > &&  left,
BasicString< CharType, Alloc > &&  right 
)
inline

Concatenates the right string to the left string.

Parameters
leftThe string to append the right string to.
rightThe string to append to the left string.
Returns
The concatenated string.

◆ operator+() [2/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( BasicString< CharType, Alloc > &&  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Concatenates the right string to the left string.

Parameters
leftThe string to append the right string to.
rightThe string to append to the left string.
Returns
The concatenated string.

◆ operator+() [3/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( BasicString< CharType, Alloc > &&  left,
const CharType *  right 
)
inline

Concatenates the right string to the left string.

Parameters
leftThe string to append the right string to.
rightThe string to append to the left string.
Returns
The concatenated string.

◆ operator+() [4/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( BasicString< CharType, Alloc > &&  left,
const CharType  right 
)
inline

Concatenates the right character to the left string.

Parameters
leftThe string to append the right character to.
rightThe character to append to the left string.
Returns
The concatenated string.

◆ operator+() [5/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( const BasicString< CharType, Alloc > &  left,
BasicString< CharType, Alloc > &&  right 
)
inline

Concatenates the right string to the left string.

Parameters
leftThe string to append the right string to.
rightThe string to append to the left string.
Returns
The concatenated string.

◆ operator+() [6/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( const BasicString< CharType, Alloc > &  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Concatenates the right string to the left string.

Parameters
leftThe string to append the right string to.
rightThe string to append to the left string.
Returns
The concatenated string.

◆ operator+() [7/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( const BasicString< CharType, Alloc > &  left,
const CharType *  right 
)
inline

Concatenates the right C-string to the left string.

Parameters
leftThe string to append the right C-string to.
rightThe C-string to append to the left string.
Returns
The concatenated string.

◆ operator+() [8/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( const BasicString< CharType, Alloc > &  left,
const CharType  right 
)
inline

Concatenates the right character to the left string.

Parameters
leftThe string to append the right character to.
rightThe character to append to the left string.
Returns
The concatenated string.

◆ operator+() [9/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( const CharType *  left,
BasicString< CharType, Alloc > &&  right 
)
inline

Concatenates the right string to the left string.

Parameters
leftThe string to append the right string to.
rightThe string to append to the left string.
Returns
The concatenated string.

◆ operator+() [10/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( const CharType *  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Concatenates the right string to the left string.

Parameters
leftThe C-string to append the right string to.
rightThe string to append to the left C-string.
Returns
The concatenated string.

◆ operator+() [11/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( const CharType  left,
BasicString< CharType, Alloc > &&  right 
)
inline

Concatenates the right string to the left character.

Parameters
leftThe character to append the right string to.
rightThe string to append to the left character.
Returns
The concatenated string.

◆ operator+() [12/12]

template<class CharType , class Alloc >
BasicString< CharType, Alloc > Arp::operator+ ( const CharType  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Concatenates the right string to the left character.

Parameters
leftThe character to append the right string to.
rightThe string to append to the left character.
Returns
The concatenated string.

◆ operator+=() [1/4]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator+= ( CharType  c)
inline

This assignment operator appends the the right-hand-side operand to this string.

Parameters
cThe character to append.
Returns
A reference to this instance.

◆ operator+=() [2/4]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator+= ( const CharType right)
inline

This assignment operator appends the the right-hand-side operand to this string.

Parameters
rightThe argument to append.
Returns
A reference to this instance.

◆ operator+=() [3/4]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator+= ( const SelfType right)
inline

This assignment operator appends the the right-hand-side operand to this string.

Parameters
rightThe argument to append.
Returns
A reference to this instance.

◆ operator+=() [4/4]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator+= ( std::initializer_list< CharType right)
inline

This assignment operator appends each of the characters in the right-hand-side operand to this string, in the same order.

Parameters
rightThe initializer list of chars to append.
Returns
A reference to this instance.

◆ operator<() [1/3]

template<class CharType , class Alloc >
bool Arp::operator< ( const BasicString< CharType, Alloc > &  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is less than the right string, otherwise false.

◆ operator<() [2/3]

template<class CharType , class Alloc >
bool Arp::operator< ( const BasicString< CharType, Alloc > &  left,
const CharType *  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is less than the right string, otherwise false.

◆ operator<() [3/3]

template<class CharType , class Alloc >
bool Arp::operator< ( const CharType *  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is less than the right string, otherwise false.

◆ operator<<()

template<class CharType , class Alloc >
std::ostream & Arp::operator<< ( std::ostream &  os,
const BasicString< CharType, Alloc > &  right 
)
inline

Streams the right string to the outstream os .

Parameters
osThe outstream to stream to.
rightThe string to stream.
Returns
The outstream os .

◆ operator<=() [1/3]

template<class CharType , class Alloc >
bool Arp::operator<= ( const BasicString< CharType, Alloc > &  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is less or equal than the right string, otherwise false.

◆ operator<=() [2/3]

template<class CharType , class Alloc >
bool Arp::operator<= ( const BasicString< CharType, Alloc > &  left,
const CharType *  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is less or equal than the right string, otherwise false.

◆ operator<=() [3/3]

template<class CharType , class Alloc >
bool Arp::operator<= ( const CharType *  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is less or equal than the right string, otherwise false.

◆ operator=() [1/5]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator= ( CharType  c)
inline

This assignment operator copies the right-hand-side operand to this string.

Parameters
cThe character to copy.
Returns
A reference to this instance.

◆ operator=() [2/5]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator= ( const CharType right)
inline

This assignment operator copies the right-hand-side operand to this string.

Parameters
rightThe argument to copy.
Returns
A reference to this instance.

◆ operator=() [3/5]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator= ( const SelfType right)
default

This assignment operator copies the the right-hand-side operand to this string.

Parameters
rightThe argument to copy.
Returns
A reference to this instance.

◆ operator=() [4/5]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator= ( SelfType &&  right)
defaultnoexcept

This move assignment operator moves the right-hand-side operand to this string.

Parameters
rightThe right-hand-side argument to move.
Returns
A reference to this instance.

◆ operator=() [5/5]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::operator= ( std::initializer_list< CharType right)
inline

This assignment operator copies each of the characters in the right-hand-side operand to this string, in the same order.

Parameters
rightThe initializer list of chars to copy.
Returns
A reference to this instance.

◆ operator==() [1/3]

template<class CharType , class Alloc >
bool Arp::operator== ( const BasicString< CharType, Alloc > &  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string on equality.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the strings are equal, otherwise false.

◆ operator==() [2/3]

template<class CharType , class Alloc >
bool Arp::operator== ( const BasicString< CharType, Alloc > &  left,
const CharType *  right 
)
inline

Compares the left string to the right string on equality.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the strings are equal, otherwise false.

◆ operator==() [3/3]

template<class CharType , class Alloc >
bool Arp::operator== ( const CharType *  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string on equality.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the strings are equal, otherwise false.

◆ operator>() [1/3]

template<class CharType , class Alloc >
bool Arp::operator> ( const BasicString< CharType, Alloc > &  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is greater than the right string, otherwise false.

◆ operator>() [2/3]

template<class CharType , class Alloc >
bool Arp::operator> ( const BasicString< CharType, Alloc > &  left,
const CharType *  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is greater than the right string, otherwise false.

◆ operator>() [3/3]

template<class CharType , class Alloc >
bool Arp::operator> ( const CharType *  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is greater than the right string, otherwise false.

◆ operator>=() [1/3]

template<class CharType , class Alloc >
bool Arp::operator>= ( const BasicString< CharType, Alloc > &  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is greater or equal than the right string, otherwise false.

◆ operator>=() [2/3]

template<class CharType , class Alloc >
bool Arp::operator>= ( const BasicString< CharType, Alloc > &  left,
const CharType *  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is greater or equal than the right string, otherwise false.

◆ operator>=() [3/3]

template<class CharType , class Alloc >
bool Arp::operator>= ( const CharType *  left,
const BasicString< CharType, Alloc > &  right 
)
inline

Compares the left string to the right string.

Parameters
leftThe string to compare to the right string.
rightThe string to compare to the left string.
Returns
true if the left string is greater or equal than the right string, otherwise false.

◆ operator>>()

template<class CharType , class Alloc >
std::istream & Arp::operator>> ( std::istream &  is,
BasicString< CharType, Alloc > &  right 
)
inline

Streams the instream is into the right string.

Parameters
isThe instream to stream from.
rightThe string to stream into.
Returns
The instream is .

◆ operator[]() [1/2]

template<class C , class Alloc = std::allocator<C>>
reference Arp::BasicString< C, Alloc >::operator[] ( size_type  offset)
inline

Returns a reference to the character at position offset .

Parameters
offsetThe index of the character to refer.

The behavior is undefined offset is out of range.

Returns
A reference to the character at position offset .

◆ operator[]() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_reference Arp::BasicString< C, Alloc >::operator[] ( size_type  offset) const
inline

Returns a const reference to the character at position offset .

Parameters
offsetThe index of the character to refer.

The behavior is undefined offset is out of range.

Returns
A const reference to the character at position offset .

◆ PopBack()

template<class C , class Alloc = std::allocator<C>>
void Arp::BasicString< C, Alloc >::PopBack ( )
inline

Removes the character at the end of this string.

if this string is empty, the operation has no effect.

◆ PushBack()

template<class C , class Alloc = std::allocator<C>>
void Arp::BasicString< C, Alloc >::PushBack ( CharType  c)
inline

Appends the character c to this string.

Parameters
cThe char to append to this string.

◆ Replace() [1/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
const CharType pChars 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
pCharsThe C-string to insert.
Returns
A reference to this instance.

◆ Replace() [2/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
const CharType pChars,
size_type  count 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
pCharsThe C-string to insert.
countThe number of chars of pChars to insert.
Returns
A reference to this instance.

◆ Replace() [3/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
const SelfType arg 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
argThe string to insert.
Returns
A reference to this instance.

◆ Replace() [4/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
const_iterator  first2,
const_iterator  last2 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
first2The begin iterator specifying the range of chars to insert.
last2The end iterator specifying the range of chars to insert.
Returns
A reference to this instance.

◆ Replace() [5/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
const_pointer  first2,
const_pointer  last2 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
first2The begin pointer specifying the range of chars to insert.
last2The end pointer specifying the range of chars to insert.
Returns
A reference to this instance.

◆ Replace() [6/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
iterator  first2,
iterator  last2 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
first2The begin iterator specifying the range of chars to insert.
last2The end iterator specifying the range of chars to insert.
Returns
A reference to this instance.

◆ Replace() [7/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
pointer  first2,
pointer  last2 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
first2The begin pointer specifying the range of chars to insert.
last2The end pointer specifying the range of chars to insert.
Returns
A reference to this instance.

◆ Replace() [8/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
size_type  count,
CharType  c 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
countThe number of characters c to insert.
cThe character to insert.
Returns
A reference to this instance.

◆ Replace() [9/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( const_iterator  first,
const_iterator  last,
std::initializer_list< CharType chars 
)
inline

Replaces a range of chars [first;last).

Parameters
firstThe begin iterator specifying the range of chars to replace.
lastThe end iterator specifying the range of chars to replace.
charsThe list of chars to insert.
Returns
A reference to this instance.

◆ Replace() [10/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( size_type  offset,
size_type  length,
const CharType pChars 
)
inline

Replaces a range of chars.

Parameters
offsetThe start position of the chars to replace.
lengthThe number of chars to replace.
pCharsThe C-string to insert.
Returns
A reference to this instance.

◆ Replace() [11/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( size_type  offset,
size_type  length,
const CharType pChars,
size_type  count 
)
inline

Replaces a range of chars.

Parameters
offsetThe start position of the chars to replace.
lengthThe number of chars to replace.
pCharsThe C-string to insert partially.
countThe number of chars of pChars to insert.
Returns
A reference to this instance.

◆ Replace() [12/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( size_type  offset,
size_type  length,
const SelfType arg 
)
inline

Replaces a range of chars.

Parameters
offsetThe start position of the chars to replace.
lengthThe number of chars to replace.
argThe string to insert.
Returns
A reference to this instance.

◆ Replace() [13/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( size_type  offset,
size_type  length,
const SelfType arg,
size_type  offsetArg,
size_type  count = NPos 
)
inline

Replaces a range of chars.

Parameters
offsetThe start position of the chars to replace.
lengthThe number of chars to replace.
argThe string to insert partially.
offsetArgThe start position of the chars of the string to insert.
countThe number of chars of arg to insert.
Returns
A reference to this instance.

◆ Replace() [14/14]

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::Replace ( size_type  offset,
size_type  length,
size_type  count,
CharType  c 
)
inline

Replaces a range of chars by a character.

Parameters
offsetThe start position of the chars to replace.
lengthThe number of chars to replace.
countThe number of chars c to insert.
cThe character to insert count times.
Returns
A reference to this instance.

◆ ReplaceAll()

template<class C , class Alloc = std::allocator<C>>
SelfType & Arp::BasicString< C, Alloc >::ReplaceAll ( const SelfType pattern,
const SelfType replacement 
)
inline

Replaces a given pattern by a replacement string.

Parameters
patternThe pattern to search for replacing.
replacementThe replacement string for all matches.
Returns
A reference to this instance.

This is an extension to the C++ standard operations

◆ Reserve()

template<class C , class Alloc = std::allocator<C>>
void Arp::BasicString< C, Alloc >::Reserve ( size_type  newCapacity = 0)
inline

Reserves memory upto the specified newCapacity .

Parameters
newCapacityThe new capacity of this string.

If the actual capacity is less than newCapacity than the internal storage is reallocated to fit the new capacity. If the actual capacity is greater than newCapacity and greater than the current size, this is a non-binding shrink request. If the actual capacity is greater than newCapacity and less than the current size, this is a non-binding shrink-to-fit request.

◆ Resize() [1/2]

template<class C , class Alloc = std::allocator<C>>
void Arp::BasicString< C, Alloc >::Resize ( size_type  newSize)
inline

Resizes this string to the specified new size.

Parameters
newSizeThe new size of this string.

If the actual size is less than newSize than zero'ed characters are appended. If the actual size is greater than newSize than the size of the string is shrinked to the new size.

◆ Resize() [2/2]

template<class C , class Alloc = std::allocator<C>>
void Arp::BasicString< C, Alloc >::Resize ( size_type  newSize,
CharType  c 
)
inline

Resizes this string to the specified new size.

Parameters
newSizeThe new size of this string.
cThe character to use for initializing added chars.

If the actual size is less than newSize than the new characters are appended and initialized to c . If the actual size is greater than newSize than the size of the string is shrinked to the new size.

◆ ReverseBegin() [1/2]

template<class C , class Alloc = std::allocator<C>>
reverse_iterator Arp::BasicString< C, Alloc >::ReverseBegin ( )
inline

Returns the begin iterator of this string for reverse iterating.

Returns
The begin iterator for reverse iterating.

◆ ReverseBegin() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_reverse_iterator Arp::BasicString< C, Alloc >::ReverseBegin ( ) const
inline

Returns the begin iterator of this string for reverse iterating.

Returns
The begin iterator for reverse iterating.

◆ ReverseEnd() [1/2]

template<class C , class Alloc = std::allocator<C>>
reverse_iterator Arp::BasicString< C, Alloc >::ReverseEnd ( )
inline

Returns the end iterator of this string for reverse iterating.

Returns
The end iterator for reverse iterating.

◆ ReverseEnd() [2/2]

template<class C , class Alloc = std::allocator<C>>
const_reverse_iterator Arp::BasicString< C, Alloc >::ReverseEnd ( ) const
inline

Returns the end iterator of this string for reverse iterating.

Returns
The end iterator for reverse iterating.

◆ ReverseFind() [1/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::ReverseFind ( CharType  c,
size_type  offset = NPos 
) const
inline

Finds the last char which equal to c .

Parameters
cThe char to search for.
offsetThe position at which to start the search.
Returns
The position of the first char matching c or NPos if the char could not be found.

◆ ReverseFind() [2/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::ReverseFind ( const CharType pChars,
size_type  offset,
size_type  count 
) const
inline

Finds the last substring which equal to pChars .

Parameters
pCharsThe C-string to search for.
offsetThe position at which to start the search.
countThe length of the substring to search for.
Returns
The position of the first char of the found substring or NPos if the substring could not be found.

◆ ReverseFind() [3/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::ReverseFind ( const CharType pChars,
size_type  offset = NPos 
) const
inline

Finds the last substring which equal to pChars .

Parameters
pCharsThe C-string to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found substring or NPos if the substring could not be found.

◆ ReverseFind() [4/4]

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::ReverseFind ( const SelfType pattern,
size_type  offset = NPos 
) const
inline

Finds the last substring which equal to pattern .

Parameters
patternThe pattern to search for.
offsetThe position at which to start the search.
Returns
The position of the first char of the found substring or NPos if the substring could not be found.

◆ Size()

template<class C , class Alloc = std::allocator<C>>
size_type Arp::BasicString< C, Alloc >::Size ( ) const
inline

Returns the number of char elements in this string.

This operation does not count the null terminator. Furtermore it does not return the number of characters for other encodings than ASCII encoding. E.g. if the encoding is UTF8, the number of characters might differs from the length or size of the string.

See also
Length

Returns the same value than the Length operation.

Returns
The number of char elements in this string.

◆ Split() [1/2]

template<class C , class Alloc = std::allocator<C>>
Tokens Arp::BasicString< C, Alloc >::Split ( char  delimiter,
bool  trimTokens = true,
bool  removeEmptyTokens = true 
) const
inline

Splits this string into tokens using the specified delimiter characters (multiple).

Parameters
delimiterThe delimiter character to search for when splitting this string.
trimTokensIf set to true, the resulting tokens are trimmed from whitespaces.
removeEmptyTokensIf set to true, the empty tokens are omitted.
Returns
A container of string containing the resulting tokens.

◆ Split() [2/2]

template<class C , class Alloc = std::allocator<C>>
Tokens Arp::BasicString< C, Alloc >::Split ( const char  delimiters[],
size_t  delimitersCount,
bool  trimTokens = true,
bool  removeEmptyTokens = true 
) const
inline

Splits this string into tokens using the specified delimiter characters (multiple).

Parameters
delimitersThe delimiters to search for when splitting this string.
delimitersCountThe number of delimiter characters in delimiters .
trimTokensIf set to true, the resulting tokens are trimmed from whitespaces.
removeEmptyTokensIf set to true, the empty tokens are omitted.
Returns
A container of string containing the resulting tokens.

◆ SplitByWord()

template<class C , class Alloc = std::allocator<C>>
Tokens Arp::BasicString< C, Alloc >::SplitByWord ( const SelfType delimiter,
bool  trimTokens = true,
bool  removeEmptyTokens = true 
) const
inline

Splits this string into tokens using the specified (single) delimiter string.

Parameters
delimiterThe (single) delimiter string to search for when splitting this string.
trimTokensIf set to true, the resulting tokens are trimmed from whitespaces.
removeEmptyTokensIf set to true, the empty tokens are omitted.
Returns
A container of strings containing the resulting tokens.

◆ StartWith() [1/2]

template<class C , class Alloc = std::allocator<C>>
bool Arp::BasicString< C, Alloc >::StartWith ( const CharType pChars) const
inline

Determines if this string starts with the pChars C-string.

Parameters
pCharsThe C-string to compare this string to.
Returns
true if this string starts with the pChars C-string, otherwise false.

◆ StartWith() [2/2]

template<class C , class Alloc = std::allocator<C>>
bool Arp::BasicString< C, Alloc >::StartWith ( const SelfType pattern) const
inline

Determines if this string starts with the pattern string.

Parameters
patternThe string to compare this string to.
Returns
true if this string starts with the pattern string, otherwise false.

◆ Substr()

template<class C , class Alloc = std::allocator<C>>
SelfType Arp::BasicString< C, Alloc >::Substr ( size_type  offset = 0,
size_type  count = NPos 
) const
inline

Gets a substring of this string.

Parameters
offsetThe position of the first character in this string to return as substring.
countThe number of characters of this string to return as substring.
Returns
The specified substring of this string.

◆ swap()

template<class CharType , class Alloc >
void Arp::swap ( BasicString< CharType, Alloc > &  left,
BasicString< CharType, Alloc > &  right 
)
inlinenoexcept

Swaps the content of the left string with the content of the right string.

Parameters
leftThe first string to swap.
rightThe second string to swap.

◆ Swap()

template<class C , class Alloc = std::allocator<C>>
void Arp::BasicString< C, Alloc >::Swap ( SelfType other)
inline

Swaps the content of this string with the content of the other string.

Parameters
otherThe position of the first character in this string to return as substring.

◆ ToBytes()

template<class C , class Alloc = std::allocator<C>>
Bytes Arp::BasicString< C, Alloc >::ToBytes ( ) const
inline

Copies this string to a byte array.

Returns
The byte array containing a copy of this string as bytes.

◆ Trim()

template<class C , class Alloc = std::allocator<C>>
SelfType Arp::BasicString< C, Alloc >::Trim ( ) const
inline

Removes left and rigth appended white-spaces from this string

Returns
A container of string containing the resulting tokens.

◆ TrimLeft()

template<class C , class Alloc = std::allocator<C>>
SelfType Arp::BasicString< C, Alloc >::TrimLeft ( ) const
inline

Removes left appended white-spaces from this string

Returns
A container of string containing the resulting tokens.

◆ TrimRight()

template<class C , class Alloc = std::allocator<C>>
SelfType Arp::BasicString< C, Alloc >::TrimRight ( ) const
inline

Removes right appended white-spaces from this string

Returns
A container of string containing the resulting tokens.