Class: RuboCop::Cop::Style::SelfAssignment
- Extended by:
- AutoCorrector
- Defined in:
- lib/rubocop/cop/style/self_assignment.rb
Overview
This cop enforces the use the shorthand for self-assignment.
Constant Summary collapse
- MSG =
'Use self-assignment shorthand `%<method>s=`.'
- OPS =
%i[+ - * ** / | &].freeze
Constants inherited from Base
Constants included from Util
Instance Attribute Summary
Attributes inherited from Base
Class Method Summary collapse
Instance Method Summary collapse
Methods included from AutoCorrector
Methods inherited from Base
#add_global_offense, #add_offense, badge, callbacks_needed, #callbacks_needed, #config_to_allow_offenses, #config_to_allow_offenses=, #cop_config, #cop_name, cop_name, department, documentation_url, exclude_from_registry, #excluded_file?, #external_dependency_checksum, inherited, #initialize, joining_forces, lint?, match?, #message, #offenses, #on_investigation_end, #on_new_investigation, #on_other_file, #ready, #relevant_file?, support_autocorrect?, support_multiple_source?, #target_rails_version, #target_ruby_version
Methods included from AutocorrectLogic
#autocorrect?, #autocorrect_enabled?, #autocorrect_requested?, #correctable?, #disable_uncorrectable?, #safe_autocorrect?
Methods included from IgnoredNode
#ignore_node, #ignored_node?, #part_of_ignored_node?
Methods included from Util
add_parentheses, args_begin, args_end, begins_its_line?, comment_line?, comment_lines?, double_quotes_required?, escape_string, first_part_of_call_chain, indent, interpret_string_escapes, line_range, needs_escaping?, on_node, parentheses?, same_line?, to_string_literal, to_supported_styles, trim_string_interporation_escape_character
Methods included from PathUtil
absolute?, hidden_dir?, hidden_file?, hidden_file_in_not_hidden_dir?, match_path?, maybe_hidden_file?, relative_path, smart_path
Constructor Details
This class inherits a constructor from RuboCop::Cop::Base
Class Method Details
.autocorrect_incompatible_with ⇒ Object
21 22 23 |
# File 'lib/rubocop/cop/style/self_assignment.rb', line 21 def self.autocorrect_incompatible_with [Layout::SpaceAroundOperators] end |
Instance Method Details
#on_cvasgn(node) ⇒ Object
33 34 35 |
# File 'lib/rubocop/cop/style/self_assignment.rb', line 33 def on_cvasgn(node) check(node, :cvar) end |
#on_ivasgn(node) ⇒ Object
29 30 31 |
# File 'lib/rubocop/cop/style/self_assignment.rb', line 29 def on_ivasgn(node) check(node, :ivar) end |
#on_lvasgn(node) ⇒ Object
25 26 27 |
# File 'lib/rubocop/cop/style/self_assignment.rb', line 25 def on_lvasgn(node) check(node, :lvar) end |