mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-26 01:58:41 -05:00
21 lines
584 B
Ruby
21 lines
584 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
|
|
|