1 /* BEGIN INCLUDE FILE - dm_interval_list.incl.pl1 */
 2 
 3 /* DESCRIPTION:
 4 
 5           The interval_list structure is used to describe a number of
 6      intervals of keys in an associated typed_vector_array.  With each
 7      interval is a list of the and_groups from the search_specification used
 8      to find those keys.  All of the constraints on fields which are specified
 9      in the and_groups associated with an interval and are in the keys are
10      completely satisfied by the keys in the interval.
11 */
12 
13 /* HISTORY:
14 
15 Written by Lindsey Spratt, 11/09/82.
16 Modified:
17 */
18 
19 /* format: style2,ind3 */
20      dcl     1 interval_list        based (interval_list_ptr) aligned,
21                2 version            char (8),               /* Must be set to INTERVAL_LIST_VERSION_2. */
22                2 number_of_intervals
23                                     fixed bin (17) unal,
24                2 pad                bit (18) unal,
25                2 interval           (intl_number_of_intervals refer (interval_list.number_of_intervals)),
26                  3 low_vector_idx   fixed bin (35),         /* The first vector in the associated typed_vector_array for this interval. */
27                  3 high_vector_idx  fixed bin (35),         /* The last vector for this interval. */
28                  3 and_group_id_list_ptr
29                                     ptr;                    /* points to an id_list which identifies the */
30                                                             /* and_groups in the associated search_specification */
31                                                             /* which apply to the vectors in this interval. */
32 
33      dcl     interval_list_ptr      ptr init (null);
34      dcl     INTERVAL_LIST_VERSION_2
35                                     init ("IntLst 2") char (8) aligned internal static options (constant);
36      dcl     intl_number_of_intervals
37                                     fixed bin init (0);
38 
39 /* END INCLUDE FILE dm_interval_list.incl.pl1 */