| Home | Libraries | People | FAQ | More

###### url_view::url_view (2 of 5 overloads)

Constructor.

###### Synopsis

    url_view(
        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. Upon successful construction, the view refers to the characters in the buffer pointed to by `s`. Ownership is not transferred; The caller is responsible for ensuring that the lifetime of the buffer extends until it is no longer referenced.

###### Example

    url_view u( "http://www.example.com/index.htm" );

###### Effects

    return parse_uri_reference( s ).value();

###### Complexity

Linear in `s.size()`.

###### Exception Safety

Exceptions thrown on invalid input.

###### Exceptions

Type | Thrown On
--- | ---
`system_error` | The input failed to parse correctly.

###### Parameters

Name | Description
--- | ---
`s` | The string to parse.

###### BNF

    URI           = scheme ":" hier-part [ "?" query ] [ "#" fragment ]

    relative-ref  = relative-part [ "?" query ] [ "#" fragment ]

###### Specification

- 4.1. URI Reference

###### See Also

`parse_uri_reference`.