mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-26 10:08:40 -05:00
21 lines
596 B
Ruby
21 lines
596 B
Ruby
# require_relative was introduced in 1.9.2. This makes it
|
|
# available to younger rubies. It trys hard to not re-require
|
|
# files.
|
|
|
|
unless Kernel.respond_to?( :require_relative )
|
|
module Kernel
|
|
def require_relative( path )
|
|
desired_path = File.expand_path( '../' + path.to_str, caller[0] )
|
|
shortest = desired_path
|
|
$:.each do |path|
|
|
path += '/'
|
|
if desired_path.index( path ) == 0
|
|
candidate = desired_path.sub( path, '' )
|
|
shortest = candidate if candidate.size < shortest.size
|
|
end
|
|
end
|
|
require shortest
|
|
end
|
|
end
|
|
end
|
|
|