Useless assignment to variable - rv
. Open
rv = netapp_client.nfs_exportfs_modify_rule do
- Read upRead up
- Exclude checks
Checks for every useless assignment to local variable in every
scope.
The basic idea for this cop was from the warning of ruby -cw
:
assigned but unused variable - foo
Currently this cop has advanced logic that detects unreferenced reassignments and properly handles varied cases such as branch, loop, rescue, ensure, etc.
NOTE: Given the assignment foo = 1, bar = 2
, removing unused variables
can lead to a syntax error, so this case is not autocorrected.
Safety:
This cop's autocorrection is unsafe because removing assignment from
operator assignment can cause NameError if this assignment has been used to declare
local variable. For example, replacing a ||= 1
to a || 1
may cause
"undefined local variable or method `a' for main:Object (NameError)".
Example:
# bad
def some_method
some_var = 1
do_something
end
Example:
# good
def some_method
some_var = 1
do_something(some_var)
end
Useless assignment to variable - rv
. Open
rv = netapp_client.volume_create do
- Read upRead up
- Exclude checks
Checks for every useless assignment to local variable in every
scope.
The basic idea for this cop was from the warning of ruby -cw
:
assigned but unused variable - foo
Currently this cop has advanced logic that detects unreferenced reassignments and properly handles varied cases such as branch, loop, rescue, ensure, etc.
NOTE: Given the assignment foo = 1, bar = 2
, removing unused variables
can lead to a syntax error, so this case is not autocorrected.
Safety:
This cop's autocorrection is unsafe because removing assignment from
operator assignment can cause NameError if this assignment has been used to declare
local variable. For example, replacing a ||= 1
to a || 1
may cause
"undefined local variable or method `a' for main:Object (NameError)".
Example:
# bad
def some_method
some_var = 1
do_something
end
Example:
# good
def some_method
some_var = 1
do_something(some_var)
end
Parenthesize the param NetAppManageability::NAMHash.new { name rh }
to make sure that the block will be associated with the NetAppManageability::NAMHash.new
method call. Open
push NetAppManageability::NAMHash.new { name rh }
- Read upRead up
- Exclude checks
Checks for ambiguous block association with method when param passed without parentheses.
This cop can customize allowed methods with AllowedMethods
.
By default, there are no methods to allowed.
Example:
# bad
some_method a { |val| puts val }
Example:
# good
# With parentheses, there's no ambiguity.
some_method(a { |val| puts val })
# or (different meaning)
some_method(a) { |val| puts val }
# good
# Operator methods require no disambiguation
foo == bar { |b| b.baz }
# good
# Lambda arguments require no disambiguation
foo = ->(bar) { bar.baz }
Example: AllowedMethods: [] (default)
# bad
expect { do_something }.to change { object.attribute }
Example: AllowedMethods: [change]
# good
expect { do_something }.to change { object.attribute }
Example: AllowedPatterns: [] (default)
# bad
expect { do_something }.to change { object.attribute }
Example: AllowedPatterns: ['change']
# good
expect { do_something }.to change { object.attribute }
expect { do_something }.to not_change { object.attribute }