[#bsl-list-054-insert-06]
= xref:bsl.adoc[bsl]::xref:bsl/list-054.adoc[list]::insert
:relfileprefix: ../../
:mrdocs:

Insert a copy of `value` at `dstPosition` and return an iterator to it&period;

== Synopsis

Declared in `&lt;bslstl&lowbar;list&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/list-054/iterator.adoc[list&lt;VALUE, ALLOCATOR&gt;::iterator]
insert(
    xref:bsl/list-054/const_iterator.adoc[const&lowbar;iterator] dstPosition,
    xref:bsl/list-054/value_type.adoc[value&lowbar;type] const& value);
----

== Description

This method offers full guarantee of rollback in case an exception is thrown other than by the `VALUE` copy constructor or assignment operator&period; This method requires that the (template parameter) `VALUE` be `copy&hyphen;insertable` into this list (see &lcub;Requirements on `VALUE`&rcub;)&period; The behavior is undefined unless `dstPosition` is an iterator in the range `&lsqb;cbegin() &period;&period; cend()&rsqb;endpoints included)`&period;

== Return Value

iterator to the newly inserted element

== Parameters

[cols="1,4"]
|===
| Name| Description
| *dstPosition*
| location before which the element is inserted
| *value*
| element to copy&hyphen;insert
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
