boost::urls::parse_uri_reference

Return a reference to a parsed URL string

Synopsis

Declared in header <boost/url/parse.hpp>

system::result<url_view>
parse_uri_reference(core::string_view s);

Description

This function parses a string according to the grammar below and returns a view referencing the passed string upon success, else returns an error. Ownership of the string is not transferred; the caller is responsible for ensuring that the lifetime of the character buffer extends until the view is no longer being accessed.

Example

system::result< url_view > = parse_uri_reference( "ws://echo.example.com/?name=boost#demo" );

BNF

URI-reference = URI / relative-ref

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

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

hier-part     = "//" authority path-abempty
              / path-absolute
              / path-rootless
              / path-empty

relative-part = "//" authority path-abempty
              / path-absolute
              / path-noscheme
              / path-abempty
              / path-empty

Exceptions

Name Thrown on

std::length_error

s.size() > url_view::max_size

Return Value

A result containing a value or an error

Parameters

Name Description

s

The string to parse