Mutable decoded path segment proxy
Presents the decoded path segments of a url_base as a bidirectional range whose modifiers update the underlying URL. The proxy references the URL’s storage directly, so the owning URL must remain alive while the proxy is used.
url u( "/path/to/file.txt" );
segments_ref ps = u.segments();
Percent escapes in strings returned when dereferencing iterators are automatically decoded. Reserved characters in strings supplied to modifier functions are automatically percent-escaped.
Changes to the underlying character buffer can invalidate iterators which reference it. Modifications made through the container invalidate some or all iterators:
push_back : Only `end()`.
assign, clear, operator= : All elements.
erase : Erased elements and all elements after (including `end()`).
insert : All elements at or after the insertion point (including `end()`).
replace : Modified elements and all elements after (including `end()`).
| Name | Description |
|---|---|
segments_base | Decoded path segment helper base |
| Name | Description |
|---|---|
iterator | A Bidirectional iterator to a path segment |
const_iterator | A Bidirectional iterator to a path segment |
const_reference | The reference type |
difference_type | A signed integer type used to represent differences. |
reference | The reference type |
size_type | An unsigned integer type used to represent size. |
value_type | The value type |
| Name | Description |
|---|---|
segments_ref [constructor] | Constructor |
operator= | Assignment |
assign | Assign segments |
back | Return the last segment |
begin | Return an iterator to the beginning |
buffer | Return the referenced character buffer. |
clear | Clear the contents of the container |
empty | Return true if there are no segments |
end | Return an iterator to the end |
erase | Erase segments |
front | Return the first segment |
insert | Insert segments |
is_absolute | Returns true if this references an absolute path. |
pop_back | Remove the last segment |
push_back | Append a segment |
replace | Replace segments |
size | Return the number of segments |
url | Return the referenced url |
operator segments_view | Conversion |
| Name | Description |
|---|---|
max_size | Return the maximum number of characters possible |
| Name | Description |
|---|---|
segments_encoded_ref |
Mutable encoded path segment proxy |
url_base |
Common functionality for containers |