Sha256: f1d172248be8b48186ad7653b0f7d011687d82156622aeda1a11ba0ade0210e0

Contents?: true

Size: 665 Bytes

Versions: 3

Compression:

Stored size: 665 Bytes

Contents

module Kernel

  unless private_method_defined?(:load_relative)  # Will Ruby ever support out-of-the-box?

    # Load file from same dir as calling script.
    #
    #   load_relative 'myscript'
    #
    # CREDIT: Paul Brannan, Pragmatic Programmers
    #
    def load_relative(relative_feature, safe=nil)
      c = caller.first
      fail "Can't parse #{c}" unless c.rindex(/:\d+(:in `.*')?$/)
      file = $` # File.dirname(c)
      if /\A\((.*)\)/ =~ file # eval, etc.
        raise LoadError, "require_relative is called in #{$1}"
      end
      absolute = File.expand_path(relative_feature, File.dirname(file))
      load absolute, safe
    end

  end

end

Version data entries

3 entries across 3 versions & 2 rubygems

Version Path
facets-glimmer-3.2.0 lib/core/facets/kernel/load_relative.rb
facets-3.1.0 lib/core/facets/kernel/load_relative.rb
facets-3.0.0 lib/core/facets/kernel/load_relative.rb