Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for a snapshot of the master branch, built from commit 41715b1c50.
PrevUpHomeNext
url::set_path_absolute

Set if the path is absolute.

Synopsis
bool
set_path_absolute(
    bool absolute);
Description

This function adjusts the path to make it absolute or not, depending on the parameter.

Remarks

If an authority is present, the path is always absolute. In this case, the function has no effect.

Example
url u( "path/to/file.txt" );
assert( u.set_path_absolute( true ) );
assert( u.buffer() == "/path/to/file.txt" );
Postconditions
this->is_path_absolute() == true && this->encoded_path().front() == '/'
Return Value

true on success.

Complexity

Linear in this->size().

BNF
path          = path-abempty    ; begins with "/" or is empty
              / path-absolute   ; begins with "/" but not "//"
              / path-noscheme   ; begins with a non-colon segment
              / path-rootless   ; begins with a segment
              / path-empty      ; zero characters

path-abempty  = *( "/" segment )
path-absolute = "/" [ segment-nz *( "/" segment ) ]
path-noscheme = segment-nz-nc *( "/" segment )
path-rootless = segment-nz *( "/" segment )
path-empty    = 0<pchar>
Specification
See Also

encoded_segments, segments, set_encoded_path, set_path.


PrevUpHomeNext