aboutsummaryrefslogtreecommitdiff
path: root/spec/system.md
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2021-04-07 21:11:31 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2021-04-07 21:11:31 -0400
commita5285fc474570cb71749477291d5430cede1f1d2 (patch)
tree4d8a9cbe9f1e501afe388d39e6737240993c0e25 /spec/system.md
parent6ce0c822ae744af14a772e59e3e5435cc442ff71 (diff)
Add some missing file metadata functionality
Diffstat (limited to 'spec/system.md')
-rw-r--r--spec/system.md15
1 files changed, 12 insertions, 3 deletions
diff --git a/spec/system.md b/spec/system.md
index 06722d76..5d977209 100644
--- a/spec/system.md
+++ b/spec/system.md
@@ -64,19 +64,28 @@ The following functions manipulate paths and don't access files. Each takes a re
### File metadata
-Metadata functions may query information about a file or directory but do not read to or write from it. Each takes a path `𝕩`, and `Permissions` also allows new data in `𝕨`. The returned data in any case is the specified property.
+Metadata functions may query information about a file or directory but do not read to or write from it. Each takes a path `𝕩`, and some functions also allow new data in `𝕨`. The returned data in any case is the specified property.
| Name | Summary
|---------------|--------------------------
| `Exists` | `1` if the file exists and `0` otherwise
-| `Type` | `"none"`, `"file"`, or `"dir"`
+| `Type` | A character indicating the file's type
| `Created` | Time created
| `Accessed` | Time of last access
| `Modified` | Time of last modification
| `Size` | Total size in bytes
| `Permissions` | Query or set file permissions
+| `Owner` | Query or set owner user ID and group ID number
-Times are Unix timestamps, that is, seconds since the Unix epoch, as used by [time](#time) system values.
+Times are Unix timestamps, that is, seconds since the Unix epoch, as used by [time](#time) system values. File permissions on Unix are a three-element list of numbers giving the permissions for the owner, group, and other users. The file type is one of the following characters for the POSIX file types, matching Unix `ls -l` with `'f'` instead of `'-'`.
+
+- `'f'`: File
+- `'d'`: Directory
+- `'l'`: Symlink
+- `'p'`: Pipe (FIFO)
+- `'s'`: Socket
+- `'b'`: Block device
+- `'c'`: Character device
### File access