Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
PrevUpHomeNext
url_base::set_encoded_params

Set the query params.

Synopsis
url_base&
set_encoded_params(
    std::initializer_list< param_pct_view > ps);
Description

This sets the query params to the elements in the list, which may contain percent-escapes and can be empty. An empty list of params is distinct from having no query. Escapes in the string are preserved, and reserved characters in the string are percent-escaped in the result.

Example
assert( url( "http://example.com" ).set_encoded_params( {"id", "42"} ).encoded_query() == "id=42" );
Postconditions
this->has_query() == true
Complexity

Linear.

Exception Safety

Strong guarantee. Calls to allocate may throw. Exceptions thrown on invalid input.

Parameters

Name

Description

ps

The params to set.

Exceptions

Type

Thrown On

system_error

some element in ps contains an invalid percent-encoding.

BNF
query           = *( pchar / "/" / "?" )

query-param     = key [ "=" value ]
query-params    = [ query-param ] *( "&" query-param )
Specification
See Also

set_params, params, remove_query, set_encoded_query, set_query.


PrevUpHomeNext