1 /* ====== BEGIN INCLUDE FILE            lister_entries.incl.pl1 =================================== */
  2 
  3 /*
  4    Modified 800521 by PB to add code to calling sequence for lister_merge_.
  5    Modified 800702 by PB to add lister_status_.
  6    Modified 800813 by PB to add lister_assign_.
  7    Modified 800826 by PB to add lister_create_record_$retain_uid.
  8    Modified 801008 by PB to add display to calling sequence for lister_print_.
  9    Modified 801024 by PB to add lister_convert_.
 10    Modified 810226 by PB to add listform_path to calling sequence for lister_print_.
 11 */
 12 
 13 dcl       lister_assign_
 14                               entry (ptr, bit (1) aligned, ptr, ptr);
 15                               /* param 1          (input)   ptr to lister segment */
 16                               /* param 2          (input)   "1"b iff all records are to be modified */
 17                               /* param 3          (input)   ptr to selected records */
 18                               /* param 4          (input)   ptr to assign info structure */
 19 
 20 dcl       lister_compile_listin_
 21                               entry (ptr, ptr, fixed bin (21), ptr, fixed bin, char (*), fixed bin (35));
 22                               /* param 1          (input)   ptr to new file segment */
 23                               /* param 2          (input)   ptr to listin segment */
 24                               /* param 3          (input)   length in chars of listin segment */
 25                               /* param 4          (input)   ptr to system free area */
 26                               /* param 5          (output)  number of records parsed */
 27                               /* param 6          (output)  error token, if any errors */
 28                               /* param 7          (output)  status code */
 29 
 30 dcl       lister_compile_select_
 31                               entry (char (*), ptr, ptr, ptr, char (*), fixed bin (35));
 32                               /* param 1          (input)   select expression to be parsed */
 33                               /* param 2          (input)   ptr to file that will be searched */
 34                               /* param 3          (input)   ptr to area */
 35                               /* param 4          (output)  ptr to compiled select expression */
 36                               /* param 5          (output)  error token */
 37                               /* param 6          (output)  standard status code */
 38 
 39 dcl       lister_compile_sort_
 40                               entry (char (*), ptr, ptr, ptr, char (*), fixed bin (35));
 41                               /* param 1          (input)   sort string to be parsed */
 42                               /* param 2          (input)   ptr to file */
 43                               /* param 3          (input)   ptr to area */
 44                               /* param 4          (output)  ptr to compiled sort expression */
 45                               /* param 5          (output)  token in error (if any error) */
 46                               /* param 6          (output)  standard status code */
 47 
 48 dcl       lister_convert_     entry (ptr, fixed bin (35));
 49                               /* param 1          (input)   input file ptr */
 50                               /* param 2          (output)  standard status code */
 51 
 52 dcl       lister_copy_file_head_
 53                               entry (ptr, ptr);
 54                               /* param 1          (input)   input file ptr */
 55                               /* param 2          (input)   output file ptr */
 56 
 57 dcl       lister_copy_records_
 58                               entry (ptr, ptr, ptr);
 59                               /* param 1          (input)   ptr to input file */
 60                               /* param 2          (input)   ptr to output file */
 61                               /* param 3          (input)   ptr to list of records to be copied */
 62 
 63 dcl       lister_compare_field_tables_
 64                               entry (ptr, ptr)
 65                               returns (bit (1) aligned);
 66                               /* param 1          (input)   ptr to file 1 */
 67                               /* param 2          (input)   ptr to file 2 */
 68                               /* return           (output)  "1"b if field tables are equal */
 69 
 70 dcl       lister_create_record_
 71                               entry (ptr)
 72                               returns (ptr);
 73                               /* param 1          (input)   file ptr */
 74                               /* return           (output)  record ptr */
 75 
 76 dcl       lister_create_record_$after
 77                               entry (ptr, ptr)
 78                               returns (ptr);
 79                               /* param 1          (input)   ptr to file to create record in */
 80                               /* param 2          (input)   ptr to record that is to be just before created record */
 81                               /* return           (output)  ptr to created record */
 82 
 83 dcl       lister_create_record_$retain_uid
 84                               entry (ptr, fixed bin (24) unsigned unaligned)
 85                               returns (ptr);
 86                               /* param 1          (input)   file ptr */
 87                               /* param 2          (input)   uid to be retained */
 88                               /* return           (output)  record ptr */
 89 
 90 dcl       lister_delete_
 91                               entry (ptr, ptr);
 92                               /* param 1          (input)   file ptr */
 93                               /* param 2          (input)   ptr to list of record to be deleted */
 94 
 95 dcl       lister_expand_
 96                               entry (ptr, ptr, fixed bin (21), fixed bin, bit (1) aligned)
 97                               returns (fixed bin);
 98                               /* param 1          (input)   file ptr */
 99                               /* param 2          (input)   ptr to output segment */
