std::filesystem::recursive_directory_iterator::pop (3) - Linux Manuals

std::filesystem::recursive_directory_iterator::pop: std::filesystem::recursive_directory_iterator::pop


std::filesystem::recursive_directory_iterator::pop - std::filesystem::recursive_directory_iterator::pop


void pop(); (1) (since C++17)
void pop(std::error_code& ec); (2) (since C++17)

Moves the iterator one level up in the directory hierarchy. Invalidates all copies of the previous value of *this.
If the parent directory is outside directory hierarchy that is iterated on (i.e. depth() == 0), sets *this to an end directory iterator.


ec - error code to store the error status to

Return value



The overload that does not take a std::error_code& parameter throws filesystem_error on underlying OS API errors, constructed with the OS error code as the error code argument. The overload taking a std::error_code& parameter sets it to the OS API error code if an OS API call fails, and executes ec.clear() if no errors occur. Any overload not marked noexcept may throw std::bad_alloc if memory allocation fails.