|
|
BSD 4.2
#
/*
** COPYRIGHT
**
** The Regents of the University of California
**
** 1977
**
** This program material is the property of the
** Regents of the University of California and
** may not be reproduced or disclosed without
** the prior written permission of the owner.
*/
/*
** Version:
** @(#)parser.h 7.1 2/5/81
*/
# define DBUFSIZ 2000 /* size of buffer for dbu commands */
# define TREEMAX 2500 /* max number of bytes for tree */
# define MAXATT 150 /* max number of attributes in the att stash */
# define V6POINT3COMPAT
# define WARN 0 /* for a non fatal error */
# define FATAL 1 /* for a fatal error */
/* mode parameters for range table manipulation */
# define LOOKREL 1
# define LOOKVAR 2
# define R_INTERNAL 3
# define R_EXTERNAL 4
# define RELVUSED 01
/* the first argument in argv which may be an ad hoc flag */
# define FREEFLAGS 6
/* error numbers */
# define SUMMARY 2000 /* summary of errors */
# define TREEOFLO 2118 /* over flow tree buffer */
# define DBUFOFLO 2106 /* over flow dbu arg buffer */
# define NOATTRIN 2100 /* attrib not in relation */
# define CANTUPDATE 2107 /* can't update rel */
# define NOVBLE 2109 /* vble not declared */
# define NOPATMAT 2120 /* no pattern matching in tl */
# define RNGEXIST 2117 /* can't find rel for var */
# define REPALL 2123 /* x.all on replace */
# define BADCONSTOP 2134 /* bad constant operator */
# define INDEXTRA 2111 /* too many atts in key */
# define RESXTRA 2130 /* too many resdoms in tl */
# define TARGXTRA 2131 /* tl larger than MAXTUP */
# define AGGXTRA 2132 /* too many aggs */
# define MODTYPE 2119 /* type conflict for MOD */
# define CONCATTYPE 2121 /* type conflict for CONCAT */
# define AVGTYPE 2125 /* type conflict for AVG(U) */
# define SUMTYPE 2126 /* type conflict for SUM(U) */
# define FOPTYPE 2127 /* type conflict for func ops */
# define UOPTYPE 2128 /* type conflict for unary ops */
# define NUMTYPE 2129 /* type conflict for numeric ops */
# define RELTYPE 2133 /* type conflict for relatv op */
# define RESTYPE 2103 /* result type mismatch w/expr */
# define RESAPPEX 2108 /* append res rel not exist */
# define RESEXIST 2135 /* result rel already exists */
# define NXTCMDERR 2500 /* misspelt where problem */
# define NOQRYMOD 2139 /* no qrymod in database */
# define BADHOURS 2136 /* no such hour */
# define BADMINS 2137 /* no such minute */
# define BAD24TIME 2138 /* only 24:00 can be used */
/* -- ASSORTED DATA STRUCTURES -- */
struct atstash /* attribute table */
{
char atbid; /* attribute number */
char atbfrmt; /* attribute form type */
char atbfrml; /* attribute form length */
char atbname[MAXNAME]; /* attribute name */
struct atstash *atbnext; /* pointer to next entry in chain */
};
struct parrng /* auxiliary range table */
{
DESC vardesc;
struct parrng *frontpt;
struct parrng *backpt;
struct atstash *attlist; /* head of attrib list for this reln */
int relvused; /* whether variable in use */
};
typedef struct parrng PARRNG;
struct constop /* constant operator lookup table */
{
char *copname; /* string name for identification */
int copnum; /* op number */
char coptype; /* op result type for formating */
char coplen; /* op result length for formatting */
};
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.