bibtex-ruby 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of bibtex-ruby might be problematic. Click here for more details.

@@ -0,0 +1,467 @@
1
+ #
2
+ # DO NOT MODIFY!!!!
3
+ # This file is automatically generated by Racc 1.4.6
4
+ # from Racc grammer file "".
5
+ #
6
+
7
+ require 'racc/parser.rb'
8
+
9
+ require 'bibtex/lexer'
10
+
11
+ module BibTeX
12
+ class Parser < Racc::Parser
13
+
14
+ module_eval(<<'...end bibtex.y/module_eval...', 'bibtex.y', 89)
15
+
16
+ attr_reader :lexer
17
+
18
+ def initialize(options={})
19
+ @options = options
20
+ @options[:include] ||= [:errors]
21
+ @lexer = Lexer.new(options)
22
+ end
23
+
24
+ def parse(input)
25
+ @yydebug = self.debug?
26
+
27
+ self.lexer.src = input
28
+ self.lexer.analyse
29
+
30
+ do_parse
31
+ end
32
+
33
+ def next_token
34
+ token = self.lexer.next_token
35
+ if token[0] == :ERROR
36
+ self.include_errors? ? token : next_token
37
+ else
38
+ [token[0],token[1][0]]
39
+ end
40
+ end
41
+
42
+ def debug?
43
+ @options[:debug] == true || ENV['DEBUG'] == true
44
+ end
45
+
46
+ def include_errors?
47
+ @options[:include].include?(:errors)
48
+ end
49
+
50
+ def on_error(tid, val, vstack)
51
+ #raise(ParseError, "Failed to parse BibTeX on value %s (%s) %s" % [val.inspect, token_to_str(tid) || '?', vstack.inspect])
52
+ Log.error("Failed to parse BibTeX on value %s (%s) %s" % [val.inspect, token_to_str(tid) || '?', vstack.inspect])
53
+ end
54
+
55
+ # -*- racc -*-
56
+ ...end bibtex.y/module_eval...
57
+ ##### State transition tables begin ###
58
+
59
+ racc_action_table = [
60
+ 14, 52, 37, 32, 51, 38, 18, 32, 15, 33,
61
+ 4, 16, 36, 33, 6, 4, 29, 5, 32, 6,
62
+ 32, 35, 5, 27, 33, 26, 33, 26, 24, 42,
63
+ 47, 40, 41, 43, 44, 22, 45, 46, 21, 20,
64
+ 53, 19, 7, 44, 29, 44, 57 ]
65
+
66
+ racc_action_check = [
67
+ 4, 38, 23, 38, 38, 26, 4, 46, 4, 38,
68
+ 2, 4, 23, 46, 2, 0, 20, 2, 44, 0,
69
+ 21, 22, 0, 18, 44, 17, 21, 37, 17, 28,
70
+ 37, 27, 27, 30, 30, 16, 34, 35, 15, 14,
71
+ 39, 7, 1, 49, 52, 55, 56 ]
72
+
73
+ racc_action_pointer = [
74
+ 13, 42, 8, nil, -4, nil, nil, 41, nil, nil,
75
+ nil, nil, nil, nil, 31, 30, 27, 15, 15, nil,
76
+ 11, 10, 11, -1, nil, nil, -2, 21, 16, nil,
77
+ 20, nil, nil, nil, 23, 30, nil, 17, -7, 37,
78
+ nil, nil, nil, nil, 8, nil, -3, nil, nil, 29,
79
+ nil, nil, 39, nil, nil, 31, 33, nil ]
80
+
81
+ racc_action_default = [
82
+ -1, -34, -2, -3, -34, -6, -7, -34, -4, -5,
83
+ -8, -9, -10, -11, -34, -34, -34, -34, -34, 58,
84
+ -13, -34, -34, -34, -24, -28, -34, -34, -34, -14,
85
+ -34, -18, -20, -21, -34, -34, -22, -34, -34, -34,
86
+ -26, -27, -12, -15, -34, -16, -34, -23, -29, -31,
87
+ -30, -32, -13, -25, -19, -17, -34, -33 ]
88
+
89
+ racc_goto_table = [
90
+ 28, 30, 25, 3, 1, 8, 11, 12, 13, 10,
91
+ 9, 34, 54, 17, 23, 39, 2, 50, 49, nil,
92
+ nil, nil, 48, nil, nil, nil, 55, nil, nil, nil,
93
+ nil, nil, 56 ]
94
+
95
+ racc_goto_check = [
96
+ 9, 10, 16, 3, 1, 3, 6, 7, 8, 5,
97
+ 4, 11, 12, 13, 14, 15, 2, 17, 10, nil,
98
+ nil, nil, 16, nil, nil, nil, 10, nil, nil, nil,
99
+ nil, nil, 9 ]
100
+
101
+ racc_goto_pointer = [
102
+ nil, 4, 16, 3, 6, 5, 2, 3, 4, -20,
103
+ -20, -11, -32, 9, -3, -12, -15, -21 ]
104
+
105
+ racc_goto_default = [
106
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
107
+ nil, nil, 31, nil, nil, nil, nil, nil ]
108
+
109
+ racc_reduce_table = [
110
+ 0, 0, :racc_error,
111
+ 0, 18, :_reduce_1,
112
+ 1, 18, :_reduce_2,
113
+ 1, 19, :_reduce_3,
114
+ 2, 19, :_reduce_4,
115
+ 2, 20, :_reduce_5,
116
+ 1, 20, :_reduce_6,
117
+ 1, 20, :_reduce_7,
118
+ 1, 21, :_reduce_8,
119
+ 1, 21, :_reduce_9,
120
+ 1, 21, :_reduce_10,
121
+ 1, 21, :_reduce_11,
122
+ 4, 22, :_reduce_12,
123
+ 0, 26, :_reduce_13,
124
+ 1, 26, :_reduce_14,
125
+ 4, 24, :_reduce_15,
126
+ 4, 23, :_reduce_16,
127
+ 3, 28, :_reduce_17,
128
+ 1, 27, :_reduce_18,
129
+ 3, 27, :_reduce_19,
130
+ 1, 29, :_reduce_20,
131
+ 1, 29, :_reduce_21,
132
+ 3, 25, :_reduce_22,
133
+ 4, 25, :_reduce_23,
134
+ 2, 25, :_reduce_24,
135
+ 4, 30, :_reduce_25,
136
+ 1, 32, :_reduce_26,
137
+ 1, 32, :_reduce_27,
138
+ 1, 31, :_reduce_28,
139
+ 3, 31, :_reduce_29,
140
+ 3, 33, :_reduce_30,
141
+ 1, 34, :_reduce_31,
142
+ 1, 34, :_reduce_32,
143
+ 3, 34, :_reduce_33 ]
144
+
145
+ racc_reduce_n = 34
146
+
147
+ racc_shift_n = 58
148
+
149
+ racc_token_table = {
150
+ false => 0,
151
+ :error => 1,
152
+ :AT => 2,
153
+ :COMMA => 3,
154
+ :COMMENT => 4,
155
+ :CONTENT => 5,
156
+ :ERROR => 6,
157
+ :EQ => 7,
158
+ :LBRACE => 8,
159
+ :META_COMMENT => 9,
160
+ :NAME => 10,
161
+ :NUMBER => 11,
162
+ :PREAMBLE => 12,
163
+ :RBRACE => 13,
164
+ :SHARP => 14,
165
+ :STRING => 15,
166
+ :STRING_LITERAL => 16 }
167
+
168
+ racc_nt_base = 17
169
+
170
+ racc_use_result_var = true
171
+
172
+ Racc_arg = [
173
+ racc_action_table,
174
+ racc_action_check,
175
+ racc_action_default,
176
+ racc_action_pointer,
177
+ racc_goto_table,
178
+ racc_goto_check,
179
+ racc_goto_default,
180
+ racc_goto_pointer,
181
+ racc_nt_base,
182
+ racc_reduce_table,
183
+ racc_token_table,
184
+ racc_shift_n,
185
+ racc_reduce_n,
186
+ racc_use_result_var ]
187
+
188
+ Racc_token_to_s_table = [
189
+ "$end",
190
+ "error",
191
+ "AT",
192
+ "COMMA",
193
+ "COMMENT",
194
+ "CONTENT",
195
+ "ERROR",
196
+ "EQ",
197
+ "LBRACE",
198
+ "META_COMMENT",
199
+ "NAME",
200
+ "NUMBER",
201
+ "PREAMBLE",
202
+ "RBRACE",
203
+ "SHARP",
204
+ "STRING",
205
+ "STRING_LITERAL",
206
+ "$start",
207
+ "bibliography",
208
+ "objects",
209
+ "object",
210
+ "at_object",
211
+ "comment",
212
+ "string",
213
+ "preamble",
214
+ "entry",
215
+ "content",
216
+ "string_value",
217
+ "string_assignment",
218
+ "string_literal",
219
+ "entry_head",
220
+ "assignments",
221
+ "key",
222
+ "assignment",
223
+ "value" ]
224
+
225
+ Racc_debug_parser = true
226
+
227
+ ##### State transition tables end #####
228
+
229
+ # reduce 0 omitted
230
+
231
+ module_eval(<<'.,.,', 'bibtex.y', 32)
232
+ def _reduce_1(val, _values, result)
233
+ result = Bibliography.new
234
+ result
235
+ end
236
+ .,.,
237
+
238
+ module_eval(<<'.,.,', 'bibtex.y', 33)
239
+ def _reduce_2(val, _values, result)
240
+ result = val[0]
241
+ result
242
+ end
243
+ .,.,
244
+
245
+ module_eval(<<'.,.,', 'bibtex.y', 35)
246
+ def _reduce_3(val, _values, result)
247
+ result = Bibliography.new << val[0]
248
+ result
249
+ end
250
+ .,.,
251
+
252
+ module_eval(<<'.,.,', 'bibtex.y', 36)
253
+ def _reduce_4(val, _values, result)
254
+ result << val[1]
255
+ result
256
+ end
257
+ .,.,
258
+
259
+ module_eval(<<'.,.,', 'bibtex.y', 38)
260
+ def _reduce_5(val, _values, result)
261
+ result = val[1]
262
+ result
263
+ end
264
+ .,.,
265
+
266
+ module_eval(<<'.,.,', 'bibtex.y', 39)
267
+ def _reduce_6(val, _values, result)
268
+ result = BibTeX::MetaComment.new(val[0])
269
+ result
270
+ end
271
+ .,.,
272
+
273
+ module_eval(<<'.,.,', 'bibtex.y', 40)
274
+ def _reduce_7(val, _values, result)
275
+ result = BibTeX::Error.new(val[0])
276
+ result
277
+ end
278
+ .,.,
279
+
280
+ module_eval(<<'.,.,', 'bibtex.y', 42)
281
+ def _reduce_8(val, _values, result)
282
+ result = val[0]
283
+ result
284
+ end
285
+ .,.,
286
+
287
+ module_eval(<<'.,.,', 'bibtex.y', 43)
288
+ def _reduce_9(val, _values, result)
289
+ result = val[0]
290
+ result
291
+ end
292
+ .,.,
293
+
294
+ module_eval(<<'.,.,', 'bibtex.y', 44)
295
+ def _reduce_10(val, _values, result)
296
+ result = val[0]
297
+ result
298
+ end
299
+ .,.,
300
+
301
+ module_eval(<<'.,.,', 'bibtex.y', 45)
302
+ def _reduce_11(val, _values, result)
303
+ result = val[0]
304
+ result
305
+ end
306
+ .,.,
307
+
308
+ module_eval(<<'.,.,', 'bibtex.y', 47)
309
+ def _reduce_12(val, _values, result)
310
+ result = BibTeX::Comment.new(val[2])
311
+ result
312
+ end
313
+ .,.,
314
+
315
+ module_eval(<<'.,.,', 'bibtex.y', 49)
316
+ def _reduce_13(val, _values, result)
317
+ result = ''
318
+ result
319
+ end
320
+ .,.,
321
+
322
+ module_eval(<<'.,.,', 'bibtex.y', 50)
323
+ def _reduce_14(val, _values, result)
324
+ result = val[0]
325
+ result
326
+ end
327
+ .,.,
328
+
329
+ module_eval(<<'.,.,', 'bibtex.y', 52)
330
+ def _reduce_15(val, _values, result)
331
+ result = BibTeX::Preamble.new(val[2])
332
+ result
333
+ end
334
+ .,.,
335
+
336
+ module_eval(<<'.,.,', 'bibtex.y', 54)
337
+ def _reduce_16(val, _values, result)
338
+ result = BibTeX::String.new(val[2][0],val[2][1]);
339
+ result
340
+ end
341
+ .,.,
342
+
343
+ module_eval(<<'.,.,', 'bibtex.y', 56)
344
+ def _reduce_17(val, _values, result)
345
+ result = [val[0].downcase.to_sym, val[2]]
346
+ result
347
+ end
348
+ .,.,
349
+
350
+ module_eval(<<'.,.,', 'bibtex.y', 58)
351
+ def _reduce_18(val, _values, result)
352
+ result = [val[0]]
353
+ result
354
+ end
355
+ .,.,
356
+
357
+ module_eval(<<'.,.,', 'bibtex.y', 59)
358
+ def _reduce_19(val, _values, result)
359
+ result << val[2]
360
+ result
361
+ end
362
+ .,.,
363
+
364
+ module_eval(<<'.,.,', 'bibtex.y', 61)
365
+ def _reduce_20(val, _values, result)
366
+ result = val[0].downcase.to_sym
367
+ result
368
+ end
369
+ .,.,
370
+
371
+ module_eval(<<'.,.,', 'bibtex.y', 62)
372
+ def _reduce_21(val, _values, result)
373
+ result = val[0]
374
+ result
375
+ end
376
+ .,.,
377
+
378
+ module_eval(<<'.,.,', 'bibtex.y', 64)
379
+ def _reduce_22(val, _values, result)
380
+ result = val[0] << val[1]
381
+ result
382
+ end
383
+ .,.,
384
+
385
+ module_eval(<<'.,.,', 'bibtex.y', 65)
386
+ def _reduce_23(val, _values, result)
387
+ result = val[0] << val[1]
388
+ result
389
+ end
390
+ .,.,
391
+
392
+ module_eval(<<'.,.,', 'bibtex.y', 66)
393
+ def _reduce_24(val, _values, result)
394
+ result = val[0]
395
+ result
396
+ end
397
+ .,.,
398
+
399
+ module_eval(<<'.,.,', 'bibtex.y', 68)
400
+ def _reduce_25(val, _values, result)
401
+ result = BibTeX::Entry.new(val[0].downcase.to_sym,val[2])
402
+ result
403
+ end
404
+ .,.,
405
+
406
+ module_eval(<<'.,.,', 'bibtex.y', 70)
407
+ def _reduce_26(val, _values, result)
408
+ result = val[0]
409
+ result
410
+ end
411
+ .,.,
412
+
413
+ module_eval(<<'.,.,', 'bibtex.y', 71)
414
+ def _reduce_27(val, _values, result)
415
+ result = val[0]
416
+ result
417
+ end
418
+ .,.,
419
+
420
+ module_eval(<<'.,.,', 'bibtex.y', 73)
421
+ def _reduce_28(val, _values, result)
422
+ result = val[0]
423
+ result
424
+ end
425
+ .,.,
426
+
427
+ module_eval(<<'.,.,', 'bibtex.y', 74)
428
+ def _reduce_29(val, _values, result)
429
+ result.merge!(val[2])
430
+ result
431
+ end
432
+ .,.,
433
+
434
+ module_eval(<<'.,.,', 'bibtex.y', 76)
435
+ def _reduce_30(val, _values, result)
436
+ result = { val[0].downcase.to_sym => val[2] }
437
+ result
438
+ end
439
+ .,.,
440
+
441
+ module_eval(<<'.,.,', 'bibtex.y', 78)
442
+ def _reduce_31(val, _values, result)
443
+ result = val[0]
444
+ result
445
+ end
446
+ .,.,
447
+
448
+ module_eval(<<'.,.,', 'bibtex.y', 79)
449
+ def _reduce_32(val, _values, result)
450
+ result = val[0]
451
+ result
452
+ end
453
+ .,.,
454
+
455
+ module_eval(<<'.,.,', 'bibtex.y', 80)
456
+ def _reduce_33(val, _values, result)
457
+ result = val[1]
458
+ result
459
+ end
460
+ .,.,
461
+
462
+ def _reduce_none(val, _values, result)
463
+ val[0]
464
+ end
465
+
466
+ end # class Parser
467
+ end # module BibTeX