31 Input/output library [input.output]

31.12 File systems [filesystems]

31.12.8 Enumerations [fs.enum]

31.12.8.2 Enum class file_type [fs.enum.file.type]

This enum class specifies constants used to identify file types, with the meanings listed in Table 131.
The values of the constants are distinct.
Table 131: Enum class file_type[tab:fs.enum.file.type]
Constant
Meaning
none
The type of the file has not been determined or an error occurred while trying to determine the type.
not_found
Pseudo-type indicating the file was not found.
[Note 1: 
The file not being found is not considered an error while determining the type of a file.
— end note]
regular
Regular file
directory
Directory file
symlink
Symbolic link file
block
Block special file
character
Character special file
fifo
FIFO or pipe file
socket
Socket file
implementation-defined
Implementations that support file systems having file types in addition to the above file_type types shall supply implementation-defined file_type constants to separately identify each of those additional file types
unknown
The file exists but the type cannot be determined