|
|
1.1 root 1: /*
2: ** CONSTANTS.H -- manifest constants, operand and operator codes
3: **
4: ** Defines:
5: ** op_codes for operands
6: ** Opflag's domain set
7: ** Type_spec's domain set
8: **
9: ** Version:
10: ** @(#)constants.h 7.2 10/27/81
11: */
12:
13: /*
14: ** Manifest constants used throughout Equel
15: */
16:
17:
18: # define CONTINUE 1 /* "loop" flag for yylex */
19: # define MAXNAME 13 /* maximum length for equel
20: * identifiers (or keywords)
21: */
22: # define MAXSTRING 255 /* maximum length for equel strings */
23: # define FILLCNT 110 /* length to fill lines when in Fillmode */
24:
25:
26: /* debugging info conditional compilation flag */
27: # define xDEBUG /* on for "-c" and "-v" flags */
28: # define YYDEBUG /* must ALWAYS be on-used in yyparse()*/
29:
30:
31: /*
32: ** Character types [cmap.c]
33: */
34:
35: # define EOF_TOK 0 /* end of parse input too */
36: # define ALPHA 1 /* alphabetic or '_' */
37: # define NUMBR 2 /* numeric */
38: # define OPATR 3 /* other non control characters */
39: # define PUNCT 4 /* white space */
40: # define CNTRL 5 /* control-characters */
41:
42: /*
43: ** Modes for Lastc in w_op() and w_key() [prtout.c]
44: */
45:
46: # define OPCHAR 0 /* last character
47: * printed was an operator
48: */
49: # define KEYCHAR 1 /* last was alphanumeric */
50:
51:
52: /*
53: * Modes used in parser actions to distinguish contexts in which
54: * the same syntax applies. Opflag is set to these modes.
55: *
56: * (There are some modes that are never referenced, but are useful
57: * for extension).
58: */
59:
60: /* quel statements */
61:
62: # define mdAPPEND 1
63: # define mdCOPY 2
64: # define mdCREATE 3
65: # define mdDEFINE 4
66: # define mdDELETE 5
67: # define mdDESTROY 6
68: # define mdHELP 7
69: # define mdINDEX 8
70: # define mdINTEGRITY 9
71: # define mdMODIFY 10
72: # define mdPRINT 11
73: # define mdRANGE 12
74: # define mdREPLACE 13
75: # define mdRETRIEVE 14
76: # define mdSAVE 15
77: # define mdVIEW 16
78: # define mdPROT 17
79:
80: /* statements particular to Equel */
81:
82: # define mdDECL 16 /* C - declaration */
83: # define mdCTLELM 17 /* left hand side of target list element
84: * in "retrieve" to C-variables
85: */
86: # define mdEXIT 18 /* ## exit */
87: # define mdINGRES 19 /* ## ingres */
88: # define mdTUPRET 20 /* "retrieve" w/o an "into" */
89: # define mdFILENAME 21 /* used in "copy" statement */
90:
91:
92:
93:
94:
95:
96:
97: /* define typTYPE xx /* c types "Type_spec" */
98: # define opSHORT 1
99: # define opFLOAT 2
100: # define opSTRING 3
101: # define opDOUBLE 4
102: # define opCHAR 5
103: # define opLONG 6
104: # define opIDSTRING 7
105: # define opSTRUCT 8
106: # ifdef PDP
107: # define opINT opSHORT
108: # else PDP
109: # define opINT opLONG
110: # endif PDP
111:
112:
113: /* define typALLOC xx /* c var allocation types */
114: # define opAUTO 0
115: # define opSTATIC 1
116: # define opEXTERN 2
117: # define opREGISTER 3
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.