super-pro-sys 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (931) hide show
  1. checksums.yaml +7 -0
  2. data/rubocop-1.88.1/LICENSE.txt +20 -0
  3. data/rubocop-1.88.1/README.md +255 -0
  4. data/rubocop-1.88.1/assets/logo.png +0 -0
  5. data/rubocop-1.88.1/assets/output.css.erb +159 -0
  6. data/rubocop-1.88.1/assets/output.html.erb +102 -0
  7. data/rubocop-1.88.1/config/default.yml +6242 -0
  8. data/rubocop-1.88.1/config/internal_affairs.yml +31 -0
  9. data/rubocop-1.88.1/config/obsoletion.yml +272 -0
  10. data/rubocop-1.88.1/exe/rubocop +17 -0
  11. data/rubocop-1.88.1/lib/rubocop/arguments_env.rb +17 -0
  12. data/rubocop-1.88.1/lib/rubocop/arguments_file.rb +17 -0
  13. data/rubocop-1.88.1/lib/rubocop/ast_aliases.rb +8 -0
  14. data/rubocop-1.88.1/lib/rubocop/cache_config.rb +58 -0
  15. data/rubocop-1.88.1/lib/rubocop/cached_data.rb +74 -0
  16. data/rubocop-1.88.1/lib/rubocop/cli/command/auto_generate_config.rb +199 -0
  17. data/rubocop-1.88.1/lib/rubocop/cli/command/base.rb +35 -0
  18. data/rubocop-1.88.1/lib/rubocop/cli/command/execute_runner.rb +105 -0
  19. data/rubocop-1.88.1/lib/rubocop/cli/command/init_dotfile.rb +44 -0
  20. data/rubocop-1.88.1/lib/rubocop/cli/command/list_enabled_cops_for.rb +40 -0
  21. data/rubocop-1.88.1/lib/rubocop/cli/command/lsp.rb +19 -0
  22. data/rubocop-1.88.1/lib/rubocop/cli/command/mcp.rb +19 -0
  23. data/rubocop-1.88.1/lib/rubocop/cli/command/show_cops.rb +96 -0
  24. data/rubocop-1.88.1/lib/rubocop/cli/command/show_docs_url.rb +44 -0
  25. data/rubocop-1.88.1/lib/rubocop/cli/command/suggest_extensions.rb +132 -0
  26. data/rubocop-1.88.1/lib/rubocop/cli/command/version.rb +18 -0
  27. data/rubocop-1.88.1/lib/rubocop/cli/command.rb +22 -0
  28. data/rubocop-1.88.1/lib/rubocop/cli/environment.rb +22 -0
  29. data/rubocop-1.88.1/lib/rubocop/cli.rb +249 -0
  30. data/rubocop-1.88.1/lib/rubocop/comment_config.rb +258 -0
  31. data/rubocop-1.88.1/lib/rubocop/config.rb +404 -0
  32. data/rubocop-1.88.1/lib/rubocop/config_finder.rb +78 -0
  33. data/rubocop-1.88.1/lib/rubocop/config_loader.rb +284 -0
  34. data/rubocop-1.88.1/lib/rubocop/config_loader_resolver.rb +322 -0
  35. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/changed_enforced_styles.rb +33 -0
  36. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/changed_parameter.rb +26 -0
  37. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/cop_rule.rb +33 -0
  38. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/extracted_cop.rb +49 -0
  39. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/parameter_rule.rb +56 -0
  40. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/removed_cop.rb +41 -0
  41. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/renamed_cop.rb +49 -0
  42. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/rule.rb +41 -0
  43. data/rubocop-1.88.1/lib/rubocop/config_obsoletion/split_cop.rb +27 -0
  44. data/rubocop-1.88.1/lib/rubocop/config_obsoletion.rb +155 -0
  45. data/rubocop-1.88.1/lib/rubocop/config_regeneration.rb +33 -0
  46. data/rubocop-1.88.1/lib/rubocop/config_store.rb +77 -0
  47. data/rubocop-1.88.1/lib/rubocop/config_validator.rb +291 -0
  48. data/rubocop-1.88.1/lib/rubocop/cop/autocorrect_logic.rb +164 -0
  49. data/rubocop-1.88.1/lib/rubocop/cop/badge.rb +68 -0
  50. data/rubocop-1.88.1/lib/rubocop/cop/base.rb +568 -0
  51. data/rubocop-1.88.1/lib/rubocop/cop/bundler/duplicated_gem.rb +94 -0
  52. data/rubocop-1.88.1/lib/rubocop/cop/bundler/duplicated_group.rb +127 -0
  53. data/rubocop-1.88.1/lib/rubocop/cop/bundler/gem_comment.rb +173 -0
  54. data/rubocop-1.88.1/lib/rubocop/cop/bundler/gem_filename.rb +102 -0
  55. data/rubocop-1.88.1/lib/rubocop/cop/bundler/gem_version.rb +132 -0
  56. data/rubocop-1.88.1/lib/rubocop/cop/bundler/insecure_protocol_source.rb +85 -0
  57. data/rubocop-1.88.1/lib/rubocop/cop/bundler/ordered_gems.rb +69 -0
  58. data/rubocop-1.88.1/lib/rubocop/cop/commissioner.rb +182 -0
  59. data/rubocop-1.88.1/lib/rubocop/cop/cop.rb +192 -0
  60. data/rubocop-1.88.1/lib/rubocop/cop/corrector.rb +138 -0
  61. data/rubocop-1.88.1/lib/rubocop/cop/correctors/alignment_corrector.rb +144 -0
  62. data/rubocop-1.88.1/lib/rubocop/cop/correctors/condition_corrector.rb +25 -0
  63. data/rubocop-1.88.1/lib/rubocop/cop/correctors/each_to_for_corrector.rb +47 -0
  64. data/rubocop-1.88.1/lib/rubocop/cop/correctors/empty_line_corrector.rb +25 -0
  65. data/rubocop-1.88.1/lib/rubocop/cop/correctors/for_to_each_corrector.rb +71 -0
  66. data/rubocop-1.88.1/lib/rubocop/cop/correctors/if_then_corrector.rb +55 -0
  67. data/rubocop-1.88.1/lib/rubocop/cop/correctors/lambda_literal_to_method_corrector.rb +145 -0
  68. data/rubocop-1.88.1/lib/rubocop/cop/correctors/line_break_corrector.rb +66 -0
  69. data/rubocop-1.88.1/lib/rubocop/cop/correctors/multiline_literal_brace_corrector.rb +109 -0
  70. data/rubocop-1.88.1/lib/rubocop/cop/correctors/ordered_gem_corrector.rb +45 -0
  71. data/rubocop-1.88.1/lib/rubocop/cop/correctors/parentheses_corrector.rb +120 -0
  72. data/rubocop-1.88.1/lib/rubocop/cop/correctors/percent_literal_corrector.rb +116 -0
  73. data/rubocop-1.88.1/lib/rubocop/cop/correctors/punctuation_corrector.rb +27 -0
  74. data/rubocop-1.88.1/lib/rubocop/cop/correctors/require_library_corrector.rb +23 -0
  75. data/rubocop-1.88.1/lib/rubocop/cop/correctors/space_corrector.rb +46 -0
  76. data/rubocop-1.88.1/lib/rubocop/cop/correctors/string_literal_corrector.rb +23 -0
  77. data/rubocop-1.88.1/lib/rubocop/cop/correctors/unused_arg_corrector.rb +40 -0
  78. data/rubocop-1.88.1/lib/rubocop/cop/correctors.rb +28 -0
  79. data/rubocop-1.88.1/lib/rubocop/cop/documentation.rb +65 -0
  80. data/rubocop-1.88.1/lib/rubocop/cop/exclude_limit.rb +52 -0
  81. data/rubocop-1.88.1/lib/rubocop/cop/force.rb +55 -0
  82. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/add_runtime_dependency.rb +38 -0
  83. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/attribute_assignment.rb +91 -0
  84. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/dependency_version.rb +152 -0
  85. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/deprecated_attribute_assignment.rb +91 -0
  86. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/development_dependencies.rb +107 -0
  87. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/duplicated_assignment.rb +111 -0
  88. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/ordered_dependencies.rb +100 -0
  89. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/require_mfa.rb +162 -0
  90. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/required_ruby_version.rb +129 -0
  91. data/rubocop-1.88.1/lib/rubocop/cop/gemspec/ruby_version_globals_usage.rb +55 -0
  92. data/rubocop-1.88.1/lib/rubocop/cop/generator/configuration_injector.rb +65 -0
  93. data/rubocop-1.88.1/lib/rubocop/cop/generator/require_file_injector.rb +75 -0
  94. data/rubocop-1.88.1/lib/rubocop/cop/generator.rb +223 -0
  95. data/rubocop-1.88.1/lib/rubocop/cop/ignored_node.rb +36 -0
  96. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/cop_description.rb +118 -0
  97. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/cop_enabled.rb +85 -0
  98. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/create_empty_file.rb +37 -0
  99. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/empty_line_between_expect_offense_and_correction.rb +69 -0
  100. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/example_description.rb +118 -0
  101. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/example_heredoc_delimiter.rb +111 -0
  102. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/inherit_deprecated_cop_class.rb +34 -0
  103. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/itblock_handler.rb +69 -0
  104. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/lambda_or_proc.rb +46 -0
  105. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/location_exists.rb +142 -0
  106. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/location_expression.rb +38 -0
  107. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/location_line_equality_comparison.rb +62 -0
  108. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/method_name_end_with.rb +82 -0
  109. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/method_name_equal.rb +49 -0
  110. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_destructuring.rb +44 -0
  111. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_first_or_last_argument.rb +54 -0
  112. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_matcher_directive.rb +241 -0
  113. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_pattern_groups/ast_processor.rb +63 -0
  114. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_pattern_groups/ast_walker.rb +131 -0
  115. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_pattern_groups.rb +233 -0
  116. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_type_group.rb +92 -0
  117. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_type_multiple_predicates.rb +126 -0
  118. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/node_type_predicate.rb +42 -0
  119. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/numblock_handler.rb +69 -0
  120. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/offense_location_keyword.rb +56 -0
  121. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/on_send_without_on_csend.rb +90 -0
  122. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/operator_keyword.rb +48 -0
  123. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/plugin.rb +33 -0
  124. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/processed_source_buffer_name.rb +42 -0
  125. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/redundant_context_config_parameter.rb +46 -0
  126. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/redundant_described_class_as_subject.rb +63 -0
  127. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/redundant_expect_offense_arguments.rb +34 -0
  128. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/redundant_let_rubocop_config_new.rb +75 -0
  129. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/redundant_location_argument.rb +53 -0
  130. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/redundant_message_argument.rb +61 -0
  131. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/redundant_method_dispatch_node.rb +56 -0
  132. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/redundant_source_range.rb +75 -0
  133. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/single_line_comparison.rb +63 -0
  134. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/style_detected_api_use.rb +146 -0
  135. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/undefined_config.rb +94 -0
  136. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/useless_message_assertion.rb +49 -0
  137. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs/useless_restrict_on_send.rb +60 -0
  138. data/rubocop-1.88.1/lib/rubocop/cop/internal_affairs.rb +41 -0
  139. data/rubocop-1.88.1/lib/rubocop/cop/layout/access_modifier_indentation.rb +104 -0
  140. data/rubocop-1.88.1/lib/rubocop/cop/layout/argument_alignment.rb +151 -0
  141. data/rubocop-1.88.1/lib/rubocop/cop/layout/array_alignment.rb +84 -0
  142. data/rubocop-1.88.1/lib/rubocop/cop/layout/assignment_indentation.rb +57 -0
  143. data/rubocop-1.88.1/lib/rubocop/cop/layout/begin_end_alignment.rb +73 -0
  144. data/rubocop-1.88.1/lib/rubocop/cop/layout/block_alignment.rb +313 -0
  145. data/rubocop-1.88.1/lib/rubocop/cop/layout/block_end_newline.rb +83 -0
  146. data/rubocop-1.88.1/lib/rubocop/cop/layout/case_indentation.rb +221 -0
  147. data/rubocop-1.88.1/lib/rubocop/cop/layout/class_structure.rb +392 -0
  148. data/rubocop-1.88.1/lib/rubocop/cop/layout/closing_heredoc_indentation.rb +123 -0
  149. data/rubocop-1.88.1/lib/rubocop/cop/layout/closing_parenthesis_indentation.rb +193 -0
  150. data/rubocop-1.88.1/lib/rubocop/cop/layout/comment_indentation.rb +168 -0
  151. data/rubocop-1.88.1/lib/rubocop/cop/layout/condition_position.rb +70 -0
  152. data/rubocop-1.88.1/lib/rubocop/cop/layout/def_end_alignment.rb +73 -0
  153. data/rubocop-1.88.1/lib/rubocop/cop/layout/dot_position.rb +139 -0
  154. data/rubocop-1.88.1/lib/rubocop/cop/layout/else_alignment.rb +156 -0
  155. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_comment.rb +151 -0
  156. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_line_after_guard_clause.rb +233 -0
  157. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_line_after_magic_comment.rb +71 -0
  158. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_line_after_multiline_condition.rb +136 -0
  159. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_line_between_defs.rb +324 -0
  160. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines.rb +73 -0
  161. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_after_module_inclusion.rb +101 -0
  162. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_access_modifier.rb +241 -0
  163. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_arguments.rb +82 -0
  164. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_attribute_accessor.rb +140 -0
  165. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_begin_body.rb +41 -0
  166. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_block_body.rb +51 -0
  167. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_class_body.rb +99 -0
  168. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_exception_handling_keywords.rb +139 -0
  169. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_method_body.rb +64 -0
  170. data/rubocop-1.88.1/lib/rubocop/cop/layout/empty_lines_around_module_body.rb +73 -0
  171. data/rubocop-1.88.1/lib/rubocop/cop/layout/end_alignment.rb +217 -0
  172. data/rubocop-1.88.1/lib/rubocop/cop/layout/end_of_line.rb +92 -0
  173. data/rubocop-1.88.1/lib/rubocop/cop/layout/extra_spacing.rb +185 -0
  174. data/rubocop-1.88.1/lib/rubocop/cop/layout/first_argument_indentation.rb +315 -0
  175. data/rubocop-1.88.1/lib/rubocop/cop/layout/first_array_element_indentation.rb +189 -0
  176. data/rubocop-1.88.1/lib/rubocop/cop/layout/first_array_element_line_break.rb +94 -0
  177. data/rubocop-1.88.1/lib/rubocop/cop/layout/first_hash_element_indentation.rb +239 -0
  178. data/rubocop-1.88.1/lib/rubocop/cop/layout/first_hash_element_line_break.rb +68 -0
  179. data/rubocop-1.88.1/lib/rubocop/cop/layout/first_method_argument_line_break.rb +105 -0
  180. data/rubocop-1.88.1/lib/rubocop/cop/layout/first_method_parameter_line_break.rb +75 -0
  181. data/rubocop-1.88.1/lib/rubocop/cop/layout/first_parameter_indentation.rb +101 -0
  182. data/rubocop-1.88.1/lib/rubocop/cop/layout/hash_alignment.rb +395 -0
  183. data/rubocop-1.88.1/lib/rubocop/cop/layout/heredoc_argument_closing_parenthesis.rb +312 -0
  184. data/rubocop-1.88.1/lib/rubocop/cop/layout/heredoc_indentation.rb +195 -0
  185. data/rubocop-1.88.1/lib/rubocop/cop/layout/indentation_consistency.rb +205 -0
  186. data/rubocop-1.88.1/lib/rubocop/cop/layout/indentation_style.rb +115 -0
  187. data/rubocop-1.88.1/lib/rubocop/cop/layout/indentation_width.rb +533 -0
  188. data/rubocop-1.88.1/lib/rubocop/cop/layout/initial_indentation.rb +55 -0
  189. data/rubocop-1.88.1/lib/rubocop/cop/layout/leading_comment_space.rb +203 -0
  190. data/rubocop-1.88.1/lib/rubocop/cop/layout/leading_empty_lines.rb +48 -0
  191. data/rubocop-1.88.1/lib/rubocop/cop/layout/line_continuation_leading_space.rb +153 -0
  192. data/rubocop-1.88.1/lib/rubocop/cop/layout/line_continuation_spacing.rb +146 -0
  193. data/rubocop-1.88.1/lib/rubocop/cop/layout/line_end_string_concatenation_indentation.rb +143 -0
  194. data/rubocop-1.88.1/lib/rubocop/cop/layout/line_length.rb +433 -0
  195. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_array_brace_layout.rb +115 -0
  196. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_array_line_breaks.rb +65 -0
  197. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_assignment_layout.rb +124 -0
  198. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_block_layout.rb +164 -0
  199. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_hash_brace_layout.rb +115 -0
  200. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_hash_key_line_breaks.rb +74 -0
  201. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_method_argument_line_breaks.rb +112 -0
  202. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_method_call_brace_layout.rb +132 -0
  203. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_method_call_indentation.rb +453 -0
  204. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_method_definition_brace_layout.rb +128 -0
  205. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_method_parameter_line_breaks.rb +78 -0
  206. data/rubocop-1.88.1/lib/rubocop/cop/layout/multiline_operation_indentation.rb +130 -0
  207. data/rubocop-1.88.1/lib/rubocop/cop/layout/parameter_alignment.rb +118 -0
  208. data/rubocop-1.88.1/lib/rubocop/cop/layout/redundant_line_break.rb +136 -0
  209. data/rubocop-1.88.1/lib/rubocop/cop/layout/rescue_ensure_alignment.rb +220 -0
  210. data/rubocop-1.88.1/lib/rubocop/cop/layout/single_line_block_chain.rb +69 -0
  211. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_after_colon.rb +49 -0
  212. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_after_comma.rb +32 -0
  213. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_after_method_name.rb +39 -0
  214. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_after_not.rb +39 -0
  215. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_after_semicolon.rb +39 -0
  216. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_around_block_parameters.rb +162 -0
  217. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_around_equals_in_parameter_default.rb +89 -0
  218. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_around_keyword.rb +276 -0
  219. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_around_method_call_operator.rb +98 -0
  220. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_around_operators.rb +307 -0
  221. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_before_block_braces.rb +164 -0
  222. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_before_brackets.rb +40 -0
  223. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_before_comma.rb +29 -0
  224. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_before_comment.rb +34 -0
  225. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_before_first_arg.rb +73 -0
  226. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_before_semicolon.rb +24 -0
  227. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_in_lambda_literal.rb +79 -0
  228. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_array_literal_brackets.rb +239 -0
  229. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_array_percent_literal.rb +46 -0
  230. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_block_braces.rb +268 -0
  231. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_hash_literal_braces.rb +215 -0
  232. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_parens.rb +176 -0
  233. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_percent_literal_delimiters.rb +94 -0
  234. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_range_literal.rb +54 -0
  235. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_reference_brackets.rb +143 -0
  236. data/rubocop-1.88.1/lib/rubocop/cop/layout/space_inside_string_interpolation.rb +63 -0
  237. data/rubocop-1.88.1/lib/rubocop/cop/layout/trailing_empty_lines.rb +113 -0
  238. data/rubocop-1.88.1/lib/rubocop/cop/layout/trailing_whitespace.rb +133 -0
  239. data/rubocop-1.88.1/lib/rubocop/cop/legacy/corrections_proxy.rb +43 -0
  240. data/rubocop-1.88.1/lib/rubocop/cop/legacy/corrector.rb +37 -0
  241. data/rubocop-1.88.1/lib/rubocop/cop/lint/ambiguous_assignment.rb +44 -0
  242. data/rubocop-1.88.1/lib/rubocop/cop/lint/ambiguous_block_association.rb +105 -0
  243. data/rubocop-1.88.1/lib/rubocop/cop/lint/ambiguous_operator.rb +105 -0
  244. data/rubocop-1.88.1/lib/rubocop/cop/lint/ambiguous_operator_precedence.rb +102 -0
  245. data/rubocop-1.88.1/lib/rubocop/cop/lint/ambiguous_range.rb +113 -0
  246. data/rubocop-1.88.1/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb +78 -0
  247. data/rubocop-1.88.1/lib/rubocop/cop/lint/array_literal_in_regexp.rb +118 -0
  248. data/rubocop-1.88.1/lib/rubocop/cop/lint/assignment_in_condition.rb +119 -0
  249. data/rubocop-1.88.1/lib/rubocop/cop/lint/big_decimal_new.rb +41 -0
  250. data/rubocop-1.88.1/lib/rubocop/cop/lint/binary_operator_with_identical_operands.rb +66 -0
  251. data/rubocop-1.88.1/lib/rubocop/cop/lint/boolean_symbol.rb +61 -0
  252. data/rubocop-1.88.1/lib/rubocop/cop/lint/circular_argument_reference.rb +104 -0
  253. data/rubocop-1.88.1/lib/rubocop/cop/lint/constant_definition_in_block.rb +100 -0
  254. data/rubocop-1.88.1/lib/rubocop/cop/lint/constant_overwritten_in_rescue.rb +52 -0
  255. data/rubocop-1.88.1/lib/rubocop/cop/lint/constant_reassignment.rb +230 -0
  256. data/rubocop-1.88.1/lib/rubocop/cop/lint/constant_resolution.rb +93 -0
  257. data/rubocop-1.88.1/lib/rubocop/cop/lint/cop_directive_syntax.rb +90 -0
  258. data/rubocop-1.88.1/lib/rubocop/cop/lint/data_define_override.rb +63 -0
  259. data/rubocop-1.88.1/lib/rubocop/cop/lint/debugger.rb +143 -0
  260. data/rubocop-1.88.1/lib/rubocop/cop/lint/deprecated_class_methods.rb +118 -0
  261. data/rubocop-1.88.1/lib/rubocop/cop/lint/deprecated_constants.rb +82 -0
  262. data/rubocop-1.88.1/lib/rubocop/cop/lint/deprecated_open_ssl_constant.rb +148 -0
  263. data/rubocop-1.88.1/lib/rubocop/cop/lint/disjunctive_assignment_in_constructor.rb +110 -0
  264. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_branch.rb +188 -0
  265. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_case_condition.rb +39 -0
  266. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_elsif_condition.rb +39 -0
  267. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_hash_key.rb +33 -0
  268. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_magic_comment.rb +73 -0
  269. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_match_pattern.rb +122 -0
  270. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_methods.rb +445 -0
  271. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_regexp_character_class_element.rb +84 -0
  272. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_require.rb +56 -0
  273. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_rescue_exception.rb +47 -0
  274. data/rubocop-1.88.1/lib/rubocop/cop/lint/duplicate_set_element.rb +87 -0
  275. data/rubocop-1.88.1/lib/rubocop/cop/lint/each_with_object_argument.rb +40 -0
  276. data/rubocop-1.88.1/lib/rubocop/cop/lint/else_layout.rb +107 -0
  277. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_block.rb +94 -0
  278. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_class.rb +95 -0
  279. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_conditional_body.rb +153 -0
  280. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_ensure.rb +48 -0
  281. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_expression.rb +40 -0
  282. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_file.rb +46 -0
  283. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_in_pattern.rb +71 -0
  284. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_interpolation.rb +42 -0
  285. data/rubocop-1.88.1/lib/rubocop/cop/lint/empty_when.rb +68 -0
  286. data/rubocop-1.88.1/lib/rubocop/cop/lint/ensure_return.rb +69 -0
  287. data/rubocop-1.88.1/lib/rubocop/cop/lint/erb_new_arguments.rb +164 -0
  288. data/rubocop-1.88.1/lib/rubocop/cop/lint/flip_flop.rb +38 -0
  289. data/rubocop-1.88.1/lib/rubocop/cop/lint/float_comparison.rb +137 -0
  290. data/rubocop-1.88.1/lib/rubocop/cop/lint/float_out_of_range.rb +28 -0
  291. data/rubocop-1.88.1/lib/rubocop/cop/lint/format_parameter_mismatch.rb +191 -0
  292. data/rubocop-1.88.1/lib/rubocop/cop/lint/hash_compare_by_identity.rb +48 -0
  293. data/rubocop-1.88.1/lib/rubocop/cop/lint/hash_new_with_keyword_arguments_as_default.rb +55 -0
  294. data/rubocop-1.88.1/lib/rubocop/cop/lint/heredoc_method_call_position.rb +152 -0
  295. data/rubocop-1.88.1/lib/rubocop/cop/lint/identity_comparison.rb +54 -0
  296. data/rubocop-1.88.1/lib/rubocop/cop/lint/implicit_string_concatenation.rb +112 -0
  297. data/rubocop-1.88.1/lib/rubocop/cop/lint/incompatible_io_select_with_fiber_scheduler.rb +85 -0
  298. data/rubocop-1.88.1/lib/rubocop/cop/lint/ineffective_access_modifier.rb +114 -0
  299. data/rubocop-1.88.1/lib/rubocop/cop/lint/inherit_exception.rb +105 -0
  300. data/rubocop-1.88.1/lib/rubocop/cop/lint/interpolation_check.rb +84 -0
  301. data/rubocop-1.88.1/lib/rubocop/cop/lint/it_without_arguments_in_block.rb +50 -0
  302. data/rubocop-1.88.1/lib/rubocop/cop/lint/lambda_without_literal_block.rb +51 -0
  303. data/rubocop-1.88.1/lib/rubocop/cop/lint/literal_as_condition.rb +283 -0
  304. data/rubocop-1.88.1/lib/rubocop/cop/lint/literal_assignment_in_condition.rb +95 -0
  305. data/rubocop-1.88.1/lib/rubocop/cop/lint/literal_in_interpolation.rb +207 -0
  306. data/rubocop-1.88.1/lib/rubocop/cop/lint/loop.rb +80 -0
  307. data/rubocop-1.88.1/lib/rubocop/cop/lint/missing_cop_enable_directive.rb +120 -0
  308. data/rubocop-1.88.1/lib/rubocop/cop/lint/missing_super.rb +159 -0
  309. data/rubocop-1.88.1/lib/rubocop/cop/lint/mixed_case_range.rb +113 -0
  310. data/rubocop-1.88.1/lib/rubocop/cop/lint/mixed_regexp_capture_types.rb +37 -0
  311. data/rubocop-1.88.1/lib/rubocop/cop/lint/multiple_comparison.rb +48 -0
  312. data/rubocop-1.88.1/lib/rubocop/cop/lint/nested_method_definition.rb +142 -0
  313. data/rubocop-1.88.1/lib/rubocop/cop/lint/nested_percent_literal.rb +63 -0
  314. data/rubocop-1.88.1/lib/rubocop/cop/lint/next_without_accumulator.rb +53 -0
  315. data/rubocop-1.88.1/lib/rubocop/cop/lint/no_return_in_begin_end_blocks.rb +73 -0
  316. data/rubocop-1.88.1/lib/rubocop/cop/lint/non_atomic_file_operation.rb +174 -0
  317. data/rubocop-1.88.1/lib/rubocop/cop/lint/non_deterministic_require_order.rb +185 -0
  318. data/rubocop-1.88.1/lib/rubocop/cop/lint/non_local_exit_from_iterator.rb +86 -0
  319. data/rubocop-1.88.1/lib/rubocop/cop/lint/number_conversion.rb +209 -0
  320. data/rubocop-1.88.1/lib/rubocop/cop/lint/numbered_parameter_assignment.rb +46 -0
  321. data/rubocop-1.88.1/lib/rubocop/cop/lint/numeric_operation_with_constant_result.rb +97 -0
  322. data/rubocop-1.88.1/lib/rubocop/cop/lint/or_assignment_to_constant.rb +41 -0
  323. data/rubocop-1.88.1/lib/rubocop/cop/lint/ordered_magic_comments.rb +81 -0
  324. data/rubocop-1.88.1/lib/rubocop/cop/lint/out_of_range_regexp_ref.rb +129 -0
  325. data/rubocop-1.88.1/lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb +77 -0
  326. data/rubocop-1.88.1/lib/rubocop/cop/lint/percent_string_array.rb +74 -0
  327. data/rubocop-1.88.1/lib/rubocop/cop/lint/percent_symbol_array.rb +64 -0
  328. data/rubocop-1.88.1/lib/rubocop/cop/lint/raise_exception.rb +110 -0
  329. data/rubocop-1.88.1/lib/rubocop/cop/lint/rand_one.rb +42 -0
  330. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_cop_disable_directive.rb +347 -0
  331. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_cop_enable_directive.rb +129 -0
  332. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_dir_glob_sort.rb +73 -0
  333. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_regexp_quantifiers.rb +130 -0
  334. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_require_statement.rb +80 -0
  335. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_safe_navigation.rb +283 -0
  336. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_splat_expansion.rb +220 -0
  337. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_string_coercion.rb +68 -0
  338. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_type_conversion.rb +268 -0
  339. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_with_index.rb +87 -0
  340. data/rubocop-1.88.1/lib/rubocop/cop/lint/redundant_with_object.rb +87 -0
  341. data/rubocop-1.88.1/lib/rubocop/cop/lint/refinement_import_methods.rb +59 -0
  342. data/rubocop-1.88.1/lib/rubocop/cop/lint/regexp_as_condition.rb +44 -0
  343. data/rubocop-1.88.1/lib/rubocop/cop/lint/require_parentheses.rb +71 -0
  344. data/rubocop-1.88.1/lib/rubocop/cop/lint/require_range_parentheses.rb +58 -0
  345. data/rubocop-1.88.1/lib/rubocop/cop/lint/require_relative_self_path.rb +52 -0
  346. data/rubocop-1.88.1/lib/rubocop/cop/lint/rescue_exception.rb +38 -0
  347. data/rubocop-1.88.1/lib/rubocop/cop/lint/rescue_type.rb +82 -0
  348. data/rubocop-1.88.1/lib/rubocop/cop/lint/return_in_void_context.rb +55 -0
  349. data/rubocop-1.88.1/lib/rubocop/cop/lint/safe_navigation_chain.rb +134 -0
  350. data/rubocop-1.88.1/lib/rubocop/cop/lint/safe_navigation_consistency.rb +166 -0
  351. data/rubocop-1.88.1/lib/rubocop/cop/lint/safe_navigation_with_empty.rb +46 -0
  352. data/rubocop-1.88.1/lib/rubocop/cop/lint/script_permission.rb +77 -0
  353. data/rubocop-1.88.1/lib/rubocop/cop/lint/self_assignment.rb +171 -0
  354. data/rubocop-1.88.1/lib/rubocop/cop/lint/send_with_mixin_argument.rb +83 -0
  355. data/rubocop-1.88.1/lib/rubocop/cop/lint/shadowed_argument.rb +177 -0
  356. data/rubocop-1.88.1/lib/rubocop/cop/lint/shadowed_exception.rb +165 -0
  357. data/rubocop-1.88.1/lib/rubocop/cop/lint/shadowing_outer_local_variable.rb +130 -0
  358. data/rubocop-1.88.1/lib/rubocop/cop/lint/shared_mutable_default.rb +78 -0
  359. data/rubocop-1.88.1/lib/rubocop/cop/lint/struct_new_override.rb +75 -0
  360. data/rubocop-1.88.1/lib/rubocop/cop/lint/suppressed_exception.rb +132 -0
  361. data/rubocop-1.88.1/lib/rubocop/cop/lint/suppressed_exception_in_number_conversion.rb +123 -0
  362. data/rubocop-1.88.1/lib/rubocop/cop/lint/symbol_conversion.rb +201 -0
  363. data/rubocop-1.88.1/lib/rubocop/cop/lint/syntax.rb +73 -0
  364. data/rubocop-1.88.1/lib/rubocop/cop/lint/to_enum_arguments.rb +132 -0
  365. data/rubocop-1.88.1/lib/rubocop/cop/lint/to_json.rb +45 -0
  366. data/rubocop-1.88.1/lib/rubocop/cop/lint/top_level_return_with_argument.rb +48 -0
  367. data/rubocop-1.88.1/lib/rubocop/cop/lint/trailing_comma_in_attribute_declaration.rb +59 -0
  368. data/rubocop-1.88.1/lib/rubocop/cop/lint/triple_quotes.rb +71 -0
  369. data/rubocop-1.88.1/lib/rubocop/cop/lint/underscore_prefixed_variable_name.rb +80 -0
  370. data/rubocop-1.88.1/lib/rubocop/cop/lint/unescaped_bracket_in_regexp.rb +114 -0
  371. data/rubocop-1.88.1/lib/rubocop/cop/lint/unexpected_block_arity.rb +92 -0
  372. data/rubocop-1.88.1/lib/rubocop/cop/lint/unified_integer.rb +40 -0
  373. data/rubocop-1.88.1/lib/rubocop/cop/lint/unmodified_reduce_accumulator.rb +206 -0
  374. data/rubocop-1.88.1/lib/rubocop/cop/lint/unreachable_code.rb +146 -0
  375. data/rubocop-1.88.1/lib/rubocop/cop/lint/unreachable_loop.rb +208 -0
  376. data/rubocop-1.88.1/lib/rubocop/cop/lint/unreachable_pattern_branch.rb +113 -0
  377. data/rubocop-1.88.1/lib/rubocop/cop/lint/unused_block_argument.rb +172 -0
  378. data/rubocop-1.88.1/lib/rubocop/cop/lint/unused_method_argument.rb +147 -0
  379. data/rubocop-1.88.1/lib/rubocop/cop/lint/uri_escape_unescape.rb +81 -0
  380. data/rubocop-1.88.1/lib/rubocop/cop/lint/uri_regexp.rb +56 -0
  381. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_access_modifier.rb +321 -0
  382. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_assignment.rb +242 -0
  383. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_constant_scoping.rb +71 -0
  384. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_default_value_argument.rb +92 -0
  385. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_defined.rb +55 -0
  386. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_else_without_rescue.rb +44 -0
  387. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_method_definition.rb +77 -0
  388. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_numeric_operation.rb +79 -0
  389. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_or.rb +111 -0
  390. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_rescue.rb +89 -0
  391. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_ruby2_keywords.rb +131 -0
  392. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_setter_call.rb +161 -0
  393. data/rubocop-1.88.1/lib/rubocop/cop/lint/useless_times.rb +135 -0
  394. data/rubocop-1.88.1/lib/rubocop/cop/lint/utils/nil_receiver_checker.rb +147 -0
  395. data/rubocop-1.88.1/lib/rubocop/cop/lint/void.rb +299 -0
  396. data/rubocop-1.88.1/lib/rubocop/cop/message_annotator.rb +134 -0
  397. data/rubocop-1.88.1/lib/rubocop/cop/metrics/abc_size.rb +56 -0
  398. data/rubocop-1.88.1/lib/rubocop/cop/metrics/block_length.rb +88 -0
  399. data/rubocop-1.88.1/lib/rubocop/cop/metrics/block_nesting.rb +95 -0
  400. data/rubocop-1.88.1/lib/rubocop/cop/metrics/class_length.rb +77 -0
  401. data/rubocop-1.88.1/lib/rubocop/cop/metrics/collection_literal_length.rb +83 -0
  402. data/rubocop-1.88.1/lib/rubocop/cop/metrics/cyclomatic_complexity.rb +58 -0
  403. data/rubocop-1.88.1/lib/rubocop/cop/metrics/method_length.rb +80 -0
  404. data/rubocop-1.88.1/lib/rubocop/cop/metrics/module_length.rb +62 -0
  405. data/rubocop-1.88.1/lib/rubocop/cop/metrics/parameter_lists.rb +147 -0
  406. data/rubocop-1.88.1/lib/rubocop/cop/metrics/perceived_complexity.rb +90 -0
  407. data/rubocop-1.88.1/lib/rubocop/cop/metrics/utils/abc_size_calculator.rb +141 -0
  408. data/rubocop-1.88.1/lib/rubocop/cop/metrics/utils/code_length_calculator.rb +209 -0
  409. data/rubocop-1.88.1/lib/rubocop/cop/metrics/utils/iterating_block.rb +61 -0
  410. data/rubocop-1.88.1/lib/rubocop/cop/metrics/utils/repeated_attribute_discount.rb +143 -0
  411. data/rubocop-1.88.1/lib/rubocop/cop/metrics/utils/repeated_csend_discount.rb +42 -0
  412. data/rubocop-1.88.1/lib/rubocop/cop/migration/department_name.rb +92 -0
  413. data/rubocop-1.88.1/lib/rubocop/cop/mixin/alignment.rb +85 -0
  414. data/rubocop-1.88.1/lib/rubocop/cop/mixin/allowed_identifiers.rb +18 -0
  415. data/rubocop-1.88.1/lib/rubocop/cop/mixin/allowed_methods.rb +48 -0
  416. data/rubocop-1.88.1/lib/rubocop/cop/mixin/allowed_pattern.rb +68 -0
  417. data/rubocop-1.88.1/lib/rubocop/cop/mixin/allowed_receivers.rb +34 -0
  418. data/rubocop-1.88.1/lib/rubocop/cop/mixin/annotation_comment.rb +70 -0
  419. data/rubocop-1.88.1/lib/rubocop/cop/mixin/array_min_size.rb +57 -0
  420. data/rubocop-1.88.1/lib/rubocop/cop/mixin/array_syntax.rb +17 -0
  421. data/rubocop-1.88.1/lib/rubocop/cop/mixin/auto_corrector.rb +12 -0
  422. data/rubocop-1.88.1/lib/rubocop/cop/mixin/check_assignment.rb +36 -0
  423. data/rubocop-1.88.1/lib/rubocop/cop/mixin/check_line_breakable.rb +237 -0
  424. data/rubocop-1.88.1/lib/rubocop/cop/mixin/check_single_line_suitability.rb +47 -0
  425. data/rubocop-1.88.1/lib/rubocop/cop/mixin/code_length.rb +70 -0
  426. data/rubocop-1.88.1/lib/rubocop/cop/mixin/comments_help.rb +95 -0
  427. data/rubocop-1.88.1/lib/rubocop/cop/mixin/configurable_enforced_style.rb +112 -0
  428. data/rubocop-1.88.1/lib/rubocop/cop/mixin/configurable_formatting.rb +41 -0
  429. data/rubocop-1.88.1/lib/rubocop/cop/mixin/configurable_max.rb +29 -0
  430. data/rubocop-1.88.1/lib/rubocop/cop/mixin/configurable_naming.rb +16 -0
  431. data/rubocop-1.88.1/lib/rubocop/cop/mixin/configurable_numbering.rb +18 -0
  432. data/rubocop-1.88.1/lib/rubocop/cop/mixin/def_node.rb +26 -0
  433. data/rubocop-1.88.1/lib/rubocop/cop/mixin/dig_help.rb +27 -0
  434. data/rubocop-1.88.1/lib/rubocop/cop/mixin/documentation_comment.rb +52 -0
  435. data/rubocop-1.88.1/lib/rubocop/cop/mixin/duplication.rb +46 -0
  436. data/rubocop-1.88.1/lib/rubocop/cop/mixin/empty_lines_around_body.rb +172 -0
  437. data/rubocop-1.88.1/lib/rubocop/cop/mixin/empty_parameter.rb +25 -0
  438. data/rubocop-1.88.1/lib/rubocop/cop/mixin/end_keyword_alignment.rb +74 -0
  439. data/rubocop-1.88.1/lib/rubocop/cop/mixin/endless_method_rewriter.rb +24 -0
  440. data/rubocop-1.88.1/lib/rubocop/cop/mixin/enforce_superclass.rb +44 -0
  441. data/rubocop-1.88.1/lib/rubocop/cop/mixin/first_element_line_break.rb +50 -0
  442. data/rubocop-1.88.1/lib/rubocop/cop/mixin/forbidden_identifiers.rb +20 -0
  443. data/rubocop-1.88.1/lib/rubocop/cop/mixin/forbidden_pattern.rb +16 -0
  444. data/rubocop-1.88.1/lib/rubocop/cop/mixin/frozen_string_literal.rb +99 -0
  445. data/rubocop-1.88.1/lib/rubocop/cop/mixin/gem_declaration.rb +13 -0
  446. data/rubocop-1.88.1/lib/rubocop/cop/mixin/gemspec_help.rb +52 -0
  447. data/rubocop-1.88.1/lib/rubocop/cop/mixin/hash_alignment_styles.rb +157 -0
  448. data/rubocop-1.88.1/lib/rubocop/cop/mixin/hash_shorthand_syntax.rb +236 -0
  449. data/rubocop-1.88.1/lib/rubocop/cop/mixin/hash_subset.rb +211 -0
  450. data/rubocop-1.88.1/lib/rubocop/cop/mixin/hash_transform_method/autocorrection.rb +63 -0
  451. data/rubocop-1.88.1/lib/rubocop/cop/mixin/hash_transform_method.rb +146 -0
  452. data/rubocop-1.88.1/lib/rubocop/cop/mixin/heredoc.rb +41 -0
  453. data/rubocop-1.88.1/lib/rubocop/cop/mixin/integer_node.rb +14 -0
  454. data/rubocop-1.88.1/lib/rubocop/cop/mixin/interpolation.rb +25 -0
  455. data/rubocop-1.88.1/lib/rubocop/cop/mixin/line_length_help.rb +151 -0
  456. data/rubocop-1.88.1/lib/rubocop/cop/mixin/match_range.rb +23 -0
  457. data/rubocop-1.88.1/lib/rubocop/cop/mixin/method_complexity.rb +84 -0
  458. data/rubocop-1.88.1/lib/rubocop/cop/mixin/method_preference.rb +30 -0
  459. data/rubocop-1.88.1/lib/rubocop/cop/mixin/min_body_length.rb +21 -0
  460. data/rubocop-1.88.1/lib/rubocop/cop/mixin/min_branches_count.rb +40 -0
  461. data/rubocop-1.88.1/lib/rubocop/cop/mixin/multiline_element_indentation.rb +109 -0
  462. data/rubocop-1.88.1/lib/rubocop/cop/mixin/multiline_element_line_breaks.rb +32 -0
  463. data/rubocop-1.88.1/lib/rubocop/cop/mixin/multiline_expression_indentation.rb +226 -0
  464. data/rubocop-1.88.1/lib/rubocop/cop/mixin/multiline_literal_brace_layout.rb +141 -0
  465. data/rubocop-1.88.1/lib/rubocop/cop/mixin/negative_conditional.rb +34 -0
  466. data/rubocop-1.88.1/lib/rubocop/cop/mixin/nil_methods.rb +23 -0
  467. data/rubocop-1.88.1/lib/rubocop/cop/mixin/on_normal_if_unless.rb +14 -0
  468. data/rubocop-1.88.1/lib/rubocop/cop/mixin/ordered_gem_node.rb +66 -0
  469. data/rubocop-1.88.1/lib/rubocop/cop/mixin/parentheses.rb +16 -0
  470. data/rubocop-1.88.1/lib/rubocop/cop/mixin/percent_array.rb +125 -0
  471. data/rubocop-1.88.1/lib/rubocop/cop/mixin/percent_literal.rb +32 -0
  472. data/rubocop-1.88.1/lib/rubocop/cop/mixin/preceding_following_alignment.rb +219 -0
  473. data/rubocop-1.88.1/lib/rubocop/cop/mixin/preferred_delimiters.rb +50 -0
  474. data/rubocop-1.88.1/lib/rubocop/cop/mixin/project_index_help.rb +48 -0
  475. data/rubocop-1.88.1/lib/rubocop/cop/mixin/range_help.rb +160 -0
  476. data/rubocop-1.88.1/lib/rubocop/cop/mixin/rational_literal.rb +19 -0
  477. data/rubocop-1.88.1/lib/rubocop/cop/mixin/require_library.rb +61 -0
  478. data/rubocop-1.88.1/lib/rubocop/cop/mixin/rescue_node.rb +34 -0
  479. data/rubocop-1.88.1/lib/rubocop/cop/mixin/safe_assignment.rb +27 -0
  480. data/rubocop-1.88.1/lib/rubocop/cop/mixin/space_after_punctuation.rb +55 -0
  481. data/rubocop-1.88.1/lib/rubocop/cop/mixin/space_before_punctuation.rb +49 -0
  482. data/rubocop-1.88.1/lib/rubocop/cop/mixin/statement_modifier.rb +109 -0
  483. data/rubocop-1.88.1/lib/rubocop/cop/mixin/string_help.rb +40 -0
  484. data/rubocop-1.88.1/lib/rubocop/cop/mixin/string_literals_help.rb +33 -0
  485. data/rubocop-1.88.1/lib/rubocop/cop/mixin/surrounding_space.rb +134 -0
  486. data/rubocop-1.88.1/lib/rubocop/cop/mixin/symbol_help.rb +13 -0
  487. data/rubocop-1.88.1/lib/rubocop/cop/mixin/target_ruby_version.rb +36 -0
  488. data/rubocop-1.88.1/lib/rubocop/cop/mixin/trailing_body.rb +25 -0
  489. data/rubocop-1.88.1/lib/rubocop/cop/mixin/trailing_comma.rb +228 -0
  490. data/rubocop-1.88.1/lib/rubocop/cop/mixin/uncommunicative_name.rb +104 -0
  491. data/rubocop-1.88.1/lib/rubocop/cop/mixin/unused_argument.rb +29 -0
  492. data/rubocop-1.88.1/lib/rubocop/cop/mixin/visibility_help.rb +72 -0
  493. data/rubocop-1.88.1/lib/rubocop/cop/mixin.rb +86 -0
  494. data/rubocop-1.88.1/lib/rubocop/cop/naming/accessor_method_name.rb +78 -0
  495. data/rubocop-1.88.1/lib/rubocop/cop/naming/ascii_identifiers.rb +90 -0
  496. data/rubocop-1.88.1/lib/rubocop/cop/naming/binary_operator_parameter_name.rb +53 -0
  497. data/rubocop-1.88.1/lib/rubocop/cop/naming/block_forwarding.rb +156 -0
  498. data/rubocop-1.88.1/lib/rubocop/cop/naming/block_parameter_name.rb +49 -0
  499. data/rubocop-1.88.1/lib/rubocop/cop/naming/class_and_module_camel_case.rb +45 -0
  500. data/rubocop-1.88.1/lib/rubocop/cop/naming/constant_name.rb +82 -0
  501. data/rubocop-1.88.1/lib/rubocop/cop/naming/file_name.rb +246 -0
  502. data/rubocop-1.88.1/lib/rubocop/cop/naming/heredoc_delimiter_case.rb +68 -0
  503. data/rubocop-1.88.1/lib/rubocop/cop/naming/heredoc_delimiter_naming.rb +57 -0
  504. data/rubocop-1.88.1/lib/rubocop/cop/naming/inclusive_language.rb +303 -0
  505. data/rubocop-1.88.1/lib/rubocop/cop/naming/memoized_instance_variable_name.rb +303 -0
  506. data/rubocop-1.88.1/lib/rubocop/cop/naming/method_name.rb +253 -0
  507. data/rubocop-1.88.1/lib/rubocop/cop/naming/method_parameter_name.rb +58 -0
  508. data/rubocop-1.88.1/lib/rubocop/cop/naming/predicate_method.rb +330 -0
  509. data/rubocop-1.88.1/lib/rubocop/cop/naming/predicate_prefix.rb +204 -0
  510. data/rubocop-1.88.1/lib/rubocop/cop/naming/rescued_exceptions_variable_name.rb +178 -0
  511. data/rubocop-1.88.1/lib/rubocop/cop/naming/variable_name.rb +112 -0
  512. data/rubocop-1.88.1/lib/rubocop/cop/naming/variable_number.rb +155 -0
  513. data/rubocop-1.88.1/lib/rubocop/cop/offense.rb +254 -0
  514. data/rubocop-1.88.1/lib/rubocop/cop/registry.rb +342 -0
  515. data/rubocop-1.88.1/lib/rubocop/cop/security/compound_hash.rb +108 -0
  516. data/rubocop-1.88.1/lib/rubocop/cop/security/eval.rb +47 -0
  517. data/rubocop-1.88.1/lib/rubocop/cop/security/io_methods.rb +49 -0
  518. data/rubocop-1.88.1/lib/rubocop/cop/security/json_load.rb +69 -0
  519. data/rubocop-1.88.1/lib/rubocop/cop/security/marshal_load.rb +39 -0
  520. data/rubocop-1.88.1/lib/rubocop/cop/security/open.rb +90 -0
  521. data/rubocop-1.88.1/lib/rubocop/cop/security/yaml_load.rb +50 -0
  522. data/rubocop-1.88.1/lib/rubocop/cop/severity.rb +67 -0
  523. data/rubocop-1.88.1/lib/rubocop/cop/style/access_modifier_declarations.rb +376 -0
  524. data/rubocop-1.88.1/lib/rubocop/cop/style/accessor_grouping.rb +226 -0
  525. data/rubocop-1.88.1/lib/rubocop/cop/style/alias.rb +170 -0
  526. data/rubocop-1.88.1/lib/rubocop/cop/style/ambiguous_endless_method_definition.rb +79 -0
  527. data/rubocop-1.88.1/lib/rubocop/cop/style/and_or.rb +159 -0
  528. data/rubocop-1.88.1/lib/rubocop/cop/style/arguments_forwarding.rb +582 -0
  529. data/rubocop-1.88.1/lib/rubocop/cop/style/array_coercion.rb +87 -0
  530. data/rubocop-1.88.1/lib/rubocop/cop/style/array_first_last.rb +91 -0
  531. data/rubocop-1.88.1/lib/rubocop/cop/style/array_intersect.rb +199 -0
  532. data/rubocop-1.88.1/lib/rubocop/cop/style/array_intersect_with_single_element.rb +50 -0
  533. data/rubocop-1.88.1/lib/rubocop/cop/style/array_join.rb +41 -0
  534. data/rubocop-1.88.1/lib/rubocop/cop/style/ascii_comments.rb +60 -0
  535. data/rubocop-1.88.1/lib/rubocop/cop/style/attr.rb +83 -0
  536. data/rubocop-1.88.1/lib/rubocop/cop/style/auto_resource_cleanup.rb +55 -0
  537. data/rubocop-1.88.1/lib/rubocop/cop/style/bare_percent_literals.rb +77 -0
  538. data/rubocop-1.88.1/lib/rubocop/cop/style/begin_block.rb +23 -0
  539. data/rubocop-1.88.1/lib/rubocop/cop/style/bisected_attr_accessor/macro.rb +60 -0
  540. data/rubocop-1.88.1/lib/rubocop/cop/style/bisected_attr_accessor.rb +125 -0
  541. data/rubocop-1.88.1/lib/rubocop/cop/style/bitwise_predicate.rb +107 -0
  542. data/rubocop-1.88.1/lib/rubocop/cop/style/block_comments.rb +66 -0
  543. data/rubocop-1.88.1/lib/rubocop/cop/style/block_delimiters.rb +510 -0
  544. data/rubocop-1.88.1/lib/rubocop/cop/style/case_equality.rb +122 -0
  545. data/rubocop-1.88.1/lib/rubocop/cop/style/case_like_if.rb +277 -0
  546. data/rubocop-1.88.1/lib/rubocop/cop/style/character_literal.rb +57 -0
  547. data/rubocop-1.88.1/lib/rubocop/cop/style/class_and_module_children.rb +244 -0
  548. data/rubocop-1.88.1/lib/rubocop/cop/style/class_check.rb +55 -0
  549. data/rubocop-1.88.1/lib/rubocop/cop/style/class_equality_comparison.rb +142 -0
  550. data/rubocop-1.88.1/lib/rubocop/cop/style/class_methods.rb +54 -0
  551. data/rubocop-1.88.1/lib/rubocop/cop/style/class_methods_definitions.rb +164 -0
  552. data/rubocop-1.88.1/lib/rubocop/cop/style/class_vars.rb +64 -0
  553. data/rubocop-1.88.1/lib/rubocop/cop/style/collection_compact.rb +163 -0
  554. data/rubocop-1.88.1/lib/rubocop/cop/style/collection_methods.rb +93 -0
  555. data/rubocop-1.88.1/lib/rubocop/cop/style/collection_querying.rb +167 -0
  556. data/rubocop-1.88.1/lib/rubocop/cop/style/colon_method_call.rb +55 -0
  557. data/rubocop-1.88.1/lib/rubocop/cop/style/colon_method_definition.rb +37 -0
  558. data/rubocop-1.88.1/lib/rubocop/cop/style/combinable_defined.rb +115 -0
  559. data/rubocop-1.88.1/lib/rubocop/cop/style/combinable_loops.rb +136 -0
  560. data/rubocop-1.88.1/lib/rubocop/cop/style/command_literal.rb +181 -0
  561. data/rubocop-1.88.1/lib/rubocop/cop/style/comment_annotation.rb +130 -0
  562. data/rubocop-1.88.1/lib/rubocop/cop/style/commented_keyword.rb +118 -0
  563. data/rubocop-1.88.1/lib/rubocop/cop/style/comparable_between.rb +78 -0
  564. data/rubocop-1.88.1/lib/rubocop/cop/style/comparable_clamp.rb +136 -0
  565. data/rubocop-1.88.1/lib/rubocop/cop/style/concat_array_literals.rb +101 -0
  566. data/rubocop-1.88.1/lib/rubocop/cop/style/conditional_assignment.rb +671 -0
  567. data/rubocop-1.88.1/lib/rubocop/cop/style/constant_visibility.rb +105 -0
  568. data/rubocop-1.88.1/lib/rubocop/cop/style/copyright.rb +120 -0
  569. data/rubocop-1.88.1/lib/rubocop/cop/style/data_inheritance.rb +86 -0
  570. data/rubocop-1.88.1/lib/rubocop/cop/style/date_time.rb +94 -0
  571. data/rubocop-1.88.1/lib/rubocop/cop/style/def_with_parentheses.rb +70 -0
  572. data/rubocop-1.88.1/lib/rubocop/cop/style/dig_chain.rb +94 -0
  573. data/rubocop-1.88.1/lib/rubocop/cop/style/dir.rb +50 -0
  574. data/rubocop-1.88.1/lib/rubocop/cop/style/dir_empty.rb +58 -0
  575. data/rubocop-1.88.1/lib/rubocop/cop/style/disable_cops_within_source_code_directive.rb +87 -0
  576. data/rubocop-1.88.1/lib/rubocop/cop/style/document_dynamic_eval_definition.rb +174 -0
  577. data/rubocop-1.88.1/lib/rubocop/cop/style/documentation.rb +198 -0
  578. data/rubocop-1.88.1/lib/rubocop/cop/style/documentation_method.rb +152 -0
  579. data/rubocop-1.88.1/lib/rubocop/cop/style/double_cop_disable_directive.rb +46 -0
  580. data/rubocop-1.88.1/lib/rubocop/cop/style/double_negation.rb +159 -0
  581. data/rubocop-1.88.1/lib/rubocop/cop/style/each_for_simple_loop.rb +86 -0
  582. data/rubocop-1.88.1/lib/rubocop/cop/style/each_with_object.rb +140 -0
  583. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_block_parameter.rb +47 -0
  584. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_case_condition.rb +127 -0
  585. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_class_definition.rb +126 -0
  586. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_else.rb +207 -0
  587. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_heredoc.rb +64 -0
  588. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_lambda_parameter.rb +44 -0
  589. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_literal.rb +156 -0
  590. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_method.rb +113 -0
  591. data/rubocop-1.88.1/lib/rubocop/cop/style/empty_string_inside_interpolation.rb +110 -0
  592. data/rubocop-1.88.1/lib/rubocop/cop/style/encoding.rb +69 -0
  593. data/rubocop-1.88.1/lib/rubocop/cop/style/end_block.rb +30 -0
  594. data/rubocop-1.88.1/lib/rubocop/cop/style/endless_method.rb +251 -0
  595. data/rubocop-1.88.1/lib/rubocop/cop/style/env_home.rb +60 -0
  596. data/rubocop-1.88.1/lib/rubocop/cop/style/eval_with_location.rb +229 -0
  597. data/rubocop-1.88.1/lib/rubocop/cop/style/even_odd.rb +66 -0
  598. data/rubocop-1.88.1/lib/rubocop/cop/style/exact_regexp_match.rb +76 -0
  599. data/rubocop-1.88.1/lib/rubocop/cop/style/expand_path_arguments.rb +191 -0
  600. data/rubocop-1.88.1/lib/rubocop/cop/style/explicit_block_argument.rb +166 -0
  601. data/rubocop-1.88.1/lib/rubocop/cop/style/exponential_notation.rb +117 -0
  602. data/rubocop-1.88.1/lib/rubocop/cop/style/fetch_env_var.rb +159 -0
  603. data/rubocop-1.88.1/lib/rubocop/cop/style/file_empty.rb +71 -0
  604. data/rubocop-1.88.1/lib/rubocop/cop/style/file_null.rb +91 -0
  605. data/rubocop-1.88.1/lib/rubocop/cop/style/file_open.rb +84 -0
  606. data/rubocop-1.88.1/lib/rubocop/cop/style/file_read.rb +109 -0
  607. data/rubocop-1.88.1/lib/rubocop/cop/style/file_touch.rb +75 -0
  608. data/rubocop-1.88.1/lib/rubocop/cop/style/file_write.rb +138 -0
  609. data/rubocop-1.88.1/lib/rubocop/cop/style/float_division.rb +169 -0
  610. data/rubocop-1.88.1/lib/rubocop/cop/style/for.rb +93 -0
  611. data/rubocop-1.88.1/lib/rubocop/cop/style/format_string.rb +167 -0
  612. data/rubocop-1.88.1/lib/rubocop/cop/style/format_string_token.rb +299 -0
  613. data/rubocop-1.88.1/lib/rubocop/cop/style/frozen_string_literal_comment.rb +221 -0
  614. data/rubocop-1.88.1/lib/rubocop/cop/style/global_std_stream.rb +79 -0
  615. data/rubocop-1.88.1/lib/rubocop/cop/style/global_vars.rb +81 -0
  616. data/rubocop-1.88.1/lib/rubocop/cop/style/guard_clause.rb +324 -0
  617. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_as_last_array_item.rb +118 -0
  618. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_conversion.rb +151 -0
  619. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_each_methods.rb +221 -0
  620. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_except.rb +80 -0
  621. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_fetch_chain.rb +104 -0
  622. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_like_case.rb +71 -0
  623. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_lookup_method.rb +106 -0
  624. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_slice.rb +96 -0
  625. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_syntax.rb +309 -0
  626. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_transform_keys.rb +105 -0
  627. data/rubocop-1.88.1/lib/rubocop/cop/style/hash_transform_values.rb +103 -0
  628. data/rubocop-1.88.1/lib/rubocop/cop/style/identical_conditional_branches.rb +273 -0
  629. data/rubocop-1.88.1/lib/rubocop/cop/style/if_inside_else.rb +161 -0
  630. data/rubocop-1.88.1/lib/rubocop/cop/style/if_unless_modifier.rb +362 -0
  631. data/rubocop-1.88.1/lib/rubocop/cop/style/if_unless_modifier_of_if_unless.rb +44 -0
  632. data/rubocop-1.88.1/lib/rubocop/cop/style/if_with_boolean_literal_branches.rb +166 -0
  633. data/rubocop-1.88.1/lib/rubocop/cop/style/if_with_semicolon.rb +142 -0
  634. data/rubocop-1.88.1/lib/rubocop/cop/style/implicit_runtime_error.rb +34 -0
  635. data/rubocop-1.88.1/lib/rubocop/cop/style/in_pattern_then.rb +60 -0
  636. data/rubocop-1.88.1/lib/rubocop/cop/style/infinite_loop.rb +127 -0
  637. data/rubocop-1.88.1/lib/rubocop/cop/style/inline_comment.rb +37 -0
  638. data/rubocop-1.88.1/lib/rubocop/cop/style/inverse_methods.rb +200 -0
  639. data/rubocop-1.88.1/lib/rubocop/cop/style/invertible_unless_condition.rb +160 -0
  640. data/rubocop-1.88.1/lib/rubocop/cop/style/ip_addresses.rb +74 -0
  641. data/rubocop-1.88.1/lib/rubocop/cop/style/it_assignment.rb +93 -0
  642. data/rubocop-1.88.1/lib/rubocop/cop/style/it_block_parameter.rb +121 -0
  643. data/rubocop-1.88.1/lib/rubocop/cop/style/keyword_arguments_merging.rb +71 -0
  644. data/rubocop-1.88.1/lib/rubocop/cop/style/keyword_parameters_order.rb +85 -0
  645. data/rubocop-1.88.1/lib/rubocop/cop/style/lambda.rb +132 -0
  646. data/rubocop-1.88.1/lib/rubocop/cop/style/lambda_call.rb +79 -0
  647. data/rubocop-1.88.1/lib/rubocop/cop/style/line_end_concatenation.rb +143 -0
  648. data/rubocop-1.88.1/lib/rubocop/cop/style/magic_comment_format.rb +307 -0
  649. data/rubocop-1.88.1/lib/rubocop/cop/style/map_compact_with_conditional_block.rb +179 -0
  650. data/rubocop-1.88.1/lib/rubocop/cop/style/map_into_array.rb +236 -0
  651. data/rubocop-1.88.1/lib/rubocop/cop/style/map_join.rb +123 -0
  652. data/rubocop-1.88.1/lib/rubocop/cop/style/map_to_hash.rb +90 -0
  653. data/rubocop-1.88.1/lib/rubocop/cop/style/map_to_set.rb +63 -0
  654. data/rubocop-1.88.1/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb +259 -0
  655. data/rubocop-1.88.1/lib/rubocop/cop/style/method_call_with_args_parentheses/require_parentheses.rb +61 -0
  656. data/rubocop-1.88.1/lib/rubocop/cop/style/method_call_with_args_parentheses.rb +277 -0
  657. data/rubocop-1.88.1/lib/rubocop/cop/style/method_call_without_args_parentheses.rb +124 -0
  658. data/rubocop-1.88.1/lib/rubocop/cop/style/method_called_on_do_end_block.rb +55 -0
  659. data/rubocop-1.88.1/lib/rubocop/cop/style/method_def_parentheses.rb +178 -0
  660. data/rubocop-1.88.1/lib/rubocop/cop/style/min_max.rb +64 -0
  661. data/rubocop-1.88.1/lib/rubocop/cop/style/min_max_comparison.rb +94 -0
  662. data/rubocop-1.88.1/lib/rubocop/cop/style/missing_else.rb +185 -0
  663. data/rubocop-1.88.1/lib/rubocop/cop/style/missing_respond_to_missing.rb +82 -0
  664. data/rubocop-1.88.1/lib/rubocop/cop/style/mixin_grouping.rb +135 -0
  665. data/rubocop-1.88.1/lib/rubocop/cop/style/mixin_usage.rb +72 -0
  666. data/rubocop-1.88.1/lib/rubocop/cop/style/module_function.rb +170 -0
  667. data/rubocop-1.88.1/lib/rubocop/cop/style/module_member_existence_check.rb +110 -0
  668. data/rubocop-1.88.1/lib/rubocop/cop/style/multiline_block_chain.rb +51 -0
  669. data/rubocop-1.88.1/lib/rubocop/cop/style/multiline_if_modifier.rb +58 -0
  670. data/rubocop-1.88.1/lib/rubocop/cop/style/multiline_if_then.rb +44 -0
  671. data/rubocop-1.88.1/lib/rubocop/cop/style/multiline_in_pattern_then.rb +60 -0
  672. data/rubocop-1.88.1/lib/rubocop/cop/style/multiline_memoization.rb +102 -0
  673. data/rubocop-1.88.1/lib/rubocop/cop/style/multiline_method_signature.rb +100 -0
  674. data/rubocop-1.88.1/lib/rubocop/cop/style/multiline_ternary_operator.rb +102 -0
  675. data/rubocop-1.88.1/lib/rubocop/cop/style/multiline_when_then.rb +60 -0
  676. data/rubocop-1.88.1/lib/rubocop/cop/style/multiple_comparison.rb +164 -0
  677. data/rubocop-1.88.1/lib/rubocop/cop/style/mutable_constant.rb +340 -0
  678. data/rubocop-1.88.1/lib/rubocop/cop/style/negated_if.rb +98 -0
  679. data/rubocop-1.88.1/lib/rubocop/cop/style/negated_if_else_condition.rb +137 -0
  680. data/rubocop-1.88.1/lib/rubocop/cop/style/negated_unless.rb +88 -0
  681. data/rubocop-1.88.1/lib/rubocop/cop/style/negated_while.rb +40 -0
  682. data/rubocop-1.88.1/lib/rubocop/cop/style/negative_array_index.rb +220 -0
  683. data/rubocop-1.88.1/lib/rubocop/cop/style/nested_file_dirname.rb +66 -0
  684. data/rubocop-1.88.1/lib/rubocop/cop/style/nested_modifier.rb +100 -0
  685. data/rubocop-1.88.1/lib/rubocop/cop/style/nested_parenthesized_calls.rb +79 -0
  686. data/rubocop-1.88.1/lib/rubocop/cop/style/nested_ternary_operator.rb +63 -0
  687. data/rubocop-1.88.1/lib/rubocop/cop/style/next.rb +277 -0
  688. data/rubocop-1.88.1/lib/rubocop/cop/style/nil_comparison.rb +86 -0
  689. data/rubocop-1.88.1/lib/rubocop/cop/style/nil_lambda.rb +78 -0
  690. data/rubocop-1.88.1/lib/rubocop/cop/style/non_nil_check.rb +152 -0
  691. data/rubocop-1.88.1/lib/rubocop/cop/style/not.rb +78 -0
  692. data/rubocop-1.88.1/lib/rubocop/cop/style/numbered_parameters.rb +46 -0
  693. data/rubocop-1.88.1/lib/rubocop/cop/style/numbered_parameters_limit.rb +58 -0
  694. data/rubocop-1.88.1/lib/rubocop/cop/style/numeric_literal_prefix.rb +119 -0
  695. data/rubocop-1.88.1/lib/rubocop/cop/style/numeric_literals.rb +130 -0
  696. data/rubocop-1.88.1/lib/rubocop/cop/style/numeric_predicate.rb +185 -0
  697. data/rubocop-1.88.1/lib/rubocop/cop/style/object_then.rb +76 -0
  698. data/rubocop-1.88.1/lib/rubocop/cop/style/one_class_per_file.rb +115 -0
  699. data/rubocop-1.88.1/lib/rubocop/cop/style/one_line_conditional.rb +157 -0
  700. data/rubocop-1.88.1/lib/rubocop/cop/style/open_struct_use.rb +69 -0
  701. data/rubocop-1.88.1/lib/rubocop/cop/style/operator_method_call.rb +100 -0
  702. data/rubocop-1.88.1/lib/rubocop/cop/style/option_hash.rb +54 -0
  703. data/rubocop-1.88.1/lib/rubocop/cop/style/optional_arguments.rb +60 -0
  704. data/rubocop-1.88.1/lib/rubocop/cop/style/optional_boolean_parameter.rb +64 -0
  705. data/rubocop-1.88.1/lib/rubocop/cop/style/or_assignment.rb +94 -0
  706. data/rubocop-1.88.1/lib/rubocop/cop/style/parallel_assignment.rb +322 -0
  707. data/rubocop-1.88.1/lib/rubocop/cop/style/parentheses_around_condition.rb +136 -0
  708. data/rubocop-1.88.1/lib/rubocop/cop/style/partition_instead_of_double_select.rb +270 -0
  709. data/rubocop-1.88.1/lib/rubocop/cop/style/percent_literal_delimiters.rb +122 -0
  710. data/rubocop-1.88.1/lib/rubocop/cop/style/percent_q_literals.rb +70 -0
  711. data/rubocop-1.88.1/lib/rubocop/cop/style/perl_backrefs.rb +129 -0
  712. data/rubocop-1.88.1/lib/rubocop/cop/style/predicate_with_kind.rb +84 -0
  713. data/rubocop-1.88.1/lib/rubocop/cop/style/preferred_hash_methods.rb +74 -0
  714. data/rubocop-1.88.1/lib/rubocop/cop/style/proc.rb +38 -0
  715. data/rubocop-1.88.1/lib/rubocop/cop/style/quoted_symbols.rb +122 -0
  716. data/rubocop-1.88.1/lib/rubocop/cop/style/raise_args.rb +160 -0
  717. data/rubocop-1.88.1/lib/rubocop/cop/style/random_with_offset.rb +153 -0
  718. data/rubocop-1.88.1/lib/rubocop/cop/style/reduce_to_hash.rb +200 -0
  719. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_argument.rb +131 -0
  720. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_array_constructor.rb +77 -0
  721. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_array_flatten.rb +50 -0
  722. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_assignment.rb +114 -0
  723. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_begin.rb +239 -0
  724. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_capital_w.rb +46 -0
  725. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_condition.rb +345 -0
  726. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_conditional.rb +84 -0
  727. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_constant_base.rb +85 -0
  728. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_current_directory_in_path.rb +50 -0
  729. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_double_splat_hash_braces.rb +129 -0
  730. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_each.rb +119 -0
  731. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_exception.rb +91 -0
  732. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_fetch_block.rb +113 -0
  733. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_file_extension_in_require.rb +61 -0
  734. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_filter_chain.rb +118 -0
  735. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_format.rb +312 -0
  736. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_freeze.rb +69 -0
  737. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_heredoc_delimiter_quotes.rb +58 -0
  738. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_initialize.rb +165 -0
  739. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_interpolation.rb +147 -0
  740. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_interpolation_unfreeze.rb +62 -0
  741. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_line_continuation.rb +260 -0
  742. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_min_max_by.rb +93 -0
  743. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_parentheses.rb +363 -0
  744. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_percent_q.rb +110 -0
  745. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_regexp_argument.rb +116 -0
  746. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_regexp_character_class.rb +119 -0
  747. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_regexp_constructor.rb +46 -0
  748. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_regexp_escape.rb +132 -0
  749. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_return.rb +191 -0
  750. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_self.rb +224 -0
  751. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_self_assignment.rb +106 -0
  752. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_self_assignment_branch.rb +85 -0
  753. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_sort.rb +209 -0
  754. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_sort_by.rb +79 -0
  755. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_string_escape.rb +185 -0
  756. data/rubocop-1.88.1/lib/rubocop/cop/style/redundant_struct_keyword_init.rb +133 -0
  757. data/rubocop-1.88.1/lib/rubocop/cop/style/regexp_literal.rb +260 -0
  758. data/rubocop-1.88.1/lib/rubocop/cop/style/require_order.rb +139 -0
  759. data/rubocop-1.88.1/lib/rubocop/cop/style/rescue_modifier.rb +112 -0
  760. data/rubocop-1.88.1/lib/rubocop/cop/style/rescue_standard_error.rb +126 -0
  761. data/rubocop-1.88.1/lib/rubocop/cop/style/return_nil.rb +99 -0
  762. data/rubocop-1.88.1/lib/rubocop/cop/style/return_nil_in_predicate_method_definition.rb +137 -0
  763. data/rubocop-1.88.1/lib/rubocop/cop/style/reverse_find.rb +51 -0
  764. data/rubocop-1.88.1/lib/rubocop/cop/style/safe_navigation.rb +427 -0
  765. data/rubocop-1.88.1/lib/rubocop/cop/style/safe_navigation_chain_length.rb +52 -0
  766. data/rubocop-1.88.1/lib/rubocop/cop/style/sample.rb +144 -0
  767. data/rubocop-1.88.1/lib/rubocop/cop/style/select_by_kind.rb +158 -0
  768. data/rubocop-1.88.1/lib/rubocop/cop/style/select_by_range.rb +197 -0
  769. data/rubocop-1.88.1/lib/rubocop/cop/style/select_by_regexp.rb +199 -0
  770. data/rubocop-1.88.1/lib/rubocop/cop/style/self_assignment.rb +95 -0
  771. data/rubocop-1.88.1/lib/rubocop/cop/style/semicolon.rb +205 -0
  772. data/rubocop-1.88.1/lib/rubocop/cop/style/send.rb +29 -0
  773. data/rubocop-1.88.1/lib/rubocop/cop/style/send_with_literal_method_name.rb +105 -0
  774. data/rubocop-1.88.1/lib/rubocop/cop/style/signal_exception.rb +217 -0
  775. data/rubocop-1.88.1/lib/rubocop/cop/style/single_argument_dig.rb +73 -0
  776. data/rubocop-1.88.1/lib/rubocop/cop/style/single_line_block_params.rb +119 -0
  777. data/rubocop-1.88.1/lib/rubocop/cop/style/single_line_do_end_block.rb +91 -0
  778. data/rubocop-1.88.1/lib/rubocop/cop/style/single_line_methods.rb +149 -0
  779. data/rubocop-1.88.1/lib/rubocop/cop/style/slicing_with_range.rb +146 -0
  780. data/rubocop-1.88.1/lib/rubocop/cop/style/sole_nested_conditional.rb +246 -0
  781. data/rubocop-1.88.1/lib/rubocop/cop/style/special_global_vars.rb +264 -0
  782. data/rubocop-1.88.1/lib/rubocop/cop/style/stabby_lambda_parentheses.rb +79 -0
  783. data/rubocop-1.88.1/lib/rubocop/cop/style/static_class.rb +128 -0
  784. data/rubocop-1.88.1/lib/rubocop/cop/style/stderr_puts.rb +57 -0
  785. data/rubocop-1.88.1/lib/rubocop/cop/style/string_chars.rb +42 -0
  786. data/rubocop-1.88.1/lib/rubocop/cop/style/string_concatenation.rb +182 -0
  787. data/rubocop-1.88.1/lib/rubocop/cop/style/string_hash_keys.rb +59 -0
  788. data/rubocop-1.88.1/lib/rubocop/cop/style/string_literals.rb +129 -0
  789. data/rubocop-1.88.1/lib/rubocop/cop/style/string_literals_in_interpolation.rb +76 -0
  790. data/rubocop-1.88.1/lib/rubocop/cop/style/string_methods.rb +36 -0
  791. data/rubocop-1.88.1/lib/rubocop/cop/style/strip.rb +45 -0
  792. data/rubocop-1.88.1/lib/rubocop/cop/style/struct_inheritance.rb +92 -0
  793. data/rubocop-1.88.1/lib/rubocop/cop/style/super_arguments.rb +221 -0
  794. data/rubocop-1.88.1/lib/rubocop/cop/style/super_with_args_parentheses.rb +35 -0
  795. data/rubocop-1.88.1/lib/rubocop/cop/style/swap_values.rb +101 -0
  796. data/rubocop-1.88.1/lib/rubocop/cop/style/symbol_array.rb +133 -0
  797. data/rubocop-1.88.1/lib/rubocop/cop/style/symbol_literal.rb +28 -0
  798. data/rubocop-1.88.1/lib/rubocop/cop/style/symbol_proc.rb +283 -0
  799. data/rubocop-1.88.1/lib/rubocop/cop/style/tally_method.rb +181 -0
  800. data/rubocop-1.88.1/lib/rubocop/cop/style/ternary_parentheses.rb +251 -0
  801. data/rubocop-1.88.1/lib/rubocop/cop/style/top_level_method_definition.rb +86 -0
  802. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_body_on_class.rb +41 -0
  803. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_body_on_method_definition.rb +55 -0
  804. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_body_on_module.rb +40 -0
  805. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_comma_in_arguments.rb +160 -0
  806. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_comma_in_array_literal.rb +137 -0
  807. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_comma_in_block_args.rb +105 -0
  808. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_comma_in_hash_literal.rb +139 -0
  809. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_method_end_statement.rb +63 -0
  810. data/rubocop-1.88.1/lib/rubocop/cop/style/trailing_underscore_variable.rb +151 -0
  811. data/rubocop-1.88.1/lib/rubocop/cop/style/trivial_accessors.rb +254 -0
  812. data/rubocop-1.88.1/lib/rubocop/cop/style/unless_else.rb +56 -0
  813. data/rubocop-1.88.1/lib/rubocop/cop/style/unless_logical_operators.rb +106 -0
  814. data/rubocop-1.88.1/lib/rubocop/cop/style/unpack_first.rb +59 -0
  815. data/rubocop-1.88.1/lib/rubocop/cop/style/variable_interpolation.rb +44 -0
  816. data/rubocop-1.88.1/lib/rubocop/cop/style/when_then.rb +37 -0
  817. data/rubocop-1.88.1/lib/rubocop/cop/style/while_until_do.rb +54 -0
  818. data/rubocop-1.88.1/lib/rubocop/cop/style/while_until_modifier.rb +67 -0
  819. data/rubocop-1.88.1/lib/rubocop/cop/style/word_array.rb +156 -0
  820. data/rubocop-1.88.1/lib/rubocop/cop/style/yaml_file_read.rb +66 -0
  821. data/rubocop-1.88.1/lib/rubocop/cop/style/yoda_condition.rb +185 -0
  822. data/rubocop-1.88.1/lib/rubocop/cop/style/yoda_expression.rb +92 -0
  823. data/rubocop-1.88.1/lib/rubocop/cop/style/zero_length_predicate.rb +157 -0
  824. data/rubocop-1.88.1/lib/rubocop/cop/team.rb +341 -0
  825. data/rubocop-1.88.1/lib/rubocop/cop/util.rb +215 -0
  826. data/rubocop-1.88.1/lib/rubocop/cop/utils/format_string.rb +148 -0
  827. data/rubocop-1.88.1/lib/rubocop/cop/variable_force/assignment.rb +156 -0
  828. data/rubocop-1.88.1/lib/rubocop/cop/variable_force/branch.rb +355 -0
  829. data/rubocop-1.88.1/lib/rubocop/cop/variable_force/branchable.rb +23 -0
  830. data/rubocop-1.88.1/lib/rubocop/cop/variable_force/reference.rb +47 -0
  831. data/rubocop-1.88.1/lib/rubocop/cop/variable_force/scope.rb +106 -0
  832. data/rubocop-1.88.1/lib/rubocop/cop/variable_force/variable.rb +127 -0
  833. data/rubocop-1.88.1/lib/rubocop/cop/variable_force/variable_table.rb +131 -0
  834. data/rubocop-1.88.1/lib/rubocop/cop/variable_force.rb +462 -0
  835. data/rubocop-1.88.1/lib/rubocop/cops_documentation_generator.rb +406 -0
  836. data/rubocop-1.88.1/lib/rubocop/core_ext/string.rb +19 -0
  837. data/rubocop-1.88.1/lib/rubocop/directive_comment.rb +224 -0
  838. data/rubocop-1.88.1/lib/rubocop/error.rb +35 -0
  839. data/rubocop-1.88.1/lib/rubocop/ext/comment.rb +18 -0
  840. data/rubocop-1.88.1/lib/rubocop/ext/processed_source.rb +20 -0
  841. data/rubocop-1.88.1/lib/rubocop/ext/range.rb +15 -0
  842. data/rubocop-1.88.1/lib/rubocop/ext/regexp_node.rb +69 -0
  843. data/rubocop-1.88.1/lib/rubocop/ext/regexp_parser.rb +78 -0
  844. data/rubocop-1.88.1/lib/rubocop/feature_loader.rb +94 -0
  845. data/rubocop-1.88.1/lib/rubocop/file_finder.rb +43 -0
  846. data/rubocop-1.88.1/lib/rubocop/file_patterns.rb +51 -0
  847. data/rubocop-1.88.1/lib/rubocop/formatter/auto_gen_config_formatter.rb +17 -0
  848. data/rubocop-1.88.1/lib/rubocop/formatter/base_formatter.rb +119 -0
  849. data/rubocop-1.88.1/lib/rubocop/formatter/clang_style_formatter.rb +58 -0
  850. data/rubocop-1.88.1/lib/rubocop/formatter/colorizable.rb +41 -0
  851. data/rubocop-1.88.1/lib/rubocop/formatter/disabled_config_formatter.rb +307 -0
  852. data/rubocop-1.88.1/lib/rubocop/formatter/emacs_style_formatter.rb +39 -0
  853. data/rubocop-1.88.1/lib/rubocop/formatter/file_list_formatter.rb +20 -0
  854. data/rubocop-1.88.1/lib/rubocop/formatter/formatter_set.rb +114 -0
  855. data/rubocop-1.88.1/lib/rubocop/formatter/fuubar_style_formatter.rb +80 -0
  856. data/rubocop-1.88.1/lib/rubocop/formatter/github_actions_formatter.rb +57 -0
  857. data/rubocop-1.88.1/lib/rubocop/formatter/html_formatter.rb +155 -0
  858. data/rubocop-1.88.1/lib/rubocop/formatter/json_formatter.rb +79 -0
  859. data/rubocop-1.88.1/lib/rubocop/formatter/junit_formatter.rb +143 -0
  860. data/rubocop-1.88.1/lib/rubocop/formatter/markdown_formatter.rb +79 -0
  861. data/rubocop-1.88.1/lib/rubocop/formatter/offense_count_formatter.rb +93 -0
  862. data/rubocop-1.88.1/lib/rubocop/formatter/pacman_formatter.rb +81 -0
  863. data/rubocop-1.88.1/lib/rubocop/formatter/progress_formatter.rb +62 -0
  864. data/rubocop-1.88.1/lib/rubocop/formatter/quiet_formatter.rb +13 -0
  865. data/rubocop-1.88.1/lib/rubocop/formatter/simple_text_formatter.rb +170 -0
  866. data/rubocop-1.88.1/lib/rubocop/formatter/tap_formatter.rb +85 -0
  867. data/rubocop-1.88.1/lib/rubocop/formatter/text_util.rb +20 -0
  868. data/rubocop-1.88.1/lib/rubocop/formatter/worst_offenders_formatter.rb +64 -0
  869. data/rubocop-1.88.1/lib/rubocop/formatter.rb +35 -0
  870. data/rubocop-1.88.1/lib/rubocop/lockfile.rb +91 -0
  871. data/rubocop-1.88.1/lib/rubocop/lsp/diagnostic.rb +174 -0
  872. data/rubocop-1.88.1/lib/rubocop/lsp/disable_comment_edits.rb +135 -0
  873. data/rubocop-1.88.1/lib/rubocop/lsp/logger.rb +22 -0
  874. data/rubocop-1.88.1/lib/rubocop/lsp/routes.rb +263 -0
  875. data/rubocop-1.88.1/lib/rubocop/lsp/runtime.rb +78 -0
  876. data/rubocop-1.88.1/lib/rubocop/lsp/server.rb +70 -0
  877. data/rubocop-1.88.1/lib/rubocop/lsp/severity.rb +27 -0
  878. data/rubocop-1.88.1/lib/rubocop/lsp/stdin_runner.rb +76 -0
  879. data/rubocop-1.88.1/lib/rubocop/lsp.rb +36 -0
  880. data/rubocop-1.88.1/lib/rubocop/magic_comment.rb +328 -0
  881. data/rubocop-1.88.1/lib/rubocop/mcp/server.rb +200 -0
  882. data/rubocop-1.88.1/lib/rubocop/name_similarity.rb +29 -0
  883. data/rubocop-1.88.1/lib/rubocop/options.rb +693 -0
  884. data/rubocop-1.88.1/lib/rubocop/path_util.rb +134 -0
  885. data/rubocop-1.88.1/lib/rubocop/pending_cops_reporter.rb +56 -0
  886. data/rubocop-1.88.1/lib/rubocop/platform.rb +11 -0
  887. data/rubocop-1.88.1/lib/rubocop/plugin/configuration_integrator.rb +143 -0
  888. data/rubocop-1.88.1/lib/rubocop/plugin/load_error.rb +26 -0
  889. data/rubocop-1.88.1/lib/rubocop/plugin/loader.rb +100 -0
  890. data/rubocop-1.88.1/lib/rubocop/plugin/not_supported_error.rb +29 -0
  891. data/rubocop-1.88.1/lib/rubocop/plugin.rb +46 -0
  892. data/rubocop-1.88.1/lib/rubocop/project_index_loader.rb +66 -0
  893. data/rubocop-1.88.1/lib/rubocop/rake_task.rb +109 -0
  894. data/rubocop-1.88.1/lib/rubocop/remote_config.rb +114 -0
  895. data/rubocop-1.88.1/lib/rubocop/result_cache.rb +259 -0
  896. data/rubocop-1.88.1/lib/rubocop/rspec/cop_helper.rb +119 -0
  897. data/rubocop-1.88.1/lib/rubocop/rspec/expect_offense.rb +354 -0
  898. data/rubocop-1.88.1/lib/rubocop/rspec/parallel_formatter.rb +90 -0
  899. data/rubocop-1.88.1/lib/rubocop/rspec/shared_contexts.rb +305 -0
  900. data/rubocop-1.88.1/lib/rubocop/rspec/support.rb +35 -0
  901. data/rubocop-1.88.1/lib/rubocop/runner.rb +602 -0
  902. data/rubocop-1.88.1/lib/rubocop/server/cache.rb +185 -0
  903. data/rubocop-1.88.1/lib/rubocop/server/cli.rb +147 -0
  904. data/rubocop-1.88.1/lib/rubocop/server/client_command/base.rb +54 -0
  905. data/rubocop-1.88.1/lib/rubocop/server/client_command/exec.rb +65 -0
  906. data/rubocop-1.88.1/lib/rubocop/server/client_command/restart.rb +25 -0
  907. data/rubocop-1.88.1/lib/rubocop/server/client_command/start.rb +58 -0
  908. data/rubocop-1.88.1/lib/rubocop/server/client_command/status.rb +28 -0
  909. data/rubocop-1.88.1/lib/rubocop/server/client_command/stop.rb +31 -0
  910. data/rubocop-1.88.1/lib/rubocop/server/client_command.rb +26 -0
  911. data/rubocop-1.88.1/lib/rubocop/server/core.rb +124 -0
  912. data/rubocop-1.88.1/lib/rubocop/server/errors.rb +23 -0
  913. data/rubocop-1.88.1/lib/rubocop/server/helper.rb +34 -0
  914. data/rubocop-1.88.1/lib/rubocop/server/server_command/base.rb +50 -0
  915. data/rubocop-1.88.1/lib/rubocop/server/server_command/exec.rb +33 -0
  916. data/rubocop-1.88.1/lib/rubocop/server/server_command/stop.rb +24 -0
  917. data/rubocop-1.88.1/lib/rubocop/server/server_command.rb +21 -0
  918. data/rubocop-1.88.1/lib/rubocop/server/socket_reader.rb +69 -0
  919. data/rubocop-1.88.1/lib/rubocop/server.rb +53 -0
  920. data/rubocop-1.88.1/lib/rubocop/string_interpreter.rb +60 -0
  921. data/rubocop-1.88.1/lib/rubocop/target_finder.rb +228 -0
  922. data/rubocop-1.88.1/lib/rubocop/target_ruby.rb +314 -0
  923. data/rubocop-1.88.1/lib/rubocop/util.rb +16 -0
  924. data/rubocop-1.88.1/lib/rubocop/version.rb +178 -0
  925. data/rubocop-1.88.1/lib/rubocop/warning.rb +11 -0
  926. data/rubocop-1.88.1/lib/rubocop/yaml_duplication_checker.rb +34 -0
  927. data/rubocop-1.88.1/lib/rubocop.rb +756 -0
  928. data/rubocop-1.88.1/lib/ruby_lsp/rubocop/addon.rb +90 -0
  929. data/rubocop-1.88.1/lib/ruby_lsp/rubocop/runtime_adapter.rb +99 -0
  930. data/super-pro-sys.gemspec +12 -0
  931. metadata +970 -0
