rubocop 1.12.0 → 1.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (401) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -2
  3. data/config/default.yml +10 -0
  4. data/exe/rubocop +1 -3
  5. data/lib/rubocop.rb +1 -1
  6. data/lib/rubocop/cached_data.rb +1 -3
  7. data/lib/rubocop/cli.rb +4 -6
  8. data/lib/rubocop/cli/command/auto_genenerate_config.rb +9 -19
  9. data/lib/rubocop/cli/command/init_dotfile.rb +1 -3
  10. data/lib/rubocop/cli/command/show_cops.rb +1 -4
  11. data/lib/rubocop/comment_config.rb +2 -7
  12. data/lib/rubocop/config.rb +11 -26
  13. data/lib/rubocop/config_loader.rb +5 -11
  14. data/lib/rubocop/config_loader_resolver.rb +22 -14
  15. data/lib/rubocop/config_obsoletion/cop_rule.rb +1 -2
  16. data/lib/rubocop/config_store.rb +1 -2
  17. data/lib/rubocop/config_validator.rb +5 -10
  18. data/lib/rubocop/cop/autocorrect_logic.rb +3 -8
  19. data/lib/rubocop/cop/badge.rb +1 -2
  20. data/lib/rubocop/cop/base.rb +8 -6
  21. data/lib/rubocop/cop/bundler/duplicated_gem.rb +1 -2
  22. data/lib/rubocop/cop/bundler/gem_comment.rb +42 -8
  23. data/lib/rubocop/cop/bundler/ordered_gems.rb +1 -4
  24. data/lib/rubocop/cop/commissioner.rb +2 -8
  25. data/lib/rubocop/cop/cop.rb +4 -18
  26. data/lib/rubocop/cop/corrector.rb +1 -4
  27. data/lib/rubocop/cop/correctors/alignment_corrector.rb +3 -6
  28. data/lib/rubocop/cop/correctors/each_to_for_corrector.rb +2 -4
  29. data/lib/rubocop/cop/correctors/for_to_each_corrector.rb +1 -2
  30. data/lib/rubocop/cop/correctors/line_break_corrector.rb +3 -6
  31. data/lib/rubocop/cop/correctors/multiline_literal_brace_corrector.rb +1 -3
  32. data/lib/rubocop/cop/correctors/ordered_gem_corrector.rb +1 -3
  33. data/lib/rubocop/cop/correctors/percent_literal_corrector.rb +2 -8
  34. data/lib/rubocop/cop/gemspec/duplicated_assignment.rb +1 -2
  35. data/lib/rubocop/cop/gemspec/ordered_dependencies.rb +1 -4
  36. data/lib/rubocop/cop/generator.rb +1 -4
  37. data/lib/rubocop/cop/generator/configuration_injector.rb +1 -2
  38. data/lib/rubocop/cop/generator/require_file_injector.rb +2 -5
  39. data/lib/rubocop/cop/internal_affairs/example_description.rb +6 -4
  40. data/lib/rubocop/cop/internal_affairs/method_name_equal.rb +2 -5
  41. data/lib/rubocop/cop/internal_affairs/node_destructuring.rb +1 -3
  42. data/lib/rubocop/cop/internal_affairs/node_type_predicate.rb +1 -3
  43. data/lib/rubocop/cop/internal_affairs/offense_location_keyword.rb +1 -2
  44. data/lib/rubocop/cop/internal_affairs/style_detected_api_use.rb +1 -2
  45. data/lib/rubocop/cop/internal_affairs/useless_message_assertion.rb +1 -3
  46. data/lib/rubocop/cop/layout/access_modifier_indentation.rb +1 -2
  47. data/lib/rubocop/cop/layout/argument_alignment.rb +2 -4
  48. data/lib/rubocop/cop/layout/assignment_indentation.rb +2 -4
  49. data/lib/rubocop/cop/layout/begin_end_alignment.rb +1 -4
  50. data/lib/rubocop/cop/layout/block_alignment.rb +7 -19
  51. data/lib/rubocop/cop/layout/case_indentation.rb +1 -3
  52. data/lib/rubocop/cop/layout/class_structure.rb +4 -10
  53. data/lib/rubocop/cop/layout/closing_parenthesis_indentation.rb +4 -15
  54. data/lib/rubocop/cop/layout/comment_indentation.rb +1 -5
  55. data/lib/rubocop/cop/layout/def_end_alignment.rb +2 -6
  56. data/lib/rubocop/cop/layout/dot_position.rb +1 -3
  57. data/lib/rubocop/cop/layout/else_alignment.rb +1 -3
  58. data/lib/rubocop/cop/layout/empty_comment.rb +5 -12
  59. data/lib/rubocop/cop/layout/empty_line_after_guard_clause.rb +22 -8
  60. data/lib/rubocop/cop/layout/empty_line_between_defs.rb +2 -6
  61. data/lib/rubocop/cop/layout/empty_lines.rb +1 -3
  62. data/lib/rubocop/cop/layout/empty_lines_around_access_modifier.rb +8 -18
  63. data/lib/rubocop/cop/layout/empty_lines_around_exception_handling_keywords.rb +2 -8
  64. data/lib/rubocop/cop/layout/end_alignment.rb +1 -2
  65. data/lib/rubocop/cop/layout/end_of_line.rb +1 -1
  66. data/lib/rubocop/cop/layout/extra_spacing.rb +3 -7
  67. data/lib/rubocop/cop/layout/first_array_element_indentation.rb +1 -2
  68. data/lib/rubocop/cop/layout/first_array_element_line_break.rb +1 -2
  69. data/lib/rubocop/cop/layout/first_hash_element_indentation.rb +2 -5
  70. data/lib/rubocop/cop/layout/first_hash_element_line_break.rb +1 -2
  71. data/lib/rubocop/cop/layout/first_method_argument_line_break.rb +1 -2
  72. data/lib/rubocop/cop/layout/first_method_parameter_line_break.rb +1 -2
  73. data/lib/rubocop/cop/layout/hash_alignment.rb +3 -6
  74. data/lib/rubocop/cop/layout/heredoc_argument_closing_parenthesis.rb +2 -9
  75. data/lib/rubocop/cop/layout/heredoc_indentation.rb +2 -6
  76. data/lib/rubocop/cop/layout/indentation_style.rb +1 -3
  77. data/lib/rubocop/cop/layout/indentation_width.rb +1 -2
  78. data/lib/rubocop/cop/layout/initial_indentation.rb +1 -4
  79. data/lib/rubocop/cop/layout/line_length.rb +4 -15
  80. data/lib/rubocop/cop/layout/multiline_array_line_breaks.rb +1 -2
  81. data/lib/rubocop/cop/layout/multiline_block_layout.rb +7 -15
  82. data/lib/rubocop/cop/layout/multiline_hash_key_line_breaks.rb +1 -2
  83. data/lib/rubocop/cop/layout/multiline_method_argument_line_breaks.rb +1 -2
  84. data/lib/rubocop/cop/layout/multiline_method_call_indentation.rb +16 -10
  85. data/lib/rubocop/cop/layout/multiline_operation_indentation.rb +4 -0
  86. data/lib/rubocop/cop/layout/redundant_line_break.rb +125 -0
  87. data/lib/rubocop/cop/layout/rescue_ensure_alignment.rb +3 -6
  88. data/lib/rubocop/cop/layout/space_after_colon.rb +1 -3
  89. data/lib/rubocop/cop/layout/space_after_method_name.rb +2 -4
  90. data/lib/rubocop/cop/layout/space_around_block_parameters.rb +6 -14
  91. data/lib/rubocop/cop/layout/space_around_equals_in_parameter_default.rb +1 -2
  92. data/lib/rubocop/cop/layout/space_around_keyword.rb +3 -6
  93. data/lib/rubocop/cop/layout/space_around_operators.rb +4 -9
  94. data/lib/rubocop/cop/layout/space_before_block_braces.rb +1 -2
  95. data/lib/rubocop/cop/layout/space_before_brackets.rb +1 -3
  96. data/lib/rubocop/cop/layout/space_before_comment.rb +1 -3
  97. data/lib/rubocop/cop/layout/space_before_first_arg.rb +5 -11
  98. data/lib/rubocop/cop/layout/space_in_lambda_literal.rb +2 -4
  99. data/lib/rubocop/cop/layout/space_inside_array_literal_brackets.rb +5 -10
  100. data/lib/rubocop/cop/layout/space_inside_array_percent_literal.rb +2 -7
  101. data/lib/rubocop/cop/layout/space_inside_block_braces.rb +5 -10
  102. data/lib/rubocop/cop/layout/space_inside_hash_literal_braces.rb +1 -2
  103. data/lib/rubocop/cop/layout/space_inside_reference_brackets.rb +1 -2
  104. data/lib/rubocop/cop/legacy/corrections_proxy.rb +2 -8
  105. data/lib/rubocop/cop/legacy/corrector.rb +1 -3
  106. data/lib/rubocop/cop/lint/ambiguous_assignment.rb +1 -6
  107. data/lib/rubocop/cop/lint/ambiguous_block_association.rb +14 -7
  108. data/lib/rubocop/cop/lint/boolean_symbol.rb +1 -2
  109. data/lib/rubocop/cop/lint/constant_resolution.rb +1 -2
  110. data/lib/rubocop/cop/lint/deprecated_class_methods.rb +2 -4
  111. data/lib/rubocop/cop/lint/deprecated_constants.rb +3 -3
  112. data/lib/rubocop/cop/lint/deprecated_open_ssl_constant.rb +2 -5
  113. data/lib/rubocop/cop/lint/duplicate_branch.rb +1 -2
  114. data/lib/rubocop/cop/lint/duplicate_hash_key.rb +1 -3
  115. data/lib/rubocop/cop/lint/duplicate_methods.rb +3 -7
  116. data/lib/rubocop/cop/lint/else_layout.rb +1 -3
  117. data/lib/rubocop/cop/lint/empty_ensure.rb +1 -3
  118. data/lib/rubocop/cop/lint/empty_file.rb +1 -3
  119. data/lib/rubocop/cop/lint/empty_interpolation.rb +1 -3
  120. data/lib/rubocop/cop/lint/ensure_return.rb +1 -3
  121. data/lib/rubocop/cop/lint/erb_new_arguments.rb +3 -7
  122. data/lib/rubocop/cop/lint/float_out_of_range.rb +1 -2
  123. data/lib/rubocop/cop/lint/format_parameter_mismatch.rb +3 -6
  124. data/lib/rubocop/cop/lint/heredoc_method_call_position.rb +1 -2
  125. data/lib/rubocop/cop/lint/implicit_string_concatenation.rb +1 -2
  126. data/lib/rubocop/cop/lint/ineffective_access_modifier.rb +3 -7
  127. data/lib/rubocop/cop/lint/inherit_exception.rb +1 -2
  128. data/lib/rubocop/cop/lint/interpolation_check.rb +3 -11
  129. data/lib/rubocop/cop/lint/literal_in_interpolation.rb +3 -6
  130. data/lib/rubocop/cop/lint/loop.rb +1 -2
  131. data/lib/rubocop/cop/lint/missing_cop_enable_directive.rb +3 -7
  132. data/lib/rubocop/cop/lint/missing_super.rb +1 -2
  133. data/lib/rubocop/cop/lint/mixed_regexp_capture_types.rb +1 -2
  134. data/lib/rubocop/cop/lint/nested_method_definition.rb +1 -2
  135. data/lib/rubocop/cop/lint/nested_percent_literal.rb +1 -3
  136. data/lib/rubocop/cop/lint/non_deterministic_require_order.rb +1 -3
  137. data/lib/rubocop/cop/lint/number_conversion.rb +3 -4
  138. data/lib/rubocop/cop/lint/ordered_magic_comments.rb +1 -2
  139. data/lib/rubocop/cop/lint/out_of_range_regexp_ref.rb +1 -3
  140. data/lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb +1 -3
  141. data/lib/rubocop/cop/lint/percent_symbol_array.rb +1 -3
  142. data/lib/rubocop/cop/lint/raise_exception.rb +1 -2
  143. data/lib/rubocop/cop/lint/rand_one.rb +1 -2
  144. data/lib/rubocop/cop/lint/redundant_cop_disable_directive.rb +8 -20
  145. data/lib/rubocop/cop/lint/redundant_safe_navigation.rb +1 -3
  146. data/lib/rubocop/cop/lint/redundant_splat_expansion.rb +3 -7
  147. data/lib/rubocop/cop/lint/redundant_string_coercion.rb +1 -2
  148. data/lib/rubocop/cop/lint/redundant_with_index.rb +1 -4
  149. data/lib/rubocop/cop/lint/redundant_with_object.rb +1 -4
  150. data/lib/rubocop/cop/lint/regexp_as_condition.rb +1 -3
  151. data/lib/rubocop/cop/lint/require_parentheses.rb +2 -4
  152. data/lib/rubocop/cop/lint/rescue_exception.rb +1 -2
  153. data/lib/rubocop/cop/lint/rescue_type.rb +2 -7
  154. data/lib/rubocop/cop/lint/return_in_void_context.rb +1 -2
  155. data/lib/rubocop/cop/lint/safe_navigation_chain.rb +1 -2
  156. data/lib/rubocop/cop/lint/safe_navigation_consistency.rb +4 -10
  157. data/lib/rubocop/cop/lint/safe_navigation_with_empty.rb +1 -2
  158. data/lib/rubocop/cop/lint/send_with_mixin_argument.rb +2 -7
  159. data/lib/rubocop/cop/lint/shadowed_argument.rb +4 -11
  160. data/lib/rubocop/cop/lint/shadowed_exception.rb +7 -8
  161. data/lib/rubocop/cop/lint/struct_new_override.rb +1 -2
  162. data/lib/rubocop/cop/lint/symbol_conversion.rb +2 -4
  163. data/lib/rubocop/cop/lint/syntax.rb +1 -3
  164. data/lib/rubocop/cop/lint/to_json.rb +1 -2
  165. data/lib/rubocop/cop/lint/trailing_comma_in_attribute_declaration.rb +1 -3
  166. data/lib/rubocop/cop/lint/underscore_prefixed_variable_name.rb +1 -3
  167. data/lib/rubocop/cop/lint/unreachable_code.rb +2 -5
  168. data/lib/rubocop/cop/lint/unreachable_loop.rb +2 -5
  169. data/lib/rubocop/cop/lint/unused_block_argument.rb +4 -8
  170. data/lib/rubocop/cop/lint/unused_method_argument.rb +1 -2
  171. data/lib/rubocop/cop/lint/useless_access_modifier.rb +2 -4
  172. data/lib/rubocop/cop/lint/useless_assignment.rb +4 -9
  173. data/lib/rubocop/cop/lint/useless_setter_call.rb +1 -3
  174. data/lib/rubocop/cop/lint/void.rb +4 -11
  175. data/lib/rubocop/cop/message_annotator.rb +1 -3
  176. data/lib/rubocop/cop/metrics/block_nesting.rb +2 -7
  177. data/lib/rubocop/cop/metrics/class_length.rb +1 -3
  178. data/lib/rubocop/cop/metrics/cyclomatic_complexity.rb +1 -2
  179. data/lib/rubocop/cop/metrics/module_length.rb +2 -6
  180. data/lib/rubocop/cop/metrics/parameter_lists.rb +2 -5
  181. data/lib/rubocop/cop/metrics/perceived_complexity.rb +1 -2
  182. data/lib/rubocop/cop/metrics/utils/abc_size_calculator.rb +4 -7
  183. data/lib/rubocop/cop/metrics/utils/repeated_attribute_discount.rb +2 -7
  184. data/lib/rubocop/cop/migration/department_name.rb +3 -7
  185. data/lib/rubocop/cop/mixin/alignment.rb +2 -4
  186. data/lib/rubocop/cop/mixin/check_line_breakable.rb +1 -1
  187. data/lib/rubocop/cop/mixin/code_length.rb +1 -3
  188. data/lib/rubocop/cop/mixin/configurable_enforced_style.rb +2 -2
  189. data/lib/rubocop/cop/mixin/configurable_formatting.rb +3 -8
  190. data/lib/rubocop/cop/mixin/def_node.rb +2 -5
  191. data/lib/rubocop/cop/mixin/documentation_comment.rb +2 -5
  192. data/lib/rubocop/cop/mixin/empty_lines_around_body.rb +3 -7
  193. data/lib/rubocop/cop/mixin/empty_parameter.rb +1 -3
  194. data/lib/rubocop/cop/mixin/end_keyword_alignment.rb +1 -3
  195. data/lib/rubocop/cop/mixin/enforce_superclass.rb +2 -6
  196. data/lib/rubocop/cop/mixin/first_element_line_break.rb +1 -3
  197. data/lib/rubocop/cop/mixin/frozen_string_literal.rb +3 -9
  198. data/lib/rubocop/cop/mixin/hash_alignment_styles.rb +3 -6
  199. data/lib/rubocop/cop/mixin/hash_transform_method.rb +7 -22
  200. data/lib/rubocop/cop/mixin/interpolation.rb +1 -3
  201. data/lib/rubocop/cop/mixin/line_length_help.rb +2 -4
  202. data/lib/rubocop/cop/mixin/match_range.rb +2 -5
  203. data/lib/rubocop/cop/mixin/method_complexity.rb +1 -3
  204. data/lib/rubocop/cop/mixin/method_preference.rb +1 -2
  205. data/lib/rubocop/cop/mixin/multiline_element_indentation.rb +1 -2
  206. data/lib/rubocop/cop/mixin/multiline_element_line_breaks.rb +1 -3
  207. data/lib/rubocop/cop/mixin/multiline_expression_indentation.rb +7 -37
  208. data/lib/rubocop/cop/mixin/multiline_literal_brace_layout.rb +1 -2
  209. data/lib/rubocop/cop/mixin/negative_conditional.rb +1 -2
  210. data/lib/rubocop/cop/mixin/ordered_gem_node.rb +1 -4
  211. data/lib/rubocop/cop/mixin/percent_array.rb +1 -3
  212. data/lib/rubocop/cop/mixin/percent_literal.rb +0 -6
  213. data/lib/rubocop/cop/mixin/preceding_following_alignment.rb +5 -11
  214. data/lib/rubocop/cop/mixin/preferred_delimiters.rb +3 -6
  215. data/lib/rubocop/cop/mixin/range_help.rb +10 -13
  216. data/lib/rubocop/cop/mixin/rescue_node.rb +2 -6
  217. data/lib/rubocop/cop/mixin/safe_assignment.rb +1 -2
  218. data/lib/rubocop/cop/mixin/space_after_punctuation.rb +2 -4
  219. data/lib/rubocop/cop/mixin/space_before_punctuation.rb +1 -2
  220. data/lib/rubocop/cop/mixin/statement_modifier.rb +1 -3
  221. data/lib/rubocop/cop/mixin/trailing_body.rb +1 -2
  222. data/lib/rubocop/cop/mixin/trailing_comma.rb +1 -2
  223. data/lib/rubocop/cop/mixin/uncommunicative_name.rb +3 -7
  224. data/lib/rubocop/cop/mixin/unused_argument.rb +1 -3
  225. data/lib/rubocop/cop/naming/ascii_identifiers.rb +2 -4
  226. data/lib/rubocop/cop/naming/binary_operator_parameter_name.rb +1 -2
  227. data/lib/rubocop/cop/naming/file_name.rb +7 -16
  228. data/lib/rubocop/cop/naming/memoized_instance_variable_name.rb +2 -3
  229. data/lib/rubocop/cop/naming/method_name.rb +1 -2
  230. data/lib/rubocop/cop/naming/predicate_name.rb +1 -2
  231. data/lib/rubocop/cop/offense.rb +3 -8
  232. data/lib/rubocop/cop/registry.rb +3 -11
  233. data/lib/rubocop/cop/style/access_modifier_declarations.rb +2 -4
  234. data/lib/rubocop/cop/style/accessor_grouping.rb +1 -3
  235. data/lib/rubocop/cop/style/alias.rb +5 -12
  236. data/lib/rubocop/cop/style/and_or.rb +3 -1
  237. data/lib/rubocop/cop/style/arguments_forwarding.rb +1 -3
  238. data/lib/rubocop/cop/style/ascii_comments.rb +1 -2
  239. data/lib/rubocop/cop/style/attr.rb +1 -3
  240. data/lib/rubocop/cop/style/auto_resource_cleanup.rb +2 -5
  241. data/lib/rubocop/cop/style/bisected_attr_accessor/macro.rb +1 -3
  242. data/lib/rubocop/cop/style/case_like_if.rb +1 -2
  243. data/lib/rubocop/cop/style/character_literal.rb +2 -4
  244. data/lib/rubocop/cop/style/class_and_module_children.rb +3 -6
  245. data/lib/rubocop/cop/style/class_methods.rb +1 -3
  246. data/lib/rubocop/cop/style/collection_compact.rb +1 -3
  247. data/lib/rubocop/cop/style/colon_method_call.rb +1 -3
  248. data/lib/rubocop/cop/style/combinable_loops.rb +3 -2
  249. data/lib/rubocop/cop/style/command_literal.rb +3 -8
  250. data/lib/rubocop/cop/style/comment_annotation.rb +3 -6
  251. data/lib/rubocop/cop/style/commented_keyword.rb +7 -13
  252. data/lib/rubocop/cop/style/conditional_assignment.rb +10 -24
  253. data/lib/rubocop/cop/style/copyright.rb +3 -6
  254. data/lib/rubocop/cop/style/date_time.rb +2 -5
  255. data/lib/rubocop/cop/style/def_with_parentheses.rb +1 -2
  256. data/lib/rubocop/cop/style/each_for_simple_loop.rb +1 -2
  257. data/lib/rubocop/cop/style/empty_case_condition.rb +2 -7
  258. data/lib/rubocop/cop/style/empty_else.rb +3 -9
  259. data/lib/rubocop/cop/style/empty_literal.rb +4 -8
  260. data/lib/rubocop/cop/style/empty_method.rb +3 -7
  261. data/lib/rubocop/cop/style/end_block.rb +1 -2
  262. data/lib/rubocop/cop/style/endless_method.rb +1 -3
  263. data/lib/rubocop/cop/style/eval_with_location.rb +2 -4
  264. data/lib/rubocop/cop/style/expand_path_arguments.rb +1 -3
  265. data/lib/rubocop/cop/style/explicit_block_argument.rb +1 -4
  266. data/lib/rubocop/cop/style/format_string_token.rb +1 -4
  267. data/lib/rubocop/cop/style/frozen_string_literal_comment.rb +3 -11
  268. data/lib/rubocop/cop/style/guard_clause.rb +3 -7
  269. data/lib/rubocop/cop/style/hash_conversion.rb +31 -3
  270. data/lib/rubocop/cop/style/hash_each_methods.rb +1 -2
  271. data/lib/rubocop/cop/style/hash_like_case.rb +1 -2
  272. data/lib/rubocop/cop/style/hash_syntax.rb +4 -9
  273. data/lib/rubocop/cop/style/identical_conditional_branches.rb +1 -3
  274. data/lib/rubocop/cop/style/if_unless_modifier.rb +41 -13
  275. data/lib/rubocop/cop/style/infinite_loop.rb +2 -5
  276. data/lib/rubocop/cop/style/inverse_methods.rb +3 -7
  277. data/lib/rubocop/cop/style/ip_addresses.rb +1 -2
  278. data/lib/rubocop/cop/style/lambda.rb +2 -4
  279. data/lib/rubocop/cop/style/lambda_call.rb +1 -2
  280. data/lib/rubocop/cop/style/line_end_concatenation.rb +5 -12
  281. data/lib/rubocop/cop/style/method_call_with_args_parentheses.rb +7 -3
  282. data/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb +10 -18
  283. data/lib/rubocop/cop/style/method_call_without_args_parentheses.rb +1 -2
  284. data/lib/rubocop/cop/style/method_called_on_do_end_block.rb +2 -4
  285. data/lib/rubocop/cop/style/method_def_parentheses.rb +4 -8
  286. data/lib/rubocop/cop/style/min_max.rb +1 -2
  287. data/lib/rubocop/cop/style/missing_else.rb +2 -4
  288. data/lib/rubocop/cop/style/missing_respond_to_missing.rb +1 -2
  289. data/lib/rubocop/cop/style/mixin_grouping.rb +4 -10
  290. data/lib/rubocop/cop/style/mixin_usage.rb +1 -2
  291. data/lib/rubocop/cop/style/module_function.rb +3 -6
  292. data/lib/rubocop/cop/style/multiline_block_chain.rb +1 -2
  293. data/lib/rubocop/cop/style/multiline_method_signature.rb +11 -6
  294. data/lib/rubocop/cop/style/multiline_ternary_operator.rb +1 -2
  295. data/lib/rubocop/cop/style/multiple_comparison.rb +2 -4
  296. data/lib/rubocop/cop/style/mutable_constant.rb +4 -10
  297. data/lib/rubocop/cop/style/negated_if.rb +1 -2
  298. data/lib/rubocop/cop/style/negated_unless.rb +1 -2
  299. data/lib/rubocop/cop/style/nested_modifier.rb +3 -7
  300. data/lib/rubocop/cop/style/nested_ternary_operator.rb +2 -3
  301. data/lib/rubocop/cop/style/next.rb +4 -9
  302. data/lib/rubocop/cop/style/non_nil_check.rb +2 -5
  303. data/lib/rubocop/cop/style/numeric_literals.rb +3 -11
  304. data/lib/rubocop/cop/style/numeric_predicate.rb +2 -7
  305. data/lib/rubocop/cop/style/one_line_conditional.rb +1 -2
  306. data/lib/rubocop/cop/style/option_hash.rb +1 -3
  307. data/lib/rubocop/cop/style/optional_arguments.rb +2 -5
  308. data/lib/rubocop/cop/style/or_assignment.rb +2 -6
  309. data/lib/rubocop/cop/style/parallel_assignment.rb +6 -9
  310. data/lib/rubocop/cop/style/percent_literal_delimiters.rb +1 -3
  311. data/lib/rubocop/cop/style/percent_q_literals.rb +1 -2
  312. data/lib/rubocop/cop/style/perl_backrefs.rb +2 -9
  313. data/lib/rubocop/cop/style/preferred_hash_methods.rb +1 -4
  314. data/lib/rubocop/cop/style/proc.rb +1 -2
  315. data/lib/rubocop/cop/style/raise_args.rb +4 -8
  316. data/lib/rubocop/cop/style/random_with_offset.rb +3 -8
  317. data/lib/rubocop/cop/style/redundant_argument.rb +2 -11
  318. data/lib/rubocop/cop/style/redundant_assignment.rb +1 -3
  319. data/lib/rubocop/cop/style/redundant_begin.rb +15 -4
  320. data/lib/rubocop/cop/style/redundant_capital_w.rb +1 -2
  321. data/lib/rubocop/cop/style/redundant_condition.rb +2 -5
  322. data/lib/rubocop/cop/style/redundant_conditional.rb +3 -6
  323. data/lib/rubocop/cop/style/redundant_exception.rb +3 -6
  324. data/lib/rubocop/cop/style/redundant_file_extension_in_require.rb +1 -1
  325. data/lib/rubocop/cop/style/redundant_freeze.rb +1 -2
  326. data/lib/rubocop/cop/style/redundant_interpolation.rb +1 -2
  327. data/lib/rubocop/cop/style/redundant_parentheses.rb +8 -20
  328. data/lib/rubocop/cop/style/redundant_percent_q.rb +1 -2
  329. data/lib/rubocop/cop/style/redundant_regexp_escape.rb +1 -4
  330. data/lib/rubocop/cop/style/redundant_return.rb +3 -5
  331. data/lib/rubocop/cop/style/redundant_self.rb +2 -6
  332. data/lib/rubocop/cop/style/redundant_self_assignment.rb +2 -2
  333. data/lib/rubocop/cop/style/redundant_sort.rb +2 -5
  334. data/lib/rubocop/cop/style/regexp_literal.rb +4 -8
  335. data/lib/rubocop/cop/style/rescue_modifier.rb +4 -0
  336. data/lib/rubocop/cop/style/rescue_standard_error.rb +3 -7
  337. data/lib/rubocop/cop/style/return_nil.rb +1 -2
  338. data/lib/rubocop/cop/style/safe_navigation.rb +10 -21
  339. data/lib/rubocop/cop/style/send.rb +1 -2
  340. data/lib/rubocop/cop/style/signal_exception.rb +3 -7
  341. data/lib/rubocop/cop/style/single_argument_dig.rb +1 -2
  342. data/lib/rubocop/cop/style/single_line_block_params.rb +2 -5
  343. data/lib/rubocop/cop/style/single_line_methods.rb +16 -4
  344. data/lib/rubocop/cop/style/sole_nested_conditional.rb +1 -2
  345. data/lib/rubocop/cop/style/special_global_vars.rb +6 -18
  346. data/lib/rubocop/cop/style/stabby_lambda_parentheses.rb +1 -2
  347. data/lib/rubocop/cop/style/stderr_puts.rb +2 -6
  348. data/lib/rubocop/cop/style/string_chars.rb +2 -1
  349. data/lib/rubocop/cop/style/string_concatenation.rb +8 -10
  350. data/lib/rubocop/cop/style/string_literals.rb +2 -5
  351. data/lib/rubocop/cop/style/struct_inheritance.rb +9 -1
  352. data/lib/rubocop/cop/style/symbol_literal.rb +1 -3
  353. data/lib/rubocop/cop/style/symbol_proc.rb +4 -9
  354. data/lib/rubocop/cop/style/ternary_parentheses.rb +3 -6
  355. data/lib/rubocop/cop/style/trailing_body_on_method_definition.rb +1 -2
  356. data/lib/rubocop/cop/style/trailing_comma_in_block_args.rb +2 -6
  357. data/lib/rubocop/cop/style/trailing_method_end_statement.rb +2 -5
  358. data/lib/rubocop/cop/style/trailing_underscore_variable.rb +4 -10
  359. data/lib/rubocop/cop/style/trivial_accessors.rb +2 -4
  360. data/lib/rubocop/cop/style/unless_else.rb +1 -2
  361. data/lib/rubocop/cop/style/unless_logical_operators.rb +2 -2
  362. data/lib/rubocop/cop/style/variable_interpolation.rb +1 -1
  363. data/lib/rubocop/cop/style/when_then.rb +1 -3
  364. data/lib/rubocop/cop/style/while_until_modifier.rb +1 -2
  365. data/lib/rubocop/cop/style/word_array.rb +1 -2
  366. data/lib/rubocop/cop/style/yoda_condition.rb +3 -11
  367. data/lib/rubocop/cop/style/zero_length_predicate.rb +1 -2
  368. data/lib/rubocop/cop/team.rb +2 -5
  369. data/lib/rubocop/cop/util.rb +8 -11
  370. data/lib/rubocop/cop/utils/format_string.rb +1 -3
  371. data/lib/rubocop/cop/variable_force.rb +6 -15
  372. data/lib/rubocop/cop/variable_force/assignment.rb +1 -2
  373. data/lib/rubocop/cop/variable_force/branch.rb +1 -2
  374. data/lib/rubocop/cop/variable_force/reference.rb +1 -3
  375. data/lib/rubocop/cop/variable_force/scope.rb +4 -8
  376. data/lib/rubocop/cop/variable_force/variable.rb +2 -4
  377. data/lib/rubocop/cops_documentation_generator.rb +7 -21
  378. data/lib/rubocop/directive_comment.rb +5 -0
  379. data/lib/rubocop/file_finder.rb +1 -3
  380. data/lib/rubocop/formatter/clang_style_formatter.rb +4 -2
  381. data/lib/rubocop/formatter/disabled_config_formatter.rb +3 -8
  382. data/lib/rubocop/formatter/git_hub_actions_formatter.rb +1 -5
  383. data/lib/rubocop/formatter/html_formatter.rb +4 -10
  384. data/lib/rubocop/formatter/json_formatter.rb +1 -5
  385. data/lib/rubocop/formatter/junit_formatter.rb +3 -9
  386. data/lib/rubocop/formatter/progress_formatter.rb +1 -3
  387. data/lib/rubocop/formatter/tap_formatter.rb +4 -2
  388. data/lib/rubocop/options.rb +27 -41
  389. data/lib/rubocop/path_util.rb +1 -3
  390. data/lib/rubocop/rake_task.rb +3 -0
  391. data/lib/rubocop/remote_config.rb +4 -7
  392. data/lib/rubocop/result_cache.rb +5 -12
  393. data/lib/rubocop/rspec/cop_helper.rb +1 -1
  394. data/lib/rubocop/rspec/expect_offense.rb +4 -9
  395. data/lib/rubocop/rspec/shared_contexts.rb +4 -15
  396. data/lib/rubocop/runner.rb +7 -14
  397. data/lib/rubocop/target_finder.rb +11 -16
  398. data/lib/rubocop/target_ruby.rb +4 -8
  399. data/lib/rubocop/version.rb +1 -1
  400. metadata +5 -5
  401. data/lib/rubocop/core_ext/hash.rb +0 -20
