From 38b29f8a7aea38db04adce43bef9b036848d18dd Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 3 Oct 2009 12:25:32 +0000 Subject: * test/ripper/dummyparser.rb: suppress redefinition warnings. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ripper/dummyparser.rb | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/test/ripper/dummyparser.rb b/test/ripper/dummyparser.rb index 2c107b37c..cf0b5d2a3 100644 --- a/test/ripper/dummyparser.rb +++ b/test/ripper/dummyparser.rb @@ -47,13 +47,6 @@ class NodeList end class DummyParser < Ripper - Ripper::PARSER_EVENTS.each do |event| - event = event.to_s - define_method(:"on_#{event}") do |*args| - Node.new(event, *args) - end - end - def hook(name) class << self; self; end.class_eval do define_method(name) do |*a, &b| @@ -188,4 +181,10 @@ class DummyParser < Ripper def on_assoclist_from_args(a) Node.new('assocs', *a.list) end + + (Ripper::PARSER_EVENTS.map(&:to_s) - instance_methods(false).map {|n|n.to_s.sub(/^on_/, '')}).each do |event| + define_method(:"on_#{event}") do |*args| + Node.new(event, *args) + end + end end -- cgit