100                               /* param 3          (in/out)  1-origin char index of next free char in output segment */
101                               /* param 4          (input)   line length to use */
102                               /* param 5          (input)   "1"b iff field names are always to appear */
103                               /* return           (output)  number of records expanded */
104 
105 dcl       lister_hash_fid_ reducible
106                               entry (ptr, char (*))
107                               returns (fixed bin);
108                               /* param 1          (input)   file ptr */
109                               /* param 2          (input)   field identifier */
110                               /* return           (output)  field index */
111 
112 dcl       lister_hash_fid_$enter irreducible
113                               entry (ptr, char (*))
114                               returns (ptr);
115                               /* param 1          (input)   file ptr */
116                               /* param 2          (input)   field identifier */
117                               /* return           (output)  field identifier node offset */
118 
119 dcl       lister_format_parse_
120                               entry (ptr, ptr, char (*), ptr, char (*), fixed bin (35));
121                               /* param 1          (input)   ptr to file containing field table */
122                               /* param 2          (input)   ptr to area */
123                               /* param 3          (input)   listform string */
124                               /* param 4          (output)  format table ptr */
125                               /* param 5          (output)  error token */
126                               /* param 6          (output)  status code */
127 
128 dcl       lister_merge_       entry (ptr, ptr, ptr, (*) fixed bin, fixed bin, fixed bin, fixed bin(35))
129                               returns ((3) fixed bin);
130                               /* param 1          (input)   input file ptr */
131                               /* param 2          (input)   update file ptr */
132                               /* param 3          (input)   output file ptr */
133                               /* param 4          (input)   array of fields to merge on */
134                               /* param 5          (input)   1-origin number of elements in field_list */
135                               /* param 6          (input)   type of merge */
136                               /* param 7          (output)  status code */
137                               /* return           (output)  count of number of input, update, output records */
138 
139 dcl       lister_print_       entry (ptr, ptr, ptr, fixed bin (21), bit (1) aligned,
140           ptr, ptr, fixed bin, bit (1) aligned, bit (1) aligned, char (*));
141                               /* param 1          (input)   ptr to file to be printed */
142                               /* param 2          (input)   format table ptr */
143                               /* param 3          (input)   ptr to base of output segment */
144                               /* param 4          (in/out)  index of next output character */
145                               /* param 5          (input)   "1"b iff all records are to be printed */
146                               /* param 6          (input)   ptr to list of records to print */
147                               /*                            null => print no records */
148                               /* param 7          (input)   ptr to argument list for -ag */
149                               /* param 8          (input)   index of -ag in above argument list */
150                               /* param 9          (input)   brief error flag */
151                               /* param 10         (input)   "1"b iff called by display_list af */
152                               /* param 11         (input)   pathname of listform segment */
153 
154 dcl       lister_select_      entry (ptr, ptr, ptr, ptr)
155                               returns (fixed bin);
156                               /* param 1          (input)   ptr to file to be searched */
157                               /* param 2          (input)   ptr to select_expression */
158                               /* param 3          (input)   ptr to area */
159                               /* param 4          (output)  ptr to list of selected records */
160                               /* return           (output)  number of records found */
161 
162 dcl       lister_sort_        entry (ptr, ptr, ptr);
163                               /* param 1          (input)   file ptr */
164                               /* param 2          (input)   ptr to list of records */
165                               /* param 3          (input)   ptr to sort list array */
166 
167 dcl       lister_status_      entry (ptr, char (*), bit (1) aligned, ptr);
168                               /* param 1          (input)   ptr to lister segment */
169                               /* param 2          (input)   entryname of lister segment */
170                               /* param 3          (input)   on if no selection expression given */
171                               /* param 4          (input)   ptr to status info structure */
172 
173 /* ------ END INCLUDE FILE              lister_entries.incl.pl1 ----------------------------------- */