class RuboCop::Cop::Rails::ScopeArgs

This cop checks for scope calls where it was passed a method (usually a scope) instead of a lambda/proc.

@example

# bad
scope :something, where(something: true)

# good
scope :something, -> { where(something: true) }

Constants

MSG

Public Instance Methods

on_send(node) click to toggle source
# File lib/rubocop/cop/rails/scope_args.rb, line 19
def on_send(node)
  return unless node.command?(:scope)

  _receiver, _method_name, *args = *node

  return unless args.size == 2

  second_arg = args[1]

  add_offense(second_arg, :expression) if second_arg.type == :send
end