class RuboCop::Cop::Lint::RedundantDirGlobSort
*/.rb’].each do |file|
end
Dir.glob(‘./lib/*/.rb’).each do |file|
# good
end
Dir[‘./lib/*/.rb’].sort.each do |file|
end
Dir.glob(‘./lib/*/.rb’).sort.each do |file|
# bad
@example
will break ‘exe/files.rb` that rely on `exe.rb` file.
identical names, since directory will be loaded before the file, which
This cop is unsafe, in case of having a file and a directory with
@safety
This cop checks for redundant `sort` method to `Dir.glob` and `Dir[]`.
Sort globbed results by default in Ruby 3.0.
def on_send(node)
def on_send(node) return unless (receiver = node.receiver) return unless receiver.receiver&.const_type? && receiver.receiver.short_name == :Dir return unless GLOB_METHODS.include?(receiver.method_name) selector = node.loc.selector add_offense(selector) do |corrector| corrector.remove(selector) corrector.remove(node.loc.dot) end end