Sha256: 0e24d01d075415fdac950b12b1b566ff3028cfa93eb562d68bd6a3d02d4b76f6

Contents?: true

Size: 1.04 KB

Versions: 3

Compression:

Stored size: 1.04 KB

Contents

# = TITLE:
#
#   Require / Load Extensions
#
# = DESCRIPTION:
#
#   Require/Load extensions.
#
# = AUTHORS:
#
#   - Thomas Sawyer

#
module Kernel

  private

  # Load file from same dir as calling script.
  #
  #   load_local 'templib'
  #
  def load_local(fname, safe=nil)
    #fdir = File.expand_path( File.dirname( caller[0] ) )
    fdir = File.dirname( caller[0] )
    load( File.join( fdir, fname ), safe )
  end

  # Require file from same dir as calling script.
  #
  #   require_local 'templib'
  #
  def require_local(fname)
    #fdir = File.expand_path( File.dirname( caller[0] ) )
    fdir = File.dirname( caller[0] )
    require( File.join( fdir, fname ) )
  end

  # Require a pattern of files. This make is easy
  # to require an entire directory, for instance.
  #
  #   require_all 'facets/time/*'
  #
  def require_all(pat)
    $LOAD_PATH.each do |path|
      fs = Dir[File.join(path,pat)]
      unless fs.empty?
        fs.each { |f|
          Kernel.require( f ) unless File.directory?( f )
        }
        break;
      end
    end
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
facets-2.2.0 lib/core/facets/kernel/require.rb
facets-2.2.1 lib/core/facets/kernel/require.rb
facets-2.3.0 lib/core/facets/kernel/require.rb