-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Documentation of ⎕NINFO callbacks #118
base: main
Are you sure you want to change the base?
Conversation
… native files page in the programming reference guide
…ce manual for information about the ProgressCallback variant option.
|
||
## Overview | ||
|
||
A **native file** is a data file without any specific structure, containing a sequence of bytes. A set of system functions is supplied to work with native files. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, this is too short! I don't think we should simply describe it as "a sequence of bytes" (it's probably "a sequence of byte values" at the least) but this doesn't seem to sit too comfortably with e.g. NAPPEND which can write multi-byte elements, and NGET which can decode e.g. UTF-8 et al. Maybe we should instead say that Dyalog provides a set of functions which can be used to process the "raw data" within a file, and perhaps contrast that with component files.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree, but I don't think I am the right person to write this section.
Some of the native file functions, `⎕NCOPY`, `⎕NMOVE`, and `⎕NINFO`, support a variant option to enable progress callbacks. | ||
|
||
### Overview | ||
If this option is enabled, the system function invokes an APL callback function as the file operation proceeds. A system object is used to communicate between the system function and the callback. The file operation has 4 distinct stages: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have no idea what a "system object" is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know where that terminology comes from, but in this case it is just a namespace, which is a bit different because the values assigned to its members are parsed/checked on assignment I think.
…it doesn't talk about copying or moving specifically.
No description provided.