@@ -32,10 +32,7 @@ module RuboCop
32
32
  return unless discount_repeated_attributes
33
33
 
34
34
  self_attributes = {} # Share hash for `(send nil? :foo)` and `(send (self) :foo)`
35
- @known_attributes = {
36
- s(:self) => self_attributes,
37
- nil => self_attributes
38
- }
35
+ @known_attributes = { s(:self) => self_attributes, nil => self_attributes }
39
36
  # example after running `obj = foo.bar; obj.baz.qux`
40
37
  # { nil => {foo: {bar: {}}},
41
38
  # s(self) => same hash ^,
@@ -114,9 +111,7 @@ module RuboCop
114
111
  return yield nil
115
112
  end
116
113
 
117
- calls.fetch(value) do
118
- yield [calls, value]
119
- end
114
+ calls.fetch(value) { yield [calls, value] }
120
115
  end
121
116
 
122
117
  VAR_SETTER_TO_GETTER = {
@@ -11,8 +11,7 @@ module RuboCop
11
11
 
12
12
  MSG = 'Department name is missing.'
13
13
 
14
- DISABLE_COMMENT_FORMAT =
15
- /\A(# *rubocop *: *((dis|en)able|todo) +)(.*)/.freeze
14
+ DISABLE_COMMENT_FORMAT = /\A(# *rubocop *: *((dis|en)able|todo) +)(.*)/.freeze
16
15
 
17
16
  # The token that makes up a disable comment.
18
17
  # The allowed specification for comments after `# rubocop: disable` is
@@ -62,8 +61,7 @@ module RuboCop
62
61
  end
63
62
 
64
63
  def valid_content_token?(content_token)
65
- /\W+/.match?(content_token) ||
66
- DISABLING_COPS_CONTENT_TOKEN.match?(content_token)
64
+ /\W+/.match?(content_token) || DISABLING_COPS_CONTENT_TOKEN.match?(content_token)
67
65
  end
68
66
 
69
67
  def contain_unexpected_character_for_department_name?(name)
@@ -73,9 +71,7 @@ module RuboCop
73
71
  def qualified_legacy_cop_name(cop_name)
74
72
  legacy_cop_names = RuboCop::ConfigObsoletion.legacy_cop_names
75
73
 
76
- legacy_cop_names.detect do |legacy_cop_name|
77
- legacy_cop_name.split('/')[1] == cop_name
78
- end
74
+ legacy_cop_names.detect { |legacy_cop_name| legacy_cop_name.split('/')[1] == cop_name }
79
75
  end
80
76
  end
81
77
  end
@@ -12,8 +12,7 @@ module RuboCop
12
12
  attr_reader :column_delta
13
13
 
14
14
  def configured_indentation_width
15
- cop_config['IndentationWidth'] ||
16
- config.for_cop('Layout/IndentationWidth')['Width']
15
+ cop_config['IndentationWidth'] || config.for_cop('Layout/IndentationWidth')['Width']
17
16
  end
18
17
 
19
18
  def indentation(node)
@@ -46,8 +45,7 @@ module RuboCop
46
45
  def each_bad_alignment(items, base_column)
47
46
  prev_line = -1
48
47
  items.each do |current|
49
- if current.loc.line > prev_line &&
50
- begins_its_line?(current.source_range)
48
+ if current.loc.line > prev_line && begins_its_line?(current.source_range)
51
49
  @column_delta = base_column - display_column(current.source_range)
52
50
 
53
51
  yield current if @column_delta.nonzero?
@@ -83,7 +83,7 @@ module RuboCop
83
83
 
84
84
  # @api private
85
85
  def within_column_limit?(element, max, line)
86
- element && element.loc.column < max && element.loc.line == line
86
+ element && element.loc.column <= max && element.loc.line == line
87
87
  end
88
88
 
89
89
  # @api private
@@ -38,9 +38,7 @@ module RuboCop
38
38
 
39
39
  location = node.casgn_type? ? node.loc.name : node.loc.expression
40
40
 
41
- add_offense(location, message: message(length, max_length)) do
42
- self.max = length
43
- end
41
+ add_offense(location, message: message(length, max_length)) { self.max = length }
44
42
  end
45
43
 
46
44
  # Returns true for lines that shall not be included in the count.
@@ -75,9 +75,9 @@ module RuboCop
75
75
 
76
76
  def alternative_style
77
77
  if supported_styles.size != 2
78
- raise 'alternative_style can only be used when there are exactly ' \
79
- '2 SupportedStyles'
78
+ raise 'alternative_style can only be used when there are exactly 2 SupportedStyles'
80
79
  end
80
+
81
81
  alternative_styles.first
82
82
  end
83
83
 
@@ -10,9 +10,7 @@ module RuboCop
10
10
  if valid_name?(node, name)
11
11
  correct_style_detected
12
12
  else
13
- add_offense(name_range, message: message(style)) do
14
- report_opposing_styles(node, name)
15
- end
13
+ add_offense(name_range, message: message(style)) { report_opposing_styles(node, name) }
16
14
  end
17
15
  end
18
16
 
@@ -23,8 +21,7 @@ module RuboCop
23
21
  end
24
22
 
25
23
  def valid_name?(node, name, given_style = style)
26
- name.match?(self.class::FORMATS.fetch(given_style)) ||
27
- class_emitter_method?(node, name)
24
+ name.match?(self.class::FORMATS.fetch(given_style)) || class_emitter_method?(node, name)
28
25
  end
29
26
 
30
27
  # A class emitter method is a singleton method in a class/module, where
@@ -36,9 +33,7 @@ module RuboCop
36
33
  # `def self.extended`, etc.
37
34
  node = node.parent while node.parent.defs_type?
38
35
 
39
- node.parent.each_child_node(:class).any? do |c|
40
- c.loc.name.is?(name.to_s)
41
- end
36
+ node.parent.each_child_node(:class).any? { |c| c.loc.name.is?(name.to_s) }
42
37
  end
43
38
  end
44
39
  end
@@ -11,14 +11,11 @@ module RuboCop
11
11
  private
12
12
 
13
13
  def non_public?(node)
14
- non_public_modifier?(node.parent) ||
15
- preceding_non_public_modifier?(node)
14
+ non_public_modifier?(node.parent) || preceding_non_public_modifier?(node)
16
15
  end
17
16
 
18
17
  def preceding_non_public_modifier?(node)
19
- stripped_source_upto(node.first_line).any? do |line|
20
- NON_PUBLIC_MODIFIERS.include?(line)
21
- end
18
+ stripped_source_upto(node.first_line).any? { |line| NON_PUBLIC_MODIFIERS.include?(line) }
22
19
  end
23
20
 
24
21
  def stripped_source_upto(index)
@@ -24,8 +24,7 @@ module RuboCop
24
24
  # The args node1 & node2 may represent a RuboCop::AST::Node
25
25
  # or a Parser::Source::Comment. Both respond to #loc.
26
26
  def preceding_comment?(node1, node2)
27
- node1 && node2 && precede?(node2, node1) &&
28
- comment_line?(node2.loc.expression.source)
27
+ node1 && node2 && precede?(node2, node1) && comment_line?(node2.loc.expression.source)
29
28
  end
30
29
 
31
30
  # The args node1 & node2 may represent a RuboCop::AST::Node
@@ -35,9 +34,7 @@ module RuboCop
35
34
  end
36
35
 
37
36
  def preceding_lines(node)
38
- processed_source.ast_with_comments[node].select do |line|
39
- line.loc.line < node.loc.line
40
- end
37
+ processed_source.ast_with_comments[node].select { |line| line.loc.line < node.loc.line }
41
38
  end
42
39
 
43
40
  def interpreter_directive_comment?(comment)
@@ -10,11 +10,9 @@ module RuboCop
10
10
  include ConfigurableEnforcedStyle
11
11
  include RangeHelp
12
12
 
13
- MSG_EXTRA = 'Extra empty line detected at %<kind>s body ' \
14
- '%<location>s.'
13
+ MSG_EXTRA = 'Extra empty line detected at %<kind>s body %<location>s.'
15
14
  MSG_MISSING = 'Empty line missing at %<kind>s body %<location>s.'
16
- MSG_DEFERRED = 'Empty line missing before first %<type>s ' \
17
- 'definition'
15
+ MSG_DEFERRED = 'Empty line missing before first %<type>s definition'
18
16
 
19
17
  private
20
18
 
@@ -93,9 +91,7 @@ module RuboCop
93
91
  when :no_empty_lines
94
92
  check_line(style, line_no, message(MSG_EXTRA, desc), &:empty?)
95
93
  when :empty_lines
96
- check_line(style, line_no, message(MSG_MISSING, desc)) do |line|
97
- !line.empty?
98
- end
94
+ check_line(style, line_no, message(MSG_MISSING, desc)) { |line| !line.empty? }
99
95
  end
100
96
  end
101
97
 
@@ -17,9 +17,7 @@ module RuboCop
17
17
  empty_arguments?(node) do |args|
18
18
  return if args.empty_and_without_delimiters?
19
19
 
20
- add_offense(args) do |corrector|
21
- autocorrect(corrector, args)
22
- end
20
+ add_offense(args) { |corrector| autocorrect(corrector, args) }
23
21
  end
24
22
  end
25
23
  end
@@ -55,9 +55,7 @@ module RuboCop
55
55
  source: align_with.source,
56
56
  align_line: align_with.line,
57
57
  align_col: align_with.column)
58
- add_offense(end_loc, message: msg) do |corrector|
59
- autocorrect(corrector, node)
60
- end
58
+ add_offense(end_loc, message: msg) { |corrector| autocorrect(corrector, node) }
61
59
  end
62
60
 
63
61
  def accept_end_kw_alignment?(end_loc)
@@ -27,15 +27,11 @@ module RuboCop
27
27
  end
28
28
 
29
29
  def on_class(node)
30
- class_definition(node) do
31
- add_offense(node.children[1])
32
- end
30
+ class_definition(node) { add_offense(node.children[1]) }
33
31
  end
34
32
 
35
33
  def on_send(node)
36
- class_new_definition(node) do
37
- add_offense(node.children.last)
38
- end
34
+ class_new_definition(node) { add_offense(node.children.last) }
39
35
  end
40
36
  end
41
37
  end
@@ -31,9 +31,7 @@ module RuboCop
31
31
  max = last_by_line(children)
32
32
  return if line == max.last_line
33
33
 
34
- add_offense(min) do |corrector|
35
- EmptyLineCorrector.insert_before(corrector, min)
36
- end
34
+ add_offense(min) { |corrector| EmptyLineCorrector.insert_before(corrector, min) }
37
35
  end
38
36
 
39
37
  def first_by_line(nodes)
@@ -11,9 +11,7 @@ module RuboCop
11
11
  FROZEN_STRING_LITERAL_TYPES = %i[str dstr].freeze
12
12
 
13
13
  def frozen_string_literal_comment_exists?
14
- leading_comment_lines.any? do |line|
15
- MagicComment.parse(line).valid_literal_value?
16
- end
14
+ leading_comment_lines.any? { |line| MagicComment.parse(line).valid_literal_value? }
17
15
  end
18
16
 
19
17
  private
@@ -34,9 +32,7 @@ module RuboCop
34
32
  # And the above `ruby_version >= 3.1` is undecided whether it will be
35
33
  # Ruby 3.1, 3.2, 4.0 or others.
36
34
  # See https://bugs.ruby-lang.org/issues/8976#note-41 for details.
37
- leading_comment_lines.any? do |line|
38
- MagicComment.parse(line).frozen_string_literal?
39
- end
35
+ leading_comment_lines.any? { |line| MagicComment.parse(line).frozen_string_literal? }
40
36
  end
41
37
 
42
38
  def frozen_string_literal_specified?
@@ -46,9 +42,7 @@ module RuboCop
46
42
  end
47
43
 
48
44
  def leading_comment_lines
49
- first_non_comment_token = processed_source.tokens.find do |token|
50
- !token.comment?
51
- end
45
+ first_non_comment_token = processed_source.tokens.find { |token| !token.comment? }
52
46
 
53
47
  if first_non_comment_token
54
48
  # `line` is 1-indexed so we need to subtract 1 to get the array index
@@ -60,10 +60,8 @@ module RuboCop
60
60
 
61
61
  def deltas(first_pair, current_pair)
62
62
  key_delta = key_delta(first_pair, current_pair)
63
- separator_delta = separator_delta(first_pair, current_pair,
64
- key_delta)
65
- value_delta = value_delta(first_pair, current_pair) -
66
- key_delta - separator_delta
63
+ separator_delta = separator_delta(first_pair, current_pair, key_delta)
64
+ value_delta = value_delta(first_pair, current_pair) - key_delta - separator_delta
67
65
 
68
66
  { key: key_delta, separator: separator_delta, value: value_delta }
69
67
  end
@@ -106,8 +104,7 @@ module RuboCop
106
104
  end
107
105
 
108
106
  def hash_rocket_delta(first_pair, current_pair)
109
- first_pair.loc.column + max_key_width + 1 -
110
- current_pair.loc.operator.column
107
+ first_pair.loc.column + max_key_width + 1 - current_pair.loc.operator.column
111
108
  end
112
109
 
113
110
  def value_delta(first_pair, current_pair)
@@ -4,7 +4,7 @@ module RuboCop
4
4
  module Cop
5
5
  # Common functionality for Style/HashTransformKeys and
6
6
  # Style/HashTransformValues
7
- module HashTransformMethod # rubocop:disable Metrics/ModuleLength
7
+ module HashTransformMethod
8
8
  extend NodePattern::Macros
9
9
 
10
10
  RESTRICT_ON_SEND = %i[[] to_h].freeze
@@ -21,24 +21,18 @@ module RuboCop
21
21
 
22
22
  return if target_ruby_version < 2.6
23
23
 
24
- on_bad_to_h(node) do |*match|
25
- handle_possible_offense(node, match, 'to_h {...}')
26
- end
24
+ on_bad_to_h(node) { |*match| handle_possible_offense(node, match, 'to_h {...}') }
27
25
  end
28
26
 
29
27
  def on_send(node)
30
28
  on_bad_hash_brackets_map(node) do |*match|
31
29
  handle_possible_offense(node, match, 'Hash[_.map {...}]')
32
30
  end
33
- on_bad_map_to_h(node) do |*match|
34
- handle_possible_offense(node, match, 'map {...}.to_h')
35
- end
31
+ on_bad_map_to_h(node) { |*match| handle_possible_offense(node, match, 'map {...}.to_h') }
36
32
  end
37
33
 
38
34
  def on_csend(node)
39
- on_bad_map_to_h(node) do |*match|
40
- handle_possible_offense(node, match, 'map {...}.to_h')
41
- end
35
+ on_bad_map_to_h(node) { |*match| handle_possible_offense(node, match, 'map {...}.to_h') }
42
36
  end
43
37
 
44
38
  private
@@ -115,10 +109,7 @@ module RuboCop
115
109
 
116
110
  captures = extract_captures(correction.match)
117
111
  correction.set_new_arg_name(captures.transformed_argname, corrector)
118
- correction.set_new_body_expression(
119
- captures.transforming_body_expr,
120
- corrector
121
- )
112
+ correction.set_new_body_expression(captures.transforming_body_expr, corrector)
122
113
  end
123
114
 
124
115
  # Internal helper class to hold match data
@@ -180,17 +171,11 @@ module RuboCop
180
171
  end
181
172
 
182
173
  def set_new_arg_name(transformed_argname, corrector)
183
- corrector.replace(
184
- block_node.arguments.loc.expression,
185
- "|#{transformed_argname}|"
186
- )
174
+ corrector.replace(block_node.arguments.loc.expression, "|#{transformed_argname}|")
187
175
  end
188
176
 
189
177
  def set_new_body_expression(transforming_body_expr, corrector)
190
- corrector.replace(
191
- block_node.body,
192
- transforming_body_expr.loc.expression.source
193
- )
178
+ corrector.replace(block_node.body, transforming_body_expr.loc.expression.source)
194
179
  end
195
180
  end
196
181
  end
@@ -15,9 +15,7 @@ module RuboCop
15
15
  alias on_regexp on_dstr
16
16
 
17
17
  def on_node_with_interpolations(node)
18
- node.each_child_node(:begin) do |begin_node|
19
- on_interpolation(begin_node)
20
- end
18
+ node.each_child_node(:begin) { |begin_node| on_interpolation(begin_node) }
21
19
  end
22
20
 
23
21
  # @!method on_interpolation(begin_node)
@@ -46,8 +46,7 @@ module RuboCop
46
46
  end_position += match.offset(0).last
47
47
  end
48
48
 
49
- return nil if begin_position < max_line_length &&
50
- end_position < max_line_length
49
+ return nil if begin_position < max_line_length && end_position < max_line_length
51
50
 
52
51
  begin_position...end_position
53
52
  end
@@ -73,8 +72,7 @@ module RuboCop
73
72
 
74
73
  def uri_regexp
75
74
  @uri_regexp ||=
76
- URI::DEFAULT_PARSER
77
- .make_regexp(config.for_cop('Layout/LineLength')['URISchemes'])
75
+ URI::DEFAULT_PARSER.make_regexp(config.for_cop('Layout/LineLength')['URISchemes'])
78
76
  end
79
77
 
80
78
  def valid_uri?(uri_ish_string)
@@ -11,15 +11,12 @@ module RuboCop
11
11
  # Return a new `Range` covering the first matching group number for each
12
12
  # match of `regex` inside `range`
13
13
  def each_match_range(range, regex)
14
- range.source.scan(regex) do
15
- yield match_range(range, Regexp.last_match)
16
- end
14
+ range.source.scan(regex) { yield match_range(range, Regexp.last_match) }
17
15
  end
18
16
 
19
17
  # For a `match` inside `range`, return a new `Range` covering the match
20
18
  def match_range(range, match)
21
- range_between(range.begin_pos + match.begin(1),
22
- range.begin_pos + match.end(1))
19
+ range_between(range.begin_pos + match.begin(1), range.begin_pos + match.end(1))
23
20
  end
24
21
  end
25
22
  end
@@ -60,9 +60,7 @@ module RuboCop
60
60
  abc_vector: abc_vector,
61
61
  max: max)
62
62
 
63
- add_offense(node, message: msg) do
64
- self.max = complexity.ceil
65
- end
63
+ add_offense(node, message: msg) { self.max = complexity.ceil }
66
64
  end
67
65
 
68
66
  def complexity(body)