27
Input/output library
[input.output]
27.11
File systems
[filesystems]
27.11.14
Filesystem operation functions
[fs.op.funcs]
27.11.14.19
Is empty
[fs.op.is_empty]
🔗
bool is_empty(const path& p); bool is_empty(const path& p, error_code& ec);
1
#
Effects:
(1.1)
Determine
file_status s
, as if by
status(p)
or
status(p, ec)
, respectively
.
(1.2)
For the signature with argument
ec
, return
false
if an error occurred
.
(1.3)
Otherwise, if
is_directory(s)
:
(1.3.1)
Create a variable
itr
, as if by
directory_iterator itr(p)
or
directory_iterator itr(p, ec)
, respectively
.
(1.3.2)
For the signature with argument
ec
, return
false
if an error occurred
.
(1.3.3)
Otherwise, return
itr == directory_iterator()
.
(1.4)
Otherwise:
(1.4.1)
Determine
uintmax_t sz
, as if by
file_size(p)
or
file_size(p, ec)
, respectively
.
(1.4.2)
For the signature with argument
ec
, return
false
if an error occurred
.
(1.4.3)
Otherwise, return
sz == 0
.
2
#
Throws:
As specified in
[fs.err.report]
.