Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext
basic_static_string::insert (14 of 15 overloads)

Insert characters from an object convertible to string_view_type.

Synopsis
template<
    typename T,
    [role red error.class-detail-template.1][role red error.class-detail-template.2] = detail::enable_if_viewable_t<T, CharT, Traits>>
BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string&
insert(
    size_type index,
    const T& t,
    size_type index_str,
    size_type count = npos);
Description

Constructs a temporary string_view_type object sv from t and inserts sv.substr(index_str, count) at index.

Exception Safety

Strong guarantee.

Remarks

All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated.

Template Parameters

Type

Description

T

The type of the object to convert.

Constraints

std::is_convertible<const T&, string_view>::value && !std::is_convertible<const T&, const_pointer>::value.

Return Value

*this

Parameters

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.

Exceptions

Type

Thrown On

std::length_error

size() + sv.size() > max_size()

std::out_of_range

index > size()

std::out_of_range

index_str > sv.size()


PrevUpHomeNext