diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2024-04-28 09:33:00 +0900 |
---|---|---|
committer | Yuichiro Kaneko <spiketeika@gmail.com> | 2024-04-29 08:38:23 +0900 |
commit | a6308ca9589638c2efb791ac6858fdda8cb06c44 (patch) | |
tree | 7b3bd5359cc87417d55dbf4d4f954d42d92b40f7 /ext/ripper/tools/generate.rb | |
parent | f9cf923af2c54345b1d6756e3268b509655754a3 (diff) |
ripper: Move DSL line pattern
Diffstat (limited to 'ext/ripper/tools/generate.rb')
-rw-r--r-- | ext/ripper/tools/generate.rb | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/ext/ripper/tools/generate.rb b/ext/ripper/tools/generate.rb index 27aa53bce0..92ced37f04 100644 --- a/ext/ripper/tools/generate.rb +++ b/ext/ripper/tools/generate.rb @@ -167,15 +167,13 @@ require_relative "dsl" def read_ids1_with_locations(path) h = {} File.open(path) {|f| - f.each.with_index(1) do |line, i| + f.each do |line| next if /\A\#\s*define\s+dispatch/ =~ line next if /ripper_dispatch/ =~ line line.scan(/\bdispatch(\d)\((\w+)/) do |arity, event| (h[event] ||= []).push [f.lineno, arity.to_i] end - if line =~ %r</\*% *ripper(?:\[(.*?)\])?: *(.*?) *%\*/> - gen = DSL.new($2, ($1 || "").split(","), i) - gen.generate + if gen = DSL.line?(line, f.lineno) gen.events.each do |event, arity| (h[event] ||= []).push [f.lineno, arity.to_i] end |