loaded = catch :loaded_stuff do
begin
require 'rake'
rescue LoadError
begin
require 'rubygems'
require_gem 'rake'
rescue Gem::LoadError
throw :loaded_stuff, false
end
end
end
puts loaded
loaded = catch :loaded_stuff do
begin
require 'foo'
rescue LoadError
begin
require 'rubygems'
require_gem 'foo'
rescue Gem::LoadError
throw :loaded_stuff, false
end
end
end
puts loaded