A forward range of parsed elements
<boost/url/grammar/range_rule.hpp>template<
class T,
class RangeRule = any_rule<T>>
class range;
Objects of this type are forward ranges returned when parsing using the range_rule. Iteration is performed by re-parsing the underlying character buffer. Ownership of the buffer is not transferred; the caller is responsible for ensuring that the lifetime of the buffer extends until it is no longer referenced by the range.
The implementation may type-erase the rule responsible for iterating the underlying character buffer. Objects of type range are intended to be used ephemerally. That is, for short durations such as within a function scope. If it is necessary to store the range for a long period of time or with static storage duration, it is necessary to copy the contents to an object of a different type.
| Name | Description |
|---|---|
iterator | A constant, forward iterator to elements of the range |
const_iterator | A constant, forward iterator to elements of the range |
const_reference | The type of each element of the range |
difference_type | The type used to represent signed integers |
pointer | Provided for compatibility, unused |
reference | The type of each element of the range |
size_type | The type used to represent unsigned integers |
value_type | The type of each element of the range |
| Name | Description |
|---|---|
range [constructor] | Constructor |
~range [destructor] | Destructor |
operator= | Assignment |
begin | Return an iterator to the beginning |
empty | Return true if the range is empty |
end | Return an iterator to the end |
size | Return the number of elements in the range |
string | Return the matching part of the string |
| Name | Description |
|---|---|
| T | The value type of the range |
| RangeRule | The implementation used to iterate the range. The default is a type-erased rule. |