source: git/Singular/tok.h @ b15225f

spielwiese
Last change on this file since b15225f was b15225f, checked in by Olaf Bachmann <obachman@…>, 27 years ago
* small changes to conform with macintosh port git-svn-id: file:///usr/local/Singular/svn/trunk@391 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 4.5 KB
Line 
1#ifndef TOK_H
2#define TOK_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/*
7* ABSTRACT: token for interpreter, as types; general macros
8*/
9/* $Id: tok.h,v 1.8 1997-06-17 10:12:13 obachman Exp $ */
10
11#ifndef MYYSTYPE
12#include "structs.h"
13#endif
14#ifndef UMINUS
15#include "grammar.h"
16#endif
17
18#ifndef YY_READ_BUF_SIZE
19#define YY_READ_BUF_SIZE 8192
20/*#define YY_READ_BUF_SIZE 16384*/
21#endif
22
23extern int      yylineno;
24extern char     my_yylinebuf[YY_READ_BUF_SIZE];
25
26#if defined(__cplusplus)
27extern int  yyparse(void);
28#endif
29
30#define loop for(;;)
31
32#ifndef ABS
33#define ABS(x) ((x)<0?(-(x)):(x))
34#endif
35
36#if defined(__cplusplus) 
37inline int max(const int a, const int b)  { return (a>b) ? a : b; }
38inline int min(const int a, const int b)  { return (a<b) ? a : b; }
39#else
40#define max(A,B) ((A) > (B) ? (A) : (B))
41#define min(A,B) ((A) < (B) ? (A) : (B))
42#endif
43
44#define COMMAND           UMINUS+2 /* in tok.h */
45#define ANY_TYPE          UMINUS+3
46#define IDHDL             UMINUS+4
47
48enum {
49  ATTRIB_CMD     = UMINUS + 15,
50  BINARY_CMD,
51  CHARACTERISTIC_CMD,
52  CHARSTR_CMD,
53  CHAR_SERIES_CMD,
54  CLOSE_CMD,
55  COLS_CMD,
56  CONTENT_CMD,
57  COUNT_CMD,
58  DBPRINT_CMD,
59  DEF_CMD,
60  DEFINED_CMD,
61  DELETE_CMD,
62  DET_CMD,
63  DUMP_CMD,
64  EXTGCD_CMD,
65  FAC_CMD,
66  FIND_CMD,
67  FACSTD_CMD,
68  FGLM_CMD,
69  GCD_CMD,
70  GETDUMP_CMD,
71  INSERT_CMD,
72  INT_CMD,
73  INTVEC_CMD,
74  IS_RINGVAR,
75  KILLATTR_CMD,
76  LINK_CMD,
77  LIST_CMD,
78  MEMORY_CMD,
79  MONITOR_CMD,
80  MSTD_CMD,
81  NAMEOF_CMD,
82  NAMES_CMD,
83  NPARS_CMD,
84  NVARS_CMD,
85  OPEN_CMD,
86  OPTION_CMD,
87  ORDSTR_CMD,
88  PACKAGE_CMD,
89  PARSTR_CMD,
90  PRIME_CMD,
91  PRINT_CMD,
92  PRUNE_CMD,
93  QRING_CMD,
94  RANDOM_CMD,
95  READ_CMD,
96  RESERVEDNAME_CMD,
97  RESULTANT_CMD,
98  ROWS_CMD,
99  STATUS_CMD,
100  SQR_FREE_DEC_CMD,
101  STRING_CMD,
102  SYSTEM_CMD,
103  TEST_CMD,
104  TRANSPOSE_CMD,
105  TRACE_CMD,
106  TYPEOF_CMD,
107  VARSTR_CMD,
108  VERBOSE_CMD,
109  WRITE_CMD,
110  /* start system var section: VECHO */
111  VECHO,
112  VPAGELENGTH,
113  VCOLMAX,
114  VTIMER,
115#ifdef HAVE_RTIMER
116  VRTIMER,
117#endif 
118  TRACE,
119  VOICE,
120  VSHORTOUT,
121  VPRINTLEVEL,
122  /* end system var section: VPRINTLEVEL */
123
124  /* start system var section: VECHO */
125  /* end system var section: VPRINTLEVEL */
126  MAX_TOK /* must be the last, biggest token number */
127};
128
129#define NONE END_RING
130#define UNKNOWN 0
131#define SIC_MASK 1024
132
133/*
134**  Set operations (small sets only)
135*/
136
137#define Sy_bit(x)     (1<<(x))
138#define Sy_inset(x,s) ((Sy_bit(x)&(s))?TRUE:FALSE)
139#define BTEST1(a)     Sy_inset((a), test)
140#define BVERBOSE(a)   Sy_inset((a), verbose)
141
142/*
143** defines for BITSETs
144*/
145
146#define V_SHOW_MEM  2
147#define V_YACC      3
148#define V_REDEFINE  4
149#define V_READING   5
150#define V_LOAD_LIB  6
151#define V_DEBUG_LIB 7
152#define V_LOAD_PROC 8
153#define V_DEF_RES   9
154#define V_DEBUG_MEM 10
155#define V_SHOW_USE  11
156#define V_IMAP      12
157#define V_PROMPT    13
158#define V_NSB       14
159
160#define TEST_VERB_NSB              BVERBOSE(V_NSB)
161
162#define OPT_PROT           0
163#define OPT_REDSB          1
164#define OPT_NOT_SUGAR      3
165#define OPT_INTERRUPT      4
166#define OPT_SUGARCRIT      5
167#define OPT_DEBUG          6
168#define OPT_CANCELUNIT     7
169#define OPT_MOREPAIRS      8
170#define OPT_RETURN_SB      9
171#define OPT_FASTHC        10
172#define OPT_KEEPVARS      21
173#define OPT_STAIRCASEBOUND 22
174#define OPT_MULTBOUND     23
175#define OPT_DEGBOUND      24
176#define OPT_REDTAIL       25
177#define OPT_INTSTRATEGY   26
178#define OPT_MINRES        28
179#define OPT_SB_1          29
180#define OPT_NOTREGULARITY 30
181#define OPT_WEIGHTM       31
182
183#define TEST_OPT_PROT              BTEST1(OPT_PROT)
184#define TEST_OPT_REDSB             BTEST1(OPT_REDSB)
185#define TEST_OPT_NOT_SUGAR         BTEST1(OPT_NOT_SUGAR)
186#define TEST_OPT_SUGARCRIT         BTEST1(OPT_SUGARCRIT)
187#define TEST_OPT_DEBUG             BTEST1(OPT_DEBUG)
188#define TEST_OPT_MOREPAIRS         BTEST1(OPT_MOREPAIRS)
189#define TEST_OPT_FASTHC            BTEST1(OPT_FASTHC)
190#define TEST_OPT_INTSTRATEGY       BTEST1(OPT_INTSTRATEGY)
191#define TEST_OPT_CANCELUNIT        BTEST1(OPT_CANCELUNIT)
192#define TEST_OPT_RETURN_SB         BTEST1(OPT_RETURN_SB)
193#define TEST_OPT_KEEPVARS          BTEST1(OPT_KEEPVARS)
194#define TEST_OPT_DEGBOUND          BTEST1(OPT_DEGBOUND)
195#define TEST_OPT_MULTBOUND         BTEST1(OPT_MULTBOUND)
196#define TEST_OPT_STAIRCASEBOUND    BTEST1(OPT_STAIRCASEBOUND)
197#define TEST_OPT_REDTAIL           BTEST1(OPT_REDTAIL)
198#define TEST_OPT_MINRES            BTEST1(OPT_MINRES)
199#define TEST_OPT_SB_1              BTEST1(OPT_SB_1)
200#define TEST_OPT_NOTREGULARITY     BTEST1(OPT_NOTREGULARITY)
201#define TEST_OPT_WEIGHTM           BTEST1(OPT_WEIGHTM)
202
203#endif
Note: See TracBrowser for help on using the repository browser.