Files
2025-10-25 03:02:53 +03:00

1.8 KiB

[fs.op.is.empty]

31 Input/output library [input.output]

31.12 File systems [filesystems]

31.12.13 Filesystem operation functions [fs.op.funcs]

31.12.13.20 Is empty [fs.op.is.empty]

🔗

bool filesystem::is_empty(const path& p); bool filesystem::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].