ruby-win32/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb
#
# We replace Ruby's require with our own, which is capable of
# loading gems on demand.
#
# When you call <tt>require 'x'</tt>, this is what happens:
# * If the file can be loaded from the existing Ruby loadpath, it
#   is.
# * Otherwise, installed gems are searched for a file that matches.
#   If it's found in gem 'y', that gem is activated (added to the
#   loadpath).
#
# The normal <tt>require</tt> functionality of returning false if
# that file has already been loaded is preserved.
#
We replace Ruby's require with our own, which is capable of
loading gems on demand.

When you call require 'x', this is what happens:
If the file can be loaded from the existing Ruby loadpath, it
is.
Otherwise, installed gems are searched for a file that matches.
If it's found in gem 'y', that gem is activated (added to the
loadpath).

The normal require functionality of returning false if
that file has already been loaded is preserved.
We replace Ruby ' s require with our own which is capable of loading gems on demand . When you call require ' x ' this is what happens : If the file can be loaded from the existing Ruby loadpath it is . Otherwise installed gems are searched for a file that matches . If it ' s found in gem ' y ' that gem is activated ( added to the loadpath ) . The normal require functionality of returning false if that file has already been loaded is preserved .
def require(path) 
    gem_original_require path
  rescue LoadError => load_error
    if load_error.message =~ /\A[Nn]o such file to load -- #{Regexp.escape path}\z/ and
       spec = Gem.searcher.find(path) then
      Gem.activate(spec.name, false, "= #{spec.version}")
      gem_original_require path
    else
      raise load_error
    end
  end
def require ( path ) gem_original_require path rescue LoadError => load_error if load_error . message =~ / \A [Nn]o such file to load --  #{ Regexp . escape path } \z / and spec = Gem . searcher . find ( path ) then Gem . activate ( spec . name , false , "= #{spec.version}" ) gem_original_require path else raise load_error end end
We replace Ruby's require with our own, which is capable of
loading gems on demand.
We replace Ruby ' s require with our own which is capable of loading gems on demand .
# :nodoc:
path