...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
A view representing query parameters in a URL.
Defined in header <boost/url/params_encoded_ref.hpp>
class params_encoded_ref : public params_encoded_base
Name |
Description |
---|---|
A Bidirectional iterator to a query parameter. |
|
The reference type. |
|
A signed integer type used to represent differences. |
|
A Bidirectional iterator to a query parameter. |
|
The reference type. |
|
An unsigned integer type to represent sizes. |
|
The value type. |
Name |
Description |
---|---|
Append params. |
|
Assign params. |
|
Return an iterator to the beginning. |
|
Return the query corresponding to these params. |
|
Clear the contents of the container. |
|
Return true if a matching key exists. |
|
Return the number of matching keys. |
|
Return true if there are no params. |
|
Return an iterator to the end. |
|
Erase params. |
|
Find a matching key. |
|
Find a matching key. |
|
Insert params. |
|
Assignment. |
|
Conversion. |
|
params_encoded_ref [constructor] |
Constructor. |
Replace params. |
|
Set a value. |
|
Return the number of params. |
|
Remove the value on an element. |
|
Return the referenced url. |
Name |
Description |
---|---|
Return the maximum number of characters possible. |
Objects of this type are used to interpret the query parameters as a bidirectional view of key value pairs. The view does not retain ownership of the elements and instead references the original url. The caller is responsible for ensuring that the lifetime of the referenced url extends until it is no longer referenced. The view is modifiable; calling non-const members causes changes to the referenced url.
url u( "?first=John&last=Doe" ); params_encoded_ref p = u.encoded_params();
Strings produced when elements are returned have type param_pct_view
and represent encoded
strings. Strings passed to member functions may contain percent escapes,
and throw exceptions on invalid inputs.
Changes to the underlying character buffer can invalidate iterators which
reference it. Modifications made through the container invalidate some iterators
to the underlying character buffer: * append
: Only end()
. * assign
, clear
, operator=
: All params. * erase
: Erased params and all params
after (including end()
).
* insert
: All params at or after
the insertion point (including end()
). * replace
, set
: Modified params and all params
after (including end()
).
Convenience header <boost/url.hpp>