@@ -0,0 +1,177 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module Lint
6
+ # Checks for shadowed arguments.
7
+ #
8
+ # This cop has `IgnoreImplicitReferences` configuration option.
9
+ # It means argument shadowing is used in order to pass parameters
10
+ # to zero arity `super` when `IgnoreImplicitReferences` is `true`.
11
+ #
12
+ # @example
13
+ #
14
+ # # bad
15
+ # do_something do |foo|
16
+ # foo = 42
17
+ # puts foo
18
+ # end
19
+ #
20
+ # def do_something(foo)
21
+ # foo = 42
22
+ # puts foo
23
+ # end
24
+ #
25
+ # # good
26
+ # do_something do |foo|
27
+ # foo = foo + 42
28
+ # puts foo
29
+ # end
30
+ #
31
+ # def do_something(foo)
32
+ # foo = foo + 42
33
+ # puts foo
34
+ # end
35
+ #
36
+ # def do_something(foo)
37
+ # puts foo
38
+ # end
39
+ #
40
+ # @example IgnoreImplicitReferences: false (default)
41
+ #
42
+ # # bad
43
+ # def do_something(foo)
44
+ # foo = 42
45
+ # super
46
+ # end
47
+ #
48
+ # def do_something(foo)
49
+ # foo = super
50
+ # bar
51
+ # end
52
+ #
53
+ # @example IgnoreImplicitReferences: true
54
+ #
55
+ # # good
56
+ # def do_something(foo)
57
+ # foo = 42
58
+ # super
59
+ # end
60
+ #
61
+ # def do_something(foo)
62
+ # foo = super
63
+ # bar
64
+ # end
65
+ #
66
+ class ShadowedArgument < Base
67
+ MSG = 'Argument `%<argument>s` was shadowed by a local variable before it was used.'
68
+
69
+ # @!method uses_var?(node)
70
+ def_node_search :uses_var?, '(lvar %)'
71
+
72
+ def self.joining_forces
73
+ VariableForce
74
+ end
75
+
76
+ def after_leaving_scope(scope, _variable_table)
77
+ scope.variables.each_value { |variable| check_argument(variable) }
78
+ end
79
+
80
+ private
81
+
82
+ def check_argument(argument)
83
+ return unless argument.method_argument? || argument.block_argument?
84
+ # Block local variables, i.e., variables declared after ; inside
85
+ # |...| aren't really arguments.
86
+ return if argument.explicit_block_local_variable?
87
+
88
+ shadowing_assignment(argument) do |node|
89
+ message = format(MSG, argument: argument.name)
90
+
91
+ add_offense(node, message: message)
92
+ end
93
+ end
94
+
95
+ def shadowing_assignment(argument)
96
+ return unless argument.referenced?
97
+
98
+ assignment_without_argument_usage(argument) do |node, location_known|
99
+ assignment_without_usage_pos = node.source_range.begin_pos
100
+
101
+ references = argument_references(argument)
102
+
103
+ # If argument was referenced before it was reassigned
104
+ # then it's not shadowed
105
+ next if references.any? do |reference|
106
+ next true if !reference.explicit? && ignore_implicit_references?
107
+
108
+ reference_pos(reference.node) <= assignment_without_usage_pos
109
+ end
110
+
111
+ yield location_known ? node : argument.declaration_node
112
+ end
113
+ end
114
+
115
+ # Find the first argument assignment, which doesn't reference the
116
+ # argument at the rhs. If the assignment occurs inside a branch or
117
+ # block, it is impossible to tell whether it's executed, so precise
118
+ # shadowing location is not known.
119
+ #
120
+ def assignment_without_argument_usage(argument)
121
+ argument.assignments.reduce(true) do |location_known, assignment|
122
+ assignment_node = assignment.meta_assignment_node || assignment.node
123
+
124
+ # Shorthand assignments always use their arguments
125
+ next false if assignment_node.shorthand_asgn?
126
+ next false unless assignment_node.parent
127
+
128
+ conditional_assignment =
129
+ conditional_assignment?(assignment_node.parent, argument.scope.node)
130
+
131
+ unless uses_var?(assignment_node, argument.name)
132
+ # It's impossible to decide whether a branch or block is executed,
133
+ # so the precise reassignment location is undecidable.
134
+ next false if conditional_assignment
135
+
136
+ yield(assignment.node, location_known)
137
+ break
138
+ end
139
+
140
+ location_known
141
+ end
142
+ end
143
+
144
+ def reference_pos(node)
145
+ node = node.parent if node.parent.masgn_type?
146
+
147
+ node.source_range.begin_pos
148
+ end
149
+
150
+ # Check whether the given node is always executed or not
151
+ #
152
+ def conditional_assignment?(node, stop_search_node)
153
+ return false if node == stop_search_node
154
+
155
+ node.conditional? || node.type?(:block, :rescue) ||
156
+ conditional_assignment?(node.parent, stop_search_node)
157
+ end
158
+
159
+ # Get argument references without assignments' references
160
+ #
161
+ def argument_references(argument)
162
+ assignment_references = argument.assignments.flat_map(&:references).map(&:source_range)
163
+
164
+ argument.references.reject do |ref|
165
+ next false unless ref.explicit?
166
+
167
+ assignment_references.include?(ref.node.source_range)
168
+ end
169
+ end
170
+
171
+ def ignore_implicit_references?
172
+ cop_config['IgnoreImplicitReferences']
173
+ end
174
+ end
175
+ end
176
+ end
177
+ end
@@ -0,0 +1,165 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module Lint
6
+ # Checks for a rescued exception that gets shadowed by a
7
+ # less specific exception being rescued before a more specific
8
+ # exception is rescued.
9
+ #
10
+ # An exception is considered shadowed if it is rescued after its
11
+ # ancestor is, or if it and its ancestor are both rescued in the
12
+ # same `rescue` statement. In both cases, the more specific rescue is
13
+ # unnecessary because it is covered by rescuing the less specific
14
+ # exception. (ie. `rescue Exception, StandardError` has the same behavior
15
+ # whether `StandardError` is included or not, because all ``StandardError``s
16
+ # are rescued by `rescue Exception`).
17
+ #
18
+ # @example
19
+ #
20
+ # # bad
21
+ #
22
+ # begin
23
+ # something
24
+ # rescue Exception
25
+ # handle_exception
26
+ # rescue StandardError
27
+ # handle_standard_error
28
+ # end
29
+ #
30
+ # # bad
31
+ # begin
32
+ # something
33
+ # rescue Exception, StandardError
34
+ # handle_error
35
+ # end
36
+ #
37
+ # # good
38
+ #
39
+ # begin
40
+ # something
41
+ # rescue StandardError
42
+ # handle_standard_error
43
+ # rescue Exception
44
+ # handle_exception
45
+ # end
46
+ #
47
+ # # good, however depending on runtime environment.
48
+ # #
49
+ # # This is a special case for system call errors.
50
+ # # System dependent error code depends on runtime environment.
51
+ # # For example, whether `Errno::EAGAIN` and `Errno::EWOULDBLOCK` are
52
+ # # the same error code or different error code depends on environment.
53
+ # # This good case is for `Errno::EAGAIN` and `Errno::EWOULDBLOCK` with
54
+ # # the same error code.
55
+ # begin
56
+ # something
57
+ # rescue Errno::EAGAIN, Errno::EWOULDBLOCK
58
+ # handle_standard_error
59
+ # end
60
+ #
61
+ class ShadowedException < Base
62
+ include RescueNode
63
+ include RangeHelp
64
+
65
+ MSG = 'Do not shadow rescued Exceptions.'
66
+
67
+ def on_rescue(node)
68
+ return if rescue_modifier?(node)
69
+
70
+ rescues = node.resbody_branches
71
+ rescued_groups = rescued_groups_for(rescues)
72
+
73
+ rescue_group_rescues_multiple_levels = rescued_groups.any? do |group|
74
+ contains_multiple_levels_of_exceptions?(group)
75
+ end
76
+
77
+ return if !rescue_group_rescues_multiple_levels && sorted?(rescued_groups)
78
+
79
+ add_offense(offense_range(rescues))
80
+ end
81
+
82
+ private
83
+
84
+ def offense_range(rescues)
85
+ shadowing_rescue = find_shadowing_rescue(rescues)
86
+ expression = shadowing_rescue.source_range
87
+ range_between(expression.begin_pos, expression.end_pos)
88
+ end
89
+
90
+ def rescued_groups_for(rescues)
91
+ rescues.map { |group| evaluate_exceptions(group) }
92
+ end
93
+
94
+ def contains_multiple_levels_of_exceptions?(group)
95
+ # Always treat `Exception` as the highest level exception.
96
+ return true if group.size > 1 && group.include?(Exception)
97
+
98
+ group.combination(2).any? { |a, b| compare_exceptions(a, b) }
99
+ end
100
+
101
+ def compare_exceptions(exception, other_exception)
102
+ if system_call_err?(exception) && system_call_err?(other_exception)
103
+ # This condition logic is for special case.
104
+ # System dependent error code depends on runtime environment.
105
+ # For example, whether `Errno::EAGAIN` and `Errno::EWOULDBLOCK` are
106
+ # the same error code or different error code depends on runtime
107
+ # environment. This checks the error code for that.
108
+ exception.const_get(:Errno) != other_exception.const_get(:Errno) &&
109
+ exception <=> other_exception
110
+ else
111
+ exception && other_exception && exception <=> other_exception
112
+ end
113
+ end
114
+
115
+ def system_call_err?(error)
116
+ error && error.ancestors[1] == SystemCallError
117
+ end
118
+
119
+ def evaluate_exceptions(group)
120
+ rescued_exceptions = group.exceptions
121
+
122
+ if rescued_exceptions.any?
123
+ rescued_exceptions.each_with_object([]) do |exception, converted|
124
+ RuboCop::Util.silence_warnings do
125
+ # Avoid printing deprecation warnings about constants
126
+ converted << Kernel.const_get(exception.source)
127
+ end
128
+ rescue NameError
129
+ converted << nil
130
+ end
131
+ else
132
+ # treat an empty `rescue` as `rescue StandardError`
133
+ [StandardError]
134
+ end
135
+ end
136
+
137
+ def sorted?(rescued_groups)
138
+ rescued_groups.each_cons(2).all? do |x, y|
139
+ if x.include?(Exception)
140
+ false
141
+ elsif y.include?(Exception) ||
142
+ # consider sorted if a group is empty or only contains
143
+ # `nil`s
144
+ x.none? || y.none?
145
+ true
146
+ else
147
+ (x <=> y || 0) <= 0
148
+ end
149
+ end
150
+ end
151
+
152
+ def find_shadowing_rescue(rescues)
153
+ rescued_groups = rescued_groups_for(rescues)
154
+ rescued_groups.zip(rescues).each do |group, res|
155
+ return res if contains_multiple_levels_of_exceptions?(group)
156
+ end
157
+
158
+ rescued_groups.each_cons(2).with_index do |group_pair, i|
159
+ return rescues[i] unless sorted?(group_pair)
160
+ end
161
+ end
162
+ end
163
+ end
164
+ end
165
+ end
@@ -0,0 +1,130 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module Lint
6
+ # Checks for the use of local variable names from an outer scope
7
+ # in block arguments or block-local variables. This mirrors the warning
8
+ # given by `ruby -cw` prior to Ruby 2.6:
9
+ # "shadowing outer local variable - foo".
10
+ #
11
+ # The cop is now disabled by default to match the upstream Ruby behavior.
12
+ # It's useful, however, if you'd like to avoid shadowing variables from outer
13
+ # scopes, which some people consider an anti-pattern that makes it harder
14
+ # to keep track of what's going on in a program.
15
+ #
16
+ # NOTE: Shadowing of variables in block passed to `Ractor.new` is allowed
17
+ # because `Ractor` should not access outer variables.
18
+ # eg. following style is encouraged:
19
+ #
20
+ # [source,ruby]
21
+ # ----
22
+ # worker_id, pipe = env
23
+ # Ractor.new(worker_id, pipe) do |worker_id, pipe|
24
+ # end
25
+ # ----
26
+ #
27
+ # @example
28
+ #
29
+ # # bad
30
+ # def some_method
31
+ # foo = 1
32
+ #
33
+ # 2.times do |foo| # shadowing outer `foo`
34
+ # do_something(foo)
35
+ # end
36
+ # end
37
+ #
38
+ # # good
39
+ # def some_method
40
+ # foo = 1
41
+ #
42
+ # 2.times do |bar|
43
+ # do_something(bar)
44
+ # end
45
+ # end
46
+ class ShadowingOuterLocalVariable < Base
47
+ MSG = 'Shadowing outer local variable - `%<variable>s`.'
48
+
49
+ # @!method ractor_block?(node)
50
+ def_node_matcher :ractor_block?, <<~PATTERN
51
+ (block (send (const nil? :Ractor) :new ...) ...)
52
+ PATTERN
53
+
54
+ def self.joining_forces
55
+ VariableForce
56
+ end
57
+
58
+ def before_declaring_variable(variable, variable_table)
59
+ return if variable.should_be_unused?
60
+ return if ractor_block?(variable.scope.node)
61
+
62
+ outer_local_variable = variable_table.find_variable(variable.name)
63
+ return unless outer_local_variable
64
+ return if variable_used_in_declaration_of_outer?(variable, outer_local_variable)
65
+ return if same_conditions_node_different_branch?(variable, outer_local_variable)
66
+
67
+ message = format(MSG, variable: variable.name)
68
+ add_offense(variable.declaration_node, message: message)
69
+ end
70
+
71
+ private
72
+
73
+ def variable_used_in_declaration_of_outer?(variable, outer_local_variable)
74
+ variable.scope.node.each_ancestor.any?(outer_local_variable.declaration_node)
75
+ end
76
+
77
+ def same_conditions_node_different_branch?(variable, outer_local_variable)
78
+ return true if different_case_in_branch?(variable, outer_local_variable)
79
+
80
+ variable_node = variable_node(variable)
81
+ return false unless node_or_its_ascendant_conditional?(variable_node)
82
+
83
+ outer_local_variable_node =
84
+ find_conditional_node_from_ascendant(outer_local_variable.declaration_node)
85
+ return false unless outer_local_variable_node
86
+ return false unless outer_local_variable_node.conditional?
87
+ return true if variable_node == outer_local_variable_node
88
+
89
+ outer_local_variable_node.if_type? &&
90
+ variable_node == outer_local_variable_node.else_branch
91
+ end
92
+
93
+ # `case ... in` binds variables in the pattern itself, so a block argument in one
94
+ # `in` branch does not shadow a pattern variable from a different `in` branch of the
95
+ # same `case` (the branches are mutually exclusive).
96
+ def different_case_in_branch?(variable, outer_local_variable)
97
+ inner_branch = variable.scope.node.each_ancestor(:in_pattern).first
98
+ outer_branch = outer_local_variable.declaration_node.each_ancestor(:in_pattern).first
99
+
100
+ return false unless inner_branch && outer_branch
101
+
102
+ inner_branch != outer_branch && inner_branch.parent == outer_branch.parent
103
+ end
104
+
105
+ def variable_node(variable)
106
+ parent_node = variable.scope.node.parent
107
+
108
+ if parent_node.when_type?
109
+ parent_node.parent
110
+ else
111
+ parent_node
112
+ end
113
+ end
114
+
115
+ def find_conditional_node_from_ascendant(node)
116
+ return unless (parent = node.parent)
117
+ return parent if parent.conditional?
118
+
119
+ find_conditional_node_from_ascendant(parent)
120
+ end
121
+
122
+ def node_or_its_ascendant_conditional?(node)
123
+ return true if node.conditional?
124
+
125
+ !!find_conditional_node_from_ascendant(node)
126
+ end
127
+ end
128
+ end
129
+ end
130
+ end
@@ -0,0 +1,78 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module Lint
6
+ # Checks for `Hash` creation with a mutable default value.
7
+ # Creating a `Hash` in such a way will share the default value
8
+ # across all keys, causing unexpected behavior when modifying it.
9
+ #
10
+ # For example, when the `Hash` was created with an `Array` as the argument,
11
+ # calling `hash[:foo] << 'bar'` will also change the value of all
12
+ # other keys that have not been explicitly assigned to.
13
+ #
14
+ # @example
15
+ # # bad
16
+ # Hash.new([])
17
+ # Hash.new({})
18
+ # Hash.new(Array.new)
19
+ # Hash.new(Hash.new)
20
+ #
21
+ # # okay -- In rare cases that intentionally have this behavior,
22
+ # # without disabling the cop, you can set the default explicitly.
23
+ # h = Hash.new
24
+ # h.default = []
25
+ # h[:a] << 1
26
+ # h[:b] << 2
27
+ # h # => {:a => [1, 2], :b => [1, 2]}
28
+ #
29
+ # # okay -- beware this will discard mutations and only remember assignments
30
+ # Hash.new { Array.new }
31
+ # Hash.new { Hash.new }
32
+ # Hash.new { {} }
33
+ # Hash.new { [] }
34
+ #
35
+ # # good - frozen solution will raise an error when mutation attempted
36
+ # Hash.new([].freeze)
37
+ # Hash.new({}.freeze)
38
+ #
39
+ # # good - using a proc will create a new object for each key
40
+ # h = Hash.new
41
+ # h.default_proc = ->(h, k) { [] }
42
+ # h.default_proc = ->(h, k) { {} }
43
+ #
44
+ # # good - using a block will create a new object for each key
45
+ # Hash.new { |h, k| h[k] = [] }
46
+ # Hash.new { |h, k| h[k] = {} }
47
+ class SharedMutableDefault < Base
48
+ MSG = 'Do not create a Hash with a mutable default value ' \
49
+ 'as the default value can accidentally be changed.'
50
+ RESTRICT_ON_SEND = %i[new].freeze
51
+
52
+ # @!method hash_initialized_with_mutable_shared_object?(node)
53
+ def_node_matcher :hash_initialized_with_mutable_shared_object?, <<~PATTERN
54
+ {
55
+ (send (const {nil? cbase} :Hash) :new [
56
+ {array hash (send (const {nil? cbase} {:Array :Hash}) :new)}
57
+ !#capacity_keyword_argument?
58
+ ])
59
+ (send (const {nil? cbase} :Hash) :new
60
+ {array hash (send (const {nil? cbase} {:Array :Hash}) :new)}
61
+ #capacity_keyword_argument?)
62
+ }
63
+ PATTERN
64
+
65
+ # @!method capacity_keyword_argument?(node)
66
+ def_node_matcher :capacity_keyword_argument?, <<~PATTERN
67
+ (hash (pair (sym :capacity) _))
68
+ PATTERN
69
+
70
+ def on_send(node)
71
+ return unless hash_initialized_with_mutable_shared_object?(node)
72
+
73
+ add_offense(node)
74
+ end
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module Lint
6
+ # Checks unexpected overrides of the `Struct` built-in methods
7
+ # via `Struct.new`.
8
+ #
9
+ # @example
10
+ # # bad
11
+ # Bad = Struct.new(:members, :clone, :count)
12
+ # b = Bad.new([], true, 1)
13
+ # b.members #=> [] (overriding `Struct#members`)
14
+ # b.clone #=> true (overriding `Object#clone`)
15
+ # b.count #=> 1 (overriding `Enumerable#count`)
16
+ #
17
+ # # good
18
+ # Good = Struct.new(:id, :name)
19
+ # g = Good.new(1, "foo")
20
+ # g.members #=> [:id, :name]
21
+ # g.clone #=> #<struct Good id=1, name="foo">
22
+ # g.count #=> 2
23
+ #
24
+ class StructNewOverride < Base
25
+ MSG = '`%<member_name>s` member overrides `Struct#%<method_name>s` ' \
26
+ 'and it may be unexpected.'
27
+ RESTRICT_ON_SEND = %i[new].freeze
28
+
29
+ # This is based on `Struct.instance_methods.sort` in Ruby 4.0.0.
30
+ STRUCT_METHOD_NAMES = %i[
31
+ ! != !~ <=> == === [] []= __id__ __send__ all? any? chain chunk chunk_while class clone
32
+ collect collect_concat compact count cycle deconstruct deconstruct_keys
33
+ define_singleton_method detect dig display drop drop_while dup each each_cons each_entry
34
+ each_pair each_slice each_with_index each_with_object entries enum_for eql? equal? extend
35
+ filter filter_map find find_all find_index first flat_map freeze frozen? grep grep_v
36
+ group_by hash include? inject inspect instance_eval instance_exec instance_of?
37
+ instance_variable_defined? instance_variable_get instance_variable_set instance_variables
38
+ is_a? itself kind_of? lazy length map max max_by member? members method methods
39
+ min min_by minmax minmax_by nil? none? object_id one? partition private_methods
40
+ protected_methods public_method public_methods public_send reduce reject
41
+ remove_instance_variable respond_to? reverse_each select send singleton_class
42
+ singleton_method singleton_methods size slice_after slice_before slice_when sort sort_by
43
+ sum take take_while tally tap then to_a to_enum to_h to_s to_set uniq values values_at
44
+ yield_self zip
45
+ ].freeze
46
+ STRUCT_MEMBER_NAME_TYPES = %i[sym str].freeze
47
+
48
+ # @!method struct_new(node)
49
+ def_node_matcher :struct_new, <<~PATTERN
50
+ (send
51
+ (const {nil? cbase} :Struct) :new ...)
52
+ PATTERN
53
+
54
+ def on_send(node)
55
+ return unless struct_new(node)
56
+
57
+ node.arguments.each_with_index do |arg, index|
58
+ # Ignore if the first argument is a class name
59
+ next if index.zero? && arg.str_type?
60
+
61
+ # Ignore if the argument is not a member name
62
+ next unless STRUCT_MEMBER_NAME_TYPES.include?(arg.type)
63
+
64
+ member_name = arg.value
65
+
66
+ next unless STRUCT_METHOD_NAMES.include?(member_name.to_sym)
67
+
68
+ message = format(MSG, member_name: member_name.inspect, method_name: member_name.to_s)
69
+ add_offense(arg, message: message)
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end