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 8.2 1/16/85
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: # define I1MASK 0377 /* Bit mask for a character */
26:
27:
28: /* debugging info conditional compilation flag */
29: # define xDEBUG /* on for "-c" and "-v" flags */
30: # define YYDEBUG /* must ALWAYS be on-used in yyparse()*/
31:
32:
33: /*
34: ** Character types [cmap.c]
35: */
36:
37: # define EOF_TOK 0 /* end of parse input too */
38: # define ALPHA 1 /* alphabetic or '_' */
39: # define NUMBR 2 /* numeric */
40: # define OPATR 3 /* other non control characters */
41: # define PUNCT 4 /* white space */
42: # define CNTRL 5 /* control-characters */
43:
44: /*
45: ** Modes for Lastc in w_op() and w_key() [prtout.c]
46: */
47:
48: # define OPCHAR 0 /* last character
49: * printed was an operator
50: */
51: # define KEYCHAR 1 /* last was alphanumeric */
52:
53:
54: /*
55: * Modes used in parser actions to distinguish contexts in which
56: * the same syntax applies. Opflag is set to these modes.
57: *
58: * (There are some modes that are never referenced, but are useful
59: * for extension).
60: */
61:
62: /* quel statements */
63:
64: # define mdAPPEND 1
65: # define mdCOPY 2
66: # define mdCREATE 3
67: # define mdDEFINE 4
68: # define mdDELETE 5
69: # define mdDESTROY 6
70: # define mdHELP 7
71: # define mdINDEX 8
72: # define mdINTEGRITY 9
73: # define mdMODIFY 10
74: # define mdPRINT 11
75: # define mdRANGE 12
76: # define mdREPLACE 13
77: # define mdRETRIEVE 14
78: # define mdSAVE 15
79: # define mdVIEW 22
80: # define mdPROT 23
81:
82: /* statements particular to Equel */
83:
84: # define mdDECL 16 /* C - declaration */
85: # define mdCTLELM 17 /* left hand side of target list element
86: * in "retrieve" to C-variables
87: */
88: # define mdEXIT 18 /* ## exit */
89: # define mdINGRES 19 /* ## ingres */
90: # define mdTUPRET 20 /* "retrieve" w/o an "into" */
91: # define mdFILENAME 21 /* used in "copy" statement */
92:
93:
94:
95:
96:
97:
98:
99: /* define typTYPE xx /* c types "Type_spec" */
100: # define opSHORT 1
101: # define opFLOAT 2
102: # define opSTRING 3
103: # define opDOUBLE 4
104: # define opCHAR 5
105: # define opLONG 6
106: # define opIDSTRING 7
107: # define opSTRUCT 8
108: # ifdef PDP
109: # define opINT opSHORT
110: # else PDP
111: # define opINT opLONG
112: # endif PDP
113:
114:
115: /* define typALLOC xx /* c var allocation types */
116: # define opAUTO 0
117: # define opSTATIC 1
118: # define opEXTERN 2
119: # define opREGISTER 3
Defined macros
ALPHA
defined in line
38; used 56 times
CNTRL
defined in line
42; used 30 times
NUMBR
defined in line
39; used 18 times
OPATR
defined in line
40; used 32 times
PUNCT
defined in line
41; used 4 times
Usage of this include