This contains file system metadata for a path.
A symlink will report information about itself, other than the size which will be the size of the target. A broken symlink will report as much as it can and will set the broken flag.
class val FileInfo
This will raise an error if the FileStat capability isn't available or the path doesn't exist.
new val create( from: FilePath val) : FileInfo val^ ?
- from: FilePath val
- FileInfo val^ ?
UNIX-style file mode.
Number of hardlinks to this
OS id of the device containing this
Device IDs consist of a major and minor device id,
denoting the type of device and the instance of this type on the system.
UNIX specific INODE number of
filepath. Is 0 on Windows.
UNIX-style user ID of the owner of
UNIX-style user ID of the owning group of
Total size of
filepath in bytes.
In case of a symlink this is the size of the target, not the symlink itself.
Time of last access as a tuple of seconds and nanoseconds since the epoch:
(let a_secs: I64, let a_nanos: I64) = file_info.access_time
Time of last modification as tuple of seconds and nanoseconds since the epoch:
(let m_secs: I64, let m_nanos: I64) = file_info.modified_time
Time of the last change either the attributes (number of links, owner,
group, file mode, ...) or the content of
as a tuple of seconds and nanoseconds since the epoch:
(let c_secs: I64, let c_nanos: I64) = file_info.change_time
On Windows this will be the file creation time.
filepath points to an a regular file.
filepath points to a directory.
filepath points to a named pipe.
filepath points to a symbolic link.
filepath points to a broken symlink.