aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2010-01-18 23:32:01 +0100
committerJosé Valim <jose.valim@gmail.com>2010-01-19 01:36:06 +0100
commite1029be1ebe0e44cdad75dc9b1bdfd3957c245bc (patch)
treea3d7c4e9750618bcdbe616986ba402736306074b /railties/lib
parente6a68a5cc3b47865abbba59bf693215c50136002 (diff)
downloadrails-e1029be1ebe0e44cdad75dc9b1bdfd3957c245bc.tar.gz
rails-e1029be1ebe0e44cdad75dc9b1bdfd3957c245bc.tar.bz2
rails-e1029be1ebe0e44cdad75dc9b1bdfd3957c245bc.zip
Since Rails will require Ruby >= 1.8.7, we can rely on instance_exec.
Diffstat (limited to 'railties/lib')
-rw-r--r--railties/lib/generators/rails/plugin/plugin_generator.rb12
-rw-r--r--railties/lib/rails/vendor/thor-0.12.3/lib/thor/group.rb9
2 files changed, 12 insertions, 9 deletions
diff --git a/railties/lib/generators/rails/plugin/plugin_generator.rb b/railties/lib/generators/rails/plugin/plugin_generator.rb
index ee785caf7d..b68b8691db 100644
--- a/railties/lib/generators/rails/plugin/plugin_generator.rb
+++ b/railties/lib/generators/rails/plugin/plugin_generator.rb
@@ -20,15 +20,15 @@ module Rails
directory 'tasks', plugin_dir('tasks')
end
- hook_for :generator do |instance, generator|
- instance.inside instance.send(:plugin_dir), :verbose => true do
- instance.invoke generator, [ instance.name ], :namespace => false
+ hook_for :generator do |generator|
+ inside plugin_dir, :verbose => true do
+ invoke generator, [ name ], :namespace => false
end
end
- hook_for :test_framework do |instance, test_framework|
- instance.inside instance.send(:plugin_dir), :verbose => true do
- instance.invoke test_framework
+ hook_for :test_framework do |test_framework|
+ inside plugin_dir, :verbose => true do
+ invoke test_framework
end
end
diff --git a/railties/lib/rails/vendor/thor-0.12.3/lib/thor/group.rb b/railties/lib/rails/vendor/thor-0.12.3/lib/thor/group.rb
index a585b37b73..eda3b52c4f 100644
--- a/railties/lib/rails/vendor/thor-0.12.3/lib/thor/group.rb
+++ b/railties/lib/rails/vendor/thor-0.12.3/lib/thor/group.rb
@@ -252,10 +252,13 @@ class Thor::Group
shell.padding += 1
result = if block_given?
- if block.arity == 2
- block.call(self, klass)
- else
+ case block.arity
+ when 3
block.call(self, klass, task)
+ when 2
+ block.call(self, klass)
+ when 1
+ instance_exec(klass, &block)
end
else
invoke klass, task, *args