* gem_prelude.rb (Gem::QuickLoader.load_full_rubygems_library):

get rid of creating same regexps many times.

* lib/rubygems/custom_require.rb (Kernel#require): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2010-04-23 05:37:26 +00:00
parent 9e67f6ecec
commit 80db78f51c
3 changed files with 11 additions and 8 deletions

View file

@ -142,9 +142,7 @@ if defined?(Gem) then
@loaded_full_rubygems_library = true
class << Gem
Gem::GEM_PRELUDE_METHODS.each do |method_name|
undef_method method_name
end
undef_method *Gem::GEM_PRELUDE_METHODS
undef_method :const_missing
undef_method :method_missing
end
@ -154,10 +152,8 @@ if defined?(Gem) then
end
$".delete path_to_full_rubygems_library
$".each do |path|
if /#{Regexp.escape File::SEPARATOR}rubygems\.rb\z/ =~ path
raise LoadError, "another rubygems is already loaded from #{path}"
end
if $".any? {|path| path.end_with?('/rubygems.rb')}
raise LoadError, "another rubygems is already loaded from #{path}"
end
require 'rubygems'
end