1 :Info: io_call: io: 2020-06-14 io_call, io
2
3 Syntax as a command: io OPERATION switchname args
4
5
6 Syntax as an active function: io OPERATION switchname args
7
8
9 Function: performs diverse operations on specified I/O switches and
10 returns a result.
11
12
13 Arguments:
14 OPERATION
15 designates the operation to be performed. See "List of operations"
16 below. For a detailed description of each operation, type:
17 help io.OPERATION
18 switchname
19 is the name of the I/O switch through which the operation is
20 performed. In the next two sections SW means switchname.
21 args
22 can be one or more arguments, depending on the particular operation
23 to be performed.
24
25
26 List of operations:
27 For a detailed description of each operation, type:
28 help io.OPERATION
29 attach
30 uses attach_description to attach SW.
31 attach_desc
32 prints the attach description for SW.
33 attached
34 prints true if SW is attached.
35 close
36 closes SW.
37 close_file
38 closes SW with a close description.
39 closed
40 prints true if SW is closed.
41
42
43 control
44 performs the named order operation on SW; args depend upon the
45 particular order and I/O module through with SW is attached.
46 delete_record, delete
47 deletes the current record in the file to which SW is attached.
48 destroy_iocb
49 destroys SW.
50 detach
51 detaches SW.
52 detach_iocb
53 detachs SW.
54 detached
55 prints true if SW is detached.
56
57
58 find_iocb
59 prints the location of SW. Switch is created if not already
60 existing.
61 get_chars
62 reads and prints the next N characters from SW; control_args can be:
63 -segment, -allow_newline, -append_newline, -remove_newline, -lines.
64 get_line
65 reads and prints the next line from SW; control_args can be:
66 -segment, -allow_newline, -append_newline, -remove_newline, -lines.
67 io_module
68 prints the name of the I/O module through which SW is attached.
69 look_iocb
70 prints the location of SW. An error occurs if SW does not exist.
71
72
73 modes
74 prints the old modes associates with SW and sets the new modes given
75 in STR.
76 move_attach
77 moves the attachment from SW to SW2. SW is left in detached state.
78 open
79 opens SW with given mode.
80 open_desc
81 prints the current opening mode for SW.
82 open_file
83 opens SW with given mode and open description.
84 opened
85 prints true if SW is opened.
86
87
88 position
89 positions the file to which SW is attached; type can be: bof; eof;
90 forward J, fwd J, f J; reverse J, rev J, r J; I J I and J are
91 integers.
92 print_iocb
93 prints all data from the control block for SW.
94 put_chars
95 outputs STR to SW; control_args can be: -segment, -allow_newline,
96 -append_newline, -remove_newline, -lines. If you omit STR, give
97 -segment.
98 read_key
99 reads and prints key and record length of the next record in the
100 indexed file to which SW is attached.
101
102
103 read_length
104 reads and prints the length of the next record in the structured
105 file to which SW is attached.
106 read_record, read
107 reads and prints the next record from SW; control_args can be:
108 -segment, -allow_newline, -append_newline, -remove_newline, -lines.
109 rewrite_record, rewrite
110 replaces with STR current record in file to which SW is attached;
111 control_args can be: -segment, -allow_newline, -append_newline,
112 -remove_newline, -lines. If you omit STR, give -segment.
113
114
115 seek_key
116 positions the indexed file to which SW is attached to the record
117 with the given key. If the record is not found, key becomes key for
118 insertion of the new record.
119 test_mode
120 prints true if mode appears in modes string of SW; prints false
121 if ^mode appears. Prints error if mode does not appear or is not
122 an on/off mode.
123 valid_mode
124 prints true if mode or ^mode appears in modes string of SW;
125 prints false if either does not appear.
126
127
128 valid_op
129 prints true if operation is valid for SW, given its current
130 attachment and opening mode.
131 write_record, write
132 writes STR to SW; control_args can be: -segment, -allow_newline,
133 -append_newline, -remove_newline, -lines. If you omit STR, give
134 -segment.
135
136
137 :Info: io.attach: 1985-04-02 io attach operation
138
139 Syntax as a command: io attach switchname attach_description
140
141
142 Function: attaches the I/O switch using the designated I/O module.
143 If a control block for the I/O switch does not already exist, one is
144 created.
145
146
147 Arguments:
148 attach
149 the operation being performed.
150 switchname
151 is the name of the I/O switch through which the operation is
152 performed.
153 attach_description
154 is the concatenation of modulename and args separated by blanks.
155 It must conform to the requirements of the I/O module. If the I/O
156 modulename is specified by a pathname, it is initiated with a
157 reference name equal to the entryname. If the entryname or
158 reference name does not contain a dollar sign, the attachment is
159 made by calling modulename$modulenameattach. If you supply a $,
160 the entry point specified is called. See "Entry Point Names" in
161 the Programmer's Reference Manual.
162
163
164 :Info: io.attach_desc: 1985-04-02 io attach_desc operation
165
166 Syntax as a command: io attach_desc switchname
167
168
169 Syntax as an active function:
170 io attach_desc switchname -control_arg
171
172
173 Function: prints or returns the attach description of the switch,
174 quoted unless you give -no_quote.
175
176
177 Arguments:
178 attach_desc
179 the operation being performed.
180 switchname
181 is the name of the I/O switch through which the operation is
182 performed.
183
184
185 Control arguments:
186 -no_quote, -nq
187 does not enclose the returned data in quotes.
188
189
190 :Info: io.attached: 1985-05-02 io attached operation
191
192 Syntax as a command: io attached switchname
193
194
195 Syntax as an active function: io attached switchname
196
197
198 Function: prints or returns true if the switch is attached, false
199 otherwise.
200
201
202 Arguments:
203 attached
204 the operation being performed.
205 switchname
206 is the name of the I/O switch through which the operation is
207 performed.
208
209
210 :Info: io.close: 1985-04-02 io close operation
211
212 Syntax as a command: io close switchname
213
214
215 Function: closes the I/O switch.
216
217
218 Arguments:
219 close
220 the operation being performed.
221 switchname
222 is the name of the I/O switch through which the operation is
223 performed.
224
225
226 :Info: io.close_file: 1985-04-02 io close_file operation
227
228 Syntax as a command: io close_file switchname args
229
230
231 Function: closes the I/O switch with the specified description. The
232 close_file description is the concatenation of all args separated by
233 blanks. It must conform to the requirements of the I/O module.
234
235
236 Arguments:
237 close_file
238 the operation being performed.
239 switchname
240 is the name of the I/O switch through which the operation is
241 performed.
242 args
243 can be one or more arguments, depending on what is permitted by the
244 particular I/O module.
245
246
247 :Info: io.closed: 1985-04-02 io closed operation
248
249 Syntax as a command: io closed switchname
250
251
252 Syntax as an active function: io closed switchname
253
254
255 Function: prints or returns true if the switch is closed, false
256 otherwise.
257
258
259 Arguments:
260 closed
261 the operation being performed.
262 switchname
263 is the name of the I/O switch through which the operation is
264 performed.
265
266
267 :Info: io.control: 1985-04-02 io control operation
268
269 Syntax as a command: io control switchname order args
270
271
272 Syntax as an active function: io control switchname order args
273
274
275 Function: applies only when the I/O switch is attached via an I/O
276 module that supports the control I/O operation. The exact format of
277 the command line depends on the order being issued and the I/O module
278 being used. For more details see "Control Operations from Command
279 Level" in the appropriate I/O module. If the I/O module supports the
280 control operation and the paragraph just referenced does not appear,
281 assume that only control orders that do not require an info_structure
282 can be performed with the io_call command. This is true because this
283 command/active function uses a null info_ptr. See the iox_$control
284 entry point in the Subroutines manual and "Performing Control
285 Operations from Command Level" and the I/O module description in the
286 Programmer's Reference Manual.
287
288 The active function returns a value that depends on the I/O module and
289 the order specified.
290
291
292 Arguments:
293 control
294 the operation being performed.
295 switchname
296 is the name of the I/O switch through which the operation is
297 performed.
298 order
299 is one of the orders accepted by the I/O module used in the
300 attachment of the I/O switch.
301 args
302 are additional arguments dependent upon the order being issued and
303 the I/O module being used.
304
305
306 :Info: io.delete_record: io.delete: 1985-04-02 io delete_record operation
307
308 Syntax as a command: io delete switchname
309
310
311 Function: deletes the current record in the file to which the I/O
312 switch is attached. The current record is determined as in
313 rewrite_record.
314
315
316 Arguments:
317 delete_record, delete
318 the operation being performed.
319 switchname
320 is the name of the I/O switch through which the operation is
321 performed.
322
323
324 :Info: io.destroy_iocb: 1985-04-02 io destroy_iocb operation
325
326 Syntax as a command: io destroy_iocb switchname
327
328
329 Function: destroys the I/O switch by deleting its control block. Be
330 sure the switch is detached before using this command. Any pointers
331 to the I/O switch become invalid.
332
333
334 Arguments:
335 destroy_iocb
336 the operation being performed.
337 switchname
338 is the name of the I/O switch through which the operation is
339 performed.
340
341
342 :Info: io.detach: 1985-04-02 io detach operation
343
344 Syntax as a command: io detach switchname args
345
346
347 Function: detaches the I/O switch with the specified description. The
348 detach description is the concatenation of all args separated by
349 blanks. It must conform to the requirements of the I/O module.
350
351
352 Arguments:
353 detach
354 the operation being performed.
355 switchname
356 is the name of the I/O switch through which the operation is
357 performed.
358 args
359 can be one or more arguments, depending on what is permitted by the
360 particular I/O module.
361
362
363 Notes: If there are no arguments after switchname, this request is
364 synonymous with the detach_iocb request. This means that if you
365 supply no detach description on the command line, detach acts
366 essentially as a short name for detach_iocb.
367
368
369 :Info: io.detach_iocb: 1985-04-02 io detach_iocb operation
370
371 Syntax as a command: io detach_iocb switchname
372
373
374 Function: detaches the I/O switch.
375
376
377 Arguments:
378 detach_iocb
379 the operation being performed.
380 switchname
381 is the name of the I/O switch through which the operation is
382 performed.
383
384
385 :Info: io.detached: 1985-04-04 io detached operation
386
387 Syntax as a command: io detached switchname
388
389
390 Syntax as an active function: io detached switchname
391
392
393 Function: prints or returns true if the switch is detached, false
394 otherwise.
395
396
397 Arguments:
398 detached
399 the operation being performed.
400 switchname
401 is the name of the I/O switch through which the operation is
402 performed.
403
404
405 :Info: io.find_iocb: 1985-04-02 io find_iocb operation
406
407 Syntax as a command: io find_iocb switchname
408
409
410 Syntax as an active function: io find_iocb switchname
411
412
413 Function: prints or returns the location of the control block for the
414 I/O switch. If it does not already exist, the control block is
415 created.
416
417
418 Arguments:
419 find_iocb
420 the operation being performed.
421 switchname
422 is the name of the I/O switch through which the operation is
423 performed.
424
425
426 :Info: io.get_chars: 1986-08-06 io get_chars operation
427
428 Syntax as a command: io get_chars switchname N -control_args
429
430
431 Syntax as an active function:
432 io get_chars switchname N -control_args
433
434
435 Function: reads the next N characters from the file or device to which
436 the I/O switch is attached.
437
438
439 Arguments:
440 get_chars
441 the operation being performed.
442 switchname
443 is the name of the I/O switch through which the operation is
444 performed.
445 N
446 is a decimal number greater than zero specifying the number of
447 characters to read.
448
449
450 Control arguments:
451 -allow_newline, -alnl
452 does not add to nor delete from the end of the line any newline
453 character. Default when you select -segment
454 -append_newline, -apnl
455 adds a newline character to the end of the line if one is not
456 present. Default when you choose no -segment
457 -lines
458 specifies that the offset, if given, is measured in lines rather
459 than in characters. This control argument has meaning only if you
460 also supply -segment; you can't use it with the active function.
461
462
463 -no_quote, -nq
464 returns the data unquoted. Default for active function only
465 -remove_newline, -rmnl
466 deletes the newline character, if present, from the end of the
467 line. Default for active function
468
469
470 -segment path offset, -sm path offset
471 specifies that the data read from the I/O switch is to be stored in
472 the segment given by path. You can optionally describe the location
473 at which to begin writing in path with the offset parameter. This
474 is normally specified as a character offset i.e. the number of
475 characters to skip over before storing the new data in the segment.
476 For example, an offset of 0 causes the new data to overwrite the
477 entire file. When you also give -lines, then offset is a line
478 offset i.e. the number of lines to skip over before storing the
479 new data in the segment. For example, an offset of 1 line begins
480 storing data at the second line of the file. If you omit offset,
481 new data is appended to the end of the segment. You can't use this
482 control argument with the active function.
483
484
485 Notes: The disposition of the characters read is the same as the one
486 described under the get_line operation; that is, they are written upon
487 user_output if you specify no -segment or stored in a segment if you
488 give -segment. As an active function, returns the data read as a
489 quoted string, unless you use -no_quote. A trailing newline character
490 is deleted. If you don't supply the maximum number of characters N,
491 the maximum segment size is assumed.
492
493
494 :Info: io.get_line: 1986-08-06 io get_line operation
495
496 Syntax as a command: io get_line switchname N -control_args
497
498
499 Syntax as an active function:
500 io get_line switchname N -control_args
501
502
503 Function: reads the next line from the file or device to which the I/O
504 switch is attached. If you give N and the line is longer than N, then
505 only the first N characters are read. The active function returns the
506 data read as a quoted string, unless you supply -no_quote. A trailing
507 newline character is deleted. If you don't supply the maximum number
508 of characters N, the maximum segment size is assumed.
509
510
511 Arguments:
512 get_line
513 the operation being performed.
514 switchname
515 is the name of the I/O switch through which the operation is
516 performed.
517 N
518 is a decimal number greater than zero specifying the maximum number
519 of characters to be read.
520
521
522 Control arguments:
523 -allow_newline, -alnl
524 does not add to nor delete from the end of the line any newline
525 character. Default when you select -segment
526 -append_newline, -apnl
527 adds a newline character to the end of the line if one is not
528 present. Default when you choose no -segment
529 -lines
530 specifies that the offset, if given, is measured in lines rather
531 than in characters. This control argument has meaning only if you
532 also supply -segment; you can't use it with the active function.
533
534
535 -no_quote, -nq
536 returns the data unquoted. Default for active function only
537 -remove_newline, -rmnl
538 deletes the newline character, if present, from the end of the
539 line. Default for active function
540
541
542 -segment path offset, -sm path offset
543 specifies that the data read from the I/O switch is to be stored in
544 the segment given by path. You can optionally describe the location
545 at which to begin writing in path with the offset parameter. This
546 is normally specified as a character offset i.e. the number of
547 characters to skip over before storing the new data in the segment.
548 For example, an offset of 0 causes the new data to overwrite the
549 entire file. When you also give -lines, then offset is a line
550 offset i.e. the number of lines to skip over before storing the
551 new data in the segment. For example, an offset of 1 line begins
552 storing data at the second line of the file. If you omit offset,
553 new data is appended to the end of the segment. You can't use this
554 control argument with the active function.
555
556
557 Notes: If you select no -segment, the line read is written onto the
558 I/O switch user_output, with a newline character appended if one is
559 not present and if you have supplied neither allow_newline nor
560 -remove_newline.
561
562 If you give -segment, the line is stored in the segment specified by
563 path; if this segment does not exist, it is created. If you use
564 offset, the line is stored at that position relative to the start of
565 the segment; this is normally measured in characters, unless you have
566 selected -lines. If you omit offset, the line is appended to the end
567 of the segment. The bit count of the segment is always updated to a
568 point beyond the newly added data. If the segment contains a trailing
569 newline and you haven't chosen -remove_newline, that newline remains;
570 if the segment does not contain a trailing newline and you haven't
571 specified -append_newline, no newline is appended.
572
573
574 :Info: io.io_module: 1985-04-02 io io_module operation
575
576 Syntax as a command: io io_module switchname
577
578
579 Syntax as an active function: io io_module switchname
580
581
582 Function: prints or returns the name of the I/O module through which
583 the switch is attached.
584
585
586 Arguments:
587 io_module
588 the operation being performed.
589 switchname
590 is the name of the I/O switch through which the operation is
591 performed.
592
593
594 :Info: io.look_iocb: 1985-04-02 io look_iocb operation
595
596 Syntax as a command: io look_iocb switchname
597
598
599 Syntax as an active function: io look_iocb switchname
600
601
602 Function: prints, on user_output, the location of the control block
603 for the I/O switch; if this switch does not exist, an error is
604 printed. The active function returns true if the specified iocb
605 exists, false otherwise.
606
607
608 Arguments:
609 look_iocb
610 the operation being performed.
611 switchname
612 is the name of the I/O switch through which the operation is
613 performed.
614
615
616 :Info: io.modes: 1985-04-02 io modes operation
617
618 Syntax as a command: io modes switchname string -control_arg
619
620
621 Syntax as an active function: io modes switchname string
622
623
624 Function: sets only new modes specified in string and then prints the
625 old modes on user_output; applies only when the I/O switch is attached
626 via an I/O module that supports modes. The active function performs
627 the specified modes operation and returns the old modes.
628
629
630 Arguments:
631 modes
632 the operation being performed.
633 switchname
634 is the name of the I/O switch through which the operation is
635 performed.
636 string
637 is a sequence of modes separated by commas. The string must not
638 contain blanks. See the description of the I/O module attached
639 to the switch for a list of acceptable modes.
640
641
642 Control arguments:
643 -brief, -bf
644 suppresses printing of the old modes.
645
646
647 Notes: If the switch name is user_i/o, the command refers to the modes
648 controlling your terminal.
649
650
651 :Info: io.move_attach: 1985-04-02 io move_attach operation
652
653 Syntax as a command: io move_attach switchname switchname2
654
655
656 Function: moves the attachment of the first I/O switch switchname to
657 the second I/O switch switchname2. The original I/O switch is left
658 detached.
659
660
661 Arguments:
662 move_attach
663 the operation being performed.
664 switchname
665 is the name of the I/O switch through which the operation is
666 performed.
667 switchname2
668 is the name of a second I/O switch.
669
670
671 :Info: io.open: 1985-04-02 io open operation
672
673 Syntax as a command: io open switchname mode
674
675
676 Function: opens the I/O switch with the specified opening mode.
677
678
679 Arguments:
680 open
681 the operation being performed.
682 switchname
683 is the name of the I/O switch through which the operation is
684 performed.
685
686
687 List of modes:
688 The following opening modes are accepted:
689 direct_input, di
690 direct_output, do
691 direct_update, du
692 keyed_sequential_input, ksqi
693 keyed_sequential_output, ksqo
694 keyed_sequential_update, ksqu
695 sequential_input, sqi
696 sequential_output, sqo
697 sequential_input_output, sqio
698 sequential_update, squ
699 stream_input, si
700 stream_output, so
701 stream_input_output, sio
702
703
704 :Info: io.open_desc: 1985-04-02 io open_desc operation
705
706 Syntax as a command: io open_desc switchname
707
708
709 Syntax as an active function: io open_desc switchname -no_quote
710
711
712 Function: prints or returns the current open description
713 stream_input etc., quoted.
714
715
716 Arguments:
717 open_desc
718 the operation being performed.
719 switchname
720 is the name of the I/O switch through which the operation is
721 performed.
722
723
724 :Info: io.open_file: 1985-04-02 io open_file operation
725
726 Syntax as a command: io open_file switchname mode args
727
728
729 Function: open the I/O switch with the specified opening mode and
730 description. The open_file description is the concatenation of all
731 args separated by blanks. It must conform to the requirements of the
732 I/O module.
733
734
735 Arguments:
736 open_file
737 the operation being performed.
738 switchname
739 is the name of the I/O switch through which the operation is
740 performed.
741 args
742 can be one or more arguments, depending on what is permitted by the
743 particular I/O module.
744
745
746 List of modes:
747 The following opening modes are accepted:
748 direct_input, di
749 direct_output, do
750 direct_update, du
751 keyed_sequential_input, ksqi
752 keyed_sequential_output, ksqo
753 keyed_sequential_update, ksqu
754 sequential_input, sqi
755 sequential_output, sqo
756 sequential_input_output, sqio
757 sequential_update, squ
758 stream_input, si
759 stream_output, so
760 stream_input_output, sio
761
762
763 :Info: io.opened: 1985-04-02 io opened operation
764
765 Syntax as a command: io opened switchname
766
767
768 Syntax as an active function: io opened switchname
769
770
771 Function: prints or returns true if the switch is open, false
772 otherwise.
773
774
775 Arguments:
776 opened
777 the operation being performed.
778 switchname
779 is the name of the I/O switch through which the operation is
780 performed.
781
782
783 :Info: io.position: 1985-04-02 io position operation
784
785 Syntax as a command: io position switchname type
786
787
788 Syntax as an active function: io position switchname type
789
790
791 Function: positions the file to which the I/O switch is attached.
792
793
794 Arguments:
795 position
796 the operation being performed.
797 switchname
798 is the name of the I/O switch through which the operation is
799 performed.
800
801
802 List of types:
803 bof
804 sets position to beginning of file.
805 eof
806 sets position to end of file.
807 forward N, fwd N, f N
808 sets position forward N records or lines same as reverse -N.
809 reverse N, rev N, r N
810 sets position back N records same as forward -N records. Any
811 other numeric argument or pair of numeric arguments can be
812 specified, but its function depends on the I/O module being used
813 and cannot be implemented for all I/O modules.
814
815
816 Notes: If type is bof, the file is positioned to its beginning, so
817 that the next record is the first record structured files or the
818 next byte is the first byte unstructured files. If type is eof, the
819 file is positioned to its end; the next record or next byte is at
820 the end-of-file position. If type is forward or reverse, the file is
821 positioned forwards or backwards over records structured files or
822 lines unstructured files. The number of records or lines skipped is
823 determined by the absolute value of N. The active function returns
824 true if it succeed, false otherwise.
825
826
827 In the case of unstructured files, the next-byte position after the
828 operation is at a byte immediately following a newline character or
829 at the first byte in the file or at the end of the file. The number
830 of newline characters moved over is the absolute value of N.
831
832 If the I/O switch is attached to a device, you are only allowed
833 forward skips; this discards the next N lines input from the device.
834
835
836 :Info: io.print_iocb: 1985-04-02 io print_iocb operation
837
838 Syntax as a command: io print_iocb switchname
839
840
841 Function: prints, on user_output, all the data in the control block
842 for the I/O switch, including all pointers and entry variables.
843
844
845 Arguments:
846 print_iocb
847 the operation being performed.
848 switchname
849 is the name of the I/O switch through which the operation is
850 performed.
851
852
853 :Info: io.put_chars: 1986-08-06 io put_chars operation
854
855 Syntax as a command: io put_chars switchname string -control_args
856
857
858 Function: outputs a character string or an entire segment to a
859 specified I/O switch.
860
861
862 Arguments:
863 put_chars
864 the operation being performed.
865 switchname
866 is the name of the I/O switch through which the operation is
867 performed.
868 string
869 can be any character string.
870
871
872 Control arguments:
873 -allow_newline, -alnl
874 does not add to nor delete from the end of the line any newline
875 character.
876 -append_newline, -apnl
877 adds a newline character to the end of the line if one is not
878 present. Default
879 -lines
880 specifies that the offset and length operands of -segment are
881 measured in lines rather than in characters. This control argument
882 has meaning only if you also supply -segment.
883 -remove_newline, -rmnl
884 does not append a newline character to the end of the output string
885 or segment even if one is not present at the end.
886
887
888 -segment path offset length, -sm path offset length
889 specifies that the data for the output operation is to be found in
890 the segment specified by path. You can optionally describe the
891 location and length of the data with offset and length parameters.
892 These are normally specified as a character offset i.e. 0
893 identifies the first character of the segment and character length.
894 When you also give -lines, they are specified as a line offset and
895 line count. If you give no offset, 0 is assumed. If you give no
896 length and offset, the entire segment is used.
897 -string STR, -str STR
898 specifies an output string that can have a leading hyphen.
899
900
901 Notes: The string argument and -segment are mutually exclusive. If
902 you supply a string, the contents of the string are output to the I/O
903 switch. If you supply -segment, the data is taken from the segment
904 specified by path, at the offset and length given.
905
906 If the I/O switch is attached to a device, io_call transmits the
907 characters from the string or the segment to the device. If the I/O
908 switch is attached to an unstructured file, the data is added to the
909 end of the file.
910
911
912 :Info: io.read_key: 1985-04-02 io read_key operation
913
914 Syntax as a command: io read_key switchname
915
916
917 Syntax as an active function: io read_key switchname -control_arg
918
919
920 Function: prints, on user_output, the key and record length of the
921 next record in the indexed file to which the I/O switch is attached.
922 The file's position is not changed. The active function returns the
923 value of the key, quoted unless you select -no_quote.
924
925
926 Arguments:
927 read_key
928 the operation being performed.
929 switchname
930 is the name of the I/O switch through which the operation is
931 performed.
932
933
934 Control arguments:
935 -no_quote, -nq
936 does not enclose the returned data in quotes. Data containing
937 spaces is quoted by default.
938
939
940 :Info: io.read_length: 1985-04-02 io read_length operation
941
942 Syntax as a command: io read_length switchname
943
944
945 Syntax as an active function: io read_length switchname
946
947
948 Function: prints, on user_output, the length of the next record in the
949 structured file to which the I/O switch is attached. The file's
950 position is not changed. The active function returns the length of
951 the next record, in bytes.
952
953
954 Arguments:
955 read_length
956 the operation being performed.
957 switchname
958 is the name of the I/O switch through which the operation is
959 performed.
960
961
962 :Info: io.read_record: io.read: 1986-08-06 io read_record operation
963
964 Syntax as a command: io read switchname N -control_args
965
966
967 Syntax as an active function: io read switchname N -control_args
968
969
970 Function: reads the next record from the file to which the I/O switch
971 is attached into a buffer of length N.
972
973
974 Arguments:
975 read_record, read
976 the operation being performed.
977 switchname
978 is the name of the I/O switch through which the operation is
979 performed.
980 N
981 is a decimal integer greater than zero specifying the size of the
982 buffer to use.
983
984
985 Control arguments:
986 -allow_newline, -alnl
987 does not add to nor delete from the end of the line any character.
988 Default for command
989 -append_newline, -apnl
990 adds a newline character to the end of the line if one is not
991 present.
992 -lines
993 specifies that the offset, if given, is measured in lines rather
994 than in characters. This control argument has meaning only if you
995 also supply -segment; you can't use it with the active function.
996
997
998 -no_quote, -nq
999 returns the data unquoted. Active function usage only.
1000 -remove_newline
1001 deletes the newline character, if present, from the end of the
1002 line. Default for active function
1003
1004
1005 -segment path offset, -sm path offset
1006 specifies that the data read from the I/O switch is to be stored in
1007 the segment given by path. You can optionally describe the location
1008 at which to begin writing in path with the offset parameter. This
1009 is normally specified as a character offset i.e. the number of
1010 characters to skip over before storing the new data in the segment.
1011 For example, an offset of 0 causes the new data to overwrite the
1012 entire file. When you also give -lines, then offset is a line
1013 offset i.e. the number of lines to skip over before storing the
1014 new data in the segment. For example, an offset of 1 line begins
1015 storing data at the second line of the file. If you omit offset,
1016 new data is appended to the end of the segment. You can't use this
1017 control argument with the active function.
1018
1019
1020 Notes: If you don't supply -segment, the record or the part of it
1021 that fits into the buffer is printed on user_output. If you give
1022 -segment, the record is stored in a segment as explained under the
1023 get_chars operation.
1024
1025 The active function returns the data read as a quoted string, unless
1026 you select -no_quote. A trailing newline character is deleted. If
1027 you don't give the maximum number of characters N, the maximum segment
1028 size is assumed.
1029
1030
1031 :Info: io.rewrite_record: io.rewrite: 1986-08-06 io rewrite_record operation
1032
1033 Syntax as a command: io rewrite switchname string -control_args
1034
1035
1036 Function: replaces the current record in the file to which the I/O
1037 switch is attached.
1038
1039
1040 Arguments:
1041 rewrite_record, rewrite
1042 the operation being performed.
1043 switchname
1044 is the name of the I/O switch through which the operation is
1045 performed.
1046 string
1047 is any character string.
1048
1049
1050 Control arguments:
1051 -allow_newline, -alnl
1052 does not add to nor delete from the end of the line any newline
1053 character. Default when you select -segment
1054 -append_newline, -apnl
1055 adds a newline character to the end of the line if one is not
1056 present.
1057 -lines
1058 specifies that the offset and length operands of -segment are
1059 measured in lines rather than in characters. This control argument
1060 has meaning only if you also supply -segment.
1061 -no_quote, -nq
1062 returns the data unquoted. Active function usage only.
1063
1064
1065 -remove_newline, -rmnl
1066 deletes the newline character, if present, from the end of the
1067 line. Default if you give no -segment
1068 -segment path offset length, -sm path offset length
1069 specifies that the data for the output operation is to be found in
1070 the segment specified by path. You can optionally describe the
1071 location and length of the data with offset and length parameters.
1072 These are normally specified as a character offset i.e. 0
1073 identifies the first character of the segment and character length.
1074 When you also give -lines, they are specified as a line offset and
1075 line count. If you give no offset, 0 is assumed. If you give no
1076 length and offset, the entire segment is used.
1077 -string STR, -str STR
1078 specifies an output string that can have a leading hyphen.
1079
1080
1081 Notes: The string argument and -segment are mutually exclusive. If
1082 you supply a string, the contents of the string are output to the I/O
1083 switch. If you supply -segment, the data is taken from the segment
1084 specified by path, at the offset and length given.
1085
1086 The current record must have been defined by a preceding read_record,
1087 seek_key, or position operation as follows:
1088 read_record
1089 the current record is the last record read.
1090 seek_key
1091 the current record is the record with the specified key.
1092 position
1093 the current record is the one preceding the record to which the file
1094 was positioned.
1095
1096
1097 :Info: io.seek_key: 1985-04-02 io seek_key operation
1098
1099 Syntax as a command: io seek_key switchname key
1100
1101
1102 Syntax as an active function: io seek_key switchname key
1103
1104
1105 Function: positions the indexed file to which the I/O switch is
1106 attached to the record with the given key. The record's length is
1107 printed on user_output. Trailing blanks in the key are ignored. The
1108 active function returns true if the key exists, false otherwise.
1109
1110
1111 Arguments:
1112 seek_key
1113 the operation being performed.
1114 switchname
1115 is the name of the I/O switch through which the operation is
1116 performed.
1117 key
1118 is a string of no more than 256 ASCII characters. The null string
1119 "" is allowed as a key.
1120
1121
1122 Notes: If the file does not contain a record with the specified key,
1123 it becomes the key for insertion. A following write_record operation
1124 adds a record with this key.
1125
1126
1127 :Info: io.test_mode: 1985-04-02 io test_mode operation
1128
1129 Syntax as a command: io test_mode switchname mode
1130
1131
1132 Syntax as an active function: io test_mode switchname mode
1133
1134
1135 Function: performs a modes operation and prints or returns true if
1136 mode appears in the mode string, false if ^mode appears.
1137
1138
1139 Arguments:
1140 test_mode
1141 the operation being performed.
1142 switchname
1143 is the name of the I/O switch through which the operation is
1144 performed.
1145
1146
1147 :Info: io.valid_mode: 1985-04-02 io valid_mode operation
1148
1149 Syntax as a command: io valid_mode switchname mode
1150
1151
1152 Syntax as an active function: io valid_mode switchname mode
1153
1154
1155 Function: performs a modes operation and prints or returns true if
1156 either mode or ^mode appears in the mode string, false otherwise.
1157
1158
1159 Arguments:
1160 valid_mode
1161 the operation being performed.
1162 switchname
1163 is the name of the I/O switch through which the operation is
1164 performed.
1165
1166
1167 :Info: io.valid_op: 2020-06-14 io valid_op operation
1168
1169 Syntax as a command: io valid_op switchname operation
1170
1171
1172 Syntax as an active function: io valid_op switchname operation
1173
1174
1175 Function: prints or returns true if the operation is defined on the
1176 switch.
1177
1178
1179 Arguments:
1180 valid_op
1181 the operation being performed.
1182 switchname
1183 is the name of the I/O switch through which the operation is
1184 performed.
1185
1186
1187 List of known operations:
1188 The following operations are defined for iox_ I/O modules.
1189 close
1190 close_file
1191 control
1192 delete_record
1193 destroy_iocb
1194 detach_iocb
1195 find_iocb
1196 get_chars
1197 get_line
1198 look_iocb
1199 modes
1200 move_attach
1201 open
1202
1203
1204 open_file
1205 position
1206 put_chars
1207 read_key
1208 read_length
1209 read_record
1210 rewrite_record
1211 seek_key
1212 write_record
1213
1214
1215 :Info: io.write_record: io.write: 1986-08-06 io write_record operation
1216
1217 Syntax as a command: io write switchname string -control_args
1218
1219
1220 Function: adds a record to the file to which the I/O switch is
1221 attached. If the string parameter is specified, the record is equal to
1222 the string. If the -segment control argument is specified, the record
1223 is extracted from the segment as described under the put_chars
1224 operation. If the file is a sequential file, the record is added at
1225 the end of the file. If the file is an indexed file, the record's key
1226 must have been defined by a preceding seek_key operation.
1227
1228
1229 Arguments:
1230 write_record, write
1231 the operation being performed.
1232 switchname
1233 is the name of the I/O switch through which the operation is
1234 performed.
1235 string
1236 is any character string.
1237
1238
1239 Control arguments:
1240 -allow_newline, -alnl
1241 does not add to nor delete from the end of the line any newline
1242 character. Default when you select -segment
1243 -append_newline, -apnl
1244 adds a newline character to the end of the line if one is not
1245 present.
1246 -lines
1247 specifies that the offset and length operands of -segment are
1248 measured in lines rather than in characters. This control argument
1249 has meaning only if you also supply -segment.
1250 -no_quote, -nq
1251 returns the data unquoted. Active function usage only
1252
1253
1254 -remove_newline, -rmnl
1255 deletes the newline character, if present, from the end of the
1256 line. Default if you give no -segment
1257 -segment path offset length, -sm path offset length
1258 specifies that the data for the output operation is to be found in
1259 the segment specified by path. You can optionally describe the
1260 location and length of the data with offset and length parameters.
1261 These are normally specified as a character offset i.e. 0
1262 identifies the first character of the segment and character length.
1263 When you also give -lines, they are specified as a line offset and
1264 line count. If you give no offset, 0 is assumed. If you give no
1265 length and offset, the entire segment is used.
1266 -string STR, -str STR
1267 specifies an output string that can have a leading hyphen.
1268
1269
1270 Notes: The string argument and -segment are mutually exclusive. If
1271 you supply a string, the contents of the string are output to the I/O
1272 switch. If you supply -segment, the data is taken from the segment
1273 specified by path, at the offset and length given.
1274
1275 If the file is sequential, the record is added at the end of the file.
1276 If the file is indexed, the record's key must have been defined by a
1277 preceding seek_key operation.
1278
1279
1280 :hcom:
1281
1282
1283
1284 /****^ HISTORY COMMENTS:
1285 1) change2020-06-14GDixon, approve2021-02-22MCR10088,
1286 audit2021-05-27Swenson, install2021-05-27MR12.6g-0056:
1287 1) Convert file to the Operation Format defined by the verify_info
1288 command.
1289 END HISTORY COMMENTS */
1290
1291
1292