| Home | Libraries | People | FAQ | More

##### static_url_base::set_encoded_user

(Inherited from `url_base`)

Set the user.

###### Synopsis

    url_base&
    set_encoded_user(
        pct_string_view s);

###### Description

This function sets the user part of the userinfo the the string, which may contain percent-escapes. Escapes in the string are preserved, and reserved characters in the string are percent-escaped in the result.

###### Example

    assert( url().set_encoded_user( "john%20doe" ).userinfo() == "john doe" );

###### Postconditions

    this->has_authority() == true && this->has_userinfo() == true

###### Complexity

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

###### Exception Safety

Strong guarantee. Calls to allocate may throw.

###### Exceptions

Type | Thrown On
--- | ---
`system_error` | `s` contains an invalid percent-encoding.

###### Parameters

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

###### BNF

    userinfo      = [ [ user ] [ ':' password ] ]

    user          = *( unreserved / pct-encoded / sub-delims )
    password      = *( unreserved / pct-encoded / sub-delims / ":" )

###### Specification

- 3.2.1. User Information (rfc3986)

###### See Also

`remove_password`, `set_encoded_password`, `set_password`, `set_user`.