A forward range of parsed elements

Synopsis

Declared in header </boost/url/grammar/range_rule.hpp#L60[boost/url/grammar/range_rule.hpp,window=blank_]>

template<class T>
class range;

Types

Name

Description

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

iterator

A constant, forward iterator to elements of the range

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

Member Functions

Name

Description

begin

Return an iterator to the beginning

empty

Return true if the range is empty

end

Return an iterator to the end

operator=

Assignment

Constructor

range

Constructor

size

Return the number of elements in the range

string

Return the matching part of the string

~range

Destructor

Description

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.

Note
The implementation may use temporary, recycled storage for type-erasure. 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.