Merge pull request #198 from crystal-ameba/Sija/followup-to-pr-195

This commit is contained in:
Sijawusz Pur Rahnama 2021-01-22 16:11:32 +01:00 committed by GitHub
commit 79ff1f75db
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -33,7 +33,6 @@ module Ameba::Rule::Performance
# - sort_by
# - shuffle
# - reverse
# - rotate
# ```
class ChainedCallsWithNoBang < Base
properties do
@ -42,15 +41,15 @@ module Ameba::Rule::Performance
# All of those have bang method variants returning `self`
# and are not modifying the receiver type (like `compact` does),
# thus are safe to switch to the bang variant.
call_names : Array(String) = %w(uniq sort sort_by shuffle reverse rotate)
call_names : Array(String) = %w(uniq sort sort_by shuffle reverse)
end
# All these methods are allocating a new object
ALLOCATING_METHOD_NAMES = %w(
keys values values_at map map_with_index flat_map compact_map
flatten compact select reject combinations permutations sample
transpose invert group_by chunks tally merge chars clone
captures named_captures
flatten compact select reject sample group_by chunks tally merge
combinations repeated_combinations permutations repeated_permutations
transpose invert chars captures named_captures clone
)
MSG = "Use bang method variant `%s!` after chained `%s` call"