bool is_empty(const path& p);
bool is_empty(const path& p, error_code& ec) noexcept;
Effects:
Определяем file_status s, как будто по status(p) или status(p, ec), соответственно.
Для подписи с аргументом ecвернуть, false если произошла ошибка.
В противном случае, если is_directory(s):
Создайте переменную itr, как будто по directory_iterator itr(p) или directory_iterator itr(p, ec), соответственно.
Для подписи с аргументом ecвернуть, false если произошла ошибка.
В противном случае верните itr == directory_iterator().
Иначе:
Определяем uintmax_t sz, как будто по file_size(p) или file_size(p, ec), соответственно.
Для подписи с аргументом ecвернуть, false если произошла ошибка.
В противном случае верните sz == 0.
Throws: Как указано в [fs.err.report].