racc 1.6.2 → 1.7.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7f818fe943a0bd022e4bc6d58e4c014ecd53fabef972ae98822b155b8d3c24b0
4
- data.tar.gz: 649c807b04a435eff16318026ee39d4fa24d3422afc2ffe38fdc0737eb1c30eb
3
+ metadata.gz: fba393652c1d3985ab81995a21479b631033fb841e618a841d38599601a3617c
4
+ data.tar.gz: f2d149e9c9fc8ba4f477415f0110e14ed50bc81cf541f7b62590569e8625889a
5
5
  SHA512:
6
- metadata.gz: db8d75ac8360c95552ecffd24eaa96e1f2252771fd715a8fed8f2fcfca7d8bfb3e51211089d05464ff42eacac7a063944cfe64fce571ccb6e4eca84e6391a5de
7
- data.tar.gz: '04971d555f03bfd242a4f5d75d810c5917d528b647e60fa8197d472aa9b1d3cf44b318406730e3a87427f4adad6c37b1b8427174e3480efaf237f97dc5fbac6e'
6
+ metadata.gz: d51b4bf2b55ac89e120c5b1c7d7d930c90c8a354c2c067c1d907ae0c00d85d14b7f3964097311bd8eced2f6d803204fc7046367dc64dadff410fa02c9648492b
7
+ data.tar.gz: 9f12d87e35b1c3c2f0d8379ac570085b9ebd20716974bc512b5fb7c431a67998e4a09897b6a5cbcbe7d67436bee49f9d63399524df36a722a03293f68526881a
@@ -22,7 +22,7 @@
22
22
  Important Constants
23
23
  ----------------------------------------------------------------------- */
24
24
 
25
- #define RACC_VERSION "1.6.2"
25
+ #define RACC_VERSION "1.7.1"
26
26
 
27
27
  #define DEFAULT_TOKEN -1
28
28
  #define ERROR_TOKEN 1
data/lib/racc/grammar.rb CHANGED
@@ -993,10 +993,6 @@ module Racc
993
993
  @to_s = '$end'
994
994
  @serialized = 'false'
995
995
  @string = false
996
- when ErrorSymbolValue
997
- @to_s = 'error'
998
- @serialized = 'Object.new'
999
- @string = false
1000
996
  else
1001
997
  raise ArgumentError, "unknown symbol value: #{value.class}"
1002
998
  end
data/lib/racc/info.rb CHANGED
@@ -11,7 +11,7 @@
11
11
  #++
12
12
 
13
13
  module Racc
14
- VERSION = '1.6.2'
14
+ VERSION = '1.7.1'
15
15
  Version = VERSION
16
16
  Copyright = 'Copyright (c) 1999-2006 Minero Aoki'
17
17
  end
@@ -12,7 +12,28 @@ module Racc
12
12
  # without restriction.
13
13
  #++
14
14
 
15
- require 'racc/info'
15
+ unless $".find {|p| p.end_with?('/racc/info.rb')}
16
+ $".push "#{__dir__}/racc/info.rb"
17
+ #--
18
+ #
19
+ #
20
+ #
21
+ # Copyright (c) 1999-2006 Minero Aoki
22
+ #
23
+ # This program is free software.
24
+ # You can distribute/modify this program under the same terms of ruby.
25
+ # see the file "COPYING".
26
+ #
27
+ #++
28
+
29
+ module Racc
30
+ VERSION = '1.7.1'
31
+ Version = VERSION
32
+ Copyright = 'Copyright (c) 1999-2006 Minero Aoki'
33
+ end
34
+
35
+ end
36
+
16
37
 
17
38
  unless defined?(NotImplementedError)
18
39
  NotImplementedError = NotImplementError # :nodoc:
@@ -262,11 +283,11 @@ module Racc
262
283
  # def next_token
263
284
  # @q.shift
264
285
  # end
