2
//----------------------------------------------------
3
// The following code was generated by CUP v0.11a beta 20060608
4
// Thu May 15 13:13:25 NZST 2008
5
//----------------------------------------------------
8
* STANDARD ML OF NEW JERSEY COPYRIGHT NOTICE, LICENSE AND DISCLAIMER.
10
* Copyright (c) 1989-1998 by Lucent Technologies
12
* Permission to use, copy, modify, and distribute this software and its
13
* documentation for any purpose and without fee is hereby granted, provided
14
* that the above copyright notice appear in all copies and that both the
15
* copyright notice and this permission notice and warranty disclaimer appear
16
* in supporting documentation, and that the name of Lucent Technologies, Bell
17
* Labs or any Lucent entity not be used in advertising or publicity pertaining
18
* to distribution of the software without specific, written prior permission.
20
* Lucent disclaims all warranties with regard to this software, including all
21
* implied warranties of merchantability and fitness. In no event shall Lucent
22
* be liable for any special, indirect or consequential damages or any damages
23
* whatsoever resulting from loss of use, data or profits, whether in an action
24
* of contract, negligence or other tortious action, arising out of or in
25
* connection with the use or performance of this software.
27
* Taken from this URL:
28
* http://www.smlnj.org/license.html
30
* This license is compatible with the GNU GPL (see section "Standard ML of New
31
* Jersey Copyright License"):
32
* http://www.gnu.org/licenses/license-list.html#StandardMLofNJ
36
* Copyright 1996-1999 by Scott Hudson, Frank Flannery, C. Scott Ananian
39
package weka.core.mathematicalexpression;
41
import weka.core.parser.java_cup.runtime.*;
45
/** CUP v0.11a beta 20060608 generated parser.
46
* @version Thu May 15 13:13:25 NZST 2008
48
public class Parser extends weka.core.parser.java_cup.runtime.lr_parser {
50
/** Default constructor. */
51
public Parser() {super();}
53
/** Constructor which sets the default scanner. */
54
public Parser(weka.core.parser.java_cup.runtime.Scanner s) {super(s);}
56
/** Constructor which sets the default scanner. */
57
public Parser(weka.core.parser.java_cup.runtime.Scanner s, weka.core.parser.java_cup.runtime.SymbolFactory sf) {super(s,sf);}
59
/** Production table. */
60
protected static final short _production_table[][] =
61
unpackFromStrings(new String[] {
62
"\000\046\000\002\002\004\000\002\002\004\000\002\002" +
63
"\003\000\002\003\003\000\002\004\003\000\002\004\005" +
64
"\000\002\004\003\000\002\004\003\000\002\004\003\000" +
65
"\002\005\005\000\002\005\005\000\002\005\005\000\002" +
66
"\005\005\000\002\006\003\000\002\007\006\000\002\007" +
67
"\006\000\002\007\006\000\002\007\006\000\002\007\006" +
68
"\000\002\007\006\000\002\007\006\000\002\007\006\000" +
69
"\002\007\006\000\002\007\010\000\002\007\006\000\002" +
70
"\007\012\000\002\010\003\000\002\010\003\000\002\010" +
71
"\003\000\002\010\005\000\002\010\005\000\002\010\005" +
72
"\000\002\010\005\000\002\010\005\000\002\010\005\000" +
73
"\002\010\004\000\002\010\005\000\002\010\005" });
75
/** Access to production table. */
76
public short[][] production_table() {return _production_table;}
78
/** Parse-action table. */
79
protected static final short[][] _action_table =
80
unpackFromStrings(new String[] {
81
"\000\144\000\040\005\016\013\025\014\011\015\021\016" +
82
"\020\017\005\020\010\021\030\022\015\023\014\024\012" +
83
"\025\017\026\004\041\023\043\013\001\002\000\004\005" +
84
"\110\001\002\000\004\005\105\001\002\000\052\002\ufffe" +
85
"\005\ufffe\007\036\010\034\011\037\012\035\013\ufffe\014" +
86
"\ufffe\015\ufffe\016\ufffe\017\ufffe\020\ufffe\021\ufffe\022\ufffe" +
87
"\023\ufffe\024\ufffe\025\ufffe\026\ufffe\041\ufffe\043\ufffe\001" +
88
"\002\000\074\002\ufffa\004\ufffa\005\ufffa\006\ufffa\007\ufffa" +
89
"\010\ufffa\011\ufffa\012\ufffa\013\ufffa\014\ufffa\015\ufffa\016" +
90
"\ufffa\017\ufffa\020\ufffa\021\ufffa\022\ufffa\023\ufffa\024\ufffa" +
91
"\025\ufffa\026\ufffa\031\ufffa\032\ufffa\033\ufffa\034\ufffa\035" +
92
"\ufffa\037\ufffa\040\ufffa\041\ufffa\043\ufffa\001\002\000\004" +
93
"\005\102\001\002\000\004\005\077\001\002\000\004\005" +
94
"\072\001\002\000\074\002\ufff4\004\ufff4\005\ufff4\006\ufff4" +
95
"\007\ufff4\010\ufff4\011\ufff4\012\ufff4\013\ufff4\014\ufff4\015" +
96
"\ufff4\016\ufff4\017\ufff4\020\ufff4\021\ufff4\022\ufff4\023\ufff4" +
97
"\024\ufff4\025\ufff4\026\ufff4\031\ufff4\032\ufff4\033\ufff4\034" +
98
"\ufff4\035\ufff4\037\ufff4\040\ufff4\041\ufff4\043\ufff4\001\002" +
99
"\000\004\005\067\001\002\000\004\005\064\001\002\000" +
100
"\040\005\016\013\025\014\011\015\021\016\020\017\005" +
101
"\020\010\021\030\022\015\023\014\024\012\025\017\026" +
102
"\004\041\023\043\013\001\002\000\004\005\057\001\002" +
103
"\000\004\005\054\001\002\000\004\005\051\001\002\000" +
104
"\042\002\uffff\005\uffff\013\uffff\014\uffff\015\uffff\016\uffff" +
105
"\017\uffff\020\uffff\021\uffff\022\uffff\023\uffff\024\uffff\025" +
106
"\uffff\026\uffff\041\uffff\043\uffff\001\002\000\074\002\ufffd" +
107
"\004\ufffd\005\ufffd\006\ufffd\007\ufffd\010\ufffd\011\ufffd\012" +
108
"\ufffd\013\ufffd\014\ufffd\015\ufffd\016\ufffd\017\ufffd\020\ufffd" +
109
"\021\ufffd\022\ufffd\023\ufffd\024\ufffd\025\ufffd\026\ufffd\031" +
110
"\ufffd\032\ufffd\033\ufffd\034\ufffd\035\ufffd\037\ufffd\040\ufffd" +
111
"\041\ufffd\043\ufffd\001\002\000\074\002\ufff9\004\ufff9\005" +
112
"\ufff9\006\ufff9\007\ufff9\010\ufff9\011\ufff9\012\ufff9\013\ufff9" +
113
"\014\ufff9\015\ufff9\016\ufff9\017\ufff9\020\ufff9\021\ufff9\022" +
114
"\ufff9\023\ufff9\024\ufff9\025\ufff9\026\ufff9\031\ufff9\032\ufff9" +
115
"\033\ufff9\034\ufff9\035\ufff9\037\ufff9\040\ufff9\041\ufff9\043" +
116
"\ufff9\001\002\000\004\005\046\001\002\000\042\002\045" +
117
"\005\016\013\025\014\011\015\021\016\020\017\005\020" +
118
"\010\021\030\022\015\023\014\024\012\025\017\026\004" +
119
"\041\023\043\013\001\002\000\074\002\ufffb\004\ufffb\005" +
120
"\ufffb\006\ufffb\007\ufffb\010\ufffb\011\ufffb\012\ufffb\013\ufffb" +
121
"\014\ufffb\015\ufffb\016\ufffb\017\ufffb\020\ufffb\021\ufffb\022" +
122
"\ufffb\023\ufffb\024\ufffb\025\ufffb\026\ufffb\031\ufffb\032\ufffb" +
123
"\033\ufffb\034\ufffb\035\ufffb\037\ufffb\040\ufffb\041\ufffb\043" +
124
"\ufffb\001\002\000\004\005\031\001\002\000\040\005\016" +
125
"\013\025\014\011\015\021\016\020\017\005\020\010\021" +
126
"\030\022\015\023\014\024\012\025\017\026\004\041\023" +
127
"\043\013\001\002\000\014\006\033\007\036\010\034\011" +
128
"\037\012\035\001\002\000\074\002\uffed\004\uffed\005\uffed" +
129
"\006\uffed\007\uffed\010\uffed\011\uffed\012\uffed\013\uffed\014" +
130
"\uffed\015\uffed\016\uffed\017\uffed\020\uffed\021\uffed\022\uffed" +
131
"\023\uffed\024\uffed\025\uffed\026\uffed\031\uffed\032\uffed\033" +
132
"\uffed\034\uffed\035\uffed\037\uffed\040\uffed\041\uffed\043\uffed" +
133
"\001\002\000\040\005\016\013\025\014\011\015\021\016" +
134
"\020\017\005\020\010\021\030\022\015\023\014\024\012" +
135
"\025\017\026\004\041\023\043\013\001\002\000\040\005" +
136
"\016\013\025\014\011\015\021\016\020\017\005\020\010" +
137
"\021\030\022\015\023\014\024\012\025\017\026\004\041" +
138
"\023\043\013\001\002\000\040\005\016\013\025\014\011" +
139
"\015\021\016\020\017\005\020\010\021\030\022\015\023" +
140
"\014\024\012\025\017\026\004\041\023\043\013\001\002" +
141
"\000\040\005\016\013\025\014\011\015\021\016\020\017" +
142
"\005\020\010\021\030\022\015\023\014\024\012\025\017" +
143
"\026\004\041\023\043\013\001\002\000\074\002\ufff6\004" +
144
"\ufff6\005\ufff6\006\ufff6\007\ufff6\010\ufff6\011\ufff6\012\ufff6" +
145
"\013\ufff6\014\ufff6\015\ufff6\016\ufff6\017\ufff6\020\ufff6\021" +
146
"\ufff6\022\ufff6\023\ufff6\024\ufff6\025\ufff6\026\ufff6\031\ufff6" +
147
"\032\ufff6\033\ufff6\034\ufff6\035\ufff6\037\ufff6\040\ufff6\041" +
148
"\ufff6\043\ufff6\001\002\000\074\002\ufff7\004\ufff7\005\ufff7" +
149
"\006\ufff7\007\ufff7\010\ufff7\011\037\012\035\013\ufff7\014" +
150
"\ufff7\015\ufff7\016\ufff7\017\ufff7\020\ufff7\021\ufff7\022\ufff7" +
151
"\023\ufff7\024\ufff7\025\ufff7\026\ufff7\031\ufff7\032\ufff7\033" +
152
"\ufff7\034\ufff7\035\ufff7\037\ufff7\040\ufff7\041\ufff7\043\ufff7" +
153
"\001\002\000\074\002\ufff5\004\ufff5\005\ufff5\006\ufff5\007" +
154
"\ufff5\010\ufff5\011\ufff5\012\ufff5\013\ufff5\014\ufff5\015\ufff5" +
155
"\016\ufff5\017\ufff5\020\ufff5\021\ufff5\022\ufff5\023\ufff5\024" +
156
"\ufff5\025\ufff5\026\ufff5\031\ufff5\032\ufff5\033\ufff5\034\ufff5" +
157
"\035\ufff5\037\ufff5\040\ufff5\041\ufff5\043\ufff5\001\002\000" +
158
"\074\002\ufff8\004\ufff8\005\ufff8\006\ufff8\007\ufff8\010\ufff8" +
159
"\011\037\012\035\013\ufff8\014\ufff8\015\ufff8\016\ufff8\017" +
160
"\ufff8\020\ufff8\021\ufff8\022\ufff8\023\ufff8\024\ufff8\025\ufff8" +
161
"\026\ufff8\031\ufff8\032\ufff8\033\ufff8\034\ufff8\035\ufff8\037" +
162
"\ufff8\040\ufff8\041\ufff8\043\ufff8\001\002\000\042\002\001" +
163
"\005\001\013\001\014\001\015\001\016\001\017\001\020" +
164
"\001\021\001\022\001\023\001\024\001\025\001\026\001" +
165
"\041\001\043\001\001\002\000\004\002\000\001\002\000" +
166
"\040\005\016\013\025\014\011\015\021\016\020\017\005" +
167
"\020\010\021\030\022\015\023\014\024\012\025\017\026" +
168
"\004\041\023\043\013\001\002\000\014\006\050\007\036" +
169
"\010\034\011\037\012\035\001\002\000\074\002\ufff3\004" +
170
"\ufff3\005\ufff3\006\ufff3\007\ufff3\010\ufff3\011\ufff3\012\ufff3" +
171
"\013\ufff3\014\ufff3\015\ufff3\016\ufff3\017\ufff3\020\ufff3\021" +
172
"\ufff3\022\ufff3\023\ufff3\024\ufff3\025\ufff3\026\ufff3\031\ufff3" +
173
"\032\ufff3\033\ufff3\034\ufff3\035\ufff3\037\ufff3\040\ufff3\041" +
174
"\ufff3\043\ufff3\001\002\000\040\005\016\013\025\014\011" +
175
"\015\021\016\020\017\005\020\010\021\030\022\015\023" +
176
"\014\024\012\025\017\026\004\041\023\043\013\001\002" +
177
"\000\014\006\053\007\036\010\034\011\037\012\035\001" +
178
"\002\000\074\002\ufff1\004\ufff1\005\ufff1\006\ufff1\007\ufff1" +
179
"\010\ufff1\011\ufff1\012\ufff1\013\ufff1\014\ufff1\015\ufff1\016" +
180
"\ufff1\017\ufff1\020\ufff1\021\ufff1\022\ufff1\023\ufff1\024\ufff1" +
181
"\025\ufff1\026\ufff1\031\ufff1\032\ufff1\033\ufff1\034\ufff1\035" +
182
"\ufff1\037\ufff1\040\ufff1\041\ufff1\043\ufff1\001\002\000\040" +
183
"\005\016\013\025\014\011\015\021\016\020\017\005\020" +
184
"\010\021\030\022\015\023\014\024\012\025\017\026\004" +
185
"\041\023\043\013\001\002\000\014\006\056\007\036\010" +
186
"\034\011\037\012\035\001\002\000\074\002\ufff0\004\ufff0" +
187
"\005\ufff0\006\ufff0\007\ufff0\010\ufff0\011\ufff0\012\ufff0\013" +
188
"\ufff0\014\ufff0\015\ufff0\016\ufff0\017\ufff0\020\ufff0\021\ufff0" +
189
"\022\ufff0\023\ufff0\024\ufff0\025\ufff0\026\ufff0\031\ufff0\032" +
190
"\ufff0\033\ufff0\034\ufff0\035\ufff0\037\ufff0\040\ufff0\041\ufff0" +
191
"\043\ufff0\001\002\000\040\005\016\013\025\014\011\015" +
192
"\021\016\020\017\005\020\010\021\030\022\015\023\014" +
193
"\024\012\025\017\026\004\041\023\043\013\001\002\000" +
194
"\014\006\061\007\036\010\034\011\037\012\035\001\002" +
195
"\000\074\002\uffe9\004\uffe9\005\uffe9\006\uffe9\007\uffe9\010" +
196
"\uffe9\011\uffe9\012\uffe9\013\uffe9\014\uffe9\015\uffe9\016\uffe9" +
197
"\017\uffe9\020\uffe9\021\uffe9\022\uffe9\023\uffe9\024\uffe9\025" +
198
"\uffe9\026\uffe9\031\uffe9\032\uffe9\033\uffe9\034\uffe9\035\uffe9" +
199
"\037\uffe9\040\uffe9\041\uffe9\043\uffe9\001\002\000\014\006" +
200
"\063\007\036\010\034\011\037\012\035\001\002\000\074" +
201
"\002\ufffc\004\ufffc\005\ufffc\006\ufffc\007\ufffc\010\ufffc\011" +
202
"\ufffc\012\ufffc\013\ufffc\014\ufffc\015\ufffc\016\ufffc\017\ufffc" +
203
"\020\ufffc\021\ufffc\022\ufffc\023\ufffc\024\ufffc\025\ufffc\026" +
204
"\ufffc\031\ufffc\032\ufffc\033\ufffc\034\ufffc\035\ufffc\037\ufffc" +
205
"\040\ufffc\041\ufffc\043\ufffc\001\002\000\040\005\016\013" +
206
"\025\014\011\015\021\016\020\017\005\020\010\021\030" +
207
"\022\015\023\014\024\012\025\017\026\004\041\023\043" +
208
"\013\001\002\000\014\006\066\007\036\010\034\011\037" +
209
"\012\035\001\002\000\074\002\uffec\004\uffec\005\uffec\006" +
210
"\uffec\007\uffec\010\uffec\011\uffec\012\uffec\013\uffec\014\uffec" +
211
"\015\uffec\016\uffec\017\uffec\020\uffec\021\uffec\022\uffec\023" +
212
"\uffec\024\uffec\025\uffec\026\uffec\031\uffec\032\uffec\033\uffec" +
213
"\034\uffec\035\uffec\037\uffec\040\uffec\041\uffec\043\uffec\001" +
214
"\002\000\040\005\016\013\025\014\011\015\021\016\020" +
215
"\017\005\020\010\021\030\022\015\023\014\024\012\025" +
216
"\017\026\004\041\023\043\013\001\002\000\014\006\071" +
217
"\007\036\010\034\011\037\012\035\001\002\000\074\002" +
218
"\uffeb\004\uffeb\005\uffeb\006\uffeb\007\uffeb\010\uffeb\011\uffeb" +
219
"\012\uffeb\013\uffeb\014\uffeb\015\uffeb\016\uffeb\017\uffeb\020" +
220
"\uffeb\021\uffeb\022\uffeb\023\uffeb\024\uffeb\025\uffeb\026\uffeb" +
221
"\031\uffeb\032\uffeb\033\uffeb\034\uffeb\035\uffeb\037\uffeb\040" +
222
"\uffeb\041\uffeb\043\uffeb\001\002\000\040\005\016\013\025" +
223
"\014\011\015\021\016\020\017\005\020\010\021\030\022" +
224
"\015\023\014\024\012\025\017\026\004\041\023\043\013" +
225
"\001\002\000\014\004\074\007\036\010\034\011\037\012" +
226
"\035\001\002\000\040\005\016\013\025\014\011\015\021" +
227
"\016\020\017\005\020\010\021\030\022\015\023\014\024" +
228
"\012\025\017\026\004\041\023\043\013\001\002\000\014" +
229
"\006\076\007\036\010\034\011\037\012\035\001\002\000" +
230
"\074\002\uffea\004\uffea\005\uffea\006\uffea\007\uffea\010\uffea" +
231
"\011\uffea\012\uffea\013\uffea\014\uffea\015\uffea\016\uffea\017" +
232
"\uffea\020\uffea\021\uffea\022\uffea\023\uffea\024\uffea\025\uffea" +
233
"\026\uffea\031\uffea\032\uffea\033\uffea\034\uffea\035\uffea\037" +
234
"\uffea\040\uffea\041\uffea\043\uffea\001\002\000\040\005\016" +
235
"\013\025\014\011\015\021\016\020\017\005\020\010\021" +
236
"\030\022\015\023\014\024\012\025\017\026\004\041\023" +
237
"\043\013\001\002\000\014\006\101\007\036\010\034\011" +
238
"\037\012\035\001\002\000\074\002\ufff2\004\ufff2\005\ufff2" +
239
"\006\ufff2\007\ufff2\010\ufff2\011\ufff2\012\ufff2\013\ufff2\014" +
240
"\ufff2\015\ufff2\016\ufff2\017\ufff2\020\ufff2\021\ufff2\022\ufff2" +
241
"\023\ufff2\024\ufff2\025\ufff2\026\ufff2\031\ufff2\032\ufff2\033" +
242
"\ufff2\034\ufff2\035\ufff2\037\ufff2\040\ufff2\041\ufff2\043\ufff2" +
243
"\001\002\000\040\005\016\013\025\014\011\015\021\016" +
244
"\020\017\005\020\010\021\030\022\015\023\014\024\012" +
245
"\025\017\026\004\041\023\043\013\001\002\000\014\006" +
246
"\104\007\036\010\034\011\037\012\035\001\002\000\074" +
247
"\002\uffee\004\uffee\005\uffee\006\uffee\007\uffee\010\uffee\011" +
248
"\uffee\012\uffee\013\uffee\014\uffee\015\uffee\016\uffee\017\uffee" +
249
"\020\uffee\021\uffee\022\uffee\023\uffee\024\uffee\025\uffee\026" +
250
"\uffee\031\uffee\032\uffee\033\uffee\034\uffee\035\uffee\037\uffee" +
251
"\040\uffee\041\uffee\043\uffee\001\002\000\040\005\016\013" +
252
"\025\014\011\015\021\016\020\017\005\020\010\021\030" +
253
"\022\015\023\014\024\012\025\017\026\004\041\023\043" +
254
"\013\001\002\000\014\006\107\007\036\010\034\011\037" +
255
"\012\035\001\002\000\074\002\uffef\004\uffef\005\uffef\006" +
256
"\uffef\007\uffef\010\uffef\011\uffef\012\uffef\013\uffef\014\uffef" +
257
"\015\uffef\016\uffef\017\uffef\020\uffef\021\uffef\022\uffef\023" +
258
"\uffef\024\uffef\025\uffef\026\uffef\031\uffef\032\uffef\033\uffef" +
259
"\034\uffef\035\uffef\037\uffef\040\uffef\041\uffef\043\uffef\001" +
260
"\002\000\050\005\114\013\025\014\011\015\021\016\020" +
261
"\017\005\020\010\021\030\022\015\023\014\024\012\025" +
262
"\017\026\004\027\113\030\117\036\112\041\023\042\115" +
263
"\043\013\001\002\000\024\007\036\010\034\011\037\012" +
264
"\035\031\140\032\136\033\137\034\134\035\135\001\002" +
265
"\000\050\005\114\013\025\014\011\015\021\016\020\017" +
266
"\005\020\010\021\030\022\015\023\014\024\012\025\017" +
267
"\026\004\027\113\030\117\036\112\041\023\042\115\043" +
268
"\013\001\002\000\012\004\uffe6\006\uffe6\037\uffe6\040\uffe6" +
269
"\001\002\000\050\005\114\013\025\014\011\015\021\016" +
270
"\020\017\005\020\010\021\030\022\015\023\014\024\012" +
271
"\025\017\026\004\027\113\030\117\036\112\041\023\042" +
272
"\115\043\013\001\002\000\012\004\uffe7\006\uffe7\037\uffe7" +
273
"\040\uffe7\001\002\000\010\004\120\037\121\040\122\001" +
274
"\002\000\012\004\uffe5\006\uffe5\037\uffe5\040\uffe5\001\002" +
275
"\000\040\005\016\013\025\014\011\015\021\016\020\017" +
276
"\005\020\010\021\030\022\015\023\014\024\012\025\017" +
277
"\026\004\041\023\043\013\001\002\000\050\005\114\013" +
278
"\025\014\011\015\021\016\020\017\005\020\010\021\030" +
279
"\022\015\023\014\024\012\025\017\026\004\027\113\030" +
280
"\117\036\112\041\023\042\115\043\013\001\002\000\050" +
281
"\005\114\013\025\014\011\015\021\016\020\017\005\020" +
282
"\010\021\030\022\015\023\014\024\012\025\017\026\004" +
283
"\027\113\030\117\036\112\041\023\042\115\043\013\001" +
284
"\002\000\012\004\uffdc\006\uffdc\037\uffdc\040\uffdc\001\002" +
285
"\000\012\004\uffdd\006\uffdd\037\uffdd\040\uffdd\001\002\000" +
286
"\014\004\126\007\036\010\034\011\037\012\035\001\002" +
287
"\000\040\005\016\013\025\014\011\015\021\016\020\017" +
288
"\005\020\010\021\030\022\015\023\014\024\012\025\017" +
289
"\026\004\041\023\043\013\001\002\000\014\006\130\007" +
290
"\036\010\034\011\037\012\035\001\002\000\074\002\uffe8" +
291
"\004\uffe8\005\uffe8\006\uffe8\007\uffe8\010\uffe8\011\uffe8\012" +
292
"\uffe8\013\uffe8\014\uffe8\015\uffe8\016\uffe8\017\uffe8\020\uffe8" +
293
"\021\uffe8\022\uffe8\023\uffe8\024\uffe8\025\uffe8\026\uffe8\031" +
294
"\uffe8\032\uffe8\033\uffe8\034\uffe8\035\uffe8\037\uffe8\040\uffe8" +
295
"\041\uffe8\043\uffe8\001\002\000\026\006\063\007\036\010" +
296
"\034\011\037\012\035\031\140\032\136\033\137\034\134" +
297
"\035\135\001\002\000\010\006\133\037\121\040\122\001" +
298
"\002\000\012\004\uffdf\006\uffdf\037\uffdf\040\uffdf\001\002" +
299
"\000\040\005\016\013\025\014\011\015\021\016\020\017" +
300
"\005\020\010\021\030\022\015\023\014\024\012\025\017" +
301
"\026\004\041\023\043\013\001\002\000\040\005\016\013" +
302
"\025\014\011\015\021\016\020\017\005\020\010\021\030" +
303
"\022\015\023\014\024\012\025\017\026\004\041\023\043" +
304
"\013\001\002\000\040\005\016\013\025\014\011\015\021" +
305
"\016\020\017\005\020\010\021\030\022\015\023\014\024" +
306
"\012\025\017\026\004\041\023\043\013\001\002\000\040" +
307
"\005\016\013\025\014\011\015\021\016\020\017\005\020" +
308
"\010\021\030\022\015\023\014\024\012\025\017\026\004" +
309
"\041\023\043\013\001\002\000\040\005\016\013\025\014" +
310
"\011\015\021\016\020\017\005\020\010\021\030\022\015" +
311
"\023\014\024\012\025\017\026\004\041\023\043\013\001" +
312
"\002\000\022\004\uffe4\006\uffe4\007\036\010\034\011\037" +
313
"\012\035\037\uffe4\040\uffe4\001\002\000\022\004\uffe2\006" +
314
"\uffe2\007\036\010\034\011\037\012\035\037\uffe2\040\uffe2" +
315
"\001\002\000\022\004\uffe3\006\uffe3\007\036\010\034\011" +
316
"\037\012\035\037\uffe3\040\uffe3\001\002\000\022\004\uffe0" +
317
"\006\uffe0\007\036\010\034\011\037\012\035\037\uffe0\040" +
318
"\uffe0\001\002\000\022\004\uffe1\006\uffe1\007\036\010\034" +
319
"\011\037\012\035\037\uffe1\040\uffe1\001\002\000\012\004" +
320
"\uffde\006\uffde\037\uffde\040\uffde\001\002" });
322
/** Access to parse-action table. */
323
public short[][] action_table() {return _action_table;}
325
/** <code>reduce_goto</code> table. */
326
protected static final short[][] _reduce_table =
327
unpackFromStrings(new String[] {
328
"\000\144\000\016\002\025\003\021\004\005\005\026\006" +
329
"\006\007\023\001\001\000\002\001\001\000\002\001\001" +
330
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
331
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
332
"\001\001\000\002\001\001\000\012\004\061\005\026\006" +
333
"\006\007\023\001\001\000\002\001\001\000\002\001\001" +
334
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
335
"\002\001\001\000\002\001\001\000\014\003\043\004\005" +
336
"\005\026\006\006\007\023\001\001\000\002\001\001\000" +
337
"\002\001\001\000\012\004\031\005\026\006\006\007\023" +
338
"\001\001\000\002\001\001\000\002\001\001\000\012\004" +
339
"\042\005\026\006\006\007\023\001\001\000\012\004\041" +
340
"\005\026\006\006\007\023\001\001\000\012\004\040\005" +
341
"\026\006\006\007\023\001\001\000\012\004\037\005\026" +
342
"\006\006\007\023\001\001\000\002\001\001\000\002\001" +
343
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
344
"\000\002\001\001\000\012\004\046\005\026\006\006\007" +
345
"\023\001\001\000\002\001\001\000\002\001\001\000\012" +
346
"\004\051\005\026\006\006\007\023\001\001\000\002\001" +
347
"\001\000\002\001\001\000\012\004\054\005\026\006\006" +
348
"\007\023\001\001\000\002\001\001\000\002\001\001\000" +
349
"\012\004\057\005\026\006\006\007\023\001\001\000\002" +
350
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
351
"\001\000\012\004\064\005\026\006\006\007\023\001\001" +
352
"\000\002\001\001\000\002\001\001\000\012\004\067\005" +
353
"\026\006\006\007\023\001\001\000\002\001\001\000\002" +
354
"\001\001\000\012\004\072\005\026\006\006\007\023\001" +
355
"\001\000\002\001\001\000\012\004\074\005\026\006\006" +
356
"\007\023\001\001\000\002\001\001\000\002\001\001\000" +
357
"\012\004\077\005\026\006\006\007\023\001\001\000\002" +
358
"\001\001\000\002\001\001\000\012\004\102\005\026\006" +
359
"\006\007\023\001\001\000\002\001\001\000\002\001\001" +
360
"\000\012\004\105\005\026\006\006\007\023\001\001\000" +
361
"\002\001\001\000\002\001\001\000\014\004\110\005\026" +
362
"\006\006\007\023\010\115\001\001\000\002\001\001\000" +
363
"\014\004\110\005\026\006\006\007\023\010\145\001\001" +
364
"\000\002\001\001\000\014\004\130\005\026\006\006\007" +
365
"\023\010\131\001\001\000\002\001\001\000\002\001\001" +
366
"\000\002\001\001\000\012\004\124\005\026\006\006\007" +
367
"\023\001\001\000\014\004\110\005\026\006\006\007\023" +
368
"\010\123\001\001\000\014\004\110\005\026\006\006\007" +
369
"\023\010\122\001\001\000\002\001\001\000\002\001\001" +
370
"\000\002\001\001\000\012\004\126\005\026\006\006\007" +
371
"\023\001\001\000\002\001\001\000\002\001\001\000\002" +
372
"\001\001\000\002\001\001\000\002\001\001\000\012\004" +
373
"\144\005\026\006\006\007\023\001\001\000\012\004\143" +
374
"\005\026\006\006\007\023\001\001\000\012\004\142\005" +
375
"\026\006\006\007\023\001\001\000\012\004\141\005\026" +
376
"\006\006\007\023\001\001\000\012\004\140\005\026\006" +
377
"\006\007\023\001\001\000\002\001\001\000\002\001\001" +
378
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
381
/** Access to <code>reduce_goto</code> table. */
382
public short[][] reduce_table() {return _reduce_table;}
384
/** Instance of action encapsulation class. */
385
protected CUP$Parser$actions action_obj;
387
/** Action encapsulation object initializer. */
388
protected void init_actions()
390
action_obj = new CUP$Parser$actions(this);
393
/** Invoke a user supplied parse action. */
394
public weka.core.parser.java_cup.runtime.Symbol do_action(
396
weka.core.parser.java_cup.runtime.lr_parser parser,
397
java.util.Stack stack,
399
throws java.lang.Exception
401
/* call code in generated class */
402
return action_obj.CUP$Parser$do_action(act_num, parser, stack, top);
405
/** Indicates start state. */
406
public int start_state() {return 0;}
407
/** Indicates start production. */
408
public int start_production() {return 1;}
410
/** <code>EOF</code> Symbol index. */
411
public int EOF_sym() {return 0;}
413
/** <code>error</code> Symbol index. */
414
public int error_sym() {return 1;}
418
/** variable - value relation. */
419
protected HashMap m_Symbols = new HashMap();
421
/** for storing the result of the expresion. */
422
protected Double m_Result = null;
425
* Sets the variable - value relation to use.
427
* @param value the variable-value relation
429
public void setSymbols(HashMap value) {
434
* Returns the current variable - value relation in use.
436
* @return the variable-value relation
438
public HashMap getSymbols() {
443
* Sets the result of the evaluation.
445
* @param value the result
447
public void setResult(Double value) {
452
* Returns the result of the evaluation.
456
public Double getResult() {
461
* Runs the parser from commandline. Either reads lines from System.in
462
* or from a provided file (line by line). With
463
* <code>-symbols <semi-colon separated list of variable/value pairs></code>
464
* as first parameter one can provide predefined variable values. E.g.:
465
* <code>-symbols "Y=10;X=3" "X+Y"</code>
467
* @param args the commandline arguments
468
* @throws Exception if something goes wrong
470
public static void main(String args[]) throws Exception {
471
// read symbols, if present
472
HashMap symbols = new HashMap();
473
if (args.length > 0) {
474
if (args[0].equals("-symbols")) {
476
String[] pairs = args[1].replaceAll(" ", "").split(";");
477
for (int i = 0; i < pairs.length; i++) {
478
String[] parts = pairs[i].split("=");
479
symbols.put(parts[0], new Double(parts[1]));
482
System.out.println("\nSymbols provided:");
483
Iterator iter = symbols.keySet().iterator();
484
while (iter.hasNext()) {
485
String key = (String) iter.next();
486
System.out.println(key + "=" + symbols.get(key));
488
// remove symbols from commandline
489
String[] argsNew = new String[args.length - 2];
490
System.arraycopy(args, 2, argsNew, 0, argsNew.length);
495
// setup input stream
497
if (args.length == 1)
499
BufferedReader input = null;
501
System.out.println("\nPlease type in expressions (and press <Enter>), exit with <Ctrl+D>:");
502
input = new BufferedReader(new InputStreamReader(System.in));
505
System.out.println("\nReading expressions from file '" + args[index] + "':");
506
input = new BufferedReader(new FileReader(args[index]));
510
SymbolFactory sf = new DefaultSymbolFactory();
512
while ((line = input.readLine()) != null) {
513
ByteArrayInputStream parserInput = new ByteArrayInputStream(line.getBytes());
514
Parser parser = new Parser(new Scanner(parserInput,sf), sf);
515
parser.setSymbols(symbols);
517
System.out.println(line + " = " + parser.getResult());
523
/** Cup generated class to encapsulate user supplied action code.*/
524
class CUP$Parser$actions {
525
private final Parser parser;
528
CUP$Parser$actions(Parser parser) {
529
this.parser = parser;
532
/** Method with the actual generated action code. */
533
public final weka.core.parser.java_cup.runtime.Symbol CUP$Parser$do_action(
534
int CUP$Parser$act_num,
535
weka.core.parser.java_cup.runtime.lr_parser CUP$Parser$parser,
536
java.util.Stack CUP$Parser$stack,
538
throws java.lang.Exception
540
/* Symbol object for return from actions */
541
weka.core.parser.java_cup.runtime.Symbol CUP$Parser$result;
543
/* select the action based on the action number */
544
switch (CUP$Parser$act_num)
546
/*. . . . . . . . . . . . . . . . . . . .*/
547
case 37: // boolexpr ::= boolexpr OR boolexpr
549
Boolean RESULT =null;
550
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
551
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
552
Boolean l = (Boolean)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
553
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
554
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
555
Boolean r = (Boolean)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
557
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
559
return CUP$Parser$result;
561
/*. . . . . . . . . . . . . . . . . . . .*/
562
case 36: // boolexpr ::= boolexpr AND boolexpr
564
Boolean RESULT =null;
565
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
566
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
567
Boolean l = (Boolean)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
568
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
569
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
570
Boolean r = (Boolean)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
572
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
574
return CUP$Parser$result;
576
/*. . . . . . . . . . . . . . . . . . . .*/
577
case 35: // boolexpr ::= NOT boolexpr
579
Boolean RESULT =null;
580
int bleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
581
int bright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
582
Boolean b = (Boolean)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
584
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
586
return CUP$Parser$result;
588
/*. . . . . . . . . . . . . . . . . . . .*/
589
case 34: // boolexpr ::= LPAREN boolexpr RPAREN
591
Boolean RESULT =null;
592
int bleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
593
int bright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
594
Boolean b = (Boolean)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
596
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
598
return CUP$Parser$result;
600
/*. . . . . . . . . . . . . . . . . . . .*/
601
case 33: // boolexpr ::= expr EQ expr
603
Boolean RESULT =null;
604
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
605
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
606
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
607
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
608
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
609
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
610
RESULT = new Boolean(l.doubleValue() == r.doubleValue());
611
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
613
return CUP$Parser$result;
615
/*. . . . . . . . . . . . . . . . . . . .*/
616
case 32: // boolexpr ::= expr GE expr
618
Boolean RESULT =null;
619
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
620
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
621
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
622
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
623
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
624
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
625
RESULT = new Boolean(l.doubleValue() >= r.doubleValue());
626
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
628
return CUP$Parser$result;
630
/*. . . . . . . . . . . . . . . . . . . .*/
631
case 31: // boolexpr ::= expr GT expr
633
Boolean RESULT =null;
634
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
635
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
636
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
637
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
638
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
639
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
640
RESULT = new Boolean(l.doubleValue() > r.doubleValue());
641
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
643
return CUP$Parser$result;
645
/*. . . . . . . . . . . . . . . . . . . .*/
646
case 30: // boolexpr ::= expr LE expr
648
Boolean RESULT =null;
649
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
650
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
651
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
652
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
653
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
654
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
655
RESULT = new Boolean(l.doubleValue() <= r.doubleValue());
656
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
658
return CUP$Parser$result;
660
/*. . . . . . . . . . . . . . . . . . . .*/
661
case 29: // boolexpr ::= expr LT expr
663
Boolean RESULT =null;
664
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
665
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
666
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
667
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
668
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
669
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
670
RESULT = new Boolean(l.doubleValue() < r.doubleValue());
671
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
673
return CUP$Parser$result;
675
/*. . . . . . . . . . . . . . . . . . . .*/
676
case 28: // boolexpr ::= FALSE
678
Boolean RESULT =null;
679
RESULT = new Boolean(false);
680
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
682
return CUP$Parser$result;
684
/*. . . . . . . . . . . . . . . . . . . .*/
685
case 27: // boolexpr ::= TRUE
687
Boolean RESULT =null;
688
RESULT = new Boolean(true);
689
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
691
return CUP$Parser$result;
693
/*. . . . . . . . . . . . . . . . . . . .*/
694
case 26: // boolexpr ::= BOOLEAN
696
Boolean RESULT =null;
697
int bleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
698
int bright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
699
Boolean b = (Boolean)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
701
CUP$Parser$result = parser.getSymbolFactory().newSymbol("boolexpr",6, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
703
return CUP$Parser$result;
705
/*. . . . . . . . . . . . . . . . . . . .*/
706
case 25: // funcexpr ::= IFELSE LPAREN boolexpr COMMA expr COMMA expr RPAREN
709
int bleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
710
int bright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
711
Boolean b = (Boolean)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
712
int e_trueleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
713
int e_trueright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
714
Double e_true = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
715
int e_falseleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
716
int e_falseright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
717
Double e_false = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
723
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
725
return CUP$Parser$result;
727
/*. . . . . . . . . . . . . . . . . . . .*/
728
case 24: // funcexpr ::= CEIL LPAREN expr RPAREN
731
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
732
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
733
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
734
RESULT = new Double(Math.ceil(e));
735
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
737
return CUP$Parser$result;
739
/*. . . . . . . . . . . . . . . . . . . .*/
740
case 23: // funcexpr ::= POW LPAREN expr COMMA expr RPAREN
743
int baseleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
744
int baseright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
745
Double base = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
746
int exponentleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
747
int exponentright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
748
Double exponent = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
749
RESULT = new Double(Math.pow(base, exponent));
750
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
752
return CUP$Parser$result;
754
/*. . . . . . . . . . . . . . . . . . . .*/
755
case 22: // funcexpr ::= FLOOR LPAREN expr RPAREN
758
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
759
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
760
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
761
RESULT = new Double(Math.floor(e));
762
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
764
return CUP$Parser$result;
766
/*. . . . . . . . . . . . . . . . . . . .*/
767
case 21: // funcexpr ::= RINT LPAREN expr RPAREN
770
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
771
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
772
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
773
RESULT = new Double(Math.rint(e));
774
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
776
return CUP$Parser$result;
778
/*. . . . . . . . . . . . . . . . . . . .*/
779
case 20: // funcexpr ::= TAN LPAREN expr RPAREN
782
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
783
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
784
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
785
RESULT = new Double(Math.tan(e));
786
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
788
return CUP$Parser$result;
790
/*. . . . . . . . . . . . . . . . . . . .*/
791
case 19: // funcexpr ::= COS LPAREN expr RPAREN
794
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
795
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
796
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
797
RESULT = new Double(Math.cos(e));
798
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
800
return CUP$Parser$result;
802
/*. . . . . . . . . . . . . . . . . . . .*/
803
case 18: // funcexpr ::= SIN LPAREN expr RPAREN
806
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
807
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
808
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
809
RESULT = new Double(Math.sin(e));
810
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
812
return CUP$Parser$result;
814
/*. . . . . . . . . . . . . . . . . . . .*/
815
case 17: // funcexpr ::= EXP LPAREN expr RPAREN
818
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
819
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
820
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
821
RESULT = new Double(Math.exp(e));
822
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
824
return CUP$Parser$result;
826
/*. . . . . . . . . . . . . . . . . . . .*/
827
case 16: // funcexpr ::= LOG LPAREN expr RPAREN
830
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
831
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
832
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
833
RESULT = new Double(Math.log(e));
834
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
836
return CUP$Parser$result;
838
/*. . . . . . . . . . . . . . . . . . . .*/
839
case 15: // funcexpr ::= SQRT LPAREN expr RPAREN
842
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
843
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
844
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
845
RESULT = new Double(Math.sqrt(e));
846
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
848
return CUP$Parser$result;
850
/*. . . . . . . . . . . . . . . . . . . .*/
851
case 14: // funcexpr ::= ABS LPAREN expr RPAREN
854
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
855
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
856
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
857
RESULT = new Double(Math.abs(e));
858
CUP$Parser$result = parser.getSymbolFactory().newSymbol("funcexpr",5, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
860
return CUP$Parser$result;
862
/*. . . . . . . . . . . . . . . . . . . .*/
863
case 13: // varexpr ::= VARIABLE
866
int vleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
867
int vright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
868
String v = (String)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
869
if (parser.getSymbols().containsKey(v))
870
RESULT = (Double) parser.getSymbols().get(v);
872
throw new IllegalStateException("Unknown symbol '" + v + "'!");
874
CUP$Parser$result = parser.getSymbolFactory().newSymbol("varexpr",4, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
876
return CUP$Parser$result;
878
/*. . . . . . . . . . . . . . . . . . . .*/
879
case 12: // opexpr ::= expr DIVISION expr
882
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
883
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
884
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
885
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
886
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
887
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
888
RESULT = new Double(l.doubleValue() / r.doubleValue());
889
CUP$Parser$result = parser.getSymbolFactory().newSymbol("opexpr",3, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
891
return CUP$Parser$result;
893
/*. . . . . . . . . . . . . . . . . . . .*/
894
case 11: // opexpr ::= expr TIMES expr
897
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
898
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
899
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
900
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
901
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
902
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
903
RESULT = new Double(l.doubleValue() * r.doubleValue());
904
CUP$Parser$result = parser.getSymbolFactory().newSymbol("opexpr",3, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
906
return CUP$Parser$result;
908
/*. . . . . . . . . . . . . . . . . . . .*/
909
case 10: // opexpr ::= expr MINUS expr
912
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
913
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
914
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
915
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
916
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
917
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
918
RESULT = new Double(l.doubleValue() - r.doubleValue());
919
CUP$Parser$result = parser.getSymbolFactory().newSymbol("opexpr",3, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
921
return CUP$Parser$result;
923
/*. . . . . . . . . . . . . . . . . . . .*/
924
case 9: // opexpr ::= expr PLUS expr
927
int lleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
928
int lright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
929
Double l = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
930
int rleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
931
int rright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
932
Double r = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
933
RESULT = new Double(l.doubleValue() + r.doubleValue());
934
CUP$Parser$result = parser.getSymbolFactory().newSymbol("opexpr",3, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
936
return CUP$Parser$result;
938
/*. . . . . . . . . . . . . . . . . . . .*/
939
case 8: // expr ::= funcexpr
942
int fleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
943
int fright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
944
Double f = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
946
CUP$Parser$result = parser.getSymbolFactory().newSymbol("expr",2, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
948
return CUP$Parser$result;
950
/*. . . . . . . . . . . . . . . . . . . .*/
951
case 7: // expr ::= varexpr
954
int vleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
955
int vright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
956
Double v = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
958
CUP$Parser$result = parser.getSymbolFactory().newSymbol("expr",2, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
960
return CUP$Parser$result;
962
/*. . . . . . . . . . . . . . . . . . . .*/
963
case 6: // expr ::= opexpr
966
int oleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
967
int oright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
968
Double o = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
970
CUP$Parser$result = parser.getSymbolFactory().newSymbol("expr",2, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
972
return CUP$Parser$result;
974
/*. . . . . . . . . . . . . . . . . . . .*/
975
case 5: // expr ::= LPAREN expr RPAREN
978
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
979
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
980
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
982
CUP$Parser$result = parser.getSymbolFactory().newSymbol("expr",2, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
984
return CUP$Parser$result;
986
/*. . . . . . . . . . . . . . . . . . . .*/
987
case 4: // expr ::= NUMBER
990
int nleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
991
int nright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
992
Double n = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
994
CUP$Parser$result = parser.getSymbolFactory().newSymbol("expr",2, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
996
return CUP$Parser$result;
998
/*. . . . . . . . . . . . . . . . . . . .*/
999
case 3: // expr_part ::= expr
1001
Object RESULT =null;
1002
int eleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
1003
int eright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
1004
Double e = (Double)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
1005
parser.setResult(e);
1006
CUP$Parser$result = parser.getSymbolFactory().newSymbol("expr_part",1, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
1008
return CUP$Parser$result;
1010
/*. . . . . . . . . . . . . . . . . . . .*/
1011
case 2: // expr_list ::= expr_part
1013
Object RESULT =null;
1015
CUP$Parser$result = parser.getSymbolFactory().newSymbol("expr_list",0, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
1017
return CUP$Parser$result;
1019
/*. . . . . . . . . . . . . . . . . . . .*/
1020
case 1: // $START ::= expr_list EOF
1022
Object RESULT =null;
1023
int start_valleft = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1024
int start_valright = ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1025
Object start_val = (Object)((weka.core.parser.java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1027
CUP$Parser$result = parser.getSymbolFactory().newSymbol("$START",0, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
1030
CUP$Parser$parser.done_parsing();
1031
return CUP$Parser$result;
1033
/*. . . . . . . . . . . . . . . . . . . .*/
1034
case 0: // expr_list ::= expr_list expr_part
1036
Object RESULT =null;
1038
CUP$Parser$result = parser.getSymbolFactory().newSymbol("expr_list",0, ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((weka.core.parser.java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
1040
return CUP$Parser$result;
1044
throw new Exception(
1045
"Invalid action number found in internal parse table");