Sujet : Re: VMS x86-64 database server
De : arne (at) *nospam* vajhoej.dk (Arne Vajhøj)
Groupes : comp.os.vmsDate : 09. Jul 2025, 15:13:18
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <104ltdu$8uet$1@dont-email.me>
References : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
User-Agent : Mozilla Thunderbird
On 7/9/2025 6:16 AM, hb0815 wrote:
On 7/9/25 04:18, Arne Vajhøj wrote:
First I don't think a verb qualifier and a per-file qualifier with same
name will work well.
Depends on what you mean with "well". It works and it is used: see
$ HELP SEARCH /KEY
... and documented in the Utility Routines Manual.
The issue is that I cannot find a path prefix that restrict qualifier
to the parameter for usage by CLI$PRESENT.
$ type duo.cld
define verb duo
image "sys$disk:[]duo"
parameter p1, value(type=$file, list, required)
qualifier q, placement=positional
$ type duo.pas
[inherit('sys$library:pascal$cli_routines')]
program duo(input,output);
type
pstr = varying [255] of char;
var
fnm, a, b : pstr;
begin
if odd(cli$present('Q')) then begin
writeln('Q=present')
end else begin
writeln('Q=notpresent')
end;
while odd(cli$get_value('P1', fnm.body, fnm.length)) do begin
write(fnm);
if odd(cli$present('Q')) then begin
write(' Q=present')
end else begin
write(' Q=notpresent')
end;
writeln;
end;
end.
$ set command duo
$ pas duo
$ link duo
$ duo 1.txt/q,2.txt,3.txt/q
Q=notpresent
1.txt Q=present
2.txt Q=notpresent
3.txt Q=present
$ duo/q 1.txt/q,2.txt,3.txt/q
Q=present
1.txt Q=present
2.txt Q=present
3.txt Q=present
Where:
2.txt Q=present
is not what was intended.
In general I like CLD and CLI$ concept, but I would have preferred
CLI$ to expose the context they use instead of having it hidden.
If you do not want to use an option, you can (create and) add your
shareable image to a shareable image library. Such a library can be
used on the command line - with the /LIBRARY qualifier.
Yes.
Arne