265
- class_eval %{
286
+ class_eval <<~RUBY, __FILE__, __LINE__ + 1
266
287
  def do_parse
267
288
  #{Racc_Main_Parsing_Routine}(_racc_setup(), false)
268
289
  end
269
- }
290
+ RUBY
270
291
 
271
292
  # The method to fetch next token.
272
293
  # If you use #do_parse method, you must implement #next_token.
@@ -324,11 +345,11 @@ module Racc
324
345
  #
325
346
  # RECEIVER#METHOD_ID is a method to get next token.
326
347
  # It must 'yield' the token, which format is [TOKEN-SYMBOL, VALUE].
327
- class_eval %{
348
+ class_eval <<~RUBY, __FILE__, __LINE__ + 1
328
349
  def yyparse(recv, mid)
329
350
  #{Racc_YY_Parse_Method}(recv, mid, _racc_setup(), false)
330
351
  end
331
- }
352
+ RUBY
332
353
 
333
354
  def _racc_yyparse_rb(recv, mid, arg, c_debug)
334
355
  action_table, action_check, action_default, action_pointer,
data/lib/racc/parser.rb CHANGED
@@ -260,11 +260,11 @@ module Racc
260
260
  # def next_token
261
261
  # @q.shift
262
262
  # end
263
- class_eval %{
263
+ class_eval <<~RUBY, __FILE__, __LINE__ + 1
264
264
  def do_parse
265
265
  #{Racc_Main_Parsing_Routine}(_racc_setup(), false)
266
266
  end
267
- }
267
+ RUBY
268
268
 
269
269
  # The method to fetch next token.
270
270
  # If you use #do_parse method, you must implement #next_token.
@@ -322,11 +322,11 @@ module Racc
322
322
  #
323
323
  # RECEIVER#METHOD_ID is a method to get next token.
324
324
  # It must 'yield' the token, which format is [TOKEN-SYMBOL, VALUE].
325
- class_eval %{
325
+ class_eval <<~RUBY, __FILE__, __LINE__ + 1
326
326
  def yyparse(recv, mid)
327
327
  #{Racc_YY_Parse_Method}(recv, mid, _racc_setup(), false)
328
328
  end
329
- }
329
+ RUBY
330
330
 
331
331
  def _racc_yyparse_rb(recv, mid, arg, c_debug)
332
332
  action_table, action_check, action_default, action_pointer,
@@ -135,8 +135,8 @@ module Racc
135
135
 
136
136
  def embed_library(src)
137
137
  line %[###### #{src.filename} begin]
138
- line %[unless $".index '#{src.filename}']
139
- line %[$".push '#{src.filename}']
138
+ line %[unless $".find {|p| p.end_with?('/#{src.filename}')}]
139
+ line %[$".push "\#{__dir__}/#{src.filename}"]
140
140
  put src, @params.convert_line?
141
141
  line %[end]
142
142
  line %[###### #{src.filename} end]
@@ -310,8 +310,10 @@ module Racc
310
310
  racc_reduce_n,
311
311
  racc_use_result_var ]
312
312
  End
313
+ line "Ractor.make_shareable(Racc_arg) if defined?(Ractor)"
313
314
  line
314
315
  string_list 'Racc_token_to_s_table', table.token_to_s_table
316
+ line "Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)"
315
317
  line
316
318
  line "Racc_debug_parser = #{table.debug_parser}"
317
319
  line
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: racc
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.2
4
+ version: 1.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Minero Aoki
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-12-23 00:00:00.000000000 Z
12
+ date: 2023-06-14 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: |
15
15
  Racc is a LALR(1) parser generator.
@@ -86,7 +86,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
86
  - !ruby/object:Gem::Version
87
87
  version: '0'
88
88
  requirements: []
89
- rubygems_version: 3.4.0.dev
89
+ rubygems_version: 3.5.0.dev
90
90
  signing_key:
91
91
  specification_version: 4
92
92
  summary: Racc is a LALR(1) parser generator