1 /* BEGIN mrds_select_sets.incl.pl1                rdl,      2/27/79                       */
 2 
 3 dcl 1 select_sets aligned based (ss_ptr),
 4     2 dup_retain bit (1) unal,                              /* ON => duplicate selected tuples must be preserved */
 5     2 pad bit (35) unal,                                    /* Resevered for furture use */
 6     2 domains (mrds_data_$max_select_items) char (32),      /* domain name of each select item */
 7     2 nitems fixed bin,                                     /* Number of items in this structure */
 8     2 items (nitems_init refer (select_sets.nitems)),
 9       3 oper_flag bit (1) unal,                             /* On => this item is an operator */
10       3 pad bit (35) unal,                                  /* Reserved for future use */
11       3 op_code fixed bin,                                  /* Valid only if oper_flag id on
12                                                                1 -> union
13                                                                2 => intersection
14                                                                3 => Difference                      */
15       3 range_ptr ptr,                                      /* Valid only if oper_flag  is OFF, these pointers are */
16       3 select_ptr ptr,                                     /* used by  mrds_dsl_search */
17       3 so_ptr ptr,
18       3 ti_ptr ptr;                                         /* to tuple info structure for this block */
19 
20 
21 dcl  ss_ptr ptr;                                            /* Pointer to the selected sets */
22 dcl  nitems_init fixed bin;
23 
24 dcl  UNION fixed bin internal static options (constant) init (1);
25 dcl  INTERSECTION fixed bin internal static options (constant) init (2);
26 dcl  DIFFERENCE fixed bin internal static options (constant) init (3);
27 
28 /* END mrds_dsl_select_sets.incl.pl1                                            */
29