class RuboCop::Cop::Style::Dir
path = __dir__
# good
path = File.dirname(File.realpath(__FILE__))
# bad
path = File.expand_path(File.dirname(__FILE__))
# bad
@example
current file.
complex constructs to retrieve a canonicalized absolute path to the
This cop checks for places where the ‘#__dir__` method can replace more
def autocorrect(node)
def autocorrect(node) lambda do |corrector| corrector.replace(node.source_range, '__dir__') end end
def file_keyword?(node)
def file_keyword?(node) node.str_type? && node.source_range.is?('__FILE__') end
def on_send(node)
def on_send(node) dir_replacement?(node) do add_offense(node) end end