Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext
static_url::set_encoded_params

(Inherited from url_base)

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( [link url.ref.boost__urls__url_base.url `url`]( "http://example.com" ).[link url.ref.boost__urls__static_url.set_encoded_params `set_encoded_params`]( { "id" , "42" } ).[link url.ref.boost__urls__static_url.encoded_query `encoded_query`]() == "id=42" );
Postconditions
this->[link url.ref.boost__urls__static_url.has_query `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
[link url.ref.boost__urls__static_url.query `query`]           = *( pchar / "/" / "?" )

[link url.ref.boost__urls__static_url.query `query`]-param     = key [ "=" value ]
[link url.ref.boost__urls__static_url.query `query`]-[link url.ref.boost__urls__static_url.params `params`]    = [ [link url.ref.boost__urls__static_url.query `query`]-param ] *( "&" [link url.ref.boost__urls__static_url.query `query`]-param )
Specification
See Also

set_params, params, remove_query, set_encoded_query, set_query.


PrevUpHomeNext