[#58AD20530274EF7937A0319DF58297205B8C72AD]

Friend operator<

Return the result of comparing two URLs

Synopsis

            friend
bool
operator<(
    url_view_base const& u0,
    url_view_base const& u1) noexcept;
        

Description

The URLs are compared component by component as if they were first normalized.

Example

url_view u0( "http://www.a.com/index.htm" ); url_view u1( "http://www.b.com/index.htm" ); assert( u0 < u1 );

Effects

url a(u0); a.normalize(); url b(u1); b.normalize(); return std::make_tuple( a.scheme(), a.user(), a.password(), a.host(), a.port(), a.path(), a.query(), a.fragment()) < std::make_tuple( b.scheme(), b.user(), b.password(), b.host(), b.port(), b.path(), b.query(), b.fragment());

Complexity

Linear in `min( u0.size(), u1.size() )`

Exception Safety

Throws nothing

Specification

  • 6.2.2 Syntax-Based Normalization (rfc3986)