Sha256: b1e78c46025acd84eb28a4b1958ad5225e54da2732e906f2c4592a8edf7af4e7

Contents?: true

Size: 516 Bytes

Versions: 14

Compression:

Stored size: 516 Bytes

Contents

module Backports
  def self.require_relative_dir
    dir = caller.first.split(/\.rb:\d/,2).first
    short_path = dir[/.*(backports\/.*)/, 1] << '/'
    Dir.entries(dir).
        map{|f| Regexp.last_match(1) if /^(.*)\.rb$/ =~ f}.
        compact.
        sort.
        each do |f|
          path = '../../' + short_path + f
          if Kernel.private_method_defined?(:require_relative)
            require_relative path
          else
            require File.expand_path(path)
          end
        end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
backports-3.25.0 lib/backports/tools/require_relative_dir.rb
backports-3.24.1 lib/backports/tools/require_relative_dir.rb
backports-3.24.0 lib/backports/tools/require_relative_dir.rb
backports-3.23.0 lib/backports/tools/require_relative_dir.rb
backports-3.22.1 lib/backports/tools/require_relative_dir.rb
backports-3.22.0 lib/backports/tools/require_relative_dir.rb
backports-3.21.0 lib/backports/tools/require_relative_dir.rb
backports-3.20.2 lib/backports/tools/require_relative_dir.rb
backports-3.20.1 lib/backports/tools/require_relative_dir.rb
backports-3.20.0 lib/backports/tools/require_relative_dir.rb
backports-3.19.0 lib/backports/tools/require_relative_dir.rb
backports-3.18.2 lib/backports/tools/require_relative_dir.rb
backports-3.18.1 lib/backports/tools/require_relative_dir.rb
backports-3.18.0 lib/backports/tools/require_relative_dir.rb