1 /*  START OF:       verify_info_data.incl.pl1                 *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  * */
  2 
  3 /****^  HISTORY COMMENTS:
  4   1) change(2020-11-25,GDixon), approve(2021-02-23,MCR10089),
  5      audit(2021-03-31,Swenson), install(2021-03-31,MR12.6g-0053):
  6       Initial version of this structure and associated constants.
  7                                                    END HISTORY COMMENTS */
  8 
  9 /* --------------------------------------------------------------------------------
 10    STRUCTURE:  verify_info_data
 11 
 12      Describes data used by the verify_info command and its info_seg_verify_$iFiles
 13      subroutine to examine info segment formatting.
 14    -------------------------------------------------------------------------------- */
 15 
 16 
 17   dcl 1 verify_info_data aligned based(verify_info_dataP),
 18       2 vid_version char(16),                               /*  - version of this struct: verify_info_data_version_01 */
 19 
 20       2 inputs,
 21                                                             /* Inputs for: info_seg_verify_$display_specifications:   */
 22         3 rules_area fixed bin,                             /* -rules OPERAND  select which rules to display:         */
 23                                                             /*                 a VI_RULE_xxx value from list below.   */
 24 
 25 
 26                                                             /* Inputs for: info_seg_verify_$iFiles                    */
 27                                                             /*  (includes all remaining verify_info_data elements)    */
 28         3 switches,
 29           4 (totalsS,                                       /* -totals: (T) only set error_count, highest_severity.   */
 30                                                             /*          (F) display individual error messages.        */
 31              briefS,                                        /* -brief:  (T) block/section errors displayed as keys at */
 32                                                             /*              end of vi block/section heading output.   */
 33                                                             /*          (F) full error messages are displayed.        */
 34 
 35              fileS,                                         /* -debug file  display details of file structure.        */
 36              blockS,                                        /* -db block    display block divider and header details. */
 37              sectionS,                                      /* -db section  display Syntax section components.        */
 38              listS                                          /* -db list     display section items in "Arguments",     */
 39                                                             /*              "Control arguments" and "List of ..."     */
 40              ) bit(1) aligned,
 41         3 naming fixed bin(2),                              /* -names, -no_names, -force_names setting:               */
 42                                                             /*                 a VI_NAMING_xxx value                  */
 43 
 44         3 lines,                                            /* display info seg lines, for debugging purposes         */
 45           4 file,                                           /* -lines {count}   OR   -lines start:{count}             */
 46             5 (start, count) fixed bin,
 47           4 blok,                                           /* -block {count}   OR   -block start:{count}             */
 48             5 (start, count) fixed bin,
 49 
 50       2 results,
 51         3 segs_processed fixed bin,                         /*  - count of info segs found and parsed.                */
 52         3 error_count fixed bin,                            /*  - count of errors encountered                         */
 53         3 highest_severity fixed bin,                       /*  - highest severity error encountered verifying infos  */
 54 
 55       2 isd aligned like info_seg_data,                     /*  - info_seg_data structure used to parse segs being    */
 56                                                             /*    verified.  See info_seg_dcls_.incl.pl1              */
 57 
 58        verify_info_dataP ptr;                               /* Pointer to verify_info_data structure.                 */
 59 
 60   dcl  verify_info_data_version_01 char(14) int static options(constant) init("verify_info_01");
 61                                                             /* Currently supported version of verify_info_data struct */
 62 
 63                                                             /* Should names on info segment be changed?               */
 64   dcl (VI_NAMING_off          init(0),                      /*  - no, issue errors for names outside guidelines.      */
 65        VI_NAMING_query        init(1),                      /*  - ask user about removals; add/reorder without asking */
 66        VI_NAMING_force        init(2)                       /*  - make all changes per guidelines without asking, but */
 67                                                             /*    all changes are reported via error messages.        */
 68        ) fixed bin(2) int static options(constant);
 69 
 70   dcl  VI_RULES_AREA (12,2) char(12) var int static options(constant) init(
 71                                                             /* Keep items in VI_RULES_AREA synchronized with index    */
 72                                                             /*  values VI_RULE_xxx defined below.                     */
 73                               "all",              "a",      /*   - VI_RULE_all_areas                                  */
 74                               "file",             "f",      /*   - VI_RULE_file_structure                             */
 75                               "block",            "bk",     /*   - VI_RULE_block_kind                                 */
 76                               "section",          "scn",    /*   - VI_RULE_section_titles                             */
 77 
 78                               "all_kinds",        "ak",     /*   - VI_RULE_all_kinds                                  */
 79                               "command",          "cmd",    /*   - VI_RULE_command_titles                             */
 80 
 81                               "subsystem",        "ss",     /*   - VI_RULE_subsystem_titles                           */
 82                               "request",          "req",    /*   - VI_RULE_request_titles                             */
 83 
 84                               "topics",           "topic",  /*   - VI_RULE_topic_titles                               */
 85                               "general_info",     "gi",     /*   - VI_RULE_gi_titles                                  */
 86 
 87                               "subroutine",       "subr",   /*   - VI_RULE_subroutine_titles                          */
 88                               "io_module",        "io"      /*   - VI_RULE_io_titles                                  */
 89                               );
 90 
 91   dcl (VI_RULE_unset             init( 0),                  /* The only value not represented in VI_RULES_AREA above. */
 92        VI_RULE_all_areas         init( 1),
 93        VI_RULE_file_structure    init( 2),
 94        VI_RULE_block_kind        init( 3),
 95        VI_RULE_section_titles    init( 4),
 96 
 97        VI_RULE_all_kinds         init( 5),
 98        VI_RULE_command_titles    init( 6),
 99 
100        VI_RULE_subsystem_titles  init( 7),
101        VI_RULE_request_titles    init( 8),
102 
103        VI_RULE_topic_titles      init( 9),
104        VI_RULE_gi_titles         init(10),
105 
106        VI_RULE_subroutine_titles init(11),
107        VI_RULE_io_titles         init(12)
108        ) fixed bin int static options(constant);
109 
110   dcl  VI_DEBUG_OPERAND (4,2) char(16) var int static options(constant) init(
111                               "file",             "f",
112                               "block",            "bk",
113                               "section",          "scn",
114                               "list",             "ls"
115                               );
116   dcl (VI_DEBUG_file             init( 1),
117        VI_DEBUG_block            init( 2),
118        VI_DEBUG_section          init( 3),
119        VI_DEBUG_list             init( 4)
120        ) fixed bin int static options(constant);
121 
122 /*  END OF:         verify_info_data.incl.pl1                 *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  * */