class Bundler::RubygemsIntegration::MoreFuture

Public Class Methods

new() click to toggle source
Calls superclass method
# File lib/bundler/rubygems_integration.rb, line 565
def initialize
  super
  backport_ext_builder_monitor
end

Public Instance Methods

backport_ext_builder_monitor() click to toggle source
# File lib/bundler/rubygems_integration.rb, line 570
def backport_ext_builder_monitor
  require 'rubygems/ext'

  Gem::Ext::Builder.class_eval do
    if !const_defined?(:CHDIR_MONITOR)
      const_set(:CHDIR_MONITOR, Monitor.new)
    end

    if const_defined?(:CHDIR_MUTEX)
      remove_const(:CHDIR_MUTEX)
      const_set(:CHDIR_MUTEX, const_get(:CHDIR_MONITOR))
    end
  end
end
ext_lock() click to toggle source
# File lib/bundler/rubygems_integration.rb, line 585
def ext_lock
  Gem::Ext::Builder::CHDIR_MONITOR
end
find_name(name) click to toggle source
# File lib/bundler/rubygems_integration.rb, line 589
def find_name(name)
  Gem::Specification.stubs.find_all do |spec|
    spec.name == name
  end.map(&:to_spec)
end