[#ACA41F159E9D7F37AE4AA64BF8F80F3692054398]

Function url_base:: set_scheme

Set the scheme

Synopsis

            url_base&
set_scheme(core::string_view s);
        

Description

The scheme is set to the specified string, which must contain a valid scheme without any trailing colon (':'). Note that schemes are case-insensitive, and the canonical form is lowercased.

Example

assert( url( "http://www.example.com" ).set_scheme( "https" ).scheme_id() == scheme::https );

Complexity

Linear in `this->size() + s.size()`.

Exception Safety

Strong guarantee. Calls to allocate may throw. Exceptions thrown on invalid input.

BNF

scheme = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )

Specification

  • 3.1. Scheme (rfc3986)