:relfileprefix: ../../../
[#boost-urls-params_ref-insert-08]

= xref:boost.adoc[pass:[boost]]::xref:boost/urls.adoc[pass:[urls]]::xref:boost/urls/params_ref.adoc[pass:[params_ref]]::insert


Insert elements


== Synopsis

Declared in header `<https://www.github.com/boostorg/url/blob/develop/include/boost/url/params_ref.hpp#L477[boost/url/params_ref.hpp,window=blank_]>`

[source,cpp,subs="verbatim,macros,-callouts"]
----
xref:boost/urls/params_base/iterator.adoc[iterator]
insert(
    xref:boost/urls/params_base/iterator.adoc[iterator] before,
    xref:boost/urls/param_view.adoc[param_view] const& p);
----

== Description


This function inserts a param
before the specified position.



All iterators that are equal to
`before` or come after are invalidated.

=== Complexity

Linear in `this-&gt;url().encoded_query().size()`.

=== Exception Safety

Strong guarantee.
Calls to allocate may throw.




== Return Value


An iterator to the inserted
element.



== Parameters

|===
| Name | Description 

| *before*
| 
An iterator before which
the param is inserted. This may
be equal to `end()`.

| *p*
| 
The param to insert.

|===




