Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for a snapshot of the master branch, built from commit 5002c2d6a2.
PrevUpHomeNext

grammar::range

A forward range of parsed elements.

Synopsis

Defined in header <boost/url/grammar/range_rule.hpp>

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.

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=

Constructor.

Assignment.

range [constructor]

Constructor.

size

Return the number of elements in the range.

string

Return the matching part of the string.

~range [destructor]

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.

Remarks

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.

Template Parameters

Type

Description

T

The value type of the range

See Also

parse, range_rule.

Convenience header <boost/url/grammar.hpp>


PrevUpHomeNext