uintmax_t remove_all(const path& p);
uintmax_t remove_all(const path& p, error_code& ec) noexcept;
Effects: Recursively deletes the contents of p if it exists, then deletes file p itself, as if by POSIX remove(). [ Note: A symbolic link is itself removed, rather than the file it resolves to. — end note ]
Returns: The number of files removed. The signature with argument ec returns static_cast< uintmax_t>(-1) if an error occurs.
Throws: As specified in [fs.err.report].