Sha256: 53ef869fe03b46f53984f44fcb111f588e69f72a15e886a6788e031382946600

Contents?: true

Size: 464 Bytes

Versions: 6

Compression:

Stored size: 464 Bytes

Contents

module Kernel

  # Similar to __FILE__, __DIR__ provides the directory
  # path to the current executing script.
  #
  # CREDIT: Trans

  def __DIR__
    c = caller.first
    return nil unless c.rindex(/:\d+(:in `.*')?$/)
    file = $` # File.dirname(c)
    return nil if /\A\((.*)\)/ =~ file # eval, etc.
    #File.expand_path(File.dirname(file))
    File.dirname(file)
  end

  #def __DIR__
  #  (/^(.+)?:\d+/ =~ caller[0]) ? File.dirname($1) : nil
  #end

end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
facets-2.8.4 lib/core/facets/kernel/__dir__.rb
facets-2.8.3 lib/core/facets/kernel/__dir__.rb
facets-2.8.2 lib/core/facets/kernel/__dir__.rb
facets-2.8.1 lib/core/facets/kernel/__dir__.rb
facets-2.8.0 lib/core/facets/kernel/__dir__.rb
facets-2.7.0 lib/core/facets/kernel/__dir__.rb