boost::urls::segments_view

Non-owning decoded path segment view

Synopsis

Declared in <boost/url/segments_view.hpp>
class segments_view
    : public segments_base

Description

Presents the path of a URL as a read-only bidirectional range of percent-decoded segments. The range references the original buffer, so callers must keep that storage alive for as long as the view is accessed.

Example

url_view u( "/path/to/file.txt" ); segments_view ps = u.segments(); assert( ps.buffer().data() == u.buffer().data() );

Any percent-escapes are decoded on demand when iterators are dereferenced.

Iterator Invalidation

Changes to the underlying character buffer can invalidate iterators which reference it.

Base Classes

Name Description
segments_baseDecoded path segment helper base

Types

NameDescription
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

Member Functions

NameDescription
segments_view [constructor]Constructor
operator= Assignment
back Return the last segment
begin Return an iterator to the beginning
buffer Return the referenced character buffer.
empty Return true if there are no segments
end Return an iterator to the end
front Return the first segment
is_absolute Returns true if this references an absolute path.
size Return the number of segments

Static Member Functions

NameDescription
max_size Return the maximum number of characters possible

Friends

|===
Name Description
segments_ref Mutable decoded path segment proxy
segments_encoded_view Non-owning encoded path segment view
url_view_base Common functionality for containers

See Also

segments_encoded_view, segments_encoded_ref, segments_ref.