source: git/Singular/tok.h @ 634dab0

spielwiese
Last change on this file since 634dab0 was f43a74, checked in by Hans Schönemann <hannes@…>, 19 years ago
*hannes: new lib: sheafcohom.lib weight stuff load stuff git-svn-id: file:///usr/local/Singular/svn/trunk@8220 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 5.4 KB
Line 
1#ifndef TOK_H
2#define TOK_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/*
7* ABSTRACT: tokens, types for interpreter; general macros
8*/
9/* $Id: tok.h,v 1.63 2005-05-18 15:59:37 Singular Exp $ */
10
11#ifndef MYYSTYPE
12#include "structs.h"
13#endif
14#ifndef UMINUS
15#include "grammar.h"
16#endif
17
18extern int      yylineno;
19extern char     my_yylinebuf[80];
20
21#if defined(__cplusplus)
22extern int  yyparse(void);
23#endif
24
25/* Define to use old mechanismen for saving currRing with procedures
26 * Does work with HAVE_NAMESPACES enabled
27 */
28#define USE_IILOCALRING 1
29
30
31/* the follwing defines for infix operators should not be changed: *
32*  grammar.y does not use the symbolic names                       *
33*  scanner.l uses the identies for some optimzations              */
34#define LOGIC_OP         '&'
35#define MULDIV_OP        '/'
36#define COMP_OP          '<'
37
38#define COMMAND           UMINUS+2 /* in tok.h */
39#define ANY_TYPE          UMINUS+3
40#define IDHDL             UMINUS+4
41#define NSHDL             UMINUS+5
42
43enum {
44  ALIAS_CMD     = UMINUS + 15,
45  ATTRIB_CMD,
46  BAREISS_CMD,
47  BRACKET_CMD,
48  BREAKPOINT_CMD,
49  CHARACTERISTIC_CMD,
50  CHARSTR_CMD,
51  CHAR_SERIES_CMD,
52  CLOSE_CMD,
53  COLS_CMD,
54  CONTENT_CMD,
55  COUNT_CMD,
56  DBPRINT_CMD,
57  DEF_CMD,
58  DEFINED_CMD,
59  DELETE_CMD,
60  DET_CMD,
61  DUMP_CMD,
62  END_GRAMMAR,
63  ENVELOPE_CMD,
64  ERROR_CMD,
65  EXECUTE_CMD,
66  EXPORTTO_CMD,
67  EXTGCD_CMD,
68  FAC_CMD,
69  FIND_CMD,
70  FACSTD_CMD,
71  FWALK_CMD,
72  FGLM_CMD,
73  FGLMQUOT_CMD,
74  FINDUNI_CMD,
75  GCD_CMD,
76  GETDUMP_CMD,
77  HIGHCORNER_CMD,
78  HRES_CMD,
79  IMPART_CMD,
80  IMPORTFROM_CMD,
81  INSERT_CMD,
82  INT_CMD,
83  INTDIV_CMD,
84  INTMOD_CMD,
85  INTVEC_CMD,
86  IS_RINGVAR,
87  JANET_CMD,
88  KILLATTR_CMD,
89  KRES_CMD,
90  LAGSOLVE_CMD,
91  LINK_CMD,
92  LIST_CMD,
93  LOAD_CMD,
94  LRES_CMD,
95  MEMORY_CMD,
96  MONITOR_CMD,
97  MPRES_CMD,
98  MSTD_CMD,
99  NAMEOF_CMD,
100  NAMES_CMD,
101  NCALGEBRA_CMD,
102  NEWTONPOLY_CMD,
103  NPARS_CMD,
104  NVARS_CMD,
105  OPEN_CMD,
106  OPPOSE_CMD,
107  OPPOSITE_CMD,
108  OPTION_CMD,
109  ORDSTR_CMD,
110  PACKAGE_CMD,
111  PARSTR_CMD,
112  POINTER_CMD,
113  PRIME_CMD,
114  PRINT_CMD,
115  PRUNE_CMD,
116  QRING_CMD,
117  RANDOM_CMD,
118  READ_CMD,
119  REPART_CMD,
120  RESERVEDNAME_CMD,
121  RESULTANT_CMD,
122  RINGLIST_CMD,
123  ROWS_CMD,
124  SIMPLEX_CMD,
125  SLIM_GB_CMD,
126  SQR_FREE_DEC_CMD,
127  STATUS_CMD,
128  STRING_CMD,
129  SYSTEM_CMD,
130  TEST_CMD,
131  TRANSPOSE_CMD,
132  TRACE_CMD,
133  TWOSTD_CMD,
134  TYPEOF_CMD,
135  UNLOAD_CMD,
136  URSOLVE_CMD,
137  VANDER_CMD,
138  VARSTR_CMD,
139  WRITE_CMD,
140  /* start system var section: VECHO */
141  VECHO,
142  VPAGELENGTH,
143  VCOLMAX,
144  VTIMER,
145  VRTIMER,
146  TRACE,
147  VOICE,
148  VSHORTOUT,
149  VPRINTLEVEL,
150  /* end system var section: VPRINTLEVEL */
151
152  MAX_TOK /* must be the last, biggest token number */
153};
154
155#define NONE END_RING
156#define UNKNOWN 0
157
158/*
159**  Set operations (small sets only)
160*/
161
162#define Sy_bit(x)     ((unsigned)1<<(x))
163#define Sy_inset(x,s) ((Sy_bit(x)&(s))?TRUE:FALSE)
164#define BTEST1(a)     Sy_inset((a), test)
165#define BVERBOSE(a)   Sy_inset((a), verbose)
166
167/*
168** defines for BITSETs
169*/
170
171#define V_SHOW_MEM  2
172#define V_YACC      3
173#define V_REDEFINE  4
174#define V_READING   5
175#define V_LOAD_LIB  6
176#define V_DEBUG_LIB 7
177#define V_LOAD_PROC 8
178#define V_DEF_RES   9
179#define V_DEBUG_MEM 10
180#define V_SHOW_USE  11
181#define V_IMAP      12
182#define V_PROMPT    13
183#define V_NSB       14
184#define V_CONTENTSB 15
185#define V_CANCELUNIT 16
186#define V_DEG_STOP  31
187
188
189#define OPT_PROT           0
190#define OPT_REDSB          1
191#define OPT_NOT_BUCKETS    2
192#define OPT_NOT_SUGAR      3
193#define OPT_INTERRUPT      4
194#define OPT_SUGARCRIT      5
195#define OPT_DEBUG          6
196#define OPT_REDTHROUGH     7
197#define OPT_RETURN_SB      9
198#define OPT_FASTHC        10
199#define OPT_OLDSTD        20
200#define OPT_KEEPVARS      21
201#define OPT_STAIRCASEBOUND 22
202#define OPT_MULTBOUND     23
203#define OPT_DEGBOUND      24
204#define OPT_REDTAIL       25
205#define OPT_INTSTRATEGY   26
206#define OPT_INFREDTAIL    28
207#define OPT_SB_1          29
208#define OPT_NOTREGULARITY 30
209#define OPT_WEIGHTM       31
210
211/* define ring dependent options */ 
212#define TEST_RINGDEP_OPTS \
213 (Sy_bit(OPT_INTSTRATEGY) | Sy_bit(OPT_REDTHROUGH) | Sy_bit(OPT_REDTAIL))
214
215#define TEST_OPT_PROT              BTEST1(OPT_PROT)
216#define TEST_OPT_REDSB             BTEST1(OPT_REDSB)
217#define TEST_OPT_NOT_BUCKETS       BTEST1(OPT_NOT_BUCKETS)
218#define TEST_OPT_NOT_SUGAR         BTEST1(OPT_NOT_SUGAR)
219#define TEST_OPT_SUGARCRIT         BTEST1(OPT_SUGARCRIT)
220#define TEST_OPT_DEBUG             BTEST1(OPT_DEBUG)
221#define TEST_OPT_FASTHC            BTEST1(OPT_FASTHC)
222#define TEST_OPT_INTSTRATEGY       BTEST1(OPT_INTSTRATEGY)
223#define TEST_OPT_RETURN_SB         BTEST1(OPT_RETURN_SB)
224#define TEST_OPT_KEEPVARS          BTEST1(OPT_KEEPVARS)
225#define TEST_OPT_DEGBOUND          BTEST1(OPT_DEGBOUND)
226#define TEST_OPT_MULTBOUND         BTEST1(OPT_MULTBOUND)
227#define TEST_OPT_STAIRCASEBOUND    BTEST1(OPT_STAIRCASEBOUND)
228#define TEST_OPT_REDTAIL           BTEST1(OPT_REDTAIL)
229#define TEST_OPT_INFREDTAIL        BTEST1(OPT_INFREDTAIL)
230#define TEST_OPT_SB_1              BTEST1(OPT_SB_1)
231#define TEST_OPT_NOTREGULARITY     BTEST1(OPT_NOTREGULARITY)
232#define TEST_OPT_WEIGHTM           BTEST1(OPT_WEIGHTM)
233#define TEST_OPT_REDTHROUGH        BTEST1(OPT_REDTHROUGH)
234#define TEST_OPT_OLDSTD            BTEST1(OPT_OLDSTD)
235#define TEST_OPT_CONTENTSB         BVERBOSE(V_CONTENTSB)
236#define TEST_OPT_CANCELUNIT        BVERBOSE(V_CANCELUNIT)
237
238#define TEST_VERB_NSB              BVERBOSE(V_NSB)
239#define TEST_V_DEG_STOP            BVERBOSE(V_DEG_STOP)
240
241#endif
Note: See TracBrowser for help on using the repository browser.