[#boost-urls-url-2constructor-002] = xref:boost.adoc[boost]::xref:boost/urls.adoc[urls]::xref:boost/urls/url.adoc[url]::url :relfileprefix: ../../../ :mrdocs: Constructor == Synopsis Declared in `<https://www.github.com/boostorg/url/blob/develop/include/boost/url/url.hpp#L169[boost/url/url.hpp]>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- explicit url(core::string_view s); ---- == Description This function constructs a URL from the string `s`, which must contain a valid _URI_ or _relative‐ref_ or else an exception is thrown. The new url retains ownership by allocating a copy of the passed string. === Example [,cpp] ---- url u( "https://www.example.com" ); ---- === Effects [,cpp] ---- return url( parse_uri_reference( s ).value() ); ---- === Postconditions [,cpp] ---- this->buffer().data() != s.data() ---- === Complexity Linear in `s.size()`. === Exception Safety Calls to allocate may throw. Exceptions thrown on invalid input. === BNF [,cpp] ---- URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ] relative-ref = relative-part [ "?" query ] [ "#" fragment ] ---- === Specification * link:https://datatracker.ietf.org/doc/html/rfc3986#section-4.1[4.1. URI Reference] Constructor This function constructs a URL from the string `s`, which must contain a valid _URI_ or _relative‐ref_ or else an exception is thrown. The new url retains ownership by allocating a copy of the passed string. === Example [,cpp] ---- url u( "https://www.example.com" ); ---- === Effects [,cpp] ---- return url( parse_uri_reference( s ).value() ); ---- === Postconditions [,cpp] ---- this->buffer().data() != s.data() ---- === Complexity Linear in `s.size()`. === Exception Safety Calls to allocate may throw. Exceptions thrown on invalid input. === BNF [,cpp] ---- URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ] relative-ref = relative-part [ "?" query ] [ "#" fragment ] ---- === Specification * link:https://datatracker.ietf.org/doc/html/rfc3986#section-4.1[4.1. URI Reference] == Exceptions |=== | Name | Thrown on | `system_error` | The input does not contain a valid url. | `system_error` | The input does not contain a valid url. |=== == Parameters |=== | Name | Description | *s* | The string to parse. | *s* | The string to parse. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#