[section:boost__static_strings__basic_static_string basic_static_string] A fixed-capacity string. [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, typename CharT, typename Traits = std::char_traits> class basic_static_string ``` [heading Types] [table [[Name][Description]] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.const_iterator const_iterator]] ] [ The constant iterator type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.const_pointer const_pointer]] ] [ The constant pointer type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.const_reference const_reference]] ] [ The constant reference type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.const_reverse_iterator const_reverse_iterator]] ] [ The constant reverse iterator type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.difference_type difference_type]] ] [ The difference type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.iterator iterator]] ] [ The iterator type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.pointer pointer]] ] [ The pointer type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.reference reference]] ] [ The reference type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.reverse_iterator reverse_iterator]] ] [ The reverse iterator type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.size_type size_type]] ] [ The size type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.string_view_type string_view_type]] ] [ The string view type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.traits_type traits_type]] ] [ The traits type. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.value_type value_type]] ] [ The character type. ] ] ] [heading Member Functions] [table [[Name][Description]] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.append append]] ] [ Append to the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.assign assign]] ] [ Assign to the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.at at]] ] [ Access a character with bounds checking. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.back back]] ] [ Return the last character. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string basic_static_string]] ] [ Constructor. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.begin begin]] ] [ Return an iterator to the beginning. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.c_str c_str]] ] [ Return a pointer to the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.capacity capacity]] ] [ Return the number of characters that can be stored. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.cbegin cbegin]] ] [ Return an iterator to the beginning. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.cend cend]] ] [ Return an iterator to the end. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.clear clear]] ] [ Clear the contents. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.compare compare]] ] [ Compare a string with the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.copy copy]] ] [ Copy a substring to another string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.crbegin crbegin]] ] [ Return a reverse iterator to the beginning. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.crend crend]] ] [ Return a reverse iterator to the end. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.data data]] ] [ Return a pointer to the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.empty empty]] ] [ Return if the string is empty. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.end end]] ] [ Return an iterator to the end. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.ends_with ends_with]] ] [ Return whether the string ends with a string. Return whether the string ends with a character. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.erase erase]] ] [ Erase from the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.find find]] ] [ Find the first occurrence of a string within the string. Find the first occurrence of a character within the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of find_first_not_of]] ] [ Find the first occurrence of a character not within the string. Find the first occurrence of any of the characters not within the string. Find the first occurrence of a character not equal to `c`. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.find_first_of find_first_of]] ] [ Find the first occurrence of any of the characters within the string. Find the first occurrence of a character within the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of find_last_not_of]] ] [ Find the last occurrence of a character not within the string. Find the last occurrence of a character not equal to `c`. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.find_last_of find_last_of]] ] [ Find the last occurrence of any of the characters within the string. Find the last occurrence of a character within the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.front front]] ] [ Return the first character. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.insert insert]] ] [ Insert into the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.length length]] ] [ Return the size of the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.max_size max_size]] ] [ Return the number of characters that can be stored. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.operator_string_view_type operator string_view_type]] ] [ Convert to a string view referring to the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_ operator+=]] ] [ Append to the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.operator_eq_ operator=]] ] [ Assign to the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.operator_lb__rb_ operator\[\]]] ] [ Access a character. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.pop_back pop_back]] ] [ Remove the last character. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.push_back push_back]] ] [ Append a character. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.rbegin rbegin]] ] [ Return a reverse iterator to the beginning. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.rend rend]] ] [ Return a reverse iterator to the end. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.replace replace]] ] [ Replace a part of the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.reserve reserve]] ] [ Increase the capacity. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.resize resize]] ] [ Change the size of the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.rfind rfind]] ] [ Find the last occurrence of a string within the string. Find the last occurrence of a character within the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.shrink_to_fit shrink_to_fit]] ] [ Request the removal of unused capacity. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.size size]] ] [ Return the size of the string. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.starts_with starts_with]] ] [ Return whether the string begins with a string. Return whether the string begins with a character. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.substr substr]] ] [ Return a substring. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.subview subview]] ] [ Return a string view of a substring. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.swap swap]] ] [ Swap two strings. ] ] ] [heading Data Members] [table [[Name][Description]] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.npos npos]] ] [ A special index. ] ] [ [[*[link static_string.ref.boost__static_strings__basic_static_string.static_capacity static_capacity]] ] [ Maximum size of the string excluding any null terminator. ] ] ] [heading Description] These objects behave like `std::string` except that the storage is not dynamically allocated but rather fixed in size, and stored in the object itself. These strings offer performance advantages when an algorithm can execute with a reasonable upper limit on the size of a value. [heading Aliases] The following alias templates are provided for convenience: ``` template using static_string = basic_static_string>; ``` ``` template using static_wstring = basic_static_string>; ``` ``` template using static_u16string = basic_static_string>; ``` ``` template using static_u32string = basic_static_string>; ``` Addtionally, the alias template `static_u8string` is provided in C++20 ``` template using static_u8string = basic_static_string>; ``` [heading See Also] [link static_string.ref.boost__static_strings__to_static_string.overload1 `to_static_string`] [section:traits_type basic_static_string::traits_type] [indexterm2 traits_type..basic_static_string] The traits type. [heading Synopsis] ``` using traits_type = Traits; ``` [heading Description] [endsect] [section:value_type basic_static_string::value_type] [indexterm2 value_type..basic_static_string] The character type. [heading Synopsis] ``` using value_type = typename traits_type::char_type; ``` [heading Description] [endsect] [section:size_type basic_static_string::size_type] [indexterm2 size_type..basic_static_string] The size type. [heading Synopsis] ``` using size_type = std::size_t; ``` [heading Description] [endsect] [section:difference_type basic_static_string::difference_type] [indexterm2 difference_type..basic_static_string] The difference type. [heading Synopsis] ``` using difference_type = std::ptrdiff_t; ``` [heading Description] [endsect] [section:pointer basic_static_string::pointer] [indexterm2 pointer..basic_static_string] The pointer type. [heading Synopsis] ``` using pointer = value_type*; ``` [heading Description] [endsect] [section:reference basic_static_string::reference] [indexterm2 reference..basic_static_string] The reference type. [heading Synopsis] ``` using reference = value_type&; ``` [heading Description] [endsect] [section:const_pointer basic_static_string::const_pointer] [indexterm2 const_pointer..basic_static_string] The constant pointer type. [heading Synopsis] ``` using const_pointer = const value_type*; ``` [heading Description] [endsect] [section:const_reference basic_static_string::const_reference] [indexterm2 const_reference..basic_static_string] The constant reference type. [heading Synopsis] ``` using const_reference = const value_type&; ``` [heading Description] [endsect] [section:iterator basic_static_string::iterator] [indexterm2 iterator..basic_static_string] The iterator type. [heading Synopsis] ``` using iterator = value_type*; ``` [heading Description] [endsect] [section:const_iterator basic_static_string::const_iterator] [indexterm2 const_iterator..basic_static_string] The constant iterator type. [heading Synopsis] ``` using const_iterator = const value_type*; ``` [heading Description] [endsect] [section:reverse_iterator basic_static_string::reverse_iterator] [indexterm2 reverse_iterator..basic_static_string] The reverse iterator type. [heading Synopsis] ``` using reverse_iterator = std::reverse_iterator< iterator >; ``` [heading Description] [endsect] [section:const_reverse_iterator basic_static_string::const_reverse_iterator] [indexterm2 const_reverse_iterator..basic_static_string] The constant reverse iterator type. [heading Synopsis] ``` using const_reverse_iterator = std::reverse_iterator< const_iterator >; ``` [heading Description] [endsect] [section:string_view_type basic_static_string::string_view_type] [indexterm2 string_view_type..basic_static_string] The string view type. [heading Synopsis] ``` using string_view_type = basic_string_view< value_type, traits_type >; ``` [heading Description] [endsect] [section:static_capacity basic_static_string::static_capacity] [indexterm2 static_capacity..basic_static_string] Maximum size of the string excluding any null terminator. [heading Synopsis] ``` static constexpr size_type static_capacity = N; ``` [heading Description] [endsect] [section:npos basic_static_string::npos] [indexterm2 npos..basic_static_string] A special index. [heading Synopsis] ``` static constexpr size_type npos = ``[link static_string.ref.boost__static_strings__basic_static_string.size_type size_type]``(-1); ``` [heading Description] [endsect] [section:basic_static_string basic_static_string::basic_static_string] [indexterm2 basic_static_string..basic_static_string] Constructor. ``` constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload1 basic_static_string]``(); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload1 `more...`]]`` constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload2 basic_static_string]``( size_type count, value_type ch); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload2 `more...`]]`` template< std::size_t M> constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload3 basic_static_string]``( const basic_static_string< M, CharT, Traits >& other, size_type pos); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload3 `more...`]]`` template< std::size_t M> constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload4 basic_static_string]``( const basic_static_string< M, CharT, Traits >& other, size_type pos, size_type count); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload4 `more...`]]`` constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload5 basic_static_string]``( const_pointer s, size_type count); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload5 `more...`]]`` constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload6 basic_static_string]``( const_pointer s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload6 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload7 basic_static_string]``( InputIterator first, InputIterator last); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload7 `more...`]]`` constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload8 basic_static_string]``( const basic_static_string& other); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload8 `more...`]]`` template< std::size_t M> constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload9 basic_static_string]``( const basic_static_string< M, CharT, Traits >& other); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload9 `more...`]]`` constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload10 basic_static_string]``( std::initializer_list< value_type > init); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload10 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> explicit constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload11 basic_static_string]``( const T& t); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload11 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr ``[link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload12 basic_static_string]``( const T& t, size_type pos, size_type n); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.basic_static_string.overload12 `more...`]]`` ``` [section:overload1 basic_static_string::basic_static_string (1 of 12 overloads)] Constructor. [heading Synopsis] ``` constexpr basic_static_string(); ``` [heading Description] Construct an empty string [endsect] [section:overload2 basic_static_string::basic_static_string (2 of 12 overloads)] Constructor. [heading Synopsis] ``` constexpr basic_static_string( size_type count, value_type ch); ``` [heading Description] Construct the string with `count` copies of character `ch`. The behavior is undefined if `count >= npos` [endsect] [section:overload3 basic_static_string::basic_static_string (3 of 12 overloads)] Constructor. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string( const basic_static_string< M, CharT, Traits >& other, size_type pos); ``` [heading Description] Construct with a substring (pos, other.size()) of `other`. [endsect] [section:overload4 basic_static_string::basic_static_string (4 of 12 overloads)] Constructor. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string( const basic_static_string< M, CharT, Traits >& other, size_type pos, size_type count); ``` [heading Description] Construct with a substring (pos, count) of `other`. [endsect] [section:overload5 basic_static_string::basic_static_string (5 of 12 overloads)] Constructor. [heading Synopsis] ``` constexpr basic_static_string( const_pointer s, size_type count); ``` [heading Description] Construct with the first `count` characters of `s`, including nulls. [endsect] [section:overload6 basic_static_string::basic_static_string (6 of 12 overloads)] Constructor. [heading Synopsis] ``` constexpr basic_static_string( const_pointer s); ``` [heading Description] Construct from a null terminated string. [endsect] [section:overload7 basic_static_string::basic_static_string (7 of 12 overloads)] Constructor. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string( InputIterator first, InputIterator last); ``` [heading Description] Construct from a range of characters [endsect] [section:overload8 basic_static_string::basic_static_string (8 of 12 overloads)] Constructor. [heading Synopsis] ``` constexpr basic_static_string( const basic_static_string& other); ``` [heading Description] Copy constructor. [endsect] [section:overload9 basic_static_string::basic_static_string (9 of 12 overloads)] Constructor. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string( const basic_static_string< M, CharT, Traits >& other); ``` [heading Description] Copy constructor. [endsect] [section:overload10 basic_static_string::basic_static_string (10 of 12 overloads)] Constructor. [heading Synopsis] ``` constexpr basic_static_string( std::initializer_list< value_type > init); ``` [heading Description] Construct from an initializer list [endsect] [section:overload11 basic_static_string::basic_static_string (11 of 12 overloads)] Constructor. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string( const T& t); ``` [heading Description] Construct from a object convertible to `string_view_type` [endsect] [section:overload12 basic_static_string::basic_static_string (12 of 12 overloads)] Constructor. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string( const T& t, size_type pos, size_type n); ``` [heading Description] Construct from any object convertible to `string_view_type`. The range (pos, n) is extracted from the value obtained by converting `t` to `string_view_type`, and used to construct the string. [endsect] [endsect] [section:operator_eq_ basic_static_string::operator=] [indexterm2 operator=..basic_static_string] Assign to the string. ``` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload1 operator=]``( const basic_static_string< M, CharT, Traits >& s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload1 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload2 operator=]``( const_pointer s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload2 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload3 operator=]``( value_type ch); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload3 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload4 operator=]``( std::initializer_list< value_type > ilist); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload4 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload5 operator=]``( const T& t); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_eq_.overload5 `more...`]]`` ``` [section:overload1 basic_static_string::operator= (1 of 5 overloads)] Assign to the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& operator=( const basic_static_string< M, CharT, Traits >& s); ``` [heading Description] Replaces the contents with those of the string `s`. [heading Complexity] Linear in `s.size()`. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the other string. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to replace the contents with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ s.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload2 basic_static_string::operator= (2 of 5 overloads)] Assign to the string. [heading Synopsis] ``` constexpr basic_static_string& operator=( const_pointer s); ``` [heading Description] Replaces the contents with those of `{s, s + traits_type::length(s))`. [heading Complexity] Linear in `count`. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ A pointer to the string to copy from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ traits_type::length(s) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload3 basic_static_string::operator= (3 of 5 overloads)] Assign to the string. [heading Synopsis] ``` constexpr basic_static_string& operator=( value_type ch); ``` [heading Description] Replaces the contents with a single copy of the character `ch`. [heading Complexity] Constant. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`ch` ] [ The character to assign to. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload4 basic_static_string::operator= (4 of 5 overloads)] Assign to the string. [heading Synopsis] ``` constexpr basic_static_string& operator=( std::initializer_list< value_type > ilist); ``` [heading Description] Replaces the contents with those of the initializer list `ilist`. [heading Complexity] Linear in `init.size()`. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`ilist` ] [ The initializer list to copy from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ ilist.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload5 basic_static_string::operator= (5 of 5 overloads)] Assign to the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& operator=( const T& t); ``` [heading Description] Replaces the contents with those of `sv`, where `sv` is `string_view_type(t)`. [heading Complexity] Linear in `sv.size()`. [heading Exception Safety] Strong guarantee. [heading Remarks] The view can contain null characters. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ A type convertible to `string_view_type`. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value ``` [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The object to assign from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ sv.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [endsect] [section:assign basic_static_string::assign] [indexterm2 assign..basic_static_string] Assign to the string. ``` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload1 assign]``( size_type count, value_type ch); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload1 `more...`]]`` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload2 assign]``( const basic_static_string< M, CharT, Traits >& s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload2 `more...`]]`` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload3 assign]``( const basic_static_string< M, CharT, Traits >& s, size_type pos, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload3 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload4 assign]``( const_pointer s, size_type count); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload4 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload5 assign]``( const_pointer s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload5 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload6 assign]``( InputIterator first, InputIterator last); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload6 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload7 assign]``( std::initializer_list< value_type > ilist); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload7 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload8 assign]``( const T& t); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload8 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.assign.overload9 assign]``( const T& t, size_type pos, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.assign.overload9 `more...`]]`` ``` [section:overload1 basic_static_string::assign (1 of 9 overloads)] Assign to the string. [heading Synopsis] ``` constexpr basic_static_string& assign( size_type count, value_type ch); ``` [heading Description] Replaces the contents with `count` copies of character `ch`. [heading Complexity] Linear in `count`. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`count` ] [ The size of the resulting string. ] ] [ [`ch` ] [ The value to initialize characters of the string with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload2 basic_static_string::assign (2 of 9 overloads)] Assign to the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& assign( const basic_static_string< M, CharT, Traits >& s); ``` [heading Description] Replaces the contents with those of the string `s`. [heading Complexity] Linear in `s.size()`. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the other string. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to replace the contents with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ s.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload3 basic_static_string::assign (3 of 9 overloads)] Assign to the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& assign( const basic_static_string< M, CharT, Traits >& s, size_type pos, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Replaces the contents with those of the string `sub`, where `sub` is `s.substr(pos, count)`. [heading Complexity] Linear in `sub.size()`. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The capacity of the other string. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to replace the contents with. ] ] [ [`pos` ] [ The index at which to begin the substring. ] ] [ [`count` ] [ The size of the substring. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ sub.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload4 basic_static_string::assign (4 of 9 overloads)] Assign to the string. [heading Synopsis] ``` constexpr basic_static_string& assign( const_pointer s, size_type count); ``` [heading Description] Replaces the contents with those of `{s, s + count)`. [heading Complexity] Linear in `count`. [heading Exception Safety] Strong guarantee. [heading Remarks] The range can contain null characters. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`count` ] [ The number of characters to copy. ] ] [ [`s` ] [ A pointer to the string to copy from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload5 basic_static_string::assign (5 of 9 overloads)] Assign to the string. [heading Synopsis] ``` constexpr basic_static_string& assign( const_pointer s); ``` [heading Description] Replaces the contents with those of `{s, s + traits_type::length(s))`. [heading Complexity] Linear in `count`. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ A pointer to the string to copy from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ traits_type::length(s) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload6 basic_static_string::assign (6 of 9 overloads)] Assign to the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& assign( InputIterator first, InputIterator last); ``` [heading Description] Replaces the contents with the characters in the range `{first, last)`. [heading Complexity] Linear in `std::distance(first, last)`. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`InputIterator` ] [ The type of the iterators. ] ] ] [heading Constraints] `InputIterator`satisfies [*InputIterator]. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`first` ] [ An iterator referring to the first character to assign. ] ] [ [`last` ] [ An iterator past the end of the range to assign from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ std::distance(first, last) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload7 basic_static_string::assign (7 of 9 overloads)] Assign to the string. [heading Synopsis] ``` constexpr basic_static_string& assign( std::initializer_list< value_type > ilist); ``` [heading Description] Replaces the contents with those of the initializer list `ilist`. [heading Complexity] Linear in `init.size()`. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`ilist` ] [ The initializer list to copy from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ ilist.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload8 basic_static_string::assign (8 of 9 overloads)] Assign to the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& assign( const T& t); ``` [heading Description] Replaces the contents with those of `sv`, where `sv` is `string_view_type(t)`. [heading Complexity] Linear in `sv.size()`. [heading Exception Safety] Strong guarantee. [heading Remarks] The view can contain null characters. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ A type convertible to `string_view_type`. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value ``` [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The object to assign from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ sv.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [section:overload9 basic_static_string::assign (9 of 9 overloads)] Assign to the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> basic_static_string& assign( const T& t, size_type pos, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Replaces the contents with those of the substring `sv`, where `sv` is `string_view_type(t).substr(pos, count)`. [heading Complexity] Linear in `sv.size()`. [heading Exception Safety] Strong guarantee. [heading Remarks] The view can contain null characters. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ A type convertible to `string_view_type`. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value ``` [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The object to assign from. ] ] [ [`pos` ] [ The index at which to begin the substring. ] ] [ [`count` ] [ The size of the substring. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ sv.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`]. ] ] ] [endsect] [endsect] [section:at basic_static_string::at] [indexterm2 at..basic_static_string] Access a character with bounds checking. ``` constexpr reference ``[link static_string.ref.boost__static_strings__basic_static_string.at.overload1 at]``( size_type pos); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.at.overload1 `more...`]]`` constexpr const_reference ``[link static_string.ref.boost__static_strings__basic_static_string.at.overload2 at]``( size_type pos) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.at.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::at (1 of 2 overloads)] Access a character with bounds checking. [heading Synopsis] ``` constexpr reference at( size_type pos); ``` [heading Description] Returns a reference to the character at index `pos`. [heading Complexity] Constant. [heading Exception Safety] Strong guarantee. [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to access. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos >= [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload2 basic_static_string::at (2 of 2 overloads)] Access a character with bounds checking. [heading Synopsis] ``` constexpr const_reference at( size_type pos) const; ``` [heading Description] Returns a reference to the character at index `pos`. [heading Complexity] Constant. [heading Exception Safety] Strong guarantee. [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to access. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos >= [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [endsect] [section:operator_lb__rb_ basic_static_string::operator\[\]] [indexterm2 operator\[\]..basic_static_string] Access a character. ``` constexpr reference ``[link static_string.ref.boost__static_strings__basic_static_string.operator_lb__rb_.overload1 operator\[\]]``( size_type pos); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_lb__rb_.overload1 `more...`]]`` constexpr const_reference ``[link static_string.ref.boost__static_strings__basic_static_string.operator_lb__rb_.overload2 operator\[\]]``( size_type pos) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_lb__rb_.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::operator\[\] (1 of 2 overloads)] Access a character. [heading Synopsis] ``` constexpr reference operator[]( size_type pos); ``` [heading Description] Returns a reference to the character at index `pos`. [heading Complexity] Constant. [heading Precondition] `pos >= size` [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to access. ] ] ] [endsect] [section:overload2 basic_static_string::operator\[\] (2 of 2 overloads)] Access a character. [heading Synopsis] ``` constexpr const_reference operator[]( size_type pos) const; ``` [heading Description] Returns a reference to the character at index `pos`. [heading Complexity] Constant. [heading Precondition] `pos >= size` [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to access. ] ] ] [endsect] [endsect] [section:front basic_static_string::front] [indexterm2 front..basic_static_string] Return the first character. ``` constexpr reference ``[link static_string.ref.boost__static_strings__basic_static_string.front.overload1 front]``(); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.front.overload1 `more...`]]`` constexpr const_reference ``[link static_string.ref.boost__static_strings__basic_static_string.front.overload2 front]``() const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.front.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::front (1 of 2 overloads)] Return the first character. [heading Synopsis] ``` constexpr reference front(); ``` [heading Description] Returns a reference to the first character. [heading Complexity] Constant. [heading Precondition] not [link static_string.ref.boost__static_strings__basic_static_string.empty `empty()`] [endsect] [section:overload2 basic_static_string::front (2 of 2 overloads)] Return the first character. [heading Synopsis] ``` constexpr const_reference front() const; ``` [heading Description] Returns a reference to the first character. [heading Complexity] Constant. [heading Precondition] not [link static_string.ref.boost__static_strings__basic_static_string.empty `empty()`] [endsect] [endsect] [section:back basic_static_string::back] [indexterm2 back..basic_static_string] Return the last character. ``` constexpr reference ``[link static_string.ref.boost__static_strings__basic_static_string.back.overload1 back]``(); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.back.overload1 `more...`]]`` constexpr const_reference ``[link static_string.ref.boost__static_strings__basic_static_string.back.overload2 back]``() const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.back.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::back (1 of 2 overloads)] Return the last character. [heading Synopsis] ``` constexpr reference back(); ``` [heading Description] Returns a reference to the last character. [heading Complexity] Constant. [heading Precondition] not [link static_string.ref.boost__static_strings__basic_static_string.empty `empty()`] [endsect] [section:overload2 basic_static_string::back (2 of 2 overloads)] Return the last character. [heading Synopsis] ``` constexpr const_reference back() const; ``` [heading Description] Returns a reference to the last character. [heading Complexity] Constant. [heading Precondition] not [link static_string.ref.boost__static_strings__basic_static_string.empty `empty()`] [endsect] [endsect] [section:data basic_static_string::data] [indexterm2 data..basic_static_string] Return a pointer to the string. ``` constexpr pointer ``[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 data]``(); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `more...`]]`` constexpr const_pointer ``[link static_string.ref.boost__static_strings__basic_static_string.data.overload2 data]``() const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.data.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::data (1 of 2 overloads)] Return a pointer to the string. [heading Synopsis] ``` constexpr pointer data(); ``` [heading Description] Returns a pointer to the underlying array serving as storage. The value returned is such that the range {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]) is always a valid range, even if the container is empty. [heading Complexity] Constant. [heading Remarks] The value returned from this function is never never a null pointer value. [endsect] [section:overload2 basic_static_string::data (2 of 2 overloads)] Return a pointer to the string. [heading Synopsis] ``` constexpr const_pointer data() const; ``` [heading Description] Returns a pointer to the underlying array serving as storage. The value returned is such that the range {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]) is always a valid range, even if the container is empty. [heading Complexity] Constant. [heading Remarks] The value returned from this function is never never a null pointer value. [endsect] [endsect] [section:c_str basic_static_string::c_str] [indexterm2 c_str..basic_static_string] Return a pointer to the string. [heading Synopsis] ``` constexpr const_pointer c_str() const; ``` [heading Description] Returns a pointer to the underlying array serving as storage. The value returned is such that the range {[link static_string.ref.boost__static_strings__basic_static_string.c_str `c_str()`], [link static_string.ref.boost__static_strings__basic_static_string.c_str `c_str()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]) is always a valid range, even if the container is empty. [heading Complexity] Constant. [heading Remarks] The value returned from this function is never never a null pointer value. [endsect] [section:operator_string_view_type basic_static_string::operator string_view_type] [indexterm2 operator string_view_type..basic_static_string] Convert to a string view referring to the string. [heading Synopsis] ``` constexpr operator string_view_type() const; ``` [heading Description] Returns a string view referring to the underlying character string. [heading Complexity] Constant. [endsect] [section:begin basic_static_string::begin] [indexterm2 begin..basic_static_string] Return an iterator to the beginning. ``` constexpr iterator ``[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 begin]``(); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `more...`]]`` constexpr const_iterator ``[link static_string.ref.boost__static_strings__basic_static_string.begin.overload2 begin]``() const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.begin.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::begin (1 of 2 overloads)] Return an iterator to the beginning. [heading Synopsis] ``` constexpr iterator begin(); ``` [heading Description] [endsect] [section:overload2 basic_static_string::begin (2 of 2 overloads)] Return an iterator to the beginning. [heading Synopsis] ``` constexpr const_iterator begin() const; ``` [heading Description] [endsect] [endsect] [section:cbegin basic_static_string::cbegin] [indexterm2 cbegin..basic_static_string] Return an iterator to the beginning. [heading Synopsis] ``` constexpr const_iterator cbegin() const; ``` [heading Description] [endsect] [section:end basic_static_string::end] [indexterm2 end..basic_static_string] Return an iterator to the end. ``` constexpr iterator ``[link static_string.ref.boost__static_strings__basic_static_string.end.overload1 end]``(); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `more...`]]`` constexpr const_iterator ``[link static_string.ref.boost__static_strings__basic_static_string.end.overload2 end]``() const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.end.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::end (1 of 2 overloads)] Return an iterator to the end. [heading Synopsis] ``` constexpr iterator end(); ``` [heading Description] [endsect] [section:overload2 basic_static_string::end (2 of 2 overloads)] Return an iterator to the end. [heading Synopsis] ``` constexpr const_iterator end() const; ``` [heading Description] [endsect] [endsect] [section:cend basic_static_string::cend] [indexterm2 cend..basic_static_string] Return an iterator to the end. [heading Synopsis] ``` constexpr const_iterator cend() const; ``` [heading Description] [endsect] [section:rbegin basic_static_string::rbegin] [indexterm2 rbegin..basic_static_string] Return a reverse iterator to the beginning. ``` constexpr reverse_iterator ``[link static_string.ref.boost__static_strings__basic_static_string.rbegin.overload1 rbegin]``(); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rbegin.overload1 `more...`]]`` constexpr const_reverse_iterator ``[link static_string.ref.boost__static_strings__basic_static_string.rbegin.overload2 rbegin]``() const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rbegin.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::rbegin (1 of 2 overloads)] Return a reverse iterator to the beginning. [heading Synopsis] ``` constexpr reverse_iterator rbegin(); ``` [heading Description] [endsect] [section:overload2 basic_static_string::rbegin (2 of 2 overloads)] Return a reverse iterator to the beginning. [heading Synopsis] ``` constexpr const_reverse_iterator rbegin() const; ``` [heading Description] [endsect] [endsect] [section:crbegin basic_static_string::crbegin] [indexterm2 crbegin..basic_static_string] Return a reverse iterator to the beginning. [heading Synopsis] ``` constexpr const_reverse_iterator crbegin() const; ``` [heading Description] [endsect] [section:rend basic_static_string::rend] [indexterm2 rend..basic_static_string] Return a reverse iterator to the end. ``` constexpr reverse_iterator ``[link static_string.ref.boost__static_strings__basic_static_string.rend.overload1 rend]``(); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rend.overload1 `more...`]]`` constexpr const_reverse_iterator ``[link static_string.ref.boost__static_strings__basic_static_string.rend.overload2 rend]``() const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rend.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::rend (1 of 2 overloads)] Return a reverse iterator to the end. [heading Synopsis] ``` constexpr reverse_iterator rend(); ``` [heading Description] [endsect] [section:overload2 basic_static_string::rend (2 of 2 overloads)] Return a reverse iterator to the end. [heading Synopsis] ``` constexpr const_reverse_iterator rend() const; ``` [heading Description] [endsect] [endsect] [section:crend basic_static_string::crend] [indexterm2 crend..basic_static_string] Return a reverse iterator to the end. [heading Synopsis] ``` constexpr const_reverse_iterator crend() const; ``` [heading Description] [endsect] [section:empty basic_static_string::empty] [indexterm2 empty..basic_static_string] Return if the string is empty. [heading Synopsis] ``` BOOST_STATIC_STRING_NODISCARD constexpr bool empty() const; ``` [heading Description] Returns whether the string contains no characters. [heading Complexity] Constant. [heading Return Value] [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] == 0 [endsect] [section:size basic_static_string::size] [indexterm2 size..basic_static_string] Return the size of the string. [heading Synopsis] ``` constexpr size_type size() const; ``` [heading Description] Returns the number of characters stored in the string, excluding the null terminator. [heading Complexity] Constant. [endsect] [section:length basic_static_string::length] [indexterm2 length..basic_static_string] Return the size of the string. [heading Synopsis] ``` constexpr size_type length() const; ``` [heading Description] Returns the number of characters stored in the string, excluding the null terminator. [heading Complexity] Constant. [endsect] [section:max_size basic_static_string::max_size] [indexterm2 max_size..basic_static_string] Return the number of characters that can be stored. [heading Synopsis] ``` constexpr size_type max_size() const; ``` [heading Description] Returns the maximum size of the string, excluding the null terminator. The returned value is always `N`. [heading Complexity] Constant. [endsect] [section:reserve basic_static_string::reserve] [indexterm2 reserve..basic_static_string] Increase the capacity. [heading Synopsis] ``` constexpr void reserve( size_type n); ``` [heading Description] This function has no effect. [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ n > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:capacity basic_static_string::capacity] [indexterm2 capacity..basic_static_string] Return the number of characters that can be stored. [heading Synopsis] ``` constexpr size_type capacity() const; ``` [heading Description] Returns the maximum size of the string, excluding the null terminator. The returned value is always `N`. [heading Complexity] Constant. [endsect] [section:shrink_to_fit basic_static_string::shrink_to_fit] [indexterm2 shrink_to_fit..basic_static_string] Request the removal of unused capacity. [heading Synopsis] ``` constexpr void shrink_to_fit(); ``` [heading Description] This function has no effect. [endsect] [section:clear basic_static_string::clear] [indexterm2 clear..basic_static_string] Clear the contents. [heading Synopsis] ``` constexpr void clear(); ``` [heading Description] Erases all characters from the string. After this call, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] returns zero. [heading Complexity] Linear in [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [endsect] [section:insert basic_static_string::insert] [indexterm2 insert..basic_static_string] Insert into the string. ``` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload1 insert]``( size_type index, size_type count, value_type ch); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload1 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload2 insert]``( size_type index, const_pointer s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload2 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload3 insert]``( size_type index, const_pointer s, size_type count); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload3 `more...`]]`` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload4 insert]``( size_type index, const basic_static_string< M, CharT, Traits >& str); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload4 `more...`]]`` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload5 insert]``( size_type index, const basic_static_string< M, CharT, Traits >& str, size_type index_str, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload5 `more...`]]`` constexpr iterator ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload6 insert]``( const_iterator pos, value_type ch); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload6 `more...`]]`` constexpr iterator ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload7 insert]``( const_iterator pos, size_type count, value_type ch); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload7 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr iterator ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload8 insert]``( const_iterator pos, InputIterator first, InputIterator last); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload8 `more...`]]`` constexpr iterator ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload9 insert]``( const_iterator pos, std::initializer_list< value_type > ilist); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload9 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload10 insert]``( size_type index, const T& t); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload10 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.insert.overload11 insert]``( size_type index, const T& t, size_type index_str, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.insert.overload11 `more...`]]`` ``` [section:overload1 basic_static_string::insert (1 of 11 overloads)] Insert into the string. [heading Synopsis] ``` constexpr basic_static_string& insert( size_type index, size_type count, value_type ch); ``` [heading Description] Inserts `count` copies of `ch` at the position `index`. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`index` ] [ The index to insert at. ] ] [ [`count` ] [ The number of characters to insert. ] ] [ [`ch` ] [ The character to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ index > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload2 basic_static_string::insert (2 of 11 overloads)] Insert into the string. [heading Synopsis] ``` constexpr basic_static_string& insert( size_type index, const_pointer s); ``` [heading Description] Inserts the null-terminated character string pointed to by `s` of length `count` at the position `index` where `count` is `traits_type::length(s)`. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`index` ] [ The index to insert at. ] ] [ [`s` ] [ The string to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ index > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload3 basic_static_string::insert (3 of 11 overloads)] Insert into the string. [heading Synopsis] ``` constexpr basic_static_string& insert( size_type index, const_pointer s, size_type count); ``` [heading Description] Inserts `count` characters of the string pointed to by `s` at the position `index`. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`index` ] [ The index to insert at. ] ] [ [`s` ] [ The string to insert. ] ] [ [`count` ] [ The length of the string to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ index > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload4 basic_static_string::insert (4 of 11 overloads)] Insert into the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& insert( size_type index, const basic_static_string< M, CharT, Traits >& str); ``` [heading Description] Inserts the string `str` at the position `index`. [heading Exception Safety] Strong guarantee. [heading Remarks] The insertion is done unchecked when the capacity of `str` differs from that of the string the function is called on. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the input string. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`index` ] [ The index to insert at. ] ] [ [`str` ] [ The string to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + str.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ index > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload5 basic_static_string::insert (5 of 11 overloads)] Insert into the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& insert( size_type index, const basic_static_string< M, CharT, Traits >& str, size_type index_str, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Inserts a string, obtained by `str.substr(index_str, count)` at the position `index`. [heading Exception Safety] Strong guarantee. [heading Remarks] The insertion is done unchecked when the capacity of `str` differs from that of the string the function is called on. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the input string. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`index` ] [ The index to insert at. ] ] [ [`str` ] [ The string from which to insert. ] ] [ [`index_str` ] [ The index in `str` to start inserting from. ] ] [ [`count` ] [ The number of characters to insert. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + str.substr(index_str, count).[link static_string.ref.boost__static_strings__basic_static_string.size `size()`] > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ index > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] [ [`std::out_of_range` ] [ `index_str > str.size()` ] ] ] [endsect] [section:overload6 basic_static_string::insert (6 of 11 overloads)] Insert into the string. [heading Synopsis] ``` constexpr iterator insert( const_iterator pos, value_type ch); ``` [heading Description] Inserts the character `ch` before the character pointed by `pos`. [heading Precondition] `pos`shall be vaild within {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]} [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] An iterator which refers to the first inserted character or `pos` if no characters were inserted [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to insert at. ] ] [ [`ch` ] [ The character to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + 1 > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload7 basic_static_string::insert (7 of 11 overloads)] Insert into the string. [heading Synopsis] ``` constexpr iterator insert( const_iterator pos, size_type count, value_type ch); ``` [heading Description] Inserts `count` copies of `ch` before the character pointed by `pos`. [heading Precondition] `pos`shall be valid within {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]} [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] An iterator which refers to the first inserted character or `pos` if no characters were inserted [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The position to insert at. ] ] [ [`count` ] [ The number of characters to insert. ] ] [ [`ch` ] [ The character to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload8 basic_static_string::insert (8 of 11 overloads)] Insert into the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr iterator insert( const_iterator pos, InputIterator first, InputIterator last); ``` [heading Description] Inserts characters from the range `{first, last)` before the character pointed to by `pos`. [heading Precondition] `pos`shall be valid within {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]}, `{first, last)` shall be a valid range [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`InputIterator` ] [ The type of the iterators. ] ] ] [heading Constraints] `InputIterator`satisfies [*InputIterator] and does not satisfy [*ForwardIterator]. [heading Return Value] An iterator which refers to the first inserted character or `pos` if no characters were inserted [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The position to insert at. ] ] [ [`first` ] [ An iterator representing the first character to insert. ] ] [ [`last` ] [ An iterator representing one past the last character to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + insert_count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload9 basic_static_string::insert (9 of 11 overloads)] Insert into the string. [heading Synopsis] ``` constexpr iterator insert( const_iterator pos, std::initializer_list< value_type > ilist); ``` [heading Description] Inserts characters from `ilist` before `pos`. [heading Precondition] `pos`shall be valid within {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]} [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] An iterator which refers to the first inserted character or `pos` if no characters were inserted [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The position to insert at. ] ] [ [`ilist` ] [ The initializer list from which to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + ilist.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload10 basic_static_string::insert (10 of 11 overloads)] Insert into the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& insert( size_type index, const T& t); ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t` and inserts `{sv.begin(), sv.end())` at `index`. [heading Precondition] `index`shall be valid within {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]} [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Parameters] [table [[Name][Description]] [ [`index` ] [ The index to insert at. ] ] [ [`t` ] [ The string to insert from. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + sv.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ index > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload11 basic_static_string::insert (11 of 11 overloads)] Insert into the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& insert( size_type index, const T& t, size_type index_str, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t` and inserts `sv.substr(index_str, count)` at `index`. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`index` ] [ The index to insert at. ] ] [ [`t` ] [ The string to insert from. ] ] [ [`index_str` ] [ The index in the temporary `string_view_type` object to start the substring from. ] ] [ [`count` ] [ The number of characters to insert. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + sv.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ index > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] [ [`std::out_of_range` ] [ `index_str > sv.size()` ] ] ] [endsect] [endsect] [section:erase basic_static_string::erase] [indexterm2 erase..basic_static_string] Erase from the string. ``` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.erase.overload1 erase]``( size_type index = 0, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.erase.overload1 `more...`]]`` constexpr iterator ``[link static_string.ref.boost__static_strings__basic_static_string.erase.overload2 erase]``( const_iterator pos); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.erase.overload2 `more...`]]`` constexpr iterator ``[link static_string.ref.boost__static_strings__basic_static_string.erase.overload3 erase]``( const_iterator first, const_iterator last); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.erase.overload3 `more...`]]`` ``` [section:overload1 basic_static_string::erase (1 of 3 overloads)] Erase from the string. [heading Synopsis] ``` constexpr basic_static_string& erase( size_type index = 0, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Erases `num` characters from the string, starting at `index`. `num` is determined as the smaller of `count` and [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - index. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`index` ] [ The index to erase at. The default argument for this parameter is `0`. ] ] [ [`count` ] [ The number of characters to erase. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ index > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload2 basic_static_string::erase (2 of 3 overloads)] Erase from the string. [heading Synopsis] ``` constexpr iterator erase( const_iterator pos); ``` [heading Description] Erases the character at `pos`. [heading Preconditions] `pos`shall be valid within {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]} [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] An iterator referring to character immediately following the erased character, or [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`] if one does not exist. [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ An iterator referring to the character to erase. ] ] ] [endsect] [section:overload3 basic_static_string::erase (3 of 3 overloads)] Erase from the string. [heading Synopsis] ``` constexpr iterator erase( const_iterator first, const_iterator last); ``` [heading Description] Erases the characters in the range `{first, last)`. [heading Precondition] `{first, last}`shall be valid within {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], [link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + [link static_string.ref.boost__static_strings__basic_static_string.size `size()`]} [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] An iterator referring to the character `last` previously referred to, or [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`] if one does not exist. [heading Parameters] [table [[Name][Description]] [ [`first` ] [ An iterator referring to the first character to erase. ] ] [ [`last` ] [ An iterator past the last character to erase. ] ] ] [endsect] [endsect] [section:push_back basic_static_string::push_back] [indexterm2 push_back..basic_static_string] Append a character. [heading Synopsis] ``` constexpr void push_back( value_type ch); ``` [heading Description] Appends a character to the end of the string. [heading Exception Safety] Strong guarantee. [heading Parameters] [table [[Name][Description]] [ [`ch` ] [ The character to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] >= [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:pop_back basic_static_string::pop_back] [indexterm2 pop_back..basic_static_string] Remove the last character. [heading Synopsis] ``` constexpr void pop_back(); ``` [heading Description] Removes a character from the end of the string. [heading Precondition] not [link static_string.ref.boost__static_strings__basic_static_string.empty `empty()`] [endsect] [section:append basic_static_string::append] [indexterm2 append..basic_static_string] Append to the string. ``` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload1 append]``( size_type count, value_type ch); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload1 `more...`]]`` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload2 append]``( const basic_static_string< M, CharT, Traits >& s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload2 `more...`]]`` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload3 append]``( const basic_static_string< M, CharT, Traits >& s, size_type pos, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload3 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload4 append]``( const_pointer s, size_type count); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload4 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload5 append]``( const_pointer s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload5 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload6 append]``( InputIterator first, InputIterator last); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload6 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload7 append]``( std::initializer_list< value_type > ilist); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload7 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload8 append]``( const T& t); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload8 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.append.overload9 append]``( const T& t, size_type pos, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.append.overload9 `more...`]]`` ``` [section:overload1 basic_static_string::append (1 of 9 overloads)] Append to the string. [heading Synopsis] ``` constexpr basic_static_string& append( size_type count, value_type ch); ``` [heading Description] Appends `count` copies of `ch` to the end of the string. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`count` ] [ The number of characters to append. ] ] [ [`ch` ] [ The character to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload2 basic_static_string::append (2 of 9 overloads)] Append to the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& append( const basic_static_string< M, CharT, Traits >& s); ``` [heading Description] Appends `s` to the end of the string. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the string to append. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + s.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload3 basic_static_string::append (3 of 9 overloads)] Append to the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& append( const basic_static_string< M, CharT, Traits >& s, size_type pos, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Appends the substring `sub` to the end of the string, where `sub` is `s.substr(pos, count)`. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the string to append. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to append. ] ] [ [`pos` ] [ The index at which to begin the substring. ] ] [ [`count` ] [ The size of the substring. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + sub.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ `pos > s.size()` ] ] ] [endsect] [section:overload4 basic_static_string::append (4 of 9 overloads)] Append to the string. [heading Synopsis] ``` constexpr basic_static_string& append( const_pointer s, size_type count); ``` [heading Description] Appends `count` characters from the string pointed to by `s` to the end of the string. [heading Exception Safety] Strong guarantee. [heading Remarks] The string can contain null characters. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to append. ] ] [ [`count` ] [ The number of characters to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload5 basic_static_string::append (5 of 9 overloads)] Append to the string. [heading Synopsis] ``` constexpr basic_static_string& append( const_pointer s); ``` [heading Description] Appends `count` characters from the string pointed to by `s` to the end of the string, where `count` is `traits_type::length(s)`. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload6 basic_static_string::append (6 of 9 overloads)] Append to the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& append( InputIterator first, InputIterator last); ``` [heading Description] Appends characters from the range `{first, last)` to the end of the string. [heading Precondition] `{first, last)`shall be a valid range [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`InputIterator` ] [ The type of the iterators. ] ] ] [heading Constraints] `InputIterator`satisfies [*InputIterator]. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`first` ] [ An iterator referring to the first character to append. ] ] [ [`last` ] [ An iterator past the end of last character to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + std::distance(first, last) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload7 basic_static_string::append (7 of 9 overloads)] Append to the string. [heading Synopsis] ``` constexpr basic_static_string& append( std::initializer_list< value_type > ilist); ``` [heading Description] Appends the characters from `ilist` to the end of the string. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`ilist` ] [ The initializer list to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + ilist.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload8 basic_static_string::append (8 of 9 overloads)] Append to the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& append( const T& t); ``` [heading Description] Appends `sv` to the end of the string, where `sv` is `string_view_type(t)`. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value ``` [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The string to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + sv.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload9 basic_static_string::append (9 of 9 overloads)] Append to the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& append( const T& t, size_type pos, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Appends the substring `sv` to the end of the string, where `sv` is `string_view_type(t).substr(pos, count)`. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value ``` [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The object to append. ] ] [ [`pos` ] [ The index at which to begin the substring. ] ] [ [`count` ] [ The size of the substring. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + sv.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [endsect] [section:operator_plus__eq_ basic_static_string::operator+=] [indexterm2 operator+=..basic_static_string] Append to the string. ``` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload1 operator+=]``( const basic_static_string< M, CharT, Traits >& s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload1 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload2 operator+=]``( value_type ch); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload2 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload3 operator+=]``( const_pointer s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload3 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload4 operator+=]``( std::initializer_list< value_type > ilist); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload4 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload5 operator+=]``( const T& t); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.operator_plus__eq_.overload5 `more...`]]`` ``` [section:overload1 basic_static_string::operator+= (1 of 5 overloads)] Append to the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& operator+=( const basic_static_string< M, CharT, Traits >& s); ``` [heading Description] Appends `s` to the end of the string. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the string to append. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + s.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload2 basic_static_string::operator+= (2 of 5 overloads)] Append to the string. [heading Synopsis] ``` constexpr basic_static_string& operator+=( value_type ch); ``` [heading Description] Appends a character to the end of the string. [heading Exception Safety] Strong guarantee. [heading Parameters] [table [[Name][Description]] [ [`ch` ] [ The character to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] >= [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload3 basic_static_string::operator+= (3 of 5 overloads)] Append to the string. [heading Synopsis] ``` constexpr basic_static_string& operator+=( const_pointer s); ``` [heading Description] Appends `count` characters from the string pointed to by `s` to the end of the string, where `count` is `traits_type::length(s)`. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + count > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload4 basic_static_string::operator+= (4 of 5 overloads)] Append to the string. [heading Synopsis] ``` constexpr basic_static_string& operator+=( std::initializer_list< value_type > ilist); ``` [heading Description] Appends the characters from `ilist` to the end of the string. [heading Exception Safety] Strong guarantee. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`ilist` ] [ The initializer list to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + ilist.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload5 basic_static_string::operator+= (5 of 5 overloads)] Append to the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& operator+=( const T& t); ``` [heading Description] Appends `sv` to the end of the string, where `sv` is `string_view_type(t)`. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value ``` [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The string to append. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + sv.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [endsect] [section:compare basic_static_string::compare] [indexterm2 compare..basic_static_string] Compare a string with the string. ``` template< std::size_t M> constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload1 compare]``( const basic_static_string< M, CharT, Traits >& s) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload1 `more...`]]`` template< std::size_t M> constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload2 compare]``( size_type pos1, size_type count1, const basic_static_string< M, CharT, Traits >& s) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload2 `more...`]]`` template< std::size_t M> constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload3 compare]``( size_type pos1, size_type count1, const basic_static_string< M, CharT, Traits >& s, size_type pos2, size_type count2 = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload3 `more...`]]`` constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload4 compare]``( const_pointer s) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload4 `more...`]]`` constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload5 compare]``( size_type pos1, size_type count1, const_pointer s) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload5 `more...`]]`` constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload6 compare]``( size_type pos1, size_type count1, const_pointer s, size_type count2) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload6 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload7 compare]``( const T& t) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload7 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload8 compare]``( size_type pos1, size_type count1, const T& t) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload8 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr int ``[link static_string.ref.boost__static_strings__basic_static_string.compare.overload9 compare]``( size_type pos1, size_type count1, const T& t, size_type pos2, size_type count2 = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.compare.overload9 `more...`]]`` ``` [section:overload1 basic_static_string::compare (1 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` template< std::size_t M> constexpr int compare( const basic_static_string< M, CharT, Traits >& s) const; ``` [heading Description] Let `comp` be traits_type::compare([link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], s.data(), std::min([link static_string.ref.boost__static_strings__basic_static_string.size `size()`], s.size()). If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] == s.size(), `-1` if [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] < s.size(), and `1` otherwise. [heading Complexity] Linear. [heading Return Value] The result of lexicographically comparing `s` and the string. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the string to compare with. ] ] ] [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to compare. ] ] ] [endsect] [section:overload2 basic_static_string::compare (2 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` template< std::size_t M> constexpr int compare( size_type pos1, size_type count1, const basic_static_string< M, CharT, Traits >& s) const; ``` [heading Description] Let `sub` be `substr(pos1, count1)` and `comp` be `traits_type::compare(sub.data(), s.data(), std::min(sub.size(), s.size())`. If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if `sub.size() == s.size()`, `-1` if `sub.size() < s.size()`, and `1` otherwise. [heading Complexity] Linear. [heading Exception Safety] Strong guarantee. [heading Return Value] The result of lexicographically comparing `sub` and `s`. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the string to compare with. ] ] ] [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index at which to begin the substring. ] ] [ [`count1` ] [ The size of the substring. ] ] [ [`s` ] [ The string to compare. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos1 > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload3 basic_static_string::compare (3 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` template< std::size_t M> constexpr int compare( size_type pos1, size_type count1, const basic_static_string< M, CharT, Traits >& s, size_type pos2, size_type count2 = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Let `sub1` be `substr(pos1, count1)`, `sub2` be `s.substr(pos2, count2)`, and `comp` be `traits_type::compare(sub1.data(), sub2.data(), std::min(sub1.size(), sub2.size())`. If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if `sub1.size() == sub2.size()`, `-1` if `sub1.size() < sub2.size()`, and `1` otherwise. [heading Complexity] Linear. [heading Exception Safety] Strong guarantee. [heading Return Value] The result of lexicographically comparing `sub1` and `sub2`. [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index at which to begin the substring. ] ] [ [`count1` ] [ The size of the substring. ] ] [ [`s` ] [ The string to compare. ] ] [ [`pos2` ] [ The index at which to begin the substring to compare. ] ] [ [`count2` ] [ The size of the substring to compare. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos1 > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] [ [`std::out_of_range` ] [ `pos2 > s.size()` ] ] ] [endsect] [section:overload4 basic_static_string::compare (4 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` constexpr int compare( const_pointer s) const; ``` [heading Description] Let `len` be `traits_type::length(s)` and `comp` be traits_type::compare([link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], s, std::min(size(), len). If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] == len, `-1` if [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] < len, and `1` otherwise. [heading Complexity] Linear. [heading Return Value] The result of lexicographically comparing `s` and the string. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to compare. ] ] ] [endsect] [section:overload5 basic_static_string::compare (5 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` constexpr int compare( size_type pos1, size_type count1, const_pointer s) const; ``` [heading Description] Let `sub` be `substr(pos1, count1)`, `len` be `traits_type::length(s)`, and `comp` be `traits_type::compare(sub.data(), s, std::min(size(), len)`. If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if `sub.size() == len`, `-1` if `sub.size() < len`, and `1` otherwise. [heading Complexity] Linear. [heading Exception Safety] Strong guarantee. [heading Return Value] The result of lexicographically comparing `s` and `sub`. [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index at which to begin the substring. ] ] [ [`count1` ] [ The size of the substring. ] ] [ [`s` ] [ The string to compare. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos1 > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload6 basic_static_string::compare (6 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` constexpr int compare( size_type pos1, size_type count1, const_pointer s, size_type count2) const; ``` [heading Description] Let `sub` be `substr(pos1, count1)`, and `comp` be `traits_type::compare(sub.data(), s, std::min(size(), count2)`. If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if `sub.size() == count2`, `-1` if `sub.size() < count2`, and `1` otherwise. [heading Complexity] Linear. [heading Exception Safety] Strong guarantee. [heading Return Value] The result of lexicographically comparing `s` and `sub`. [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index at which to begin the substring. ] ] [ [`count1` ] [ The size of the substring. ] ] [ [`s` ] [ The string to compare. ] ] [ [`count2` ] [ The length of the string to compare. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos1 > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload7 basic_static_string::compare (7 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr int compare( const T& t) const; ``` [heading Description] Let `s` be `string_view_type(t)` and `comp` be traits_type::compare([link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`], s.data(), std::min([link static_string.ref.boost__static_strings__basic_static_string.size `size()`], s.size()). If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] == s.size(), `-1` if [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] < s.size(), and `1` otherwise. [heading Complexity] Linear. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value. ``` [heading Return Value] The result of lexicographically comparing `s` and the string. [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The string to compare. ] ] ] [endsect] [section:overload8 basic_static_string::compare (8 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr int compare( size_type pos1, size_type count1, const T& t) const; ``` [heading Description] Let `s` be `string_view_type(t)`, `sub` be `substr(pos1, count1)`, and `comp` be `traits_type::compare(sub.data(), s.data(), std::min(sub.size(), s.size())`. If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if `sub.size() == s.size()`, `-1` if `sub.size() < s.size()`, and `1` otherwise. [heading Complexity] Linear. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value. ``` [heading Return Value] The result of lexicographically comparing `s` and `sub`. [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index at which to begin the substring. ] ] [ [`count1` ] [ The length of the substring. ] ] [ [`t` ] [ The string to compare. ] ] ] [endsect] [section:overload9 basic_static_string::compare (9 of 9 overloads)] Compare a string with the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr int compare( size_type pos1, size_type count1, const T& t, size_type pos2, size_type count2 = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Let `sub1` be `substr(pos1, count1)`, `sub2` be `string_view_type(t).substr(pos2, count2)`, and `comp` be `traits_type::compare(sub1.data(), sub2.data(), std::min(sub1.size(), sub2.size())`. If `comp != 0`, then the result is `comp`. Otherwise, the result is `0` if `sub1.size() == sub2.size()`, `-1` if `sub1.size() < sub2.size()`, and `1` otherwise. [heading Complexity] Linear. [heading Exception Safety] Strong guarantee. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] ``` std::is_convertible::value && !std::is_convertible::value. ``` [heading Return Value] The result of lexicographically comparing `sub1` and `sub2`. [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index at which to begin the substring in the string. ] ] [ [`count1` ] [ The length of the substring in the string. ] ] [ [`t` ] [ The string to compare. ] ] [ [`pos2` ] [ The index at which to begin the substring in the string view. ] ] [ [`count2` ] [ The length of the substring in the string view. ] ] ] [endsect] [endsect] [section:substr basic_static_string::substr] [indexterm2 substr..basic_static_string] Return a substring. [heading Synopsis] ``` constexpr basic_static_string substr( size_type pos = 0, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Returns a substring of the string. [heading Exception Safety] Strong guarantee. [heading Return Value] A string object containing the characters {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + pos, std::min(count, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos)). [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to being the substring at. The default arugment for this parameter is `0`. ] ] [ [`count` ] [ The length of the substring. The default arugment for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:subview basic_static_string::subview] [indexterm2 subview..basic_static_string] Return a string view of a substring. [heading Synopsis] ``` constexpr string_view_type subview( size_type pos = 0, size_type count = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Returns a view of a substring. [heading Exception Safety] Strong guarantee. [heading Return Value] A `string_view_type` object referring to {[link static_string.ref.boost__static_strings__basic_static_string.data.overload1 `data()`] + pos, std::min(count, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos)). [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to being the substring at. The default arugment for this parameter is `0`. ] ] [ [`count` ] [ The length of the substring. The default arugment for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:copy basic_static_string::copy] [indexterm2 copy..basic_static_string] Copy a substring to another string. [heading Synopsis] ``` constexpr size_type copy( pointer dest, size_type count, size_type pos = 0) const; ``` [heading Description] Copies std::min(count, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos) characters starting at index `pos` to the string pointed to by `dest`. [heading Remarks] The resulting string is not null terminated. [heading Return Value] The number of characters copied. [heading Parameters] [table [[Name][Description]] [ [`count` ] [ The number of characters to copy. ] ] [ [`dest` ] [ The string to copy to. ] ] [ [`pos` ] [ The index to begin copying from. The default argument for this parameter is `0`. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ pos > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:resize basic_static_string::resize] [indexterm2 resize..basic_static_string] Change the size of the string. ``` constexpr void ``[link static_string.ref.boost__static_strings__basic_static_string.resize.overload1 resize]``( size_type n); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.resize.overload1 `more...`]]`` constexpr void ``[link static_string.ref.boost__static_strings__basic_static_string.resize.overload2 resize]``( size_type n, value_type c); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.resize.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::resize (1 of 2 overloads)] Change the size of the string. [heading Synopsis] ``` constexpr void resize( size_type n); ``` [heading Description] Resizes the string to contain `n` characters. If n > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`], characters with the value `CharT()` are appended. Otherwise, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] is reduced to `n`. [heading Parameters] [table [[Name][Description]] [ [`n` ] [ The size to resize the string to. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ n > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload2 basic_static_string::resize (2 of 2 overloads)] Change the size of the string. [heading Synopsis] ``` constexpr void resize( size_type n, value_type c); ``` [heading Description] Resizes the string to contain `n` characters. If n > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`], copies of `c` are appended. Otherwise, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] is reduced to `n`. [heading Parameters] [table [[Name][Description]] [ [`n` ] [ The size to resize the string to. ] ] [ [`c` ] [ The characters to append if the size increases. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::out_of_range` ] [ n > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [endsect] [section:swap basic_static_string::swap] [indexterm2 swap..basic_static_string] Swap two strings. ``` constexpr void ``[link static_string.ref.boost__static_strings__basic_static_string.swap.overload1 swap]``( basic_static_string& s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.swap.overload1 `more...`]]`` template< std::size_t M> constexpr void ``[link static_string.ref.boost__static_strings__basic_static_string.swap.overload2 swap]``( basic_static_string< M, CharT, Traits >& s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.swap.overload2 `more...`]]`` ``` [section:overload1 basic_static_string::swap (1 of 2 overloads)] Swap two strings. [heading Synopsis] ``` constexpr void swap( basic_static_string& s); ``` [heading Description] Swaps the contents of the string and `s`. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to swap with. ] ] ] [endsect] [section:overload2 basic_static_string::swap (2 of 2 overloads)] Swap two strings. [heading Synopsis] ``` template< std::size_t M> constexpr void swap( basic_static_string< M, CharT, Traits >& s); ``` [heading Description] Swaps the contents of the string and `s`. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the string to swap with. ] ] ] [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to swap with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ s.size() > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] || [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] > s.max_size() ] ] ] [endsect] [endsect] [section:replace basic_static_string::replace] [indexterm2 replace..basic_static_string] Replace a part of the string. ``` template< size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload1 replace]``( size_type pos1, size_type n1, const basic_static_string< M, CharT, Traits >& str); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload1 `more...`]]`` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload2 replace]``( size_type pos1, size_type n1, const basic_static_string< M, CharT, Traits >& str, size_type pos2, size_type n2 = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload2 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload3 replace]``( size_type pos1, size_type n1, const T& t); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload3 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload4 replace]``( size_type pos1, size_type n1, const T& t, size_type pos2, size_type n2 = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload4 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload5 replace]``( size_type pos, size_type n1, const_pointer s, size_type n2); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload5 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload6 replace]``( size_type pos, size_type n1, const_pointer s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload6 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload7 replace]``( size_type pos, size_type n1, size_type n2, value_type c); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload7 `more...`]]`` template< std::size_t M> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload8 replace]``( const_iterator i1, const_iterator i2, const basic_static_string< M, CharT, Traits >& str); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload8 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload9 replace]``( const_iterator i1, const_iterator i2, const T& t); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload9 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload10 replace]``( const_iterator i1, const_iterator i2, const_pointer s, size_type n); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload10 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload11 replace]``( const_iterator i1, const_iterator i2, const_pointer s); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload11 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload12 replace]``( const_iterator i1, const_iterator i2, size_type n, value_type c); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload12 `more...`]]`` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload13 replace]``( const_iterator i1, const_iterator i2, InputIterator j1, InputIterator j2); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload13 `more...`]]`` constexpr basic_static_string& ``[link static_string.ref.boost__static_strings__basic_static_string.replace.overload14 replace]``( const_iterator i1, const_iterator i2, std::initializer_list< value_type > il); ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.replace.overload14 `more...`]]`` ``` [section:overload1 basic_static_string::replace (1 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` template< size_t M> constexpr basic_static_string& replace( size_type pos1, size_type n1, const basic_static_string< M, CharT, Traits >& str); ``` [heading Description] Replaces `rcount` characters starting at index `pos1` with those of `str`, where `rcount` is std::min(n1, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos1). [heading Exception Safety] Strong guarantee. [heading Remarks] The replacement is done unchecked when the capacity of `str` differs from that of the string the function is called on. All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the input string. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index to replace at. ] ] [ [`n1` ] [ The number of characters to replace. ] ] [ [`str` ] [ The string to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (str.size() - rcount) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ pos1 > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload2 basic_static_string::replace (2 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& replace( size_type pos1, size_type n1, const basic_static_string< M, CharT, Traits >& str, size_type pos2, size_type n2 = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Replaces `rcount` characters starting at index `pos1` with those of `str.subview(pos2, n2)`, where `rcount` is std::min(n1, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos1). [heading Exception Safety] Strong guarantee. [heading Remarks] The replacement is done unchecked when the capacity of `str` differs from that of the string the function is called on. All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index to replace at. ] ] [ [`n1` ] [ The number of characters to replace. ] ] [ [`str` ] [ The string to replace with. ] ] [ [`pos2` ] [ The index to begin the substring. ] ] [ [`n2` ] [ The length of the substring. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (std::min(str.size(), n2) - rcount) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ pos1 > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] [ [`std::out_of_range` ] [ `pos2 > str.size()` ] ] ] [endsect] [section:overload3 basic_static_string::replace (3 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& replace( size_type pos1, size_type n1, const T& t); ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and replaces `rcount` characters starting at index `pos1` with those of `sv`, where `rcount` is std::min(n1, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos1). [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index to replace at. ] ] [ [`n1` ] [ The number of characters to replace. ] ] [ [`t` ] [ The object to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (sv.size() - rcount) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ pos1 > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload4 basic_static_string::replace (4 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& replace( size_type pos1, size_type n1, const T& t, size_type pos2, size_type n2 = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``); ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and replaces `rcount` characters starting at index `pos1` with those of `sv.substr(pos2, n2)`, where `rcount` is std::min(n1, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos). [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`pos1` ] [ The index to replace at. ] ] [ [`n1` ] [ The number of characters to replace. ] ] [ [`t` ] [ The object to replace with. ] ] [ [`pos2` ] [ The index to begin the substring. ] ] [ [`n2` ] [ The length of the substring. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (std::min(n2, sv.size()) - rcount) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ pos1 > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] [ [`std::out_of_range` ] [ `pos2 > sv.size()` ] ] ] [endsect] [section:overload5 basic_static_string::replace (5 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` constexpr basic_static_string& replace( size_type pos, size_type n1, const_pointer s, size_type n2); ``` [heading Description] Replaces `rcount` characters starting at index `pos` with those of `{s, s + n2)`, where `rcount` is std::min(n1, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos). [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to replace at. ] ] [ [`n1` ] [ The number of characters to replace. ] ] [ [`s` ] [ The string to replace with. ] ] [ [`n2` ] [ The length of the string to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (n2 - rcount) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ pos > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload6 basic_static_string::replace (6 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` constexpr basic_static_string& replace( size_type pos, size_type n1, const_pointer s); ``` [heading Description] Replaces `rcount` characters starting at index `pos` with those of `{s, s + len)`, where the length of the string `len` is `traits_type::length(s)` and `rcount` is std::min(n1, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos). [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to replace at. ] ] [ [`n1` ] [ The number of characters to replace. ] ] [ [`s` ] [ The string to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (len - rcount) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ pos > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload7 basic_static_string::replace (7 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` constexpr basic_static_string& replace( size_type pos, size_type n1, size_type n2, value_type c); ``` [heading Description] Replaces `rcount` characters starting at index `pos` with `n2` copies of `c`, where `rcount` is std::min(n1, [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] - pos). [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`pos` ] [ The index to replace at. ] ] [ [`n1` ] [ The number of characters to replace. ] ] [ [`n2` ] [ The number of characters to replace with. ] ] [ [`c` ] [ The character to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (n2 - rcount) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] [ [`std::out_of_range` ] [ pos > [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] ] ] ] [endsect] [section:overload8 basic_static_string::replace (8 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` template< std::size_t M> constexpr basic_static_string& replace( const_iterator i1, const_iterator i2, const basic_static_string< M, CharT, Traits >& str); ``` [heading Description] Replaces the characters in the range `{i1, i2)` with those of `str`. [heading Precondition] `{i1, i2)`is a valid range. [heading Exception Safety] Strong guarantee. [heading Remarks] The replacement is done unchecked when the capacity of `str` differs from that of the string the function is called on. All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`M` ] [ The size of the input string. ] ] ] [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`i1` ] [ An iterator referring to the first character to replace. ] ] [ [`i2` ] [ An iterator referring past the end of the last character to replace. ] ] [ [`str` ] [ The string to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (str.size() - std::distance(i1, i2)) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload9 basic_static_string::replace (9 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& replace( const_iterator i1, const_iterator i2, const T& t); ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and replaces the characters in the range `{i1, i2)` with those of `sv`. [heading Precondition] `{i1, i2)`is a valid range. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`i1` ] [ An iterator referring to the first character to replace. ] ] [ [`i2` ] [ An iterator referring past the end of the last character to replace. ] ] [ [`t` ] [ The object to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (sv.size() - std::distance(i1, i2)) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload10 basic_static_string::replace (10 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` constexpr basic_static_string& replace( const_iterator i1, const_iterator i2, const_pointer s, size_type n); ``` [heading Description] Replaces the characters in the range `{i1, i2)` with those of `{s, s + n)`. [heading Precondition] `{i1, i2)`is a valid range. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`i1` ] [ An iterator referring to the first character to replace. ] ] [ [`i2` ] [ An iterator referring past the end of the last character to replace. ] ] [ [`s` ] [ The string to replace with. ] ] [ [`n` ] [ The length of the string to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (n - std::distance(i1, i2)) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload11 basic_static_string::replace (11 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` constexpr basic_static_string& replace( const_iterator i1, const_iterator i2, const_pointer s); ``` [heading Description] Replaces the characters in the range `{i1, i2)` with those of `{s, s + len)`, where the length of the string `len` is `traits_type::length(s)`. [heading Precondition] `{i1, i2)`shall be a valid range. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`i1` ] [ An iterator referring to the first character to replace. ] ] [ [`i2` ] [ An iterator referring past the end of the last character to replace. ] ] [ [`s` ] [ The string to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (len - std::distance(i1, i2)) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload12 basic_static_string::replace (12 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` constexpr basic_static_string& replace( const_iterator i1, const_iterator i2, size_type n, value_type c); ``` [heading Description] Replaces the characters in the range `{i1, i2)` with `n` copies of `c`. [heading Precondition] `{i1, i2)`is a valid range. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`i1` ] [ An iterator referring to the first character to replace. ] ] [ [`i2` ] [ An iterator past the end of the last character to replace. ] ] [ [`n` ] [ The number of characters to replace with. ] ] [ [`c` ] [ The character to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (n - std::distance(i1, i2)) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload13 basic_static_string::replace (13 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string& replace( const_iterator i1, const_iterator i2, InputIterator j1, InputIterator j2); ``` [heading Description] Replaces the characters in the range `{i1, i2)` with those of `{j1, j2)`. [heading Precondition] `{i1, i2)`is a valid range. `{j1, j2)` is a valid range. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Template Parameters] [table [[Type][Description]] [ [`InputIterator` ] [ The type of the iterators. ] ] ] [heading Constraints] `InputIterator`satisfies [*InputIterator] and does not satisfy [*ForwardIterator]. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`i1` ] [ An iterator referring to the first character to replace. ] ] [ [`i2` ] [ An iterator referring past the end of the last character to replace. ] ] [ [`j1` ] [ An iterator referring to the first character to replace with. ] ] [ [`j2` ] [ An iterator referring past the end of the last character to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (inserted - std::distance(i1, i2)) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [section:overload14 basic_static_string::replace (14 of 14 overloads)] Replace a part of the string. [heading Synopsis] ``` constexpr basic_static_string& replace( const_iterator i1, const_iterator i2, std::initializer_list< value_type > il); ``` [heading Description] Replaces the characters in the range `{i1, i2)` with those of contained in the initializer list `il`. [heading Precondition] `{i1, i2)`is a valid range. [heading Exception Safety] Strong guarantee. [heading Remarks] All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated. [heading Return Value] `*this` [heading Parameters] [table [[Name][Description]] [ [`i1` ] [ An iterator referring to the first character to replace. ] ] [ [`i2` ] [ An iterator past the end of the last character to replace. ] ] [ [`il` ] [ The initializer list to replace with. ] ] ] [heading Exceptions] [table [[Type][Thrown On]] [ [`std::length_error` ] [ [link static_string.ref.boost__static_strings__basic_static_string.size `size()`] + (il.size() - std::distance(i1, i2)) > [link static_string.ref.boost__static_strings__basic_static_string.max_size `max_size()`] ] ] ] [endsect] [endsect] [section:find basic_static_string::find] [indexterm2 find..basic_static_string] Find the first occurrence of a string within the string. ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find.overload1 find]``( const T& t, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find.overload1 `more...`]]`` template< std::size_t M> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find.overload2 find]``( const basic_static_string< M, CharT, Traits >& str, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find.overload2 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find.overload3 find]``( const_pointer s, size_type pos, size_type n) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find.overload3 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find.overload4 find]``( const_pointer s, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find.overload4 `more...`]]`` ``` Find the first occurrence of a character within the string. ``` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find.overload5 find]``( value_type c, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find.overload5 `more...`]]`` ``` [section:overload1 basic_static_string::find (1 of 5 overloads)] Find the first occurrence of a string within the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type find( const T& t, size_type pos = 0) const; ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and finds the first occurrence of `sv` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Remarks] An empty string is always found. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] The lowest index `idx` greater than or equal to `pos` where each element of `{sv.begin(), sv.end())` is equal to that of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx, [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx + count) if one exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The string to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload2 basic_static_string::find (2 of 5 overloads)] Find the first occurrence of a string within the string. [heading Synopsis] ``` template< std::size_t M> constexpr size_type find( const basic_static_string< M, CharT, Traits >& str, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of `str` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Return Value] The lowest index `idx` greater than or equal to `pos` where each element of `str` is equal to that of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx, [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx + str.size()) if one exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`str` ] [ The string to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload3 basic_static_string::find (3 of 5 overloads)] Find the first occurrence of a string within the string. [heading Synopsis] ``` constexpr size_type find( const_pointer s, size_type pos, size_type n) const; ``` [heading Description] Finds the first occurrence of the string pointed to by `s` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Remarks] An empty string is always found. [heading Return Value] The lowest index `idx` greater than or equal to `pos` where each element of `{s, s + n)` is equal to that of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx, [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx + n) if one exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to search for. ] ] [ [`pos` ] [ The index to start searching at. ] ] [ [`n` ] [ The length of the string to search for. ] ] ] [endsect] [section:overload4 basic_static_string::find (4 of 5 overloads)] Find the first occurrence of a string within the string. [heading Synopsis] ``` constexpr size_type find( const_pointer s, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of the string pointed to by `s` of length `count` within the string starting at the index `pos`, where `count` is `traits_type::length(s)`. [heading Complexity] Linear. [heading Remarks] An empty string is always found. [heading Return Value] The lowest index `idx` greater than or equal to `pos` where each element of `{s, s + count)` is equal to that of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx, [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx + count) if one exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload5 basic_static_string::find (5 of 5 overloads)] Find the first occurrence of a character within the string. [heading Synopsis] ``` constexpr size_type find( value_type c, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of `c` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first occurrence of `c` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`c` ] [ The character to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [endsect] [section:rfind basic_static_string::rfind] [indexterm2 rfind..basic_static_string] Find the last occurrence of a string within the string. ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.rfind.overload1 rfind]``( const T& t, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rfind.overload1 `more...`]]`` template< std::size_t M> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.rfind.overload2 rfind]``( const basic_static_string< M, CharT, Traits >& str, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rfind.overload2 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.rfind.overload3 rfind]``( const_pointer s, size_type pos, size_type n) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rfind.overload3 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.rfind.overload4 rfind]``( const_pointer s, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rfind.overload4 `more...`]]`` ``` Find the last occurrence of a character within the string. ``` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.rfind.overload5 rfind]``( value_type c, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.rfind.overload5 `more...`]]`` ``` [section:overload1 basic_static_string::rfind (1 of 5 overloads)] Find the last occurrence of a string within the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type rfind( const T& t, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and finds the last occurrence of `sv` within the string starting before or at the index `pos`. [heading Complexity] Linear. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] The highest index `idx` less than or equal to `pos` where each element of `{sv.begin(), sv.end())` is equal to that of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx, [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx + count) if one exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The string to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload2 basic_static_string::rfind (2 of 5 overloads)] Find the last occurrence of a string within the string. [heading Synopsis] ``` template< std::size_t M> constexpr size_type rfind( const basic_static_string< M, CharT, Traits >& str, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of `str` within the string starting before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The highest index `idx` less than or equal to `pos` where each element of `str` is equal to that of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx, [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx + str.size()) if one exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`str` ] [ The string to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload3 basic_static_string::rfind (3 of 5 overloads)] Find the last occurrence of a string within the string. [heading Synopsis] ``` constexpr size_type rfind( const_pointer s, size_type pos, size_type n) const; ``` [heading Description] Finds the last occurrence of the string pointed to by `s` within the string starting before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The highest index `idx` less than or equal to `pos` where each element of `{s, s + n)` is equal to that of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx, [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx + n) if one exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to search for. ] ] [ [`pos` ] [ The index to start searching at. ] ] [ [`n` ] [ The length of the string to search for. ] ] ] [endsect] [section:overload4 basic_static_string::rfind (4 of 5 overloads)] Find the last occurrence of a string within the string. [heading Synopsis] ``` constexpr size_type rfind( const_pointer s, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of the string pointed to by `s` of length `count` within the string starting before or at the index `pos`, where `count` is `traits_type::length(s)`. [heading Complexity] Linear. [heading Return Value] The highest index `idx` less than or equal to `pos` where each element of `{s, s + count)` is equal to that of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx, [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + idx + count) if one exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to search for. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload5 basic_static_string::rfind (5 of 5 overloads)] Find the last occurrence of a character within the string. [heading Synopsis] ``` constexpr size_type rfind( value_type c, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of `c` within the string starting before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last occurrence of `c` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`c` ] [ The character to search for. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [endsect] [section:find_first_of basic_static_string::find_first_of] [indexterm2 find_first_of..basic_static_string] Find the first occurrence of any of the characters within the string. ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload1 find_first_of]``( const T& t, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload1 `more...`]]`` template< std::size_t M> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload2 find_first_of]``( const basic_static_string< M, CharT, Traits >& str, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload2 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload3 find_first_of]``( const_pointer s, size_type pos, size_type n) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload3 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload4 find_first_of]``( const_pointer s, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload4 `more...`]]`` ``` Find the first occurrence of a character within the string. ``` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload5 find_first_of]``( value_type c, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_of.overload5 `more...`]]`` ``` [section:overload1 basic_static_string::find_first_of (1 of 5 overloads)] Find the first occurrence of any of the characters within the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type find_first_of( const T& t, size_type pos = 0) const; ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and finds the first occurrence of any of the characters in `sv` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] The index corrosponding to the first occurrence of any of the characters in `{sv.begin(), sv.end())` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The characters to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload2 basic_static_string::find_first_of (2 of 5 overloads)] Find the first occurrence of any of the characters within the string. [heading Synopsis] ``` template< std::size_t M> constexpr size_type find_first_of( const basic_static_string< M, CharT, Traits >& str, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of any of the characters within `str` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first occurrence of any of the characters of `str` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`str` ] [ The characters to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload3 basic_static_string::find_first_of (3 of 5 overloads)] Find the first occurrence of any of the characters within the string. [heading Synopsis] ``` constexpr size_type find_first_of( const_pointer s, size_type pos, size_type n) const; ``` [heading Description] Finds the first occurrence of any of the characters within the string pointed to by `s` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first occurrence of any of the characters in `{s, s + n)` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The characters to search for. ] ] [ [`pos` ] [ The index to start searching at. ] ] [ [`n` ] [ The length of the string to search for. ] ] ] [endsect] [section:overload4 basic_static_string::find_first_of (4 of 5 overloads)] Find the first occurrence of any of the characters within the string. [heading Synopsis] ``` constexpr size_type find_first_of( const_pointer s, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of the any of the characters within string pointed to by `s` of length `count` within the string starting at the index `pos`, where `count` is `traits_type::length(s)`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first occurrence of any of the characters in `{s, s + count)` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The characters to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload5 basic_static_string::find_first_of (5 of 5 overloads)] Find the first occurrence of a character within the string. [heading Synopsis] ``` constexpr size_type find_first_of( value_type c, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of `c` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first occurrence of `c` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`c` ] [ The character to search for. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [endsect] [section:find_last_of basic_static_string::find_last_of] [indexterm2 find_last_of..basic_static_string] Find the last occurrence of any of the characters within the string. ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload1 find_last_of]``( const T& t, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload1 `more...`]]`` template< std::size_t M> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload2 find_last_of]``( const basic_static_string< M, CharT, Traits >& str, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload2 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload3 find_last_of]``( const_pointer s, size_type pos, size_type n) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload3 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload4 find_last_of]``( const_pointer s, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload4 `more...`]]`` ``` Find the last occurrence of a character within the string. ``` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload5 find_last_of]``( value_type c, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_of.overload5 `more...`]]`` ``` [section:overload1 basic_static_string::find_last_of (1 of 5 overloads)] Find the last occurrence of any of the characters within the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type find_last_of( const T& t, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and finds the last occurrence of any of the characters in `sv` within the string before or at the index `pos`. [heading Complexity] Linear. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] The index corrosponding to the last occurrence of any of the characters in `{sv.begin(), sv.end())` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The characters to search for. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload2 basic_static_string::find_last_of (2 of 5 overloads)] Find the last occurrence of any of the characters within the string. [heading Synopsis] ``` template< std::size_t M> constexpr size_type find_last_of( const basic_static_string< M, CharT, Traits >& str, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of any of the characters within `str` within the string starting before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last occurrence of any of the characters of `str` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`str` ] [ The characters to search for. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload3 basic_static_string::find_last_of (3 of 5 overloads)] Find the last occurrence of any of the characters within the string. [heading Synopsis] ``` constexpr size_type find_last_of( const_pointer s, size_type pos, size_type n) const; ``` [heading Description] Finds the last occurrence of any of the characters within the string pointed to by `s` within the string before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last occurrence of any of the characters in `{s, s + n)` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The characters to search for. ] ] [ [`pos` ] [ The index to stop searching at. ] ] [ [`n` ] [ The length of the string to search for. ] ] ] [endsect] [section:overload4 basic_static_string::find_last_of (4 of 5 overloads)] Find the last occurrence of any of the characters within the string. [heading Synopsis] ``` constexpr size_type find_last_of( const_pointer s, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of any of the characters within the string pointed to by `s` of length `count` within the string before or at the index `pos`, where `count` is `traits_type::length(s)`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last occurrence of any of the characters in `{s, s + count)` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The characters to search for. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload5 basic_static_string::find_last_of (5 of 5 overloads)] Find the last occurrence of a character within the string. [heading Synopsis] ``` constexpr size_type find_last_of( value_type c, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of `c` within the string before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last occurrence of `c` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`c` ] [ The character to search for. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [endsect] [section:find_first_not_of basic_static_string::find_first_not_of] [indexterm2 find_first_not_of..basic_static_string] Find the first occurrence of a character not within the string. ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload1 find_first_not_of]``( const T& t, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload1 `more...`]]`` ``` Find the first occurrence of any of the characters not within the string. ``` template< std::size_t M> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload2 find_first_not_of]``( const basic_static_string< M, CharT, Traits >& str, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload2 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload3 find_first_not_of]``( const_pointer s, size_type pos, size_type n) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload3 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload4 find_first_not_of]``( const_pointer s, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload4 `more...`]]`` ``` Find the first occurrence of a character not equal to `c`. ``` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload5 find_first_not_of]``( value_type c, size_type pos = 0) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_first_not_of.overload5 `more...`]]`` ``` [section:overload1 basic_static_string::find_first_not_of (1 of 5 overloads)] Find the first occurrence of a character not within the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type find_first_not_of( const T& t, size_type pos = 0) const; ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and finds the first character that is not within `sv`, starting at the index `pos`. [heading Complexity] Linear. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] The index corrosponding to the first occurrence of a character that is not in `{sv.begin(), sv.end())` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The characters to ignore. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload2 basic_static_string::find_first_not_of (2 of 5 overloads)] Find the first occurrence of any of the characters not within the string. [heading Synopsis] ``` template< std::size_t M> constexpr size_type find_first_not_of( const basic_static_string< M, CharT, Traits >& str, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of a character that is not within `str` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first character of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) that is not within `str` if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`str` ] [ The characters to ignore. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload3 basic_static_string::find_first_not_of (3 of 5 overloads)] Find the first occurrence of any of the characters not within the string. [heading Synopsis] ``` constexpr size_type find_first_not_of( const_pointer s, size_type pos, size_type n) const; ``` [heading Description] Finds the first occurrence of a character that is not within the string pointed to by `s` within the string starting at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first character of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) that is not within `{s, s + n)` if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The characters to ignore. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] [ [`n` ] [ The length of the characters to ignore. ] ] ] [endsect] [section:overload4 basic_static_string::find_first_not_of (4 of 5 overloads)] Find the first occurrence of any of the characters not within the string. [heading Synopsis] ``` constexpr size_type find_first_not_of( const_pointer s, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of a character that is not within the string pointed to by `s` of length `count` within the string starting at the index `pos`, where `count` is `traits_type::length(s)`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first character of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) that is not within `{s, s + count)` if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The characters to ignore. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [section:overload5 basic_static_string::find_first_not_of (5 of 5 overloads)] Find the first occurrence of a character not equal to `c`. [heading Synopsis] ``` constexpr size_type find_first_not_of( value_type c, size_type pos = 0) const; ``` [heading Description] Finds the first occurrence of a character that is not equal to `c`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the first character of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos, [link static_string.ref.boost__static_strings__basic_static_string.end.overload1 `end()`]) that is not equal to `c` if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`c` ] [ The character to ignore. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is `0`. ] ] ] [endsect] [endsect] [section:find_last_not_of basic_static_string::find_last_not_of] [indexterm2 find_last_not_of..basic_static_string] Find the last occurrence of a character not within the string. ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload1 find_last_not_of]``( const T& t, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload1 `more...`]]`` template< size_t M> constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload2 find_last_not_of]``( const basic_static_string< M, CharT, Traits >& str, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload2 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload3 find_last_not_of]``( const_pointer s, size_type pos, size_type n) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload3 `more...`]]`` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload4 find_last_not_of]``( const_pointer s, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload4 `more...`]]`` ``` Find the last occurrence of a character not equal to `c`. ``` constexpr size_type ``[link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload5 find_last_not_of]``( value_type c, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.find_last_not_of.overload5 `more...`]]`` ``` [section:overload1 basic_static_string::find_last_not_of (1 of 5 overloads)] Find the last occurrence of a character not within the string. [heading Synopsis] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr size_type find_last_not_of( const T& t, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Constructs a temporary `string_view_type` object `sv` from `t`, and finds the last character that is not within `sv`, starting at the index `pos`. [heading Complexity] Linear. [heading Template Parameters] [table [[Type][Description]] [ [`T` ] [ The type of the object to convert. ] ] ] [heading Constraints] `std::is_convertible::value && !std::is_convertible::value`. [heading Return Value] The index corrosponding to the last occurrence of a character that is not in `{sv.begin(), sv.end())` within {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`t` ] [ The characters to ignore. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload2 basic_static_string::find_last_not_of (2 of 5 overloads)] Find the last occurrence of a character not within the string. [heading Synopsis] ``` template< size_t M> constexpr size_type find_last_not_of( const basic_static_string< M, CharT, Traits >& str, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of a character that is not within `str` within the string before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last character of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} that is not within `str` if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`str` ] [ The characters to ignore. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload3 basic_static_string::find_last_not_of (3 of 5 overloads)] Find the last occurrence of a character not within the string. [heading Synopsis] ``` constexpr size_type find_last_not_of( const_pointer s, size_type pos, size_type n) const; ``` [heading Description] Finds the last occurrence of a character that is not within the string pointed to by `s` within the string before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last character of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} that is not within `{s, s + n)` if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The characters to ignore. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] [ [`n` ] [ The length of the characters to ignore. ] ] ] [endsect] [section:overload4 basic_static_string::find_last_not_of (4 of 5 overloads)] Find the last occurrence of a character not within the string. [heading Synopsis] ``` constexpr size_type find_last_not_of( const_pointer s, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of a character that is not within the string pointed to by `s` of length `count` within the string before or at the index `pos`, where `count` is `traits_type::length(s)`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last character of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} that is not within `{s, s + count)` if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The characters to ignore. ] ] [ [`pos` ] [ The index to stop searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [section:overload5 basic_static_string::find_last_not_of (5 of 5 overloads)] Find the last occurrence of a character not equal to `c`. [heading Synopsis] ``` constexpr size_type find_last_not_of( value_type c, size_type pos = ``[link static_string.ref.boost__static_strings__basic_static_string.npos npos]``) const; ``` [heading Description] Finds the last occurrence of a character that is not equal to `c` before or at the index `pos`. [heading Complexity] Linear. [heading Return Value] The index corrosponding to the last character of {[link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`], [link static_string.ref.boost__static_strings__basic_static_string.begin.overload1 `begin()`] + pos} that is not equal to `c` if it exists, and [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`] otherwise. [heading Parameters] [table [[Name][Description]] [ [`c` ] [ The character to ignore. ] ] [ [`pos` ] [ The index to start searching at. The default argument for this parameter is [link static_string.ref.boost__static_strings__basic_static_string.npos `npos`]. ] ] ] [endsect] [endsect] [section:starts_with basic_static_string::starts_with] [indexterm2 starts_with..basic_static_string] Return whether the string begins with a string. ``` constexpr bool ``[link static_string.ref.boost__static_strings__basic_static_string.starts_with.overload1 starts_with]``( string_view_type s) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.starts_with.overload1 `more...`]]`` ``` Return whether the string begins with a character. ``` constexpr bool ``[link static_string.ref.boost__static_strings__basic_static_string.starts_with.overload2 starts_with]``( value_type c) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.starts_with.overload2 `more...`]]`` constexpr bool ``[link static_string.ref.boost__static_strings__basic_static_string.starts_with.overload3 starts_with]``( const_pointer s) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.starts_with.overload3 `more...`]]`` ``` [section:overload1 basic_static_string::starts_with (1 of 3 overloads)] Return whether the string begins with a string. [heading Synopsis] ``` constexpr bool starts_with( string_view_type s) const; ``` [heading Description] Returns `true` if the string begins with `s`, and `false` otherwise. [heading Complexity] Linear. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string view to check for. ] ] ] [endsect] [section:overload2 basic_static_string::starts_with (2 of 3 overloads)] Return whether the string begins with a character. [heading Synopsis] ``` constexpr bool starts_with( value_type c) const; ``` [heading Description] Returns `true` if the string begins with `c`, and `false` otherwise. [heading Complexity] Constant. [heading Parameters] [table [[Name][Description]] [ [`c` ] [ The character to check for. ] ] ] [endsect] [section:overload3 basic_static_string::starts_with (3 of 3 overloads)] Return whether the string begins with a string. [heading Synopsis] ``` constexpr bool starts_with( const_pointer s) const; ``` [heading Description] Returns `true` if the string begins with the string pointed to be `s` of length `traits_type::length(s)`, and `false` otherwise. [heading Complexity] Linear. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to check for. ] ] ] [endsect] [endsect] [section:ends_with basic_static_string::ends_with] [indexterm2 ends_with..basic_static_string] Return whether the string ends with a string. ``` constexpr bool ``[link static_string.ref.boost__static_strings__basic_static_string.ends_with.overload1 ends_with]``( string_view_type s) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.ends_with.overload1 `more...`]]`` ``` Return whether the string ends with a character. ``` constexpr bool ``[link static_string.ref.boost__static_strings__basic_static_string.ends_with.overload2 ends_with]``( value_type c) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.ends_with.overload2 `more...`]]`` constexpr bool ``[link static_string.ref.boost__static_strings__basic_static_string.ends_with.overload3 ends_with]``( const_pointer s) const; ``[''''»''' [link static_string.ref.boost__static_strings__basic_static_string.ends_with.overload3 `more...`]]`` ``` [section:overload1 basic_static_string::ends_with (1 of 3 overloads)] Return whether the string ends with a string. [heading Synopsis] ``` constexpr bool ends_with( string_view_type s) const; ``` [heading Description] Returns `true` if the string ends with `s`, and `false` otherwise. [heading Complexity] Linear. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string view to check for. ] ] ] [endsect] [section:overload2 basic_static_string::ends_with (2 of 3 overloads)] Return whether the string ends with a character. [heading Synopsis] ``` constexpr bool ends_with( value_type c) const; ``` [heading Description] Returns `true` if the string ends with `c`, and `false` otherwise. [heading Complexity] Constant. [heading Parameters] [table [[Name][Description]] [ [`c` ] [ The character to check for. ] ] ] [endsect] [section:overload3 basic_static_string::ends_with (3 of 3 overloads)] Return whether the string ends with a string. [heading Synopsis] ``` constexpr bool ends_with( const_pointer s) const; ``` [heading Description] Returns `true` if the string ends with the string pointed to be `s` of length `traits_type::length(s)`, and `false` otherwise. [heading Complexity] Linear. [heading Parameters] [table [[Name][Description]] [ [`s` ] [ The string to check for. ] ] ] [endsect] [endsect] [endsect] [section:std__hash_lt__basic_static_string__gt_ std::hash< basic_static_string >] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> struct hash< basic_static_string > ``` [heading Member Functions] [table [[Name][Description]] [ [[*[link static_string.ref.std__hash_lt__basic_static_string__gt_.operator_lp__rp_ operator()]] ] [ ] ] ] [heading Description] [section:operator_lp__rp_ std::hash< basic_static_string >::operator()] [indexterm2 operator()..std::hash< basic_static_string >] [heading Synopsis] ``` std::size_t operator()( const boost::static_strings::basic_static_string< N, CharT, Traits >& str) const; ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__basic_string_view basic_string_view] [indexterm1 basic_string_view] The type of `basic_string_view` used by the library. [heading Synopsis] Defined in header [include_file boost/static_string/config.hpp] ``` template< [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> using basic_string_view = #ifndef BOOST_STATIC_STRING_STANDALONE boost::basic_string_view< CharT, Traits >; ``` [heading Description] [endsect] [section:boost__static_strings__operator_eq__eq_ operator==] [indexterm1 operator==] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_eq__eq_.overload1 operator==]``( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_eq__eq_.overload1 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_eq__eq_.overload2 operator==]``( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_eq__eq_.overload2 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_eq__eq_.overload3 operator==]``( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_eq__eq_.overload3 `more...`]]`` ``` [section:overload1 operator== (1 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator==( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload2 operator== (2 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator==( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload3 operator== (3 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator==( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__operator_not__eq_ operator!=] [indexterm1 operator!=] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_not__eq_.overload1 operator!=]``( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_not__eq_.overload1 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_not__eq_.overload2 operator!=]``( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_not__eq_.overload2 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_not__eq_.overload3 operator!=]``( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_not__eq_.overload3 `more...`]]`` ``` [section:overload1 operator!= (1 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator!=( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload2 operator!= (2 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator!=( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload3 operator!= (3 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator!=( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__operator_lt_ operator<] [indexterm1 operator<] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_lt_.overload1 operator<]``( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_lt_.overload1 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_lt_.overload2 operator<]``( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_lt_.overload2 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_lt_.overload3 operator<]``( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_lt_.overload3 `more...`]]`` ``` [section:overload1 operator< (1 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator<( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload2 operator< (2 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator<( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload3 operator< (3 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator<( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__operator_lt__eq_ operator<=] [indexterm1 operator<=] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_lt__eq_.overload1 operator<=]``( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_lt__eq_.overload1 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_lt__eq_.overload2 operator<=]``( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_lt__eq_.overload2 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_lt__eq_.overload3 operator<=]``( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_lt__eq_.overload3 `more...`]]`` ``` [section:overload1 operator<= (1 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator<=( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload2 operator<= (2 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator<=( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload3 operator<= (3 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator<=( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__operator_gt_ operator>] [indexterm1 operator>] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_gt_.overload1 operator>]``( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_gt_.overload1 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_gt_.overload2 operator>]``( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_gt_.overload2 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_gt_.overload3 operator>]``( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_gt_.overload3 `more...`]]`` ``` [section:overload1 operator> (1 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator>( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload2 operator> (2 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator>( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload3 operator> (3 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator>( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__operator_gt__eq_ operator>=] [indexterm1 operator>=] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_gt__eq_.overload1 operator>=]``( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_gt__eq_.overload1 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_gt__eq_.overload2 operator>=]``( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_gt__eq_.overload2 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool ``[link static_string.ref.boost__static_strings__operator_gt__eq_.overload3 operator>=]``( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_gt__eq_.overload3 `more...`]]`` ``` [section:overload1 operator>= (1 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator>=( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload2 operator>= (2 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator>=( const CharT* lhs, const basic_static_string< N, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload3 operator>= (3 of 3 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr bool operator>=( const basic_static_string< N, CharT, Traits >& lhs, const CharT* rhs); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__operator_plus_ operator+] [indexterm1 operator+] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+M, CharT, Traits > ``[link static_string.ref.boost__static_strings__operator_plus_.overload1 operator+]``( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_plus_.overload1 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+1, CharT, Traits > ``[link static_string.ref.boost__static_strings__operator_plus_.overload2 operator+]``( const basic_static_string< N, CharT, Traits >& lhs, CharT rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_plus_.overload2 `more...`]]`` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+1, CharT, Traits > ``[link static_string.ref.boost__static_strings__operator_plus_.overload3 operator+]``( CharT lhs, const basic_static_string< N, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_plus_.overload3 `more...`]]`` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+M, CharT, Traits > ``[link static_string.ref.boost__static_strings__operator_plus_.overload4 operator+]``( const basic_static_string< N, CharT, Traits >& lhs, const CharT(&) rhs[M]); ``[''''»''' [link static_string.ref.boost__static_strings__operator_plus_.overload4 `more...`]]`` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+M, CharT, Traits > ``[link static_string.ref.boost__static_strings__operator_plus_.overload5 operator+]``( const CharT(&) lhs[N], const basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__operator_plus_.overload5 `more...`]]`` ``` [section:overload1 operator+ (1 of 5 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+M, CharT, Traits > operator+( const basic_static_string< N, CharT, Traits >& lhs, const basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload2 operator+ (2 of 5 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+1, CharT, Traits > operator+( const basic_static_string< N, CharT, Traits >& lhs, CharT rhs); ``` [heading Description] [endsect] [section:overload3 operator+ (3 of 5 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+1, CharT, Traits > operator+( CharT lhs, const basic_static_string< N, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload4 operator+ (4 of 5 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+M, CharT, Traits > operator+( const basic_static_string< N, CharT, Traits >& lhs, const CharT(&) rhs[M]); ``` [heading Description] [endsect] [section:overload5 operator+ (5 of 5 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr basic_static_string< N+M, CharT, Traits > operator+( const CharT(&) lhs[N], const basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__swap swap] [indexterm1 swap] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr void ``[link static_string.ref.boost__static_strings__swap.overload1 swap]``( basic_static_string< N, CharT, Traits >& lhs, basic_static_string< N, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__swap.overload1 `more...`]]`` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr void ``[link static_string.ref.boost__static_strings__swap.overload2 swap]``( basic_static_string< N, CharT, Traits >& lhs, basic_static_string< M, CharT, Traits >& rhs); ``[''''»''' [link static_string.ref.boost__static_strings__swap.overload2 `more...`]]`` ``` [section:overload1 swap (1 of 2 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr void swap( basic_static_string< N, CharT, Traits >& lhs, basic_static_string< N, CharT, Traits >& rhs); ``` [heading Description] [endsect] [section:overload2 swap (2 of 2 overloads)] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, std::size_t M, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> constexpr void swap( basic_static_string< N, CharT, Traits >& lhs, basic_static_string< M, CharT, Traits >& rhs); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__operator_lt__lt_ operator<<] [indexterm1 operator<<] [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> std::basic_ostream< CharT, Traits >& operator<<( std::basic_ostream< CharT, Traits >& os, const basic_static_string< N, CharT, Traits >& s); ``` [heading Description] [endsect] [section:boost__static_strings__to_static_string to_static_string] [indexterm1 to_static_string] Converts `value` to a `static_string` ``` static_string< std::numeric_limits< int >::digits10+2 > ``[link static_string.ref.boost__static_strings__to_static_string.overload1 to_static_string]``( int value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload1 `more...`]]`` static_string< std::numeric_limits< long >::digits10+2 > ``[link static_string.ref.boost__static_strings__to_static_string.overload2 to_static_string]``( long value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload2 `more...`]]`` static_string< std::numeric_limits< long long >::digits10+2 > ``[link static_string.ref.boost__static_strings__to_static_string.overload3 to_static_string]``( long long value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload3 `more...`]]`` static_string< std::numeric_limits< unsigned int >::digits10+1 > ``[link static_string.ref.boost__static_strings__to_static_string.overload4 to_static_string]``( unsigned int value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload4 `more...`]]`` static_string< std::numeric_limits< unsigned long >::digits10+1 > ``[link static_string.ref.boost__static_strings__to_static_string.overload5 to_static_string]``( unsigned long value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload5 `more...`]]`` static_string< std::numeric_limits< unsigned long long >::digits10+1 > ``[link static_string.ref.boost__static_strings__to_static_string.overload6 to_static_string]``( unsigned long long value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload6 `more...`]]`` static_string< std::numeric_limits< float >::max_digits10+4 > ``[link static_string.ref.boost__static_strings__to_static_string.overload7 to_static_string]``( float value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload7 `more...`]]`` static_string< std::numeric_limits< double >::max_digits10+4 > ``[link static_string.ref.boost__static_strings__to_static_string.overload8 to_static_string]``( double value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload8 `more...`]]`` static_string< std::numeric_limits< long double >::max_digits10+4 > ``[link static_string.ref.boost__static_strings__to_static_string.overload9 to_static_string]``( long double value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_string.overload9 `more...`]]`` ``` [section:overload1 to_static_string (1 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< int >::digits10+2 > to_static_string( int value); ``` [heading Description] [endsect] [section:overload2 to_static_string (2 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< long >::digits10+2 > to_static_string( long value); ``` [heading Description] [endsect] [section:overload3 to_static_string (3 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< long long >::digits10+2 > to_static_string( long long value); ``` [heading Description] [endsect] [section:overload4 to_static_string (4 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< unsigned int >::digits10+1 > to_static_string( unsigned int value); ``` [heading Description] [endsect] [section:overload5 to_static_string (5 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< unsigned long >::digits10+1 > to_static_string( unsigned long value); ``` [heading Description] [endsect] [section:overload6 to_static_string (6 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< unsigned long long >::digits10+1 > to_static_string( unsigned long long value); ``` [heading Description] [endsect] [section:overload7 to_static_string (7 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< float >::max_digits10+4 > to_static_string( float value); ``` [heading Description] [endsect] [section:overload8 to_static_string (8 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< double >::max_digits10+4 > to_static_string( double value); ``` [heading Description] [endsect] [section:overload9 to_static_string (9 of 9 overloads)] Converts `value` to a `static_string` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_string< std::numeric_limits< long double >::max_digits10+4 > to_static_string( long double value); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__to_static_wstring to_static_wstring] [indexterm1 to_static_wstring] Converts `value` to a `static_wstring` ``` static_wstring< std::numeric_limits< int >::digits10+2 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload1 to_static_wstring]``( int value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload1 `more...`]]`` static_wstring< std::numeric_limits< long >::digits10+2 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload2 to_static_wstring]``( long value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload2 `more...`]]`` static_wstring< std::numeric_limits< long long >::digits10+2 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload3 to_static_wstring]``( long long value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload3 `more...`]]`` static_wstring< std::numeric_limits< unsigned int >::digits10+1 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload4 to_static_wstring]``( unsigned int value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload4 `more...`]]`` static_wstring< std::numeric_limits< unsigned long >::digits10+1 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload5 to_static_wstring]``( unsigned long value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload5 `more...`]]`` static_wstring< std::numeric_limits< unsigned long long >::digits10+1 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload6 to_static_wstring]``( unsigned long long value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload6 `more...`]]`` static_wstring< std::numeric_limits< float >::max_digits10+4 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload7 to_static_wstring]``( float value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload7 `more...`]]`` static_wstring< std::numeric_limits< double >::max_digits10+4 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload8 to_static_wstring]``( double value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload8 `more...`]]`` static_wstring< std::numeric_limits< long double >::max_digits10+4 > ``[link static_string.ref.boost__static_strings__to_static_wstring.overload9 to_static_wstring]``( long double value); ``[''''»''' [link static_string.ref.boost__static_strings__to_static_wstring.overload9 `more...`]]`` ``` [section:overload1 to_static_wstring (1 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< int >::digits10+2 > to_static_wstring( int value); ``` [heading Description] [endsect] [section:overload2 to_static_wstring (2 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< long >::digits10+2 > to_static_wstring( long value); ``` [heading Description] [endsect] [section:overload3 to_static_wstring (3 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< long long >::digits10+2 > to_static_wstring( long long value); ``` [heading Description] [endsect] [section:overload4 to_static_wstring (4 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< unsigned int >::digits10+1 > to_static_wstring( unsigned int value); ``` [heading Description] [endsect] [section:overload5 to_static_wstring (5 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< unsigned long >::digits10+1 > to_static_wstring( unsigned long value); ``` [heading Description] [endsect] [section:overload6 to_static_wstring (6 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< unsigned long long >::digits10+1 > to_static_wstring( unsigned long long value); ``` [heading Description] [endsect] [section:overload7 to_static_wstring (7 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< float >::max_digits10+4 > to_static_wstring( float value); ``` [heading Description] [endsect] [section:overload8 to_static_wstring (8 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< double >::max_digits10+4 > to_static_wstring( double value); ``` [heading Description] [endsect] [section:overload9 to_static_wstring (9 of 9 overloads)] Converts `value` to a `static_wstring` [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` static_wstring< std::numeric_limits< long double >::max_digits10+4 > to_static_wstring( long double value); ``` [heading Description] [endsect] [endsect] [section:boost__static_strings__hash_value hash_value] [indexterm1 hash_value] hash_value overload for Boost.Container_Hash [heading Synopsis] Defined in header [include_file boost/static_string/static_string.hpp] ``` template< std::size_t N, [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type], [role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type][role red error.param neither has a declname nor a 'class ' prefix in the type]> std::size_t hash_value( const basic_static_string< N, CharT, Traits >& str); ``` [heading Description] [endsect]