|
|
1.1 ! root 1: /* ! 2: ** Definitions for the range table. ! 3: ** ! 4: ** Version: ! 5: ** @(#)range.h 7.1 2/5/81 ! 6: */ ! 7: ! 8: # ifndef MAXRANGE ! 9: ! 10: # define MAXRANGE (MAXVAR + 1) ! 11: ! 12: ! 13: /* ! 14: ** DESCRIPTOR struct ! 15: ** ! 16: ** The DESCRIPTOR struct is initialized by OPENR to describe any ! 17: ** open relation. The first part of the descriptor is the tuple ! 18: ** from the RELATION relation. The remainder contains some magic ! 19: ** numbers and a template initialized from the ATTRIBUTE relation. ! 20: ** ! 21: ** This structure also defines the range table. ! 22: */ ! 23: ! 24: struct descriptor ! 25: { ! 26: struct relation reldum; ! 27: /*the above part of the descriptor struct is identical ! 28: to the relation struct and the inormation in this ! 29: part of the struct is read directly from the ! 30: relation tuple by openr. the rest of the descriptor ! 31: struct is calculated by openr. */ ! 32: char relvname[MAXNAME]; /* range variable name */ ! 33: i_2 relfp; /*filep for relation , if open */ ! 34: i_2 relopn; /*indicates if relation is really open*/ ! 35: tid_type reltid; /*when relation is open, this indicates ! 36: the tid in the relation relation for ! 37: this relation */ ! 38: i_4 reladds; /*no. of additions of tuples during this open*/ ! 39: i_2 reloff[MAXDOM]; /*reloff[i] is offset to domain i */ ! 40: c_1 relfrmt[MAXDOM]; /* format of domain i ! 41: ** INT, FLOAT, or CHAR */ ! 42: c_1 relfrml[MAXDOM]; /* relfrml[i] is an unsigned integer ! 43: which indicates length ! 44: in bytes of domain */ ! 45: c_1 relxtra[MAXDOM]; /*relxtra[i] is non-zero if domain i is ! 46: ** a key domain for the relation */ ! 47: c_1 relgiven[MAXDOM]; /*cleared by openr and set before ! 48: call to find to indicate value of this ! 49: domain has been supplied in the key*/ ! 50: }; ! 51: ! 52: typedef struct descriptor DESC; ! 53: ! 54: ! 55: typedef struct ! 56: { ! 57: DESC *rngvdesc; /* pointer to descriptor for this var */ ! 58: bool rngvmark; /* send if marked */ ! 59: } RANGEV; ! 60: ! 61: ! 62: # endif MAXRANGE
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.