ruby-lint 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (317) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.asc +17 -0
  3. data.tar.gz.asc +14 -14
  4. data/.ruby-version +1 -0
  5. data/.travis.yml +0 -1
  6. data/.yardopts +1 -0
  7. data/CONTRIBUTING.md +41 -0
  8. data/MANIFEST +99 -66
  9. data/README.md +36 -10
  10. data/Rakefile +6 -0
  11. data/checksum/ruby-lint-0.0.4.gem.sha512 +1 -0
  12. data/doc/changelog.md +94 -0
  13. data/lib/ruby-lint.rb +18 -1
  14. data/lib/ruby-lint/analysis/argument_amount.rb +43 -10
  15. data/lib/ruby-lint/analysis/base.rb +23 -17
  16. data/lib/ruby-lint/analysis/pedantics.rb +3 -1
  17. data/lib/ruby-lint/analysis/undefined_methods.rb +48 -10
  18. data/lib/ruby-lint/analysis/unused_variables.rb +27 -5
  19. data/lib/ruby-lint/ast/node.rb +10 -0
  20. data/lib/ruby-lint/cli/analyze.rb +22 -4
  21. data/lib/ruby-lint/cli/base.rb +8 -2
  22. data/lib/ruby-lint/configuration.rb +43 -4
  23. data/lib/ruby-lint/definition/constant_proxy.rb +10 -1
  24. data/lib/ruby-lint/definition/ruby_method.rb +45 -31
  25. data/lib/ruby-lint/definition/ruby_object.rb +56 -15
  26. data/lib/ruby-lint/definition_builder/base.rb +4 -0
  27. data/lib/ruby-lint/definition_builder/primitive.rb +1 -1
  28. data/lib/ruby-lint/definition_builder/ruby_array.rb +1 -1
  29. data/lib/ruby-lint/definition_builder/ruby_block.rb +1 -0
  30. data/lib/ruby-lint/definition_builder/ruby_class.rb +1 -1
  31. data/lib/ruby-lint/definition_builder/ruby_hash.rb +1 -1
  32. data/lib/ruby-lint/definition_builder/ruby_module.rb +3 -1
  33. data/lib/ruby-lint/definition_generator.rb +15 -7
  34. data/lib/ruby-lint/definitions/core/arg0.rb +1 -1
  35. data/lib/ruby-lint/definitions/core/argf.rb +1 -1
  36. data/lib/ruby-lint/definitions/core/argument_error.rb +2 -2
  37. data/lib/ruby-lint/definitions/core/argv.rb +1 -1
  38. data/lib/ruby-lint/definitions/core/array.rb +6 -6
  39. data/lib/ruby-lint/definitions/core/autoload.rb +2 -2
  40. data/lib/ruby-lint/definitions/core/basic_object.rb +8 -12
  41. data/lib/ruby-lint/definitions/core/bignum.rb +2 -2
  42. data/lib/ruby-lint/definitions/core/binding.rb +2 -2
  43. data/lib/ruby-lint/definitions/core/class.rb +2 -2
  44. data/lib/ruby-lint/definitions/core/comparable.rb +1 -1
  45. data/lib/ruby-lint/definitions/core/complex.rb +4 -4
  46. data/lib/ruby-lint/definitions/core/condition_variable.rb +2 -2
  47. data/lib/ruby-lint/definitions/core/continuation.rb +2 -2
  48. data/lib/ruby-lint/definitions/core/data.rb +2 -2
  49. data/lib/ruby-lint/definitions/core/date.rb +34 -34
  50. data/lib/ruby-lint/definitions/core/date_time.rb +26 -26
  51. data/lib/ruby-lint/definitions/core/default_record_separator.rb +1 -1
  52. data/lib/ruby-lint/definitions/core/digest.rb +14 -14
  53. data/lib/ruby-lint/definitions/core/dir.rb +34 -34
  54. data/lib/ruby-lint/definitions/core/encoding.rb +237 -237
  55. data/lib/ruby-lint/definitions/core/encoding_error.rb +2 -2
  56. data/lib/ruby-lint/definitions/core/enumerable.rb +15 -15
  57. data/lib/ruby-lint/definitions/core/enumerator.rb +2 -2
  58. data/lib/ruby-lint/definitions/core/env.rb +1 -1
  59. data/lib/ruby-lint/definitions/core/eoferror.rb +2 -2
  60. data/lib/ruby-lint/definitions/core/erb.rb +30 -23
  61. data/lib/ruby-lint/definitions/core/errno.rb +525 -525
  62. data/lib/ruby-lint/definitions/core/etc.rb +6 -6
  63. data/lib/ruby-lint/definitions/core/exception.rb +2 -2
  64. data/lib/ruby-lint/definitions/core/false.rb +1 -1
  65. data/lib/ruby-lint/definitions/core/false_class.rb +2 -2
  66. data/lib/ruby-lint/definitions/core/fatal_error.rb +2 -2
  67. data/lib/ruby-lint/definitions/core/fiber.rb +2 -2
  68. data/lib/ruby-lint/definitions/core/fiber_error.rb +2 -2
  69. data/lib/ruby-lint/definitions/core/file.rb +68 -68
  70. data/lib/ruby-lint/definitions/core/file_list.rb +2 -2
  71. data/lib/ruby-lint/definitions/core/file_test.rb +1 -1
  72. data/lib/ruby-lint/definitions/core/file_utils.rb +16 -16
  73. data/lib/ruby-lint/definitions/core/fixnum.rb +4 -4
  74. data/lib/ruby-lint/definitions/core/float.rb +16 -16
  75. data/lib/ruby-lint/definitions/core/float_domain_error.rb +2 -2
  76. data/lib/ruby-lint/definitions/core/gc.rb +2 -2
  77. data/lib/ruby-lint/definitions/core/gem.rb +119 -119
  78. data/lib/ruby-lint/definitions/core/hash.rb +14 -14
  79. data/lib/ruby-lint/definitions/core/immediate_value.rb +1 -1
  80. data/lib/ruby-lint/definitions/core/index_error.rb +2 -2
  81. data/lib/ruby-lint/definitions/core/integer.rb +2 -2
  82. data/lib/ruby-lint/definitions/core/interrupt.rb +2 -2
  83. data/lib/ruby-lint/definitions/core/io.rb +38 -38
  84. data/lib/ruby-lint/definitions/core/ioerror.rb +2 -2
  85. data/lib/ruby-lint/definitions/core/kernel.rb +113 -60
  86. data/lib/ruby-lint/definitions/core/key_error.rb +2 -2
  87. data/lib/ruby-lint/definitions/core/load_error.rb +6 -6
  88. data/lib/ruby-lint/definitions/core/local_jump_error.rb +2 -2
  89. data/lib/ruby-lint/definitions/core/marshal.rb +35 -35
  90. data/lib/ruby-lint/definitions/core/match_data.rb +2 -2
  91. data/lib/ruby-lint/definitions/core/math.rb +7 -7
  92. data/lib/ruby-lint/definitions/core/memory_segmention_error.rb +2 -2
  93. data/lib/ruby-lint/definitions/core/method.rb +2 -2
  94. data/lib/ruby-lint/definitions/core/module.rb +39 -3
  95. data/lib/ruby-lint/definitions/core/monitor.rb +4 -4
  96. data/lib/ruby-lint/definitions/core/monitor_mixin.rb +5 -5
  97. data/lib/ruby-lint/definitions/core/mutex.rb +2 -2
  98. data/lib/ruby-lint/definitions/core/name_error.rb +2 -2
  99. data/lib/ruby-lint/definitions/core/nil.rb +1 -1
  100. data/lib/ruby-lint/definitions/core/nil_class.rb +2 -2
  101. data/lib/ruby-lint/definitions/core/no_memory_error.rb +2 -2
  102. data/lib/ruby-lint/definitions/core/no_method_error.rb +2 -2
  103. data/lib/ruby-lint/definitions/core/not_implemented_error.rb +2 -2
  104. data/lib/ruby-lint/definitions/core/numeric.rb +2 -2
  105. data/lib/ruby-lint/definitions/core/object.rb +2 -2
  106. data/lib/ruby-lint/definitions/core/object_space.rb +1 -1
  107. data/lib/ruby-lint/definitions/core/open_struct.rb +3 -3
  108. data/lib/ruby-lint/definitions/core/option_parser.rb +83 -83
  109. data/lib/ruby-lint/definitions/core/precision.rb +1 -1
  110. data/lib/ruby-lint/definitions/core/primitive_failure.rb +2 -2
  111. data/lib/ruby-lint/definitions/core/proc.rb +2 -2
  112. data/lib/ruby-lint/definitions/core/process.rb +29 -29
  113. data/lib/ruby-lint/definitions/core/queue.rb +2 -2
  114. data/lib/ruby-lint/definitions/core/rake.rb +117 -117
  115. data/lib/ruby-lint/definitions/core/rake_file_utils.rb +1 -1
  116. data/lib/ruby-lint/definitions/core/rakeversion.rb +1 -1
  117. data/lib/ruby-lint/definitions/core/random.rb +2 -2
  118. data/lib/ruby-lint/definitions/core/range.rb +4 -4
  119. data/lib/ruby-lint/definitions/core/range_error.rb +2 -2
  120. data/lib/ruby-lint/definitions/core/rational.rb +2 -2
  121. data/lib/ruby-lint/definitions/core/rb_config.rb +3 -3
  122. data/lib/ruby-lint/definitions/core/regexp.rb +28 -28
  123. data/lib/ruby-lint/definitions/core/regexp_error.rb +2 -2
  124. data/lib/ruby-lint/definitions/core/ruby_copyright.rb +1 -1
  125. data/lib/ruby-lint/definitions/core/ruby_description.rb +1 -1
  126. data/lib/ruby-lint/definitions/core/ruby_engine.rb +1 -1
  127. data/lib/ruby-lint/definitions/core/ruby_patchlevel.rb +1 -1
  128. data/lib/ruby-lint/definitions/core/ruby_platform.rb +1 -1
  129. data/lib/ruby-lint/definitions/core/ruby_release_date.rb +1 -1
  130. data/lib/ruby-lint/definitions/core/ruby_version.rb +1 -1
  131. data/lib/ruby-lint/definitions/core/runtime_error.rb +2 -2
  132. data/lib/ruby-lint/definitions/core/scan_error.rb +2 -2
  133. data/lib/ruby-lint/definitions/core/script_error.rb +2 -2
  134. data/lib/ruby-lint/definitions/core/security_error.rb +2 -2
  135. data/lib/ruby-lint/definitions/core/shellwords.rb +1 -1
  136. data/lib/ruby-lint/definitions/core/signal.rb +3 -3
  137. data/lib/ruby-lint/definitions/core/signal_exception.rb +2 -2
  138. data/lib/ruby-lint/definitions/core/singleton.rb +2 -2
  139. data/lib/ruby-lint/definitions/core/sized_queue.rb +2 -2
  140. data/lib/ruby-lint/definitions/core/standard_error.rb +2 -2
  141. data/lib/ruby-lint/definitions/core/stderr.rb +3 -2
  142. data/lib/ruby-lint/definitions/core/stdin.rb +3 -2
  143. data/lib/ruby-lint/definitions/core/stdout.rb +3 -2
  144. data/lib/ruby-lint/definitions/core/stop_iteration.rb +2 -2
  145. data/lib/ruby-lint/definitions/core/string.rb +21 -21
  146. data/lib/ruby-lint/definitions/core/string_io.rb +7 -7
  147. data/lib/ruby-lint/definitions/core/string_scanner.rb +4 -4
  148. data/lib/ruby-lint/definitions/core/struct.rb +20 -20
  149. data/lib/ruby-lint/definitions/core/syck.rb +4 -4
  150. data/lib/ruby-lint/definitions/core/symbol.rb +2 -2
  151. data/lib/ruby-lint/definitions/core/syntax_error.rb +2 -2
  152. data/lib/ruby-lint/definitions/core/system_call_error.rb +2 -2
  153. data/lib/ruby-lint/definitions/core/system_exit.rb +2 -2
  154. data/lib/ruby-lint/definitions/core/system_stack_error.rb +2 -2
  155. data/lib/ruby-lint/definitions/core/thread.rb +6 -6
  156. data/lib/ruby-lint/definitions/core/thread_error.rb +2 -2
  157. data/lib/ruby-lint/definitions/core/thread_group.rb +2 -2
  158. data/lib/ruby-lint/definitions/core/time.rb +3 -3
  159. data/lib/ruby-lint/definitions/core/toplevel_binding.rb +1 -1
  160. data/lib/ruby-lint/definitions/core/true.rb +1 -1
  161. data/lib/ruby-lint/definitions/core/true_class.rb +2 -2
  162. data/lib/ruby-lint/definitions/core/type_error.rb +2 -2
  163. data/lib/ruby-lint/definitions/core/unbound_method.rb +2 -2
  164. data/lib/ruby-lint/definitions/core/unmarshalable.rb +1 -1
  165. data/lib/ruby-lint/definitions/core/unsupported_library_error.rb +2 -2
  166. data/lib/ruby-lint/definitions/core/weak_ref.rb +4 -4
  167. data/lib/ruby-lint/definitions/core/yaml.rb +2361 -0
  168. data/lib/ruby-lint/definitions/core/zero_division_error.rb +2 -2
  169. data/lib/ruby-lint/definitions/global_variables.rb +9 -0
  170. data/lib/ruby-lint/definitions/rails/abstract_controller.rb +174 -28
  171. data/lib/ruby-lint/definitions/rails/action_controller.rb +4959 -550
  172. data/lib/ruby-lint/definitions/rails/action_dispatch.rb +2489 -292
  173. data/lib/ruby-lint/definitions/rails/action_mailer.rb +1285 -42
  174. data/lib/ruby-lint/definitions/rails/action_pack.rb +14 -6
  175. data/lib/ruby-lint/definitions/rails/action_view.rb +6941 -445
  176. data/lib/ruby-lint/definitions/rails/active_model.rb +1212 -69
  177. data/lib/ruby-lint/definitions/rails/active_record.rb +10344 -1450
  178. data/lib/ruby-lint/definitions/rails/active_support.rb +4631 -573
  179. data/lib/ruby-lint/definitions/rails/arel.rb +3211 -319
  180. data/lib/ruby-lint/definitions/rails/rails.rb +2922 -84
  181. data/lib/ruby-lint/definitions/rails/sprockets.rb +3048 -277
  182. data/lib/ruby-lint/docstring/mapping.rb +55 -0
  183. data/lib/ruby-lint/docstring/param_tag.rb +29 -0
  184. data/lib/ruby-lint/docstring/parser.rb +133 -0
  185. data/lib/ruby-lint/docstring/return_tag.rb +24 -0
  186. data/lib/ruby-lint/file_loader.rb +96 -0
  187. data/lib/ruby-lint/file_scanner.rb +91 -0
  188. data/lib/ruby-lint/global_scope.rb +56 -0
  189. data/lib/ruby-lint/helper/constant_paths.rb +1 -1
  190. data/lib/ruby-lint/inspector.rb +11 -33
  191. data/lib/ruby-lint/iterator.rb +31 -4
  192. data/lib/ruby-lint/method_call/alias.rb +46 -0
  193. data/lib/ruby-lint/method_call/assign_member.rb +55 -0
  194. data/lib/ruby-lint/method_call/attribute.rb +102 -0
  195. data/lib/ruby-lint/method_call/base.rb +37 -0
  196. data/lib/ruby-lint/method_call/define_method.rb +17 -0
  197. data/lib/ruby-lint/method_call/include.rb +39 -0
  198. data/lib/ruby-lint/parser.rb +9 -4
  199. data/lib/ruby-lint/presenter/text.rb +2 -1
  200. data/lib/ruby-lint/report.rb +19 -42
  201. data/lib/ruby-lint/report/entry.rb +20 -17
  202. data/lib/ruby-lint/runner.rb +92 -11
  203. data/lib/ruby-lint/template/definition.erb +2 -2
  204. data/lib/ruby-lint/variable_predicates.rb +7 -10
  205. data/lib/ruby-lint/version.rb +1 -1
  206. data/lib/ruby-lint/virtual_machine.rb +265 -188
  207. data/ruby-lint.gemspec +4 -4
  208. data/ruby-lint.yml +7 -0
  209. data/spec/fixtures/associating.rb +7 -0
  210. data/spec/fixtures/file_scanner/lib/example/recursive/source.rb +6 -0
  211. data/spec/fixtures/file_scanner/lib/example/recursive/target.rb +8 -0
  212. data/spec/fixtures/file_scanner/lib/example/user.rb +6 -0
  213. data/spec/fixtures/file_scanner/lib/test-dashes/foo.rb +4 -0
  214. data/spec/fixtures/file_scanner/rails/app/models/example/user.rb +6 -0
  215. data/spec/fixtures/file_scanner/rails/app/models/user.rb +4 -0
  216. data/spec/fixtures/uses_external.rb +1 -0
  217. data/spec/fixtures/uses_external_invalid.rb +3 -0
  218. data/spec/fixtures/uses_external_namespace.rb +1 -0
  219. data/spec/ruby-lint/analysis/{argument_amount.rb → argument_amount_spec.rb} +33 -7
  220. data/spec/ruby-lint/analysis/base_spec.rb +12 -0
  221. data/spec/ruby-lint/analysis/{pedantics.rb → pedantics_spec.rb} +24 -4
  222. data/spec/ruby-lint/analysis/{shadowing_variables.rb → shadowing_variables_spec.rb} +6 -6
  223. data/spec/ruby-lint/analysis/undefined_methods_spec.rb +320 -0
  224. data/spec/ruby-lint/analysis/{undefined_variables.rb → undefined_variables_spec.rb} +33 -10
  225. data/spec/ruby-lint/analysis/{unused_variables.rb → unused_variables_spec.rb} +36 -9
  226. data/spec/ruby-lint/ast/{node.rb → node_spec.rb} +12 -6
  227. data/spec/ruby-lint/cli/{analyze.rb → analyze_spec.rb} +16 -5
  228. data/spec/ruby-lint/cli/{ast.rb → ast_spec.rb} +3 -3
  229. data/spec/ruby-lint/configuration_spec.rb +106 -0
  230. data/spec/ruby-lint/definition/constant_proxy_spec.rb +54 -0
  231. data/spec/ruby-lint/definition/{dsl.rb → dsl_spec.rb} +15 -15
  232. data/spec/ruby-lint/definition/{ruby_method.rb → ruby_method_spec.rb} +31 -17
  233. data/spec/ruby-lint/definition/{ruby_object.rb → ruby_object_spec.rb} +28 -23
  234. data/spec/ruby-lint/definition_builder/{primitive.rb → primitive_spec.rb} +9 -9
  235. data/spec/ruby-lint/definition_builder/{ruby_class.rb → ruby_class_spec.rb} +13 -13
  236. data/spec/ruby-lint/definition_builder/{ruby_method.rb → ruby_method_spec.rb} +9 -9
  237. data/spec/ruby-lint/definition_builder/{ruby_module.rb → ruby_module_spec.rb} +12 -10
  238. data/spec/ruby-lint/docstring/mapping.rb +27 -0
  239. data/spec/ruby-lint/docstring/parser_spec.rb +88 -0
  240. data/spec/ruby-lint/extensions/{string.rb → string_spec.rb} +3 -3
  241. data/spec/ruby-lint/file_loader_spec.rb +69 -0
  242. data/spec/ruby-lint/file_scanner_spec.rb +51 -0
  243. data/spec/ruby-lint/inspector_spec.rb +44 -0
  244. data/spec/ruby-lint/{iterator.rb → iterator_spec.rb} +39 -4
  245. data/spec/ruby-lint/{nested_stack.rb → nested_stack_spec.rb} +4 -4
  246. data/spec/ruby-lint/parser_spec.rb +31 -0
  247. data/spec/ruby-lint/presenter/json_spec.rb +58 -0
  248. data/spec/ruby-lint/presenter/text_spec.rb +49 -0
  249. data/spec/ruby-lint/report/entry_spec.rb +58 -0
  250. data/spec/ruby-lint/report_spec.rb +39 -0
  251. data/spec/ruby-lint/runner_spec.rb +52 -0
  252. data/spec/ruby-lint/virtual_machine/alias_spec.rb +55 -0
  253. data/spec/ruby-lint/virtual_machine/assignments/{arrays.rb → arrays_spec.rb} +7 -7
  254. data/spec/ruby-lint/virtual_machine/assignments/{hashes.rb → hashes_spec.rb} +6 -6
  255. data/spec/ruby-lint/virtual_machine/assignments/{optional.rb → optional_spec.rb} +6 -6
  256. data/spec/ruby-lint/virtual_machine/assignments/{return_values.rb → return_values_spec.rb} +11 -11
  257. data/spec/ruby-lint/virtual_machine/assignments/{variables.rb → variables_spec.rb} +38 -7
  258. data/spec/ruby-lint/virtual_machine/associate_nodes_spec.rb +59 -0
  259. data/spec/ruby-lint/virtual_machine/{autoloading.rb → autoloading_spec.rb} +6 -6
  260. data/spec/ruby-lint/virtual_machine/{blocks.rb → blocks_spec.rb} +30 -4
  261. data/spec/ruby-lint/virtual_machine/classes/{class_methods.rb → class_methods_spec.rb} +3 -3
  262. data/spec/ruby-lint/virtual_machine/classes/{extending.rb → extending_spec.rb} +20 -15
  263. data/spec/ruby-lint/virtual_machine/classes/{redefining.rb → redefining_spec.rb} +3 -3
  264. data/spec/ruby-lint/virtual_machine/classes/{sclass.rb → sclass_spec.rb} +7 -7
  265. data/spec/ruby-lint/virtual_machine/classes/{scoping.rb → scoping_spec.rb} +5 -5
  266. data/spec/ruby-lint/virtual_machine/complex/{rails.rb → rails_spec.rb} +3 -3
  267. data/spec/ruby-lint/virtual_machine/complex/{rcap.rb → rcap_spec.rb} +3 -3
  268. data/spec/ruby-lint/virtual_machine/complex/{slop.rb → slop_spec.rb} +3 -3
  269. data/spec/ruby-lint/virtual_machine/constants_spec.rb +31 -0
  270. data/spec/ruby-lint/virtual_machine/{for.rb → for_spec.rb} +3 -3
  271. data/spec/ruby-lint/virtual_machine/{freeze.rb → freeze_spec.rb} +3 -3
  272. data/spec/ruby-lint/virtual_machine/global_variables_spec.rb +12 -0
  273. data/spec/ruby-lint/virtual_machine/inherit_kernel_spec.rb +15 -0
  274. data/spec/ruby-lint/virtual_machine/{interpolation.rb → interpolation_spec.rb} +3 -3
  275. data/spec/ruby-lint/virtual_machine/methods/attr_spec.rb +116 -0
  276. data/spec/ruby-lint/virtual_machine/methods/define_method_spec.rb +41 -0
  277. data/spec/ruby-lint/virtual_machine/methods/{defining.rb → defining_spec.rb} +4 -4
  278. data/spec/ruby-lint/virtual_machine/methods/docstrings_spec.rb +69 -0
  279. data/spec/ruby-lint/virtual_machine/methods/{exporting.rb → exporting_spec.rb} +3 -3
  280. data/spec/ruby-lint/virtual_machine/methods/{parameters.rb → parameters_spec.rb} +17 -5
  281. data/spec/ruby-lint/virtual_machine/methods/{patching.rb → patching_spec.rb} +4 -4
  282. data/spec/ruby-lint/virtual_machine/methods/{scoping.rb → scoping_spec.rb} +5 -5
  283. data/spec/ruby-lint/virtual_machine/methods/{visibility.rb → visibility_spec.rb} +6 -6
  284. data/spec/ruby-lint/virtual_machine/{modules.rb → modules_spec.rb} +39 -9
  285. data/spec/ruby-lint/virtual_machine/reference_amount_spec.rb +61 -0
  286. data/spec/ruby-lint/virtual_machine/{unused.rb → unused_spec.rb} +4 -4
  287. data/spec/{helper.rb → spec_helper.rb} +6 -4
  288. data/spec/support/building.rb +10 -6
  289. data/spec/support/coveralls.rb +1 -1
  290. data/spec/support/parsing.rb +10 -1
  291. data/spec/support/simplecov.rb +1 -1
  292. data/spec/support/versions.rb +9 -0
  293. data/task/test.rake +2 -4
  294. data/task/travis.rake +1 -0
  295. metadata +144 -143
  296. metadata.gz.asc +14 -14
  297. data/.rubocop.yml +0 -59
  298. data/doc/contributing.md +0 -16
  299. data/lib/ruby-lint/analysis/confusing_variables.rb +0 -26
  300. data/lib/ruby-lint/definitions/core/main.rb +0 -25
  301. data/lib/ruby-lint/definitions/core/psych.rb +0 -2231
  302. data/lib/ruby-lint/definitions/core/rubinius.rb +0 -16637
  303. data/lib/ruby-lint/definitions/core/ruby_lint.rb +0 -93
  304. data/spec/ruby-lint/analysis/confusing_variables.rb +0 -46
  305. data/spec/ruby-lint/analysis/undefined_methods.rb +0 -174
  306. data/spec/ruby-lint/configuration.rb +0 -54
  307. data/spec/ruby-lint/definition/constant_proxy.rb +0 -31
  308. data/spec/ruby-lint/parser.rb +0 -14
  309. data/spec/ruby-lint/presenter/json.rb +0 -31
  310. data/spec/ruby-lint/presenter/text.rb +0 -22
  311. data/spec/ruby-lint/report.rb +0 -50
  312. data/spec/ruby-lint/report/entry.rb +0 -28
  313. data/spec/ruby-lint/runner.rb +0 -32
  314. data/spec/ruby-lint/virtual_machine/associate_nodes.rb +0 -17
  315. data/spec/ruby-lint/virtual_machine/reference_amount.rb +0 -33
  316. data/spec/support/bacon.rb +0 -33
  317. data/task/cop.rake +0 -11
@@ -1,11 +1,15 @@
1
1
  # This file was automatically generated, any manual changes will be lost the
2
2
  # next time this file is generated.
3
3
  #
4
- # Created: 2013-07-07 17:54:58 +0200
5
- # Platform: rbx 2.0.0.rc1
4
+ # Created: 2013-07-24 21:54:03 +0200
5
+ # Platform: rbx 2.0.0.n198
6
6
 
7
- RubyLint::VirtualMachine.global_scope.define_constant('Arel') do |klass|
8
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
7
+ RubyLint::GlobalScope.definitions.define_constant('Arel') do |klass|
8
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
9
+
10
+ klass.define_method('initialize') do |method|
11
+ method.define_block_argument('block')
12
+ end
9
13
 
10
14
  klass.define_method('sql') do |method|
11
15
  method.define_argument('raw_sql')
@@ -14,245 +18,194 @@ RubyLint::VirtualMachine.global_scope.define_constant('Arel') do |klass|
14
18
  klass.define_method('star')
15
19
  end
16
20
 
17
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::AliasPredication') do |klass|
18
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
21
+ RubyLint::GlobalScope.definitions.define_constant('Arel::AliasPredication') do |klass|
22
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
23
+
24
+ klass.define_method('initialize') do |method|
25
+ method.define_block_argument('block')
26
+ end
19
27
 
20
28
  klass.define_instance_method('as') do |method|
21
29
  method.define_argument('other')
22
30
  end
23
31
  end
24
32
 
25
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Attribute') do |klass|
26
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('#<Class:0x17c48>'))
27
-
28
- klass.define_instance_method('lower')
29
- end
33
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Attribute') do |klass|
34
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('#<Class:0x22df4>'))
30
35
 
31
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Attributes') do |klass|
32
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
36
+ klass.define_method('[]') do |method|
37
+ method.define_rest_argument('args')
38
+ end
33
39
 
34
- klass.define_method('for') do |method|
35
- method.define_argument('column')
40
+ klass.define_method('_specialize') do |method|
41
+ method.define_argument('attrs')
36
42
  end
37
- end
38
43
 
39
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Compatibility') do |klass|
40
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
41
- end
44
+ klass.define_method('length')
42
45
 
43
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Crud') do |klass|
44
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
46
+ klass.define_method('make_struct') do |method|
47
+ method.define_argument('name')
48
+ method.define_argument('attrs')
49
+ end
45
50
 
46
- klass.define_instance_method('compile_delete')
51
+ klass.define_method('members')
47
52
 
48
- klass.define_instance_method('compile_insert') do |method|
49
- method.define_argument('values')
53
+ klass.define_method('subclass_new') do |method|
54
+ method.define_rest_argument('args')
50
55
  end
51
56
 
52
- klass.define_instance_method('compile_update') do |method|
53
- method.define_argument('values')
57
+ klass.define_instance_method('*') do |method|
58
+ method.define_argument('other')
54
59
  end
55
60
 
56
- klass.define_instance_method('create_insert')
57
-
58
- klass.define_instance_method('delete')
59
-
60
- klass.define_instance_method('insert') do |method|
61
- method.define_argument('values')
61
+ klass.define_instance_method('+') do |method|
62
+ method.define_argument('other')
62
63
  end
63
64
 
64
- klass.define_instance_method('update') do |method|
65
- method.define_argument('values')
65
+ klass.define_instance_method('-') do |method|
66
+ method.define_argument('other')
66
67
  end
67
- end
68
68
 
69
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::DeleteManager') do |klass|
70
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Arel::TreeManager'))
71
-
72
- klass.define_instance_method('from') do |method|
73
- method.define_argument('relation')
69
+ klass.define_instance_method('/') do |method|
70
+ method.define_argument('other')
74
71
  end
75
72
 
76
- klass.define_instance_method('wheres=') do |method|
77
- method.define_argument('list')
73
+ klass.define_instance_method('[]') do |method|
74
+ method.define_argument('var')
78
75
  end
79
- end
80
-
81
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Expression') do |klass|
82
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
83
- end
84
-
85
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Expressions') do |klass|
86
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
87
76
 
88
- klass.define_instance_method('average')
89
-
90
- klass.define_instance_method('count') do |method|
91
- method.define_optional_argument('distinct')
77
+ klass.define_instance_method('[]=') do |method|
78
+ method.define_argument('var')
79
+ method.define_argument('obj')
92
80
  end
93
81
 
94
- klass.define_instance_method('extract') do |method|
95
- method.define_argument('field')
96
- end
82
+ klass.define_instance_method('all?')
97
83
 
98
- klass.define_instance_method('maximum')
84
+ klass.define_instance_method('any?')
99
85
 
100
- klass.define_instance_method('minimum')
86
+ klass.define_instance_method('as') do |method|
87
+ method.define_argument('other')
88
+ end
101
89
 
102
- klass.define_instance_method('sum')
103
- end
90
+ klass.define_instance_method('asc')
104
91
 
105
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::FactoryMethods') do |klass|
106
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
92
+ klass.define_instance_method('average')
107
93
 
108
- klass.define_instance_method('create_and') do |method|
109
- method.define_argument('clauses')
94
+ klass.define_instance_method('chunk') do |method|
95
+ method.define_optional_argument('initial_state')
96
+ method.define_block_argument('original_block')
110
97
  end
111
98
 
112
- klass.define_instance_method('create_false')
99
+ klass.define_instance_method('collect')
113
100
 
114
- klass.define_instance_method('create_join') do |method|
115
- method.define_argument('to')
116
- method.define_optional_argument('constraint')
117
- method.define_optional_argument('klass')
101
+ klass.define_instance_method('collect_concat') do |method|
102
+ method.define_block_argument('block')
118
103
  end
119
104
 
120
- klass.define_instance_method('create_on') do |method|
121
- method.define_argument('expr')
105
+ klass.define_instance_method('count') do |method|
106
+ method.define_optional_argument('distinct')
122
107
  end
123
108
 
124
- klass.define_instance_method('create_string_join') do |method|
125
- method.define_argument('to')
109
+ klass.define_instance_method('cycle') do |method|
110
+ method.define_optional_argument('many')
126
111
  end
127
112
 
128
- klass.define_instance_method('create_table_alias') do |method|
129
- method.define_argument('relation')
130
- method.define_argument('name')
113
+ klass.define_instance_method('desc')
114
+
115
+ klass.define_instance_method('detect') do |method|
116
+ method.define_optional_argument('ifnone')
131
117
  end
132
118
 
133
- klass.define_instance_method('create_true')
119
+ klass.define_instance_method('does_not_match') do |method|
120
+ method.define_argument('other')
121
+ end
134
122
 
135
- klass.define_instance_method('grouping') do |method|
136
- method.define_argument('expr')
123
+ klass.define_instance_method('does_not_match_all') do |method|
124
+ method.define_argument('others')
137
125
  end
138
126
 
139
- klass.define_instance_method('lower') do |method|
140
- method.define_argument('column')
127
+ klass.define_instance_method('does_not_match_any') do |method|
128
+ method.define_argument('others')
141
129
  end
142
- end
143
130
 
144
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::InnerJoin') do |klass|
145
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Arel::Nodes::Join'))
146
- end
131
+ klass.define_instance_method('drop') do |method|
132
+ method.define_argument('n')
133
+ end
147
134
 
148
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::InsertManager') do |klass|
149
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Arel::TreeManager'))
135
+ klass.define_instance_method('drop_while')
150
136
 
151
- klass.define_instance_method('columns')
137
+ klass.define_instance_method('each')
152
138
 
153
- klass.define_instance_method('create_values') do |method|
154
- method.define_argument('values')
155
- method.define_argument('columns')
139
+ klass.define_instance_method('each_cons') do |method|
140
+ method.define_argument('num')
156
141
  end
157
142
 
158
- klass.define_instance_method('insert') do |method|
159
- method.define_argument('fields')
143
+ klass.define_instance_method('each_entry') do |method|
144
+ method.define_rest_argument('pass')
160
145
  end
161
146
 
162
- klass.define_instance_method('into') do |method|
163
- method.define_argument('table')
164
- end
147
+ klass.define_instance_method('each_pair')
165
148
 
166
- klass.define_instance_method('values=') do |method|
167
- method.define_argument('val')
149
+ klass.define_instance_method('each_slice') do |method|
150
+ method.define_argument('slice_size')
168
151
  end
169
- end
170
152
 
171
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Math') do |klass|
172
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
173
-
174
- klass.define_instance_method('*') do |method|
175
- method.define_argument('other')
153
+ klass.define_instance_method('each_with_index') do |method|
154
+ method.define_rest_argument('args')
176
155
  end
177
156
 
178
- klass.define_instance_method('+') do |method|
179
- method.define_argument('other')
157
+ klass.define_instance_method('each_with_object') do |method|
158
+ method.define_argument('memo')
180
159
  end
181
160
 
182
- klass.define_instance_method('-') do |method|
183
- method.define_argument('other')
161
+ klass.define_instance_method('entries') do |method|
162
+ method.define_rest_argument('arg')
184
163
  end
185
164
 
186
- klass.define_instance_method('/') do |method|
165
+ klass.define_instance_method('eq') do |method|
187
166
  method.define_argument('other')
188
167
  end
189
- end
190
168
 
191
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Node') do |klass|
192
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
193
-
194
- klass.define_instance_method('and') do |method|
195
- method.define_argument('right')
169
+ klass.define_instance_method('eq_all') do |method|
170
+ method.define_argument('others')
196
171
  end
197
172
 
198
- klass.define_instance_method('each') do |method|
199
- method.define_block_argument('block')
173
+ klass.define_instance_method('eq_any') do |method|
174
+ method.define_argument('others')
200
175
  end
201
176
 
202
- klass.define_instance_method('not')
203
-
204
- klass.define_instance_method('or') do |method|
205
- method.define_argument('right')
177
+ klass.define_instance_method('exclude?') do |method|
178
+ method.define_argument('object')
206
179
  end
207
180
 
208
- klass.define_instance_method('to_sql') do |method|
209
- method.define_optional_argument('engine')
181
+ klass.define_instance_method('extract') do |method|
182
+ method.define_argument('field')
210
183
  end
211
- end
212
-
213
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Nodes') do |klass|
214
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
215
- end
216
-
217
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::OrderPredications') do |klass|
218
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
219
-
220
- klass.define_instance_method('asc')
221
-
222
- klass.define_instance_method('desc')
223
- end
224
-
225
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::OuterJoin') do |klass|
226
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Arel::Nodes::Join'))
227
- end
228
184
 
229
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Predications') do |klass|
230
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
231
-
232
- klass.define_instance_method('does_not_match') do |method|
233
- method.define_argument('other')
185
+ klass.define_instance_method('find') do |method|
186
+ method.define_optional_argument('ifnone')
234
187
  end
235
188
 
236
- klass.define_instance_method('does_not_match_all') do |method|
237
- method.define_argument('others')
238
- end
189
+ klass.define_instance_method('find_all')
239
190
 
240
- klass.define_instance_method('does_not_match_any') do |method|
241
- method.define_argument('others')
191
+ klass.define_instance_method('find_index') do |method|
192
+ method.define_optional_argument('value')
242
193
  end
243
194
 
244
- klass.define_instance_method('eq') do |method|
245
- method.define_argument('other')
195
+ klass.define_instance_method('first') do |method|
196
+ method.define_optional_argument('n')
246
197
  end
247
198
 
248
- klass.define_instance_method('eq_all') do |method|
249
- method.define_argument('others')
199
+ klass.define_instance_method('flat_map') do |method|
200
+ method.define_block_argument('block')
250
201
  end
251
202
 
252
- klass.define_instance_method('eq_any') do |method|
253
- method.define_argument('others')
203
+ klass.define_instance_method('grep') do |method|
204
+ method.define_argument('pattern')
254
205
  end
255
206
 
207
+ klass.define_instance_method('group_by')
208
+
256
209
  klass.define_instance_method('gt') do |method|
257
210
  method.define_argument('right')
258
211
  end
@@ -289,6 +242,21 @@ RubyLint::VirtualMachine.global_scope.define_constant('Arel::Predications') do |
289
242
  method.define_argument('others')
290
243
  end
291
244
 
245
+ klass.define_instance_method('include?') do |method|
246
+ method.define_argument('obj')
247
+ end
248
+
249
+ klass.define_instance_method('index_by')
250
+
251
+ klass.define_instance_method('inject') do |method|
252
+ method.define_optional_argument('initial')
253
+ method.define_optional_argument('sym')
254
+ end
255
+
256
+ klass.define_instance_method('length')
257
+
258
+ klass.define_instance_method('lower')
259
+
292
260
  klass.define_instance_method('lt') do |method|
293
261
  method.define_argument('right')
294
262
  end
@@ -313,6 +281,10 @@ RubyLint::VirtualMachine.global_scope.define_constant('Arel::Predications') do |
313
281
  method.define_argument('others')
314
282
  end
315
283
 
284
+ klass.define_instance_method('many?')
285
+
286
+ klass.define_instance_method('map')
287
+
316
288
  klass.define_instance_method('matches') do |method|
317
289
  method.define_argument('other')
318
290
  end
@@ -325,6 +297,38 @@ RubyLint::VirtualMachine.global_scope.define_constant('Arel::Predications') do |
325
297
  method.define_argument('others')
326
298
  end
327
299
 
300
+ klass.define_instance_method('max')
301
+
302
+ klass.define_instance_method('max_by')
303
+
304
+ klass.define_instance_method('maximum')
305
+
306
+ klass.define_instance_method('member?') do |method|
307
+ method.define_argument('obj')
308
+ end
309
+
310
+ klass.define_instance_method('members')
311
+
312
+ klass.define_instance_method('min')
313
+
314
+ klass.define_instance_method('min_by')
315
+
316
+ klass.define_instance_method('minimum')
317
+
318
+ klass.define_instance_method('minmax') do |method|
319
+ method.define_block_argument('block')
320
+ end
321
+
322
+ klass.define_instance_method('minmax_by') do |method|
323
+ method.define_block_argument('block')
324
+ end
325
+
326
+ klass.define_instance_method('name')
327
+
328
+ klass.define_instance_method('name=')
329
+
330
+ klass.define_instance_method('none?')
331
+
328
332
  klass.define_instance_method('not_eq') do |method|
329
333
  method.define_argument('other')
330
334
  end
@@ -348,315 +352,3203 @@ RubyLint::VirtualMachine.global_scope.define_constant('Arel::Predications') do |
348
352
  klass.define_instance_method('not_in_any') do |method|
349
353
  method.define_argument('others')
350
354
  end
351
- end
352
355
 
353
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::SelectManager') do |klass|
354
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Arel::TreeManager'))
355
-
356
- klass.define_instance_method('as') do |method|
357
- method.define_argument('other')
358
- end
356
+ klass.define_instance_method('one?')
359
357
 
360
- klass.define_instance_method('constraints')
358
+ klass.define_instance_method('partition')
361
359
 
362
- klass.define_instance_method('distinct') do |method|
363
- method.define_optional_argument('value')
360
+ klass.define_instance_method('reduce') do |method|
361
+ method.define_optional_argument('initial')
362
+ method.define_optional_argument('sym')
364
363
  end
365
364
 
366
- klass.define_instance_method('except') do |method|
367
- method.define_argument('other')
368
- end
365
+ klass.define_instance_method('reject')
369
366
 
370
- klass.define_instance_method('exists')
367
+ klass.define_instance_method('relation')
371
368
 
372
- klass.define_instance_method('from') do |method|
373
- method.define_argument('table')
369
+ klass.define_instance_method('relation=')
370
+
371
+ klass.define_instance_method('reverse_each') do |method|
372
+ method.define_block_argument('block')
374
373
  end
375
374
 
376
- klass.define_instance_method('froms')
375
+ klass.define_instance_method('select')
377
376
 
378
- klass.define_instance_method('group') do |method|
379
- method.define_rest_argument('columns')
380
- end
377
+ klass.define_instance_method('size')
381
378
 
382
- klass.define_instance_method('having') do |method|
383
- method.define_rest_argument('exprs')
379
+ klass.define_instance_method('slice_before') do |method|
380
+ method.define_optional_argument('arg')
381
+ method.define_block_argument('block')
384
382
  end
385
383
 
386
- klass.define_instance_method('insert') do |method|
387
- method.define_argument('values')
384
+ klass.define_instance_method('sort') do |method|
385
+ method.define_block_argument('prc')
388
386
  end
389
387
 
390
- klass.define_instance_method('intersect') do |method|
391
- method.define_argument('other')
392
- end
388
+ klass.define_instance_method('sort_by')
393
389
 
394
- klass.define_instance_method('join') do |method|
395
- method.define_argument('relation')
396
- method.define_optional_argument('klass')
390
+ klass.define_instance_method('sum')
391
+
392
+ klass.define_instance_method('take') do |method|
393
+ method.define_argument('n')
397
394
  end
398
395
 
399
- klass.define_instance_method('join_sources')
396
+ klass.define_instance_method('take_while')
400
397
 
401
- klass.define_instance_method('join_sql')
398
+ klass.define_instance_method('to_a')
402
399
 
403
- klass.define_instance_method('joins') do |method|
404
- method.define_argument('manager')
400
+ klass.define_instance_method('to_h')
401
+
402
+ klass.define_instance_method('to_set') do |method|
403
+ method.define_optional_argument('klass')
404
+ method.define_rest_argument('args')
405
+ method.define_block_argument('block')
405
406
  end
406
407
 
407
- klass.define_instance_method('limit')
408
+ klass.define_instance_method('values')
408
409
 
409
- klass.define_instance_method('limit=') do |method|
410
- method.define_argument('limit')
410
+ klass.define_instance_method('values_at') do |method|
411
+ method.define_rest_argument('args')
411
412
  end
412
413
 
413
- klass.define_instance_method('lock') do |method|
414
- method.define_optional_argument('locking')
414
+ klass.define_instance_method('with_object') do |method|
415
+ method.define_argument('memo')
415
416
  end
416
417
 
417
- klass.define_instance_method('locked')
418
-
419
- klass.define_instance_method('minus') do |method|
420
- method.define_argument('other')
418
+ klass.define_instance_method('zip') do |method|
419
+ method.define_rest_argument('args')
421
420
  end
421
+ end
422
422
 
423
- klass.define_instance_method('offset')
423
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Attributes') do |klass|
424
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
424
425
 
425
- klass.define_instance_method('offset=') do |method|
426
- method.define_argument('amount')
426
+ klass.define_method('for') do |method|
427
+ method.define_argument('column')
427
428
  end
428
429
 
429
- klass.define_instance_method('on') do |method|
430
- method.define_rest_argument('exprs')
430
+ klass.define_method('initialize') do |method|
431
+ method.define_block_argument('block')
432
+ end
433
+ end
434
+
435
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Compatibility') do |klass|
436
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
437
+
438
+ klass.define_method('initialize') do |method|
439
+ method.define_block_argument('block')
440
+ end
441
+ end
442
+
443
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Crud') do |klass|
444
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
445
+
446
+ klass.define_method('initialize') do |method|
447
+ method.define_block_argument('block')
448
+ end
449
+
450
+ klass.define_instance_method('compile_delete')
451
+
452
+ klass.define_instance_method('compile_insert') do |method|
453
+ method.define_argument('values')
454
+ end
455
+
456
+ klass.define_instance_method('compile_update') do |method|
457
+ method.define_argument('values')
458
+ end
459
+
460
+ klass.define_instance_method('create_insert')
461
+
462
+ klass.define_instance_method('delete')
463
+
464
+ klass.define_instance_method('insert') do |method|
465
+ method.define_argument('values')
466
+ end
467
+
468
+ klass.define_instance_method('update') do |method|
469
+ method.define_argument('values')
470
+ end
471
+ end
472
+
473
+ RubyLint::GlobalScope.definitions.define_constant('Arel::DeleteManager') do |klass|
474
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Arel::TreeManager'))
475
+
476
+ klass.define_instance_method('ast')
477
+
478
+ klass.define_instance_method('create_and') do |method|
479
+ method.define_argument('clauses')
480
+ end
481
+
482
+ klass.define_instance_method('create_false')
483
+
484
+ klass.define_instance_method('create_join') do |method|
485
+ method.define_argument('to')
486
+ method.define_optional_argument('constraint')
487
+ method.define_optional_argument('klass')
488
+ end
489
+
490
+ klass.define_instance_method('create_on') do |method|
491
+ method.define_argument('expr')
492
+ end
493
+
494
+ klass.define_instance_method('create_string_join') do |method|
495
+ method.define_argument('to')
496
+ end
497
+
498
+ klass.define_instance_method('create_table_alias') do |method|
499
+ method.define_argument('relation')
500
+ method.define_argument('name')
501
+ end
502
+
503
+ klass.define_instance_method('create_true')
504
+
505
+ klass.define_instance_method('engine')
506
+
507
+ klass.define_instance_method('from') do |method|
508
+ method.define_argument('relation')
509
+ end
510
+
511
+ klass.define_instance_method('grouping') do |method|
512
+ method.define_argument('expr')
513
+ end
514
+
515
+ klass.define_instance_method('lower') do |method|
516
+ method.define_argument('column')
517
+ end
518
+
519
+ klass.define_instance_method('to_dot')
520
+
521
+ klass.define_instance_method('to_sql')
522
+
523
+ klass.define_instance_method('visitor')
524
+
525
+ klass.define_instance_method('where') do |method|
526
+ method.define_argument('expr')
527
+ end
528
+
529
+ klass.define_instance_method('wheres=') do |method|
530
+ method.define_argument('list')
531
+ end
532
+ end
533
+
534
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Expression') do |klass|
535
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
536
+
537
+ klass.define_method('initialize') do |method|
538
+ method.define_block_argument('block')
539
+ end
540
+
541
+ klass.define_instance_method('asc')
542
+
543
+ klass.define_instance_method('desc')
544
+ end
545
+
546
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Expressions') do |klass|
547
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
548
+
549
+ klass.define_method('initialize') do |method|
550
+ method.define_block_argument('block')
551
+ end
552
+
553
+ klass.define_instance_method('average')
554
+
555
+ klass.define_instance_method('count') do |method|
556
+ method.define_optional_argument('distinct')
557
+ end
558
+
559
+ klass.define_instance_method('extract') do |method|
560
+ method.define_argument('field')
561
+ end
562
+
563
+ klass.define_instance_method('maximum')
564
+
565
+ klass.define_instance_method('minimum')
566
+
567
+ klass.define_instance_method('sum')
568
+ end
569
+
570
+ RubyLint::GlobalScope.definitions.define_constant('Arel::FactoryMethods') do |klass|
571
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
572
+
573
+ klass.define_method('initialize') do |method|
574
+ method.define_block_argument('block')
575
+ end
576
+
577
+ klass.define_instance_method('create_and') do |method|
578
+ method.define_argument('clauses')
579
+ end
580
+
581
+ klass.define_instance_method('create_false')
582
+
583
+ klass.define_instance_method('create_join') do |method|
584
+ method.define_argument('to')
585
+ method.define_optional_argument('constraint')
586
+ method.define_optional_argument('klass')
587
+ end
588
+
589
+ klass.define_instance_method('create_on') do |method|
590
+ method.define_argument('expr')
591
+ end
592
+
593
+ klass.define_instance_method('create_string_join') do |method|
594
+ method.define_argument('to')
595
+ end
596
+
597
+ klass.define_instance_method('create_table_alias') do |method|
598
+ method.define_argument('relation')
599
+ method.define_argument('name')
600
+ end
601
+
602
+ klass.define_instance_method('create_true')
603
+
604
+ klass.define_instance_method('grouping') do |method|
605
+ method.define_argument('expr')
606
+ end
607
+
608
+ klass.define_instance_method('lower') do |method|
609
+ method.define_argument('column')
610
+ end
611
+ end
612
+
613
+ RubyLint::GlobalScope.definitions.define_constant('Arel::InnerJoin') do |klass|
614
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Arel::Nodes::Join'))
615
+
616
+ klass.define_instance_method('all?')
617
+
618
+ klass.define_instance_method('and') do |method|
619
+ method.define_argument('right')
620
+ end
621
+
622
+ klass.define_instance_method('any?')
623
+
624
+ klass.define_instance_method('chunk') do |method|
625
+ method.define_optional_argument('initial_state')
626
+ method.define_block_argument('original_block')
627
+ end
628
+
629
+ klass.define_instance_method('collect')
630
+
631
+ klass.define_instance_method('collect_concat') do |method|
632
+ method.define_block_argument('block')
633
+ end
634
+
635
+ klass.define_instance_method('count') do |method|
636
+ method.define_optional_argument('item')
637
+ end
638
+
639
+ klass.define_instance_method('create_and') do |method|
640
+ method.define_argument('clauses')
641
+ end
642
+
643
+ klass.define_instance_method('create_false')
644
+
645
+ klass.define_instance_method('create_join') do |method|
646
+ method.define_argument('to')
647
+ method.define_optional_argument('constraint')
648
+ method.define_optional_argument('klass')
649
+ end
650
+
651
+ klass.define_instance_method('create_on') do |method|
652
+ method.define_argument('expr')
653
+ end
654
+
655
+ klass.define_instance_method('create_string_join') do |method|
656
+ method.define_argument('to')
657
+ end
658
+
659
+ klass.define_instance_method('create_table_alias') do |method|
660
+ method.define_argument('relation')
661
+ method.define_argument('name')
662
+ end
663
+
664
+ klass.define_instance_method('create_true')
665
+
666
+ klass.define_instance_method('cycle') do |method|
667
+ method.define_optional_argument('many')
668
+ end
669
+
670
+ klass.define_instance_method('detect') do |method|
671
+ method.define_optional_argument('ifnone')
672
+ end
673
+
674
+ klass.define_instance_method('drop') do |method|
675
+ method.define_argument('n')
676
+ end
677
+
678
+ klass.define_instance_method('drop_while')
679
+
680
+ klass.define_instance_method('each') do |method|
681
+ method.define_block_argument('block')
682
+ end
683
+
684
+ klass.define_instance_method('each_cons') do |method|
685
+ method.define_argument('num')
686
+ end
687
+
688
+ klass.define_instance_method('each_entry') do |method|
689
+ method.define_rest_argument('pass')
690
+ end
691
+
692
+ klass.define_instance_method('each_slice') do |method|
693
+ method.define_argument('slice_size')
694
+ end
695
+
696
+ klass.define_instance_method('each_with_index') do |method|
697
+ method.define_rest_argument('args')
698
+ end
699
+
700
+ klass.define_instance_method('each_with_object') do |method|
701
+ method.define_argument('memo')
702
+ end
703
+
704
+ klass.define_instance_method('entries') do |method|
705
+ method.define_rest_argument('arg')
706
+ end
707
+
708
+ klass.define_instance_method('exclude?') do |method|
709
+ method.define_argument('object')
710
+ end
711
+
712
+ klass.define_instance_method('find') do |method|
713
+ method.define_optional_argument('ifnone')
714
+ end
715
+
716
+ klass.define_instance_method('find_all')
717
+
718
+ klass.define_instance_method('find_index') do |method|
719
+ method.define_optional_argument('value')
720
+ end
721
+
722
+ klass.define_instance_method('first') do |method|
723
+ method.define_optional_argument('n')
724
+ end
725
+
726
+ klass.define_instance_method('flat_map') do |method|
727
+ method.define_block_argument('block')
728
+ end
729
+
730
+ klass.define_instance_method('grep') do |method|
731
+ method.define_argument('pattern')
732
+ end
733
+
734
+ klass.define_instance_method('group_by')
735
+
736
+ klass.define_instance_method('grouping') do |method|
737
+ method.define_argument('expr')
738
+ end
739
+
740
+ klass.define_instance_method('include?') do |method|
741
+ method.define_argument('obj')
742
+ end
743
+
744
+ klass.define_instance_method('index_by')
745
+
746
+ klass.define_instance_method('inject') do |method|
747
+ method.define_optional_argument('initial')
748
+ method.define_optional_argument('sym')
749
+ end
750
+
751
+ klass.define_instance_method('left')
752
+
753
+ klass.define_instance_method('left=')
754
+
755
+ klass.define_instance_method('lower') do |method|
756
+ method.define_argument('column')
757
+ end
758
+
759
+ klass.define_instance_method('many?')
760
+
761
+ klass.define_instance_method('map')
762
+
763
+ klass.define_instance_method('max')
764
+
765
+ klass.define_instance_method('max_by')
766
+
767
+ klass.define_instance_method('member?') do |method|
768
+ method.define_argument('obj')
769
+ end
770
+
771
+ klass.define_instance_method('min')
772
+
773
+ klass.define_instance_method('min_by')
774
+
775
+ klass.define_instance_method('minmax') do |method|
776
+ method.define_block_argument('block')
777
+ end
778
+
779
+ klass.define_instance_method('minmax_by') do |method|
780
+ method.define_block_argument('block')
781
+ end
782
+
783
+ klass.define_instance_method('none?')
784
+
785
+ klass.define_instance_method('not')
786
+
787
+ klass.define_instance_method('one?')
788
+
789
+ klass.define_instance_method('or') do |method|
790
+ method.define_argument('right')
791
+ end
792
+
793
+ klass.define_instance_method('partition')
794
+
795
+ klass.define_instance_method('reduce') do |method|
796
+ method.define_optional_argument('initial')
797
+ method.define_optional_argument('sym')
798
+ end
799
+
800
+ klass.define_instance_method('reject')
801
+
802
+ klass.define_instance_method('reverse_each') do |method|
803
+ method.define_block_argument('block')
804
+ end
805
+
806
+ klass.define_instance_method('right')
807
+
808
+ klass.define_instance_method('right=')
809
+
810
+ klass.define_instance_method('select')
811
+
812
+ klass.define_instance_method('slice_before') do |method|
813
+ method.define_optional_argument('arg')
814
+ method.define_block_argument('block')
815
+ end
816
+
817
+ klass.define_instance_method('sort') do |method|
818
+ method.define_block_argument('prc')
819
+ end
820
+
821
+ klass.define_instance_method('sort_by')
822
+
823
+ klass.define_instance_method('sum') do |method|
824
+ method.define_optional_argument('identity')
825
+ method.define_block_argument('block')
826
+ end
827
+
828
+ klass.define_instance_method('take') do |method|
829
+ method.define_argument('n')
830
+ end
831
+
832
+ klass.define_instance_method('take_while')
833
+
834
+ klass.define_instance_method('to_a') do |method|
835
+ method.define_rest_argument('arg')
836
+ end
837
+
838
+ klass.define_instance_method('to_set') do |method|
839
+ method.define_optional_argument('klass')
840
+ method.define_rest_argument('args')
841
+ method.define_block_argument('block')
842
+ end
843
+
844
+ klass.define_instance_method('to_sql') do |method|
845
+ method.define_optional_argument('engine')
846
+ end
847
+
848
+ klass.define_instance_method('with_object') do |method|
849
+ method.define_argument('memo')
850
+ end
851
+
852
+ klass.define_instance_method('zip') do |method|
853
+ method.define_rest_argument('args')
854
+ end
855
+ end
856
+
857
+ RubyLint::GlobalScope.definitions.define_constant('Arel::InsertManager') do |klass|
858
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Arel::TreeManager'))
859
+
860
+ klass.define_instance_method('ast')
861
+
862
+ klass.define_instance_method('columns')
863
+
864
+ klass.define_instance_method('create_and') do |method|
865
+ method.define_argument('clauses')
866
+ end
867
+
868
+ klass.define_instance_method('create_false')
869
+
870
+ klass.define_instance_method('create_join') do |method|
871
+ method.define_argument('to')
872
+ method.define_optional_argument('constraint')
873
+ method.define_optional_argument('klass')
874
+ end
875
+
876
+ klass.define_instance_method('create_on') do |method|
877
+ method.define_argument('expr')
878
+ end
879
+
880
+ klass.define_instance_method('create_string_join') do |method|
881
+ method.define_argument('to')
882
+ end
883
+
884
+ klass.define_instance_method('create_table_alias') do |method|
885
+ method.define_argument('relation')
886
+ method.define_argument('name')
887
+ end
888
+
889
+ klass.define_instance_method('create_true')
890
+
891
+ klass.define_instance_method('create_values') do |method|
892
+ method.define_argument('values')
893
+ method.define_argument('columns')
894
+ end
895
+
896
+ klass.define_instance_method('engine')
897
+
898
+ klass.define_instance_method('grouping') do |method|
899
+ method.define_argument('expr')
900
+ end
901
+
902
+ klass.define_instance_method('insert') do |method|
903
+ method.define_argument('fields')
904
+ end
905
+
906
+ klass.define_instance_method('into') do |method|
907
+ method.define_argument('table')
908
+ end
909
+
910
+ klass.define_instance_method('lower') do |method|
911
+ method.define_argument('column')
912
+ end
913
+
914
+ klass.define_instance_method('to_dot')
915
+
916
+ klass.define_instance_method('to_sql')
917
+
918
+ klass.define_instance_method('values=') do |method|
919
+ method.define_argument('val')
920
+ end
921
+
922
+ klass.define_instance_method('visitor')
923
+
924
+ klass.define_instance_method('where') do |method|
925
+ method.define_argument('expr')
926
+ end
927
+ end
928
+
929
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Math') do |klass|
930
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
931
+
932
+ klass.define_method('initialize') do |method|
933
+ method.define_block_argument('block')
934
+ end
935
+
936
+ klass.define_instance_method('*') do |method|
937
+ method.define_argument('other')
938
+ end
939
+
940
+ klass.define_instance_method('+') do |method|
941
+ method.define_argument('other')
942
+ end
943
+
944
+ klass.define_instance_method('-') do |method|
945
+ method.define_argument('other')
946
+ end
947
+
948
+ klass.define_instance_method('/') do |method|
949
+ method.define_argument('other')
950
+ end
951
+ end
952
+
953
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Node') do |klass|
954
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
955
+
956
+ klass.define_instance_method('all?')
957
+
958
+ klass.define_instance_method('and') do |method|
959
+ method.define_argument('right')
960
+ end
961
+
962
+ klass.define_instance_method('any?')
963
+
964
+ klass.define_instance_method('chunk') do |method|
965
+ method.define_optional_argument('initial_state')
966
+ method.define_block_argument('original_block')
967
+ end
968
+
969
+ klass.define_instance_method('collect')
970
+
971
+ klass.define_instance_method('collect_concat') do |method|
972
+ method.define_block_argument('block')
973
+ end
974
+
975
+ klass.define_instance_method('count') do |method|
976
+ method.define_optional_argument('item')
977
+ end
978
+
979
+ klass.define_instance_method('create_and') do |method|
980
+ method.define_argument('clauses')
981
+ end
982
+
983
+ klass.define_instance_method('create_false')
984
+
985
+ klass.define_instance_method('create_join') do |method|
986
+ method.define_argument('to')
987
+ method.define_optional_argument('constraint')
988
+ method.define_optional_argument('klass')
989
+ end
990
+
991
+ klass.define_instance_method('create_on') do |method|
992
+ method.define_argument('expr')
993
+ end
994
+
995
+ klass.define_instance_method('create_string_join') do |method|
996
+ method.define_argument('to')
997
+ end
998
+
999
+ klass.define_instance_method('create_table_alias') do |method|
1000
+ method.define_argument('relation')
1001
+ method.define_argument('name')
1002
+ end
1003
+
1004
+ klass.define_instance_method('create_true')
1005
+
1006
+ klass.define_instance_method('cycle') do |method|
1007
+ method.define_optional_argument('many')
1008
+ end
1009
+
1010
+ klass.define_instance_method('detect') do |method|
1011
+ method.define_optional_argument('ifnone')
1012
+ end
1013
+
1014
+ klass.define_instance_method('drop') do |method|
1015
+ method.define_argument('n')
1016
+ end
1017
+
1018
+ klass.define_instance_method('drop_while')
1019
+
1020
+ klass.define_instance_method('each') do |method|
1021
+ method.define_block_argument('block')
1022
+ end
1023
+
1024
+ klass.define_instance_method('each_cons') do |method|
1025
+ method.define_argument('num')
1026
+ end
1027
+
1028
+ klass.define_instance_method('each_entry') do |method|
1029
+ method.define_rest_argument('pass')
1030
+ end
1031
+
1032
+ klass.define_instance_method('each_slice') do |method|
1033
+ method.define_argument('slice_size')
1034
+ end
1035
+
1036
+ klass.define_instance_method('each_with_index') do |method|
1037
+ method.define_rest_argument('args')
1038
+ end
1039
+
1040
+ klass.define_instance_method('each_with_object') do |method|
1041
+ method.define_argument('memo')
1042
+ end
1043
+
1044
+ klass.define_instance_method('entries') do |method|
1045
+ method.define_rest_argument('arg')
1046
+ end
1047
+
1048
+ klass.define_instance_method('exclude?') do |method|
1049
+ method.define_argument('object')
1050
+ end
1051
+
1052
+ klass.define_instance_method('find') do |method|
1053
+ method.define_optional_argument('ifnone')
1054
+ end
1055
+
1056
+ klass.define_instance_method('find_all')
1057
+
1058
+ klass.define_instance_method('find_index') do |method|
1059
+ method.define_optional_argument('value')
1060
+ end
1061
+
1062
+ klass.define_instance_method('first') do |method|
1063
+ method.define_optional_argument('n')
1064
+ end
1065
+
1066
+ klass.define_instance_method('flat_map') do |method|
1067
+ method.define_block_argument('block')
1068
+ end
1069
+
1070
+ klass.define_instance_method('grep') do |method|
1071
+ method.define_argument('pattern')
1072
+ end
1073
+
1074
+ klass.define_instance_method('group_by')
1075
+
1076
+ klass.define_instance_method('grouping') do |method|
1077
+ method.define_argument('expr')
1078
+ end
1079
+
1080
+ klass.define_instance_method('include?') do |method|
1081
+ method.define_argument('obj')
1082
+ end
1083
+
1084
+ klass.define_instance_method('index_by')
1085
+
1086
+ klass.define_instance_method('inject') do |method|
1087
+ method.define_optional_argument('initial')
1088
+ method.define_optional_argument('sym')
1089
+ end
1090
+
1091
+ klass.define_instance_method('lower') do |method|
1092
+ method.define_argument('column')
1093
+ end
1094
+
1095
+ klass.define_instance_method('many?')
1096
+
1097
+ klass.define_instance_method('map')
1098
+
1099
+ klass.define_instance_method('max')
1100
+
1101
+ klass.define_instance_method('max_by')
1102
+
1103
+ klass.define_instance_method('member?') do |method|
1104
+ method.define_argument('obj')
1105
+ end
1106
+
1107
+ klass.define_instance_method('min')
1108
+
1109
+ klass.define_instance_method('min_by')
1110
+
1111
+ klass.define_instance_method('minmax') do |method|
1112
+ method.define_block_argument('block')
1113
+ end
1114
+
1115
+ klass.define_instance_method('minmax_by') do |method|
1116
+ method.define_block_argument('block')
1117
+ end
1118
+
1119
+ klass.define_instance_method('none?')
1120
+
1121
+ klass.define_instance_method('not')
1122
+
1123
+ klass.define_instance_method('one?')
1124
+
1125
+ klass.define_instance_method('or') do |method|
1126
+ method.define_argument('right')
1127
+ end
1128
+
1129
+ klass.define_instance_method('partition')
1130
+
1131
+ klass.define_instance_method('reduce') do |method|
1132
+ method.define_optional_argument('initial')
1133
+ method.define_optional_argument('sym')
1134
+ end
1135
+
1136
+ klass.define_instance_method('reject')
1137
+
1138
+ klass.define_instance_method('reverse_each') do |method|
1139
+ method.define_block_argument('block')
1140
+ end
1141
+
1142
+ klass.define_instance_method('select')
1143
+
1144
+ klass.define_instance_method('slice_before') do |method|
1145
+ method.define_optional_argument('arg')
1146
+ method.define_block_argument('block')
1147
+ end
1148
+
1149
+ klass.define_instance_method('sort') do |method|
1150
+ method.define_block_argument('prc')
1151
+ end
1152
+
1153
+ klass.define_instance_method('sort_by')
1154
+
1155
+ klass.define_instance_method('sum') do |method|
1156
+ method.define_optional_argument('identity')
1157
+ method.define_block_argument('block')
1158
+ end
1159
+
1160
+ klass.define_instance_method('take') do |method|
1161
+ method.define_argument('n')
1162
+ end
1163
+
1164
+ klass.define_instance_method('take_while')
1165
+
1166
+ klass.define_instance_method('to_a') do |method|
1167
+ method.define_rest_argument('arg')
1168
+ end
1169
+
1170
+ klass.define_instance_method('to_set') do |method|
1171
+ method.define_optional_argument('klass')
1172
+ method.define_rest_argument('args')
1173
+ method.define_block_argument('block')
1174
+ end
1175
+
1176
+ klass.define_instance_method('to_sql') do |method|
1177
+ method.define_optional_argument('engine')
1178
+ end
1179
+
1180
+ klass.define_instance_method('with_object') do |method|
1181
+ method.define_argument('memo')
1182
+ end
1183
+
1184
+ klass.define_instance_method('zip') do |method|
1185
+ method.define_rest_argument('args')
1186
+ end
1187
+ end
1188
+
1189
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Nodes') do |klass|
1190
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
1191
+
1192
+ klass.define_method('initialize') do |method|
1193
+ method.define_block_argument('block')
1194
+ end
1195
+ end
1196
+
1197
+ RubyLint::GlobalScope.definitions.define_constant('Arel::OrderPredications') do |klass|
1198
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
1199
+
1200
+ klass.define_method('initialize') do |method|
1201
+ method.define_block_argument('block')
1202
+ end
1203
+
1204
+ klass.define_instance_method('asc')
1205
+
1206
+ klass.define_instance_method('desc')
1207
+ end
1208
+
1209
+ RubyLint::GlobalScope.definitions.define_constant('Arel::OuterJoin') do |klass|
1210
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Arel::Nodes::Join'))
1211
+
1212
+ klass.define_instance_method('all?')
1213
+
1214
+ klass.define_instance_method('and') do |method|
1215
+ method.define_argument('right')
1216
+ end
1217
+
1218
+ klass.define_instance_method('any?')
1219
+
1220
+ klass.define_instance_method('chunk') do |method|
1221
+ method.define_optional_argument('initial_state')
1222
+ method.define_block_argument('original_block')
1223
+ end
1224
+
1225
+ klass.define_instance_method('collect')
1226
+
1227
+ klass.define_instance_method('collect_concat') do |method|
1228
+ method.define_block_argument('block')
1229
+ end
1230
+
1231
+ klass.define_instance_method('count') do |method|
1232
+ method.define_optional_argument('item')
1233
+ end
1234
+
1235
+ klass.define_instance_method('create_and') do |method|
1236
+ method.define_argument('clauses')
1237
+ end
1238
+
1239
+ klass.define_instance_method('create_false')
1240
+
1241
+ klass.define_instance_method('create_join') do |method|
1242
+ method.define_argument('to')
1243
+ method.define_optional_argument('constraint')
1244
+ method.define_optional_argument('klass')
1245
+ end
1246
+
1247
+ klass.define_instance_method('create_on') do |method|
1248
+ method.define_argument('expr')
1249
+ end
1250
+
1251
+ klass.define_instance_method('create_string_join') do |method|
1252
+ method.define_argument('to')
1253
+ end
1254
+
1255
+ klass.define_instance_method('create_table_alias') do |method|
1256
+ method.define_argument('relation')
1257
+ method.define_argument('name')
1258
+ end
1259
+
1260
+ klass.define_instance_method('create_true')
1261
+
1262
+ klass.define_instance_method('cycle') do |method|
1263
+ method.define_optional_argument('many')
1264
+ end
1265
+
1266
+ klass.define_instance_method('detect') do |method|
1267
+ method.define_optional_argument('ifnone')
1268
+ end
1269
+
1270
+ klass.define_instance_method('drop') do |method|
1271
+ method.define_argument('n')
1272
+ end
1273
+
1274
+ klass.define_instance_method('drop_while')
1275
+
1276
+ klass.define_instance_method('each') do |method|
1277
+ method.define_block_argument('block')
1278
+ end
1279
+
1280
+ klass.define_instance_method('each_cons') do |method|
1281
+ method.define_argument('num')
1282
+ end
1283
+
1284
+ klass.define_instance_method('each_entry') do |method|
1285
+ method.define_rest_argument('pass')
1286
+ end
1287
+
1288
+ klass.define_instance_method('each_slice') do |method|
1289
+ method.define_argument('slice_size')
1290
+ end
1291
+
1292
+ klass.define_instance_method('each_with_index') do |method|
1293
+ method.define_rest_argument('args')
1294
+ end
1295
+
1296
+ klass.define_instance_method('each_with_object') do |method|
1297
+ method.define_argument('memo')
1298
+ end
1299
+
1300
+ klass.define_instance_method('entries') do |method|
1301
+ method.define_rest_argument('arg')
1302
+ end
1303
+
1304
+ klass.define_instance_method('exclude?') do |method|
1305
+ method.define_argument('object')
1306
+ end
1307
+
1308
+ klass.define_instance_method('find') do |method|
1309
+ method.define_optional_argument('ifnone')
1310
+ end
1311
+
1312
+ klass.define_instance_method('find_all')
1313
+
1314
+ klass.define_instance_method('find_index') do |method|
1315
+ method.define_optional_argument('value')
1316
+ end
1317
+
1318
+ klass.define_instance_method('first') do |method|
1319
+ method.define_optional_argument('n')
1320
+ end
1321
+
1322
+ klass.define_instance_method('flat_map') do |method|
1323
+ method.define_block_argument('block')
1324
+ end
1325
+
1326
+ klass.define_instance_method('grep') do |method|
1327
+ method.define_argument('pattern')
1328
+ end
1329
+
1330
+ klass.define_instance_method('group_by')
1331
+
1332
+ klass.define_instance_method('grouping') do |method|
1333
+ method.define_argument('expr')
1334
+ end
1335
+
1336
+ klass.define_instance_method('include?') do |method|
1337
+ method.define_argument('obj')
1338
+ end
1339
+
1340
+ klass.define_instance_method('index_by')
1341
+
1342
+ klass.define_instance_method('inject') do |method|
1343
+ method.define_optional_argument('initial')
1344
+ method.define_optional_argument('sym')
1345
+ end
1346
+
1347
+ klass.define_instance_method('left')
1348
+
1349
+ klass.define_instance_method('left=')
1350
+
1351
+ klass.define_instance_method('lower') do |method|
1352
+ method.define_argument('column')
1353
+ end
1354
+
1355
+ klass.define_instance_method('many?')
1356
+
1357
+ klass.define_instance_method('map')
1358
+
1359
+ klass.define_instance_method('max')
1360
+
1361
+ klass.define_instance_method('max_by')
1362
+
1363
+ klass.define_instance_method('member?') do |method|
1364
+ method.define_argument('obj')
1365
+ end
1366
+
1367
+ klass.define_instance_method('min')
1368
+
1369
+ klass.define_instance_method('min_by')
1370
+
1371
+ klass.define_instance_method('minmax') do |method|
1372
+ method.define_block_argument('block')
1373
+ end
1374
+
1375
+ klass.define_instance_method('minmax_by') do |method|
1376
+ method.define_block_argument('block')
1377
+ end
1378
+
1379
+ klass.define_instance_method('none?')
1380
+
1381
+ klass.define_instance_method('not')
1382
+
1383
+ klass.define_instance_method('one?')
1384
+
1385
+ klass.define_instance_method('or') do |method|
1386
+ method.define_argument('right')
1387
+ end
1388
+
1389
+ klass.define_instance_method('partition')
1390
+
1391
+ klass.define_instance_method('reduce') do |method|
1392
+ method.define_optional_argument('initial')
1393
+ method.define_optional_argument('sym')
1394
+ end
1395
+
1396
+ klass.define_instance_method('reject')
1397
+
1398
+ klass.define_instance_method('reverse_each') do |method|
1399
+ method.define_block_argument('block')
1400
+ end
1401
+
1402
+ klass.define_instance_method('right')
1403
+
1404
+ klass.define_instance_method('right=')
1405
+
1406
+ klass.define_instance_method('select')
1407
+
1408
+ klass.define_instance_method('slice_before') do |method|
1409
+ method.define_optional_argument('arg')
1410
+ method.define_block_argument('block')
1411
+ end
1412
+
1413
+ klass.define_instance_method('sort') do |method|
1414
+ method.define_block_argument('prc')
1415
+ end
1416
+
1417
+ klass.define_instance_method('sort_by')
1418
+
1419
+ klass.define_instance_method('sum') do |method|
1420
+ method.define_optional_argument('identity')
1421
+ method.define_block_argument('block')
1422
+ end
1423
+
1424
+ klass.define_instance_method('take') do |method|
1425
+ method.define_argument('n')
1426
+ end
1427
+
1428
+ klass.define_instance_method('take_while')
1429
+
1430
+ klass.define_instance_method('to_a') do |method|
1431
+ method.define_rest_argument('arg')
1432
+ end
1433
+
1434
+ klass.define_instance_method('to_set') do |method|
1435
+ method.define_optional_argument('klass')
1436
+ method.define_rest_argument('args')
1437
+ method.define_block_argument('block')
1438
+ end
1439
+
1440
+ klass.define_instance_method('to_sql') do |method|
1441
+ method.define_optional_argument('engine')
1442
+ end
1443
+
1444
+ klass.define_instance_method('with_object') do |method|
1445
+ method.define_argument('memo')
1446
+ end
1447
+
1448
+ klass.define_instance_method('zip') do |method|
1449
+ method.define_rest_argument('args')
1450
+ end
1451
+ end
1452
+
1453
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Predications') do |klass|
1454
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
1455
+
1456
+ klass.define_method('initialize') do |method|
1457
+ method.define_block_argument('block')
1458
+ end
1459
+
1460
+ klass.define_instance_method('does_not_match') do |method|
1461
+ method.define_argument('other')
1462
+ end
1463
+
1464
+ klass.define_instance_method('does_not_match_all') do |method|
1465
+ method.define_argument('others')
1466
+ end
1467
+
1468
+ klass.define_instance_method('does_not_match_any') do |method|
1469
+ method.define_argument('others')
1470
+ end
1471
+
1472
+ klass.define_instance_method('eq') do |method|
1473
+ method.define_argument('other')
1474
+ end
1475
+
1476
+ klass.define_instance_method('eq_all') do |method|
1477
+ method.define_argument('others')
1478
+ end
1479
+
1480
+ klass.define_instance_method('eq_any') do |method|
1481
+ method.define_argument('others')
1482
+ end
1483
+
1484
+ klass.define_instance_method('gt') do |method|
1485
+ method.define_argument('right')
1486
+ end
1487
+
1488
+ klass.define_instance_method('gt_all') do |method|
1489
+ method.define_argument('others')
1490
+ end
1491
+
1492
+ klass.define_instance_method('gt_any') do |method|
1493
+ method.define_argument('others')
1494
+ end
1495
+
1496
+ klass.define_instance_method('gteq') do |method|
1497
+ method.define_argument('right')
1498
+ end
1499
+
1500
+ klass.define_instance_method('gteq_all') do |method|
1501
+ method.define_argument('others')
1502
+ end
1503
+
1504
+ klass.define_instance_method('gteq_any') do |method|
1505
+ method.define_argument('others')
1506
+ end
1507
+
1508
+ klass.define_instance_method('in') do |method|
1509
+ method.define_argument('other')
1510
+ end
1511
+
1512
+ klass.define_instance_method('in_all') do |method|
1513
+ method.define_argument('others')
1514
+ end
1515
+
1516
+ klass.define_instance_method('in_any') do |method|
1517
+ method.define_argument('others')
1518
+ end
1519
+
1520
+ klass.define_instance_method('lt') do |method|
1521
+ method.define_argument('right')
1522
+ end
1523
+
1524
+ klass.define_instance_method('lt_all') do |method|
1525
+ method.define_argument('others')
1526
+ end
1527
+
1528
+ klass.define_instance_method('lt_any') do |method|
1529
+ method.define_argument('others')
1530
+ end
1531
+
1532
+ klass.define_instance_method('lteq') do |method|
1533
+ method.define_argument('right')
1534
+ end
1535
+
1536
+ klass.define_instance_method('lteq_all') do |method|
1537
+ method.define_argument('others')
1538
+ end
1539
+
1540
+ klass.define_instance_method('lteq_any') do |method|
1541
+ method.define_argument('others')
1542
+ end
1543
+
1544
+ klass.define_instance_method('matches') do |method|
1545
+ method.define_argument('other')
1546
+ end
1547
+
1548
+ klass.define_instance_method('matches_all') do |method|
1549
+ method.define_argument('others')
1550
+ end
1551
+
1552
+ klass.define_instance_method('matches_any') do |method|
1553
+ method.define_argument('others')
1554
+ end
1555
+
1556
+ klass.define_instance_method('not_eq') do |method|
1557
+ method.define_argument('other')
1558
+ end
1559
+
1560
+ klass.define_instance_method('not_eq_all') do |method|
1561
+ method.define_argument('others')
1562
+ end
1563
+
1564
+ klass.define_instance_method('not_eq_any') do |method|
1565
+ method.define_argument('others')
1566
+ end
1567
+
1568
+ klass.define_instance_method('not_in') do |method|
1569
+ method.define_argument('other')
1570
+ end
1571
+
1572
+ klass.define_instance_method('not_in_all') do |method|
1573
+ method.define_argument('others')
1574
+ end
1575
+
1576
+ klass.define_instance_method('not_in_any') do |method|
1577
+ method.define_argument('others')
1578
+ end
1579
+ end
1580
+
1581
+ RubyLint::GlobalScope.definitions.define_constant('Arel::SelectManager') do |klass|
1582
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Arel::TreeManager'))
1583
+
1584
+ klass.define_instance_method('as') do |method|
1585
+ method.define_argument('other')
1586
+ end
1587
+
1588
+ klass.define_instance_method('ast')
1589
+
1590
+ klass.define_instance_method('compile_delete')
1591
+
1592
+ klass.define_instance_method('compile_insert') do |method|
1593
+ method.define_argument('values')
1594
+ end
1595
+
1596
+ klass.define_instance_method('compile_update') do |method|
1597
+ method.define_argument('values')
1598
+ end
1599
+
1600
+ klass.define_instance_method('constraints')
1601
+
1602
+ klass.define_instance_method('create_and') do |method|
1603
+ method.define_argument('clauses')
1604
+ end
1605
+
1606
+ klass.define_instance_method('create_false')
1607
+
1608
+ klass.define_instance_method('create_insert')
1609
+
1610
+ klass.define_instance_method('create_join') do |method|
1611
+ method.define_argument('to')
1612
+ method.define_optional_argument('constraint')
1613
+ method.define_optional_argument('klass')
1614
+ end
1615
+
1616
+ klass.define_instance_method('create_on') do |method|
1617
+ method.define_argument('expr')
1618
+ end
1619
+
1620
+ klass.define_instance_method('create_string_join') do |method|
1621
+ method.define_argument('to')
1622
+ end
1623
+
1624
+ klass.define_instance_method('create_table_alias') do |method|
1625
+ method.define_argument('relation')
1626
+ method.define_argument('name')
1627
+ end
1628
+
1629
+ klass.define_instance_method('create_true')
1630
+
1631
+ klass.define_instance_method('delete')
1632
+
1633
+ klass.define_instance_method('distinct') do |method|
1634
+ method.define_optional_argument('value')
1635
+ end
1636
+
1637
+ klass.define_instance_method('engine')
1638
+
1639
+ klass.define_instance_method('except') do |method|
1640
+ method.define_argument('other')
1641
+ end
1642
+
1643
+ klass.define_instance_method('exists')
1644
+
1645
+ klass.define_instance_method('from') do |method|
1646
+ method.define_argument('table')
1647
+ end
1648
+
1649
+ klass.define_instance_method('froms')
1650
+
1651
+ klass.define_instance_method('group') do |method|
1652
+ method.define_rest_argument('columns')
1653
+ end
1654
+
1655
+ klass.define_instance_method('grouping') do |method|
1656
+ method.define_argument('expr')
1657
+ end
1658
+
1659
+ klass.define_instance_method('having') do |method|
1660
+ method.define_rest_argument('exprs')
1661
+ end
1662
+
1663
+ klass.define_instance_method('insert') do |method|
1664
+ method.define_argument('values')
1665
+ end
1666
+
1667
+ klass.define_instance_method('intersect') do |method|
1668
+ method.define_argument('other')
1669
+ end
1670
+
1671
+ klass.define_instance_method('join') do |method|
1672
+ method.define_argument('relation')
1673
+ method.define_optional_argument('klass')
1674
+ end
1675
+
1676
+ klass.define_instance_method('join_sources')
1677
+
1678
+ klass.define_instance_method('join_sql')
1679
+
1680
+ klass.define_instance_method('joins') do |method|
1681
+ method.define_argument('manager')
1682
+ end
1683
+
1684
+ klass.define_instance_method('limit')
1685
+
1686
+ klass.define_instance_method('limit=') do |method|
1687
+ method.define_argument('limit')
1688
+ end
1689
+
1690
+ klass.define_instance_method('lock') do |method|
1691
+ method.define_optional_argument('locking')
1692
+ end
1693
+
1694
+ klass.define_instance_method('locked')
1695
+
1696
+ klass.define_instance_method('lower') do |method|
1697
+ method.define_argument('column')
1698
+ end
1699
+
1700
+ klass.define_instance_method('minus') do |method|
1701
+ method.define_argument('other')
1702
+ end
1703
+
1704
+ klass.define_instance_method('offset')
1705
+
1706
+ klass.define_instance_method('offset=') do |method|
1707
+ method.define_argument('amount')
1708
+ end
1709
+
1710
+ klass.define_instance_method('on') do |method|
1711
+ method.define_rest_argument('exprs')
1712
+ end
1713
+
1714
+ klass.define_instance_method('order') do |method|
1715
+ method.define_rest_argument('expr')
1716
+ end
1717
+
1718
+ klass.define_instance_method('order_clauses')
1719
+
1720
+ klass.define_instance_method('orders')
1721
+
1722
+ klass.define_instance_method('project') do |method|
1723
+ method.define_rest_argument('projections')
1724
+ end
1725
+
1726
+ klass.define_instance_method('projections')
1727
+
1728
+ klass.define_instance_method('projections=') do |method|
1729
+ method.define_argument('projections')
1730
+ end
1731
+
1732
+ klass.define_instance_method('skip') do |method|
1733
+ method.define_argument('amount')
1734
+ end
1735
+
1736
+ klass.define_instance_method('source')
1737
+
1738
+ klass.define_instance_method('take') do |method|
1739
+ method.define_argument('limit')
1740
+ end
1741
+
1742
+ klass.define_instance_method('taken')
1743
+
1744
+ klass.define_instance_method('to_a')
1745
+
1746
+ klass.define_instance_method('to_dot')
1747
+
1748
+ klass.define_instance_method('to_sql')
1749
+
1750
+ klass.define_instance_method('union') do |method|
1751
+ method.define_argument('operation')
1752
+ method.define_optional_argument('other')
1753
+ end
1754
+
1755
+ klass.define_instance_method('update') do |method|
1756
+ method.define_argument('values')
1757
+ end
1758
+
1759
+ klass.define_instance_method('visitor')
1760
+
1761
+ klass.define_instance_method('where') do |method|
1762
+ method.define_argument('expr')
1763
+ end
1764
+
1765
+ klass.define_instance_method('where_clauses')
1766
+
1767
+ klass.define_instance_method('where_sql')
1768
+
1769
+ klass.define_instance_method('wheres')
1770
+
1771
+ klass.define_instance_method('window') do |method|
1772
+ method.define_argument('name')
1773
+ end
1774
+
1775
+ klass.define_instance_method('with') do |method|
1776
+ method.define_rest_argument('subqueries')
1777
+ end
1778
+ end
1779
+
1780
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Sql') do |klass|
1781
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
1782
+
1783
+ klass.define_method('initialize') do |method|
1784
+ method.define_block_argument('block')
1785
+ end
1786
+ end
1787
+
1788
+ RubyLint::GlobalScope.definitions.define_constant('Arel::SqlLiteral') do |klass|
1789
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Arel::Nodes::SqlLiteral'))
1790
+
1791
+ klass.define_method('__allocate__')
1792
+
1793
+ klass.define_method('from_bytearray') do |method|
1794
+ method.define_argument('bytes')
1795
+ method.define_argument('start')
1796
+ method.define_argument('count')
1797
+ end
1798
+
1799
+ klass.define_method('from_codepoint') do |method|
1800
+ method.define_argument('code')
1801
+ method.define_argument('enc')
1802
+ end
1803
+
1804
+ klass.define_method('json_create')
1805
+
1806
+ klass.define_method('pattern') do |method|
1807
+ method.define_argument('size')
1808
+ method.define_argument('str')
1809
+ end
1810
+
1811
+ klass.define_method('try_convert') do |method|
1812
+ method.define_argument('obj')
1813
+ end
1814
+
1815
+ klass.define_instance_method('%') do |method|
1816
+ method.define_argument('args')
1817
+ end
1818
+
1819
+ klass.define_instance_method('*') do |method|
1820
+ method.define_argument('num')
1821
+ end
1822
+
1823
+ klass.define_instance_method('+') do |method|
1824
+ method.define_argument('other')
1825
+ end
1826
+
1827
+ klass.define_instance_method('<') do |method|
1828
+ method.define_argument('other')
1829
+ end
1830
+
1831
+ klass.define_instance_method('<<') do |method|
1832
+ method.define_argument('other')
1833
+ end
1834
+
1835
+ klass.define_instance_method('<=') do |method|
1836
+ method.define_argument('other')
1837
+ end
1838
+
1839
+ klass.define_instance_method('>') do |method|
1840
+ method.define_argument('other')
1841
+ end
1842
+
1843
+ klass.define_instance_method('>=') do |method|
1844
+ method.define_argument('other')
1845
+ end
1846
+
1847
+ klass.define_instance_method('[]') do |method|
1848
+ method.define_argument('index')
1849
+ method.define_optional_argument('other')
1850
+ end
1851
+
1852
+ klass.define_instance_method('[]=') do |method|
1853
+ method.define_argument('index')
1854
+ method.define_argument('count_or_replacement')
1855
+ method.define_optional_argument('replacement')
1856
+ end
1857
+
1858
+ klass.define_instance_method('__crypt__') do |method|
1859
+ method.define_argument('other_str')
1860
+ end
1861
+
1862
+ klass.define_instance_method('__data__')
1863
+
1864
+ klass.define_instance_method('__data__=')
1865
+
1866
+ klass.define_instance_method('acts_like_string?')
1867
+
1868
+ klass.define_instance_method('append') do |method|
1869
+ method.define_argument('str')
1870
+ end
1871
+
1872
+ klass.define_instance_method('apply_and!') do |method|
1873
+ method.define_argument('other')
1874
+ end
1875
+
1876
+ klass.define_instance_method('as') do |method|
1877
+ method.define_argument('other')
1878
+ end
1879
+
1880
+ klass.define_instance_method('asc')
1881
+
1882
+ klass.define_instance_method('ascii_only=')
1883
+
1884
+ klass.define_instance_method('ascii_only?')
1885
+
1886
+ klass.define_instance_method('at') do |method|
1887
+ method.define_argument('position')
1888
+ end
1889
+
1890
+ klass.define_instance_method('average')
1891
+
1892
+ klass.define_instance_method('between?') do |method|
1893
+ method.define_argument('min')
1894
+ method.define_argument('max')
1895
+ end
1896
+
1897
+ klass.define_instance_method('byte_append') do |method|
1898
+ method.define_argument('str')
1899
+ end
1900
+
1901
+ klass.define_instance_method('bytes')
1902
+
1903
+ klass.define_instance_method('bytesize')
1904
+
1905
+ klass.define_instance_method('byteslice') do |method|
1906
+ method.define_argument('index_or_range')
1907
+ method.define_optional_argument('length')
1908
+ end
1909
+
1910
+ klass.define_instance_method('camelcase') do |method|
1911
+ method.define_optional_argument('first_letter')
1912
+ end
1913
+
1914
+ klass.define_instance_method('camelize') do |method|
1915
+ method.define_optional_argument('first_letter')
1916
+ end
1917
+
1918
+ klass.define_instance_method('capitalize')
1919
+
1920
+ klass.define_instance_method('capitalize!')
1921
+
1922
+ klass.define_instance_method('casecmp') do |method|
1923
+ method.define_argument('to')
1924
+ end
1925
+
1926
+ klass.define_instance_method('center') do |method|
1927
+ method.define_argument('width')
1928
+ method.define_optional_argument('padding')
1929
+ end
1930
+
1931
+ klass.define_instance_method('chars')
1932
+
1933
+ klass.define_instance_method('chomp') do |method|
1934
+ method.define_optional_argument('separator')
1935
+ end
1936
+
1937
+ klass.define_instance_method('chomp!') do |method|
1938
+ method.define_optional_argument('sep')
1939
+ end
1940
+
1941
+ klass.define_instance_method('chop')
1942
+
1943
+ klass.define_instance_method('chop!')
1944
+
1945
+ klass.define_instance_method('chr')
1946
+
1947
+ klass.define_instance_method('chr_at') do |method|
1948
+ method.define_argument('byte')
1949
+ end
1950
+
1951
+ klass.define_instance_method('classify')
1952
+
1953
+ klass.define_instance_method('clear')
1954
+
1955
+ klass.define_instance_method('codepoints')
1956
+
1957
+ klass.define_instance_method('column_of') do |method|
1958
+ method.define_argument('index')
1959
+ end
1960
+
1961
+ klass.define_instance_method('compare_substring') do |method|
1962
+ method.define_argument('other')
1963
+ method.define_argument('start')
1964
+ method.define_argument('size')
1965
+ end
1966
+
1967
+ klass.define_instance_method('concat') do |method|
1968
+ method.define_argument('other')
1969
+ end
1970
+
1971
+ klass.define_instance_method('constantize')
1972
+
1973
+ klass.define_instance_method('convert_float')
1974
+
1975
+ klass.define_instance_method('count') do |method|
1976
+ method.define_optional_argument('distinct')
1977
+ end
1978
+
1979
+ klass.define_instance_method('count_table') do |method|
1980
+ method.define_rest_argument('strings')
1981
+ end
1982
+
1983
+ klass.define_instance_method('crypt') do |method|
1984
+ method.define_argument('other_str')
1985
+ end
1986
+
1987
+ klass.define_instance_method('dasherize')
1988
+
1989
+ klass.define_instance_method('data')
1990
+
1991
+ klass.define_instance_method('data=')
1992
+
1993
+ klass.define_instance_method('deconstantize')
1994
+
1995
+ klass.define_instance_method('delete') do |method|
1996
+ method.define_rest_argument('strings')
1997
+ end
1998
+
1999
+ klass.define_instance_method('delete!') do |method|
2000
+ method.define_rest_argument('strings')
2001
+ end
2002
+
2003
+ klass.define_instance_method('demodulize')
2004
+
2005
+ klass.define_instance_method('desc')
2006
+
2007
+ klass.define_instance_method('does_not_match') do |method|
2008
+ method.define_argument('other')
2009
+ end
2010
+
2011
+ klass.define_instance_method('does_not_match_all') do |method|
2012
+ method.define_argument('others')
2013
+ end
2014
+
2015
+ klass.define_instance_method('does_not_match_any') do |method|
2016
+ method.define_argument('others')
2017
+ end
2018
+
2019
+ klass.define_instance_method('downcase')
2020
+
2021
+ klass.define_instance_method('downcase!')
2022
+
2023
+ klass.define_instance_method('dump')
2024
+
2025
+ klass.define_instance_method('each_byte')
2026
+
2027
+ klass.define_instance_method('each_char')
2028
+
2029
+ klass.define_instance_method('each_codepoint')
2030
+
2031
+ klass.define_instance_method('each_line') do |method|
2032
+ method.define_optional_argument('sep')
2033
+ end
2034
+
2035
+ klass.define_instance_method('empty?')
2036
+
2037
+ klass.define_instance_method('encode') do |method|
2038
+ method.define_optional_argument('to')
2039
+ method.define_optional_argument('from')
2040
+ method.define_optional_argument('options')
2041
+ end
2042
+
2043
+ klass.define_instance_method('encode!') do |method|
2044
+ method.define_optional_argument('to')
2045
+ method.define_optional_argument('from')
2046
+ method.define_optional_argument('options')
2047
+ end
2048
+
2049
+ klass.define_instance_method('encode_json') do |method|
2050
+ method.define_argument('encoder')
2051
+ end
2052
+
2053
+ klass.define_instance_method('encoding')
2054
+
2055
+ klass.define_instance_method('encoding=')
2056
+
2057
+ klass.define_instance_method('end_with?') do |method|
2058
+ method.define_rest_argument('suffixes')
2059
+ end
2060
+
2061
+ klass.define_instance_method('ends_with?') do |method|
2062
+ method.define_rest_argument('suffixes')
2063
+ end
2064
+
2065
+ klass.define_instance_method('eq') do |method|
2066
+ method.define_argument('other')
2067
+ end
2068
+
2069
+ klass.define_instance_method('eq_all') do |method|
2070
+ method.define_argument('others')
2071
+ end
2072
+
2073
+ klass.define_instance_method('eq_any') do |method|
2074
+ method.define_argument('others')
2075
+ end
2076
+
2077
+ klass.define_instance_method('ext') do |method|
2078
+ method.define_optional_argument('newext')
2079
+ end
2080
+
2081
+ klass.define_instance_method('extract') do |method|
2082
+ method.define_argument('field')
2083
+ end
2084
+
2085
+ klass.define_instance_method('find_character') do |method|
2086
+ method.define_argument('offset')
2087
+ end
2088
+
2089
+ klass.define_instance_method('find_string') do |method|
2090
+ method.define_argument('pattern')
2091
+ method.define_argument('start')
2092
+ end
2093
+
2094
+ klass.define_instance_method('find_string_reverse') do |method|
2095
+ method.define_argument('pattern')
2096
+ method.define_argument('start')
2097
+ end
2098
+
2099
+ klass.define_instance_method('first') do |method|
2100
+ method.define_optional_argument('limit')
2101
+ end
2102
+
2103
+ klass.define_instance_method('force_encoding') do |method|
2104
+ method.define_argument('enc')
2105
+ end
2106
+
2107
+ klass.define_instance_method('foreign_key') do |method|
2108
+ method.define_optional_argument('separate_class_name_and_id_with_underscore')
2109
+ end
2110
+
2111
+ klass.define_instance_method('from') do |method|
2112
+ method.define_argument('position')
2113
+ end
2114
+
2115
+ klass.define_instance_method('getbyte') do |method|
2116
+ method.define_argument('index')
2117
+ end
2118
+
2119
+ klass.define_instance_method('gsub') do |method|
2120
+ method.define_argument('pattern')
2121
+ method.define_optional_argument('replacement')
2122
+ end
2123
+
2124
+ klass.define_instance_method('gsub!') do |method|
2125
+ method.define_argument('pattern')
2126
+ method.define_optional_argument('replacement')
2127
+ end
2128
+
2129
+ klass.define_instance_method('gt') do |method|
2130
+ method.define_argument('right')
2131
+ end
2132
+
2133
+ klass.define_instance_method('gt_all') do |method|
2134
+ method.define_argument('others')
2135
+ end
2136
+
2137
+ klass.define_instance_method('gt_any') do |method|
2138
+ method.define_argument('others')
2139
+ end
2140
+
2141
+ klass.define_instance_method('gteq') do |method|
2142
+ method.define_argument('right')
2143
+ end
2144
+
2145
+ klass.define_instance_method('gteq_all') do |method|
2146
+ method.define_argument('others')
2147
+ end
2148
+
2149
+ klass.define_instance_method('gteq_any') do |method|
2150
+ method.define_argument('others')
2151
+ end
2152
+
2153
+ klass.define_instance_method('hex')
2154
+
2155
+ klass.define_instance_method('html_safe')
2156
+
2157
+ klass.define_instance_method('humanize')
2158
+
2159
+ klass.define_instance_method('in') do |method|
2160
+ method.define_argument('other')
2161
+ end
2162
+
2163
+ klass.define_instance_method('in_all') do |method|
2164
+ method.define_argument('others')
2165
+ end
2166
+
2167
+ klass.define_instance_method('in_any') do |method|
2168
+ method.define_argument('others')
2169
+ end
2170
+
2171
+ klass.define_instance_method('in_time_zone') do |method|
2172
+ method.define_optional_argument('zone')
2173
+ end
2174
+
2175
+ klass.define_instance_method('include?') do |method|
2176
+ method.define_argument('needle')
2177
+ end
2178
+
2179
+ klass.define_instance_method('indent') do |method|
2180
+ method.define_argument('n')
2181
+ end
2182
+
2183
+ klass.define_instance_method('index') do |method|
2184
+ method.define_argument('str')
2185
+ method.define_optional_argument('start')
2186
+ end
2187
+
2188
+ klass.define_instance_method('initialize_copy') do |method|
2189
+ method.define_argument('other')
2190
+ end
2191
+
2192
+ klass.define_instance_method('insert') do |method|
2193
+ method.define_argument('index')
2194
+ method.define_argument('other')
2195
+ end
2196
+
2197
+ klass.define_instance_method('intern')
2198
+
2199
+ klass.define_instance_method('is_utf8?')
2200
+
2201
+ klass.define_instance_method('last') do |method|
2202
+ method.define_optional_argument('limit')
2203
+ end
2204
+
2205
+ klass.define_instance_method('length')
2206
+
2207
+ klass.define_instance_method('line_of') do |method|
2208
+ method.define_argument('index')
2209
+ end
2210
+
2211
+ klass.define_instance_method('lines') do |method|
2212
+ method.define_optional_argument('sep')
2213
+ end
2214
+
2215
+ klass.define_instance_method('ljust') do |method|
2216
+ method.define_argument('width')
2217
+ method.define_optional_argument('padding')
2218
+ end
2219
+
2220
+ klass.define_instance_method('lstrip')
2221
+
2222
+ klass.define_instance_method('lstrip!')
2223
+
2224
+ klass.define_instance_method('lt') do |method|
2225
+ method.define_argument('right')
2226
+ end
2227
+
2228
+ klass.define_instance_method('lt_all') do |method|
2229
+ method.define_argument('others')
2230
+ end
2231
+
2232
+ klass.define_instance_method('lt_any') do |method|
2233
+ method.define_argument('others')
2234
+ end
2235
+
2236
+ klass.define_instance_method('lteq') do |method|
2237
+ method.define_argument('right')
2238
+ end
2239
+
2240
+ klass.define_instance_method('lteq_all') do |method|
2241
+ method.define_argument('others')
2242
+ end
2243
+
2244
+ klass.define_instance_method('lteq_any') do |method|
2245
+ method.define_argument('others')
2246
+ end
2247
+
2248
+ klass.define_instance_method('match') do |method|
2249
+ method.define_argument('pattern')
2250
+ method.define_optional_argument('pos')
2251
+ end
2252
+
2253
+ klass.define_instance_method('matches') do |method|
2254
+ method.define_argument('other')
2255
+ end
2256
+
2257
+ klass.define_instance_method('matches_all') do |method|
2258
+ method.define_argument('others')
2259
+ end
2260
+
2261
+ klass.define_instance_method('matches_any') do |method|
2262
+ method.define_argument('others')
2263
+ end
2264
+
2265
+ klass.define_instance_method('maximum')
2266
+
2267
+ klass.define_instance_method('mb_chars')
2268
+
2269
+ klass.define_instance_method('minimum')
2270
+
2271
+ klass.define_instance_method('modify!')
2272
+
2273
+ klass.define_instance_method('next')
2274
+
2275
+ klass.define_instance_method('next!')
2276
+
2277
+ klass.define_instance_method('not_ascii_only?')
2278
+
2279
+ klass.define_instance_method('not_eq') do |method|
2280
+ method.define_argument('other')
2281
+ end
2282
+
2283
+ klass.define_instance_method('not_eq_all') do |method|
2284
+ method.define_argument('others')
2285
+ end
2286
+
2287
+ klass.define_instance_method('not_eq_any') do |method|
2288
+ method.define_argument('others')
2289
+ end
2290
+
2291
+ klass.define_instance_method('not_in') do |method|
2292
+ method.define_argument('other')
2293
+ end
2294
+
2295
+ klass.define_instance_method('not_in_all') do |method|
2296
+ method.define_argument('others')
2297
+ end
2298
+
2299
+ klass.define_instance_method('not_in_any') do |method|
2300
+ method.define_argument('others')
2301
+ end
2302
+
2303
+ klass.define_instance_method('num_bytes')
2304
+
2305
+ klass.define_instance_method('num_bytes=') do |method|
2306
+ method.define_argument('bytes')
2307
+ end
2308
+
2309
+ klass.define_instance_method('oct')
2310
+
2311
+ klass.define_instance_method('ord')
2312
+
2313
+ klass.define_instance_method('parameterize') do |method|
2314
+ method.define_optional_argument('sep')
2315
+ end
2316
+
2317
+ klass.define_instance_method('partition') do |method|
2318
+ method.define_optional_argument('pattern')
2319
+ end
2320
+
2321
+ klass.define_instance_method('pathmap') do |method|
2322
+ method.define_optional_argument('spec')
2323
+ method.define_block_argument('block')
2324
+ end
2325
+
2326
+ klass.define_instance_method('pathmap_explode')
2327
+
2328
+ klass.define_instance_method('pathmap_partial') do |method|
2329
+ method.define_argument('n')
2330
+ end
2331
+
2332
+ klass.define_instance_method('pathmap_replace') do |method|
2333
+ method.define_argument('patterns')
2334
+ method.define_block_argument('block')
2335
+ end
2336
+
2337
+ klass.define_instance_method('pluralize') do |method|
2338
+ method.define_optional_argument('count')
2339
+ method.define_optional_argument('locale')
2340
+ end
2341
+
2342
+ klass.define_instance_method('prefix?') do |method|
2343
+ method.define_argument('other')
2344
+ end
2345
+
2346
+ klass.define_instance_method('prepend') do |method|
2347
+ method.define_argument('other')
2348
+ end
2349
+
2350
+ klass.define_instance_method('replace') do |method|
2351
+ method.define_argument('other')
2352
+ end
2353
+
2354
+ klass.define_instance_method('reverse')
2355
+
2356
+ klass.define_instance_method('reverse!')
2357
+
2358
+ klass.define_instance_method('rindex') do |method|
2359
+ method.define_argument('sub')
2360
+ method.define_optional_argument('finish')
2361
+ end
2362
+
2363
+ klass.define_instance_method('rjust') do |method|
2364
+ method.define_argument('width')
2365
+ method.define_optional_argument('padding')
2366
+ end
2367
+
2368
+ klass.define_instance_method('rpartition') do |method|
2369
+ method.define_argument('pattern')
2370
+ end
2371
+
2372
+ klass.define_instance_method('rstrip')
2373
+
2374
+ klass.define_instance_method('rstrip!')
2375
+
2376
+ klass.define_instance_method('safe_constantize')
2377
+
2378
+ klass.define_instance_method('scan') do |method|
2379
+ method.define_argument('pattern')
2380
+ end
2381
+
2382
+ klass.define_instance_method('secure_compare') do |method|
2383
+ method.define_argument('other')
2384
+ end
2385
+
2386
+ klass.define_instance_method('setbyte') do |method|
2387
+ method.define_argument('index')
2388
+ method.define_argument('byte')
2389
+ end
2390
+
2391
+ klass.define_instance_method('shared!')
2392
+
2393
+ klass.define_instance_method('shellescape')
2394
+
2395
+ klass.define_instance_method('shellsplit')
2396
+
2397
+ klass.define_instance_method('shorten!') do |method|
2398
+ method.define_argument('size')
2399
+ end
2400
+
2401
+ klass.define_instance_method('singularize') do |method|
2402
+ method.define_optional_argument('locale')
2403
+ end
2404
+
2405
+ klass.define_instance_method('size')
2406
+
2407
+ klass.define_instance_method('slice') do |method|
2408
+ method.define_argument('index')
2409
+ method.define_optional_argument('other')
2410
+ end
2411
+
2412
+ klass.define_instance_method('slice!') do |method|
2413
+ method.define_argument('one')
2414
+ method.define_optional_argument('two')
2415
+ end
2416
+
2417
+ klass.define_instance_method('snake_case')
2418
+
2419
+ klass.define_instance_method('split') do |method|
2420
+ method.define_optional_argument('pattern')
2421
+ method.define_optional_argument('limit')
2422
+ end
2423
+
2424
+ klass.define_instance_method('squeeze') do |method|
2425
+ method.define_rest_argument('strings')
2426
+ end
2427
+
2428
+ klass.define_instance_method('squeeze!') do |method|
2429
+ method.define_rest_argument('strings')
2430
+ end
2431
+
2432
+ klass.define_instance_method('squish')
2433
+
2434
+ klass.define_instance_method('squish!')
2435
+
2436
+ klass.define_instance_method('start_with?') do |method|
2437
+ method.define_rest_argument('prefixes')
2438
+ end
2439
+
2440
+ klass.define_instance_method('starts_with?') do |method|
2441
+ method.define_rest_argument('prefixes')
2442
+ end
2443
+
2444
+ klass.define_instance_method('strip')
2445
+
2446
+ klass.define_instance_method('strip!')
2447
+
2448
+ klass.define_instance_method('strip_heredoc')
2449
+
2450
+ klass.define_instance_method('sub') do |method|
2451
+ method.define_argument('pattern')
2452
+ method.define_optional_argument('replacement')
2453
+ end
2454
+
2455
+ klass.define_instance_method('sub!') do |method|
2456
+ method.define_argument('pattern')
2457
+ method.define_optional_argument('replacement')
2458
+ end
2459
+
2460
+ klass.define_instance_method('substring') do |method|
2461
+ method.define_argument('start')
2462
+ method.define_argument('count')
2463
+ end
2464
+
2465
+ klass.define_instance_method('succ')
2466
+
2467
+ klass.define_instance_method('succ!')
2468
+
2469
+ klass.define_instance_method('suffix?') do |method|
2470
+ method.define_argument('other')
2471
+ end
2472
+
2473
+ klass.define_instance_method('sum')
2474
+
2475
+ klass.define_instance_method('swapcase')
2476
+
2477
+ klass.define_instance_method('swapcase!')
2478
+
2479
+ klass.define_instance_method('tableize')
2480
+
2481
+ klass.define_instance_method('tabto') do |method|
2482
+ method.define_argument('n')
2483
+ end
2484
+
2485
+ klass.define_instance_method('titlecase')
2486
+
2487
+ klass.define_instance_method('titleize')
2488
+
2489
+ klass.define_instance_method('to') do |method|
2490
+ method.define_argument('position')
2491
+ end
2492
+
2493
+ klass.define_instance_method('to_ast') do |method|
2494
+ method.define_optional_argument('name')
2495
+ method.define_optional_argument('line')
2496
+ end
2497
+
2498
+ klass.define_instance_method('to_c')
2499
+
2500
+ klass.define_instance_method('to_crlf')
2501
+
2502
+ klass.define_instance_method('to_d')
2503
+
2504
+ klass.define_instance_method('to_date')
2505
+
2506
+ klass.define_instance_method('to_datetime')
2507
+
2508
+ klass.define_instance_method('to_f')
2509
+
2510
+ klass.define_instance_method('to_i') do |method|
2511
+ method.define_optional_argument('base')
2512
+ end
2513
+
2514
+ klass.define_instance_method('to_inum') do |method|
2515
+ method.define_argument('base')
2516
+ method.define_argument('check')
2517
+ end
2518
+
2519
+ klass.define_instance_method('to_json_raw')
2520
+
2521
+ klass.define_instance_method('to_json_raw_object')
2522
+
2523
+ klass.define_instance_method('to_lf')
2524
+
2525
+ klass.define_instance_method('to_r')
2526
+
2527
+ klass.define_instance_method('to_sexp') do |method|
2528
+ method.define_optional_argument('name')
2529
+ method.define_optional_argument('line')
2530
+ end
2531
+
2532
+ klass.define_instance_method('to_str')
2533
+
2534
+ klass.define_instance_method('to_sub_replacement') do |method|
2535
+ method.define_argument('result')
2536
+ method.define_argument('match')
2537
+ end
2538
+
2539
+ klass.define_instance_method('to_sym')
2540
+
2541
+ klass.define_instance_method('to_time') do |method|
2542
+ method.define_optional_argument('form')
2543
+ end
2544
+
2545
+ klass.define_instance_method('tr') do |method|
2546
+ method.define_argument('source')
2547
+ method.define_argument('replacement')
2548
+ end
2549
+
2550
+ klass.define_instance_method('tr!') do |method|
2551
+ method.define_argument('source')
2552
+ method.define_argument('replacement')
2553
+ end
2554
+
2555
+ klass.define_instance_method('tr_expand!') do |method|
2556
+ method.define_argument('limit')
2557
+ method.define_argument('invalid_as_empty')
2558
+ end
2559
+
2560
+ klass.define_instance_method('tr_s') do |method|
2561
+ method.define_argument('source')
2562
+ method.define_argument('replacement')
2563
+ end
2564
+
2565
+ klass.define_instance_method('tr_s!') do |method|
2566
+ method.define_argument('source')
2567
+ method.define_argument('replacement')
2568
+ end
2569
+
2570
+ klass.define_instance_method('tr_trans') do |method|
2571
+ method.define_argument('source')
2572
+ method.define_argument('replacement')
2573
+ method.define_argument('squeeze')
2574
+ end
2575
+
2576
+ klass.define_instance_method('transform') do |method|
2577
+ method.define_argument('tbl')
2578
+ method.define_argument('respect_kcode')
2579
+ end
2580
+
2581
+ klass.define_instance_method('treetop_camelize')
2582
+
2583
+ klass.define_instance_method('truncate') do |method|
2584
+ method.define_argument('truncate_at')
2585
+ method.define_optional_argument('options')
2586
+ end
2587
+
2588
+ klass.define_instance_method('underscore')
2589
+
2590
+ klass.define_instance_method('unpack') do |method|
2591
+ method.define_argument('directives')
2592
+ end
2593
+
2594
+ klass.define_instance_method('upcase')
2595
+
2596
+ klass.define_instance_method('upcase!')
2597
+
2598
+ klass.define_instance_method('upto') do |method|
2599
+ method.define_argument('stop')
2600
+ method.define_optional_argument('exclusive')
2601
+ end
2602
+
2603
+ klass.define_instance_method('valid_encoding=')
2604
+
2605
+ klass.define_instance_method('valid_encoding?')
2606
+ end
2607
+
2608
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Table') do |klass|
2609
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
2610
+
2611
+ klass.define_method('engine')
2612
+
2613
+ klass.define_method('engine=')
2614
+
2615
+ klass.define_method('table_cache') do |method|
2616
+ method.define_argument('engine')
2617
+ end
2618
+
2619
+ klass.define_instance_method('==') do |method|
2620
+ method.define_argument('other')
2621
+ end
2622
+
2623
+ klass.define_instance_method('[]') do |method|
2624
+ method.define_argument('name')
2625
+ end
2626
+
2627
+ klass.define_instance_method('alias') do |method|
2628
+ method.define_optional_argument('name')
2629
+ end
2630
+
2631
+ klass.define_instance_method('aliases')
2632
+
2633
+ klass.define_instance_method('aliases=')
2634
+
2635
+ klass.define_instance_method('columns')
2636
+
2637
+ klass.define_instance_method('compile_delete')
2638
+
2639
+ klass.define_instance_method('compile_insert') do |method|
2640
+ method.define_argument('values')
2641
+ end
2642
+
2643
+ klass.define_instance_method('compile_update') do |method|
2644
+ method.define_argument('values')
2645
+ end
2646
+
2647
+ klass.define_instance_method('create_and') do |method|
2648
+ method.define_argument('clauses')
2649
+ end
2650
+
2651
+ klass.define_instance_method('create_false')
2652
+
2653
+ klass.define_instance_method('create_insert')
2654
+
2655
+ klass.define_instance_method('create_join') do |method|
2656
+ method.define_argument('to')
2657
+ method.define_optional_argument('constraint')
2658
+ method.define_optional_argument('klass')
2659
+ end
2660
+
2661
+ klass.define_instance_method('create_on') do |method|
2662
+ method.define_argument('expr')
2663
+ end
2664
+
2665
+ klass.define_instance_method('create_string_join') do |method|
2666
+ method.define_argument('to')
2667
+ end
2668
+
2669
+ klass.define_instance_method('create_table_alias') do |method|
2670
+ method.define_argument('relation')
2671
+ method.define_argument('name')
2672
+ end
2673
+
2674
+ klass.define_instance_method('create_true')
2675
+
2676
+ klass.define_instance_method('delete')
2677
+
2678
+ klass.define_instance_method('engine')
2679
+
2680
+ klass.define_instance_method('engine=')
2681
+
2682
+ klass.define_instance_method('eql?') do |method|
2683
+ method.define_argument('other')
2684
+ end
2685
+
2686
+ klass.define_instance_method('from') do |method|
2687
+ method.define_argument('table')
2688
+ end
2689
+
2690
+ klass.define_instance_method('group') do |method|
2691
+ method.define_rest_argument('columns')
2692
+ end
2693
+
2694
+ klass.define_instance_method('grouping') do |method|
2695
+ method.define_argument('expr')
2696
+ end
2697
+
2698
+ klass.define_instance_method('hash')
2699
+
2700
+ klass.define_instance_method('having') do |method|
2701
+ method.define_argument('expr')
2702
+ end
2703
+
2704
+ klass.define_instance_method('insert') do |method|
2705
+ method.define_argument('values')
2706
+ end
2707
+
2708
+ klass.define_instance_method('insert_manager')
2709
+
2710
+ klass.define_instance_method('join') do |method|
2711
+ method.define_argument('relation')
2712
+ method.define_optional_argument('klass')
2713
+ end
2714
+
2715
+ klass.define_instance_method('joins') do |method|
2716
+ method.define_argument('manager')
2717
+ end
2718
+
2719
+ klass.define_instance_method('lower') do |method|
2720
+ method.define_argument('column')
2721
+ end
2722
+
2723
+ klass.define_instance_method('name')
2724
+
2725
+ klass.define_instance_method('name=')
2726
+
2727
+ klass.define_instance_method('order') do |method|
2728
+ method.define_rest_argument('expr')
2729
+ end
2730
+
2731
+ klass.define_instance_method('primary_key')
2732
+
2733
+ klass.define_instance_method('project') do |method|
2734
+ method.define_rest_argument('things')
2735
+ end
2736
+
2737
+ klass.define_instance_method('select_manager')
2738
+
2739
+ klass.define_instance_method('skip') do |method|
2740
+ method.define_argument('amount')
2741
+ end
2742
+
2743
+ klass.define_instance_method('table_alias')
2744
+
2745
+ klass.define_instance_method('table_alias=')
2746
+
2747
+ klass.define_instance_method('table_name')
2748
+
2749
+ klass.define_instance_method('take') do |method|
2750
+ method.define_argument('amount')
2751
+ end
2752
+
2753
+ klass.define_instance_method('update') do |method|
2754
+ method.define_argument('values')
2755
+ end
2756
+
2757
+ klass.define_instance_method('where') do |method|
2758
+ method.define_argument('condition')
2759
+ end
2760
+ end
2761
+
2762
+ RubyLint::GlobalScope.definitions.define_constant('Arel::TreeManager') do |klass|
2763
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
2764
+
2765
+ klass.define_instance_method('ast')
2766
+
2767
+ klass.define_instance_method('create_and') do |method|
2768
+ method.define_argument('clauses')
2769
+ end
2770
+
2771
+ klass.define_instance_method('create_false')
2772
+
2773
+ klass.define_instance_method('create_join') do |method|
2774
+ method.define_argument('to')
2775
+ method.define_optional_argument('constraint')
2776
+ method.define_optional_argument('klass')
2777
+ end
2778
+
2779
+ klass.define_instance_method('create_on') do |method|
2780
+ method.define_argument('expr')
2781
+ end
2782
+
2783
+ klass.define_instance_method('create_string_join') do |method|
2784
+ method.define_argument('to')
2785
+ end
2786
+
2787
+ klass.define_instance_method('create_table_alias') do |method|
2788
+ method.define_argument('relation')
2789
+ method.define_argument('name')
2790
+ end
2791
+
2792
+ klass.define_instance_method('create_true')
2793
+
2794
+ klass.define_instance_method('engine')
2795
+
2796
+ klass.define_instance_method('grouping') do |method|
2797
+ method.define_argument('expr')
2798
+ end
2799
+
2800
+ klass.define_instance_method('lower') do |method|
2801
+ method.define_argument('column')
2802
+ end
2803
+
2804
+ klass.define_instance_method('to_dot')
2805
+
2806
+ klass.define_instance_method('to_sql')
2807
+
2808
+ klass.define_instance_method('visitor')
2809
+
2810
+ klass.define_instance_method('where') do |method|
2811
+ method.define_argument('expr')
2812
+ end
2813
+ end
2814
+
2815
+ RubyLint::GlobalScope.definitions.define_constant('Arel::UpdateManager') do |klass|
2816
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Arel::TreeManager'))
2817
+
2818
+ klass.define_instance_method('ast')
2819
+
2820
+ klass.define_instance_method('create_and') do |method|
2821
+ method.define_argument('clauses')
2822
+ end
2823
+
2824
+ klass.define_instance_method('create_false')
2825
+
2826
+ klass.define_instance_method('create_join') do |method|
2827
+ method.define_argument('to')
2828
+ method.define_optional_argument('constraint')
2829
+ method.define_optional_argument('klass')
2830
+ end
2831
+
2832
+ klass.define_instance_method('create_on') do |method|
2833
+ method.define_argument('expr')
2834
+ end
2835
+
2836
+ klass.define_instance_method('create_string_join') do |method|
2837
+ method.define_argument('to')
2838
+ end
2839
+
2840
+ klass.define_instance_method('create_table_alias') do |method|
2841
+ method.define_argument('relation')
2842
+ method.define_argument('name')
2843
+ end
2844
+
2845
+ klass.define_instance_method('create_true')
2846
+
2847
+ klass.define_instance_method('engine')
2848
+
2849
+ klass.define_instance_method('grouping') do |method|
2850
+ method.define_argument('expr')
2851
+ end
2852
+
2853
+ klass.define_instance_method('key')
2854
+
2855
+ klass.define_instance_method('key=') do |method|
2856
+ method.define_argument('key')
2857
+ end
2858
+
2859
+ klass.define_instance_method('lower') do |method|
2860
+ method.define_argument('column')
2861
+ end
2862
+
2863
+ klass.define_instance_method('order') do |method|
2864
+ method.define_rest_argument('expr')
2865
+ end
2866
+
2867
+ klass.define_instance_method('set') do |method|
2868
+ method.define_argument('values')
2869
+ end
2870
+
2871
+ klass.define_instance_method('table') do |method|
2872
+ method.define_argument('table')
2873
+ end
2874
+
2875
+ klass.define_instance_method('take') do |method|
2876
+ method.define_argument('limit')
2877
+ end
2878
+
2879
+ klass.define_instance_method('to_dot')
2880
+
2881
+ klass.define_instance_method('to_sql')
2882
+
2883
+ klass.define_instance_method('visitor')
2884
+
2885
+ klass.define_instance_method('where') do |method|
2886
+ method.define_argument('expr')
2887
+ end
2888
+
2889
+ klass.define_instance_method('wheres=') do |method|
2890
+ method.define_argument('exprs')
2891
+ end
2892
+ end
2893
+
2894
+ RubyLint::GlobalScope.definitions.define_constant('Arel::VERSION') do |klass|
2895
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
2896
+
2897
+ klass.define_method('%') do |method|
2898
+ method.define_argument('args')
2899
+ end
2900
+
2901
+ klass.define_method('*') do |method|
2902
+ method.define_argument('num')
2903
+ end
2904
+
2905
+ klass.define_method('+') do |method|
2906
+ method.define_argument('other')
2907
+ end
2908
+
2909
+ klass.define_method('<<') do |method|
2910
+ method.define_argument('other')
2911
+ end
2912
+
2913
+ klass.define_method('[]') do |method|
2914
+ method.define_argument('index')
2915
+ method.define_optional_argument('other')
2916
+ end
2917
+
2918
+ klass.define_method('[]=') do |method|
2919
+ method.define_argument('index')
2920
+ method.define_argument('count_or_replacement')
2921
+ method.define_optional_argument('replacement')
2922
+ end
2923
+
2924
+ klass.define_method('__crypt__') do |method|
2925
+ method.define_argument('other_str')
2926
+ end
2927
+
2928
+ klass.define_method('__data__')
2929
+
2930
+ klass.define_method('__data__=')
2931
+
2932
+ klass.define_method('acts_like_string?')
2933
+
2934
+ klass.define_method('append') do |method|
2935
+ method.define_argument('str')
2936
+ end
2937
+
2938
+ klass.define_method('apply_and!') do |method|
2939
+ method.define_argument('other')
2940
+ end
2941
+
2942
+ klass.define_method('ascii_only=')
2943
+
2944
+ klass.define_method('ascii_only?')
2945
+
2946
+ klass.define_method('at') do |method|
2947
+ method.define_argument('position')
2948
+ end
2949
+
2950
+ klass.define_method('between?') do |method|
2951
+ method.define_argument('min')
2952
+ method.define_argument('max')
2953
+ end
2954
+
2955
+ klass.define_method('byte_append') do |method|
2956
+ method.define_argument('str')
2957
+ end
2958
+
2959
+ klass.define_method('bytes')
2960
+
2961
+ klass.define_method('bytesize')
2962
+
2963
+ klass.define_method('byteslice') do |method|
2964
+ method.define_argument('index_or_range')
2965
+ method.define_optional_argument('length')
2966
+ end
2967
+
2968
+ klass.define_method('camelcase') do |method|
2969
+ method.define_optional_argument('first_letter')
2970
+ end
2971
+
2972
+ klass.define_method('camelize') do |method|
2973
+ method.define_optional_argument('first_letter')
2974
+ end
2975
+
2976
+ klass.define_method('capitalize')
2977
+
2978
+ klass.define_method('capitalize!')
2979
+
2980
+ klass.define_method('casecmp') do |method|
2981
+ method.define_argument('to')
2982
+ end
2983
+
2984
+ klass.define_method('center') do |method|
2985
+ method.define_argument('width')
2986
+ method.define_optional_argument('padding')
2987
+ end
2988
+
2989
+ klass.define_method('chars')
2990
+
2991
+ klass.define_method('chomp') do |method|
2992
+ method.define_optional_argument('separator')
2993
+ end
2994
+
2995
+ klass.define_method('chomp!') do |method|
2996
+ method.define_optional_argument('sep')
2997
+ end
2998
+
2999
+ klass.define_method('chop')
3000
+
3001
+ klass.define_method('chop!')
3002
+
3003
+ klass.define_method('chr')
3004
+
3005
+ klass.define_method('chr_at') do |method|
3006
+ method.define_argument('byte')
431
3007
  end
432
3008
 
433
- klass.define_instance_method('order') do |method|
434
- method.define_rest_argument('expr')
3009
+ klass.define_method('classify')
3010
+
3011
+ klass.define_method('clear')
3012
+
3013
+ klass.define_method('codepoints')
3014
+
3015
+ klass.define_method('column_of') do |method|
3016
+ method.define_argument('index')
435
3017
  end
436
3018
 
437
- klass.define_instance_method('order_clauses')
3019
+ klass.define_method('compare_substring') do |method|
3020
+ method.define_argument('other')
3021
+ method.define_argument('start')
3022
+ method.define_argument('size')
3023
+ end
438
3024
 
439
- klass.define_instance_method('orders')
3025
+ klass.define_method('concat') do |method|
3026
+ method.define_argument('other')
3027
+ end
440
3028
 
441
- klass.define_instance_method('project') do |method|
442
- method.define_rest_argument('projections')
3029
+ klass.define_method('constantize')
3030
+
3031
+ klass.define_method('convert_float')
3032
+
3033
+ klass.define_method('count') do |method|
3034
+ method.define_rest_argument('strings')
443
3035
  end
444
3036
 
445
- klass.define_instance_method('projections')
3037
+ klass.define_method('count_table') do |method|
3038
+ method.define_rest_argument('strings')
3039
+ end
446
3040
 
447
- klass.define_instance_method('projections=') do |method|
448
- method.define_argument('projections')
3041
+ klass.define_method('crypt') do |method|
3042
+ method.define_argument('other_str')
449
3043
  end
450
3044
 
451
- klass.define_instance_method('skip') do |method|
452
- method.define_argument('amount')
3045
+ klass.define_method('dasherize')
3046
+
3047
+ klass.define_method('data')
3048
+
3049
+ klass.define_method('data=')
3050
+
3051
+ klass.define_method('deconstantize')
3052
+
3053
+ klass.define_method('delete') do |method|
3054
+ method.define_rest_argument('strings')
453
3055
  end
454
3056
 
455
- klass.define_instance_method('source')
3057
+ klass.define_method('delete!') do |method|
3058
+ method.define_rest_argument('strings')
3059
+ end
456
3060
 
457
- klass.define_instance_method('take') do |method|
458
- method.define_argument('limit')
3061
+ klass.define_method('demodulize')
3062
+
3063
+ klass.define_method('downcase')
3064
+
3065
+ klass.define_method('downcase!')
3066
+
3067
+ klass.define_method('dump')
3068
+
3069
+ klass.define_method('each_byte')
3070
+
3071
+ klass.define_method('each_char')
3072
+
3073
+ klass.define_method('each_codepoint')
3074
+
3075
+ klass.define_method('each_line') do |method|
3076
+ method.define_optional_argument('sep')
459
3077
  end
460
3078
 
461
- klass.define_instance_method('taken')
3079
+ klass.define_method('empty?')
462
3080
 
463
- klass.define_instance_method('to_a')
3081
+ klass.define_method('encode') do |method|
3082
+ method.define_optional_argument('to')
3083
+ method.define_optional_argument('from')
3084
+ method.define_optional_argument('options')
3085
+ end
464
3086
 
465
- klass.define_instance_method('union') do |method|
466
- method.define_argument('operation')
467
- method.define_optional_argument('other')
3087
+ klass.define_method('encode!') do |method|
3088
+ method.define_optional_argument('to')
3089
+ method.define_optional_argument('from')
3090
+ method.define_optional_argument('options')
468
3091
  end
469
3092
 
470
- klass.define_instance_method('where_clauses')
3093
+ klass.define_method('encode_json') do |method|
3094
+ method.define_argument('encoder')
3095
+ end
471
3096
 
472
- klass.define_instance_method('where_sql')
3097
+ klass.define_method('encoding')
473
3098
 
474
- klass.define_instance_method('wheres')
3099
+ klass.define_method('encoding=')
475
3100
 
476
- klass.define_instance_method('window') do |method|
477
- method.define_argument('name')
3101
+ klass.define_method('end_with?') do |method|
3102
+ method.define_rest_argument('suffixes')
478
3103
  end
479
3104
 
480
- klass.define_instance_method('with') do |method|
481
- method.define_rest_argument('subqueries')
3105
+ klass.define_method('ends_with?') do |method|
3106
+ method.define_rest_argument('suffixes')
482
3107
  end
483
- end
484
3108
 
485
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Sql') do |klass|
486
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
487
- end
3109
+ klass.define_method('ext') do |method|
3110
+ method.define_optional_argument('newext')
3111
+ end
488
3112
 
489
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::SqlLiteral') do |klass|
490
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Arel::Nodes::SqlLiteral'))
491
- end
3113
+ klass.define_method('find_character') do |method|
3114
+ method.define_argument('offset')
3115
+ end
492
3116
 
493
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Table') do |klass|
494
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
3117
+ klass.define_method('find_string') do |method|
3118
+ method.define_argument('pattern')
3119
+ method.define_argument('start')
3120
+ end
495
3121
 
496
- klass.define_method('engine')
3122
+ klass.define_method('find_string_reverse') do |method|
3123
+ method.define_argument('pattern')
3124
+ method.define_argument('start')
3125
+ end
497
3126
 
498
- klass.define_method('engine=')
3127
+ klass.define_method('first') do |method|
3128
+ method.define_optional_argument('limit')
3129
+ end
499
3130
 
500
- klass.define_method('table_cache') do |method|
501
- method.define_argument('engine')
3131
+ klass.define_method('force_encoding') do |method|
3132
+ method.define_argument('enc')
502
3133
  end
503
3134
 
504
- klass.define_instance_method('==') do |method|
3135
+ klass.define_method('foreign_key') do |method|
3136
+ method.define_optional_argument('separate_class_name_and_id_with_underscore')
3137
+ end
3138
+
3139
+ klass.define_method('from') do |method|
3140
+ method.define_argument('position')
3141
+ end
3142
+
3143
+ klass.define_method('getbyte') do |method|
3144
+ method.define_argument('index')
3145
+ end
3146
+
3147
+ klass.define_method('gsub') do |method|
3148
+ method.define_argument('pattern')
3149
+ method.define_optional_argument('replacement')
3150
+ end
3151
+
3152
+ klass.define_method('gsub!') do |method|
3153
+ method.define_argument('pattern')
3154
+ method.define_optional_argument('replacement')
3155
+ end
3156
+
3157
+ klass.define_method('hex')
3158
+
3159
+ klass.define_method('html_safe')
3160
+
3161
+ klass.define_method('humanize')
3162
+
3163
+ klass.define_method('in_time_zone') do |method|
3164
+ method.define_optional_argument('zone')
3165
+ end
3166
+
3167
+ klass.define_method('indent') do |method|
3168
+ method.define_argument('n')
3169
+ end
3170
+
3171
+ klass.define_method('index') do |method|
3172
+ method.define_argument('str')
3173
+ method.define_optional_argument('start')
3174
+ end
3175
+
3176
+ klass.define_method('insert') do |method|
3177
+ method.define_argument('index')
505
3178
  method.define_argument('other')
506
3179
  end
507
3180
 
508
- klass.define_instance_method('[]') do |method|
509
- method.define_argument('name')
3181
+ klass.define_method('intern')
3182
+
3183
+ klass.define_method('is_utf8?')
3184
+
3185
+ klass.define_method('last') do |method|
3186
+ method.define_optional_argument('limit')
510
3187
  end
511
3188
 
512
- klass.define_instance_method('alias') do |method|
513
- method.define_optional_argument('name')
3189
+ klass.define_method('length')
3190
+
3191
+ klass.define_method('line_of') do |method|
3192
+ method.define_argument('index')
514
3193
  end
515
3194
 
516
- klass.define_instance_method('aliases')
3195
+ klass.define_method('lines') do |method|
3196
+ method.define_optional_argument('sep')
3197
+ end
517
3198
 
518
- klass.define_instance_method('aliases=')
3199
+ klass.define_method('ljust') do |method|
3200
+ method.define_argument('width')
3201
+ method.define_optional_argument('padding')
3202
+ end
519
3203
 
520
- klass.define_instance_method('columns')
3204
+ klass.define_method('lstrip')
521
3205
 
522
- klass.define_instance_method('engine')
3206
+ klass.define_method('lstrip!')
523
3207
 
524
- klass.define_instance_method('engine=')
3208
+ klass.define_method('match') do |method|
3209
+ method.define_argument('pattern')
3210
+ method.define_optional_argument('pos')
3211
+ end
525
3212
 
526
- klass.define_instance_method('eql?') do |method|
3213
+ klass.define_method('mb_chars')
3214
+
3215
+ klass.define_method('modify!')
3216
+
3217
+ klass.define_method('next')
3218
+
3219
+ klass.define_method('next!')
3220
+
3221
+ klass.define_method('not_ascii_only?')
3222
+
3223
+ klass.define_method('num_bytes')
3224
+
3225
+ klass.define_method('num_bytes=') do |method|
3226
+ method.define_argument('bytes')
3227
+ end
3228
+
3229
+ klass.define_method('oct')
3230
+
3231
+ klass.define_method('ord')
3232
+
3233
+ klass.define_method('parameterize') do |method|
3234
+ method.define_optional_argument('sep')
3235
+ end
3236
+
3237
+ klass.define_method('partition') do |method|
3238
+ method.define_optional_argument('pattern')
3239
+ end
3240
+
3241
+ klass.define_method('pathmap') do |method|
3242
+ method.define_optional_argument('spec')
3243
+ method.define_block_argument('block')
3244
+ end
3245
+
3246
+ klass.define_method('pathmap_explode')
3247
+
3248
+ klass.define_method('pathmap_partial') do |method|
3249
+ method.define_argument('n')
3250
+ end
3251
+
3252
+ klass.define_method('pathmap_replace') do |method|
3253
+ method.define_argument('patterns')
3254
+ method.define_block_argument('block')
3255
+ end
3256
+
3257
+ klass.define_method('pluralize') do |method|
3258
+ method.define_optional_argument('count')
3259
+ method.define_optional_argument('locale')
3260
+ end
3261
+
3262
+ klass.define_method('prefix?') do |method|
527
3263
  method.define_argument('other')
528
3264
  end
529
3265
 
530
- klass.define_instance_method('from') do |method|
531
- method.define_argument('table')
3266
+ klass.define_method('prepend') do |method|
3267
+ method.define_argument('other')
532
3268
  end
533
3269
 
534
- klass.define_instance_method('group') do |method|
535
- method.define_rest_argument('columns')
3270
+ klass.define_method('replace') do |method|
3271
+ method.define_argument('other')
536
3272
  end
537
3273
 
538
- klass.define_instance_method('hash')
3274
+ klass.define_method('reverse')
539
3275
 
540
- klass.define_instance_method('having') do |method|
541
- method.define_argument('expr')
3276
+ klass.define_method('reverse!')
3277
+
3278
+ klass.define_method('rindex') do |method|
3279
+ method.define_argument('sub')
3280
+ method.define_optional_argument('finish')
542
3281
  end
543
3282
 
544
- klass.define_instance_method('insert_manager')
3283
+ klass.define_method('rjust') do |method|
3284
+ method.define_argument('width')
3285
+ method.define_optional_argument('padding')
3286
+ end
545
3287
 
546
- klass.define_instance_method('join') do |method|
547
- method.define_argument('relation')
548
- method.define_optional_argument('klass')
3288
+ klass.define_method('rpartition') do |method|
3289
+ method.define_argument('pattern')
549
3290
  end
550
3291
 
551
- klass.define_instance_method('joins') do |method|
552
- method.define_argument('manager')
3292
+ klass.define_method('rstrip')
3293
+
3294
+ klass.define_method('rstrip!')
3295
+
3296
+ klass.define_method('safe_constantize')
3297
+
3298
+ klass.define_method('scan') do |method|
3299
+ method.define_argument('pattern')
553
3300
  end
554
3301
 
555
- klass.define_instance_method('name')
3302
+ klass.define_method('secure_compare') do |method|
3303
+ method.define_argument('other')
3304
+ end
556
3305
 
557
- klass.define_instance_method('name=')
3306
+ klass.define_method('setbyte') do |method|
3307
+ method.define_argument('index')
3308
+ method.define_argument('byte')
3309
+ end
558
3310
 
559
- klass.define_instance_method('order') do |method|
560
- method.define_rest_argument('expr')
3311
+ klass.define_method('shared!')
3312
+
3313
+ klass.define_method('shellescape')
3314
+
3315
+ klass.define_method('shellsplit')
3316
+
3317
+ klass.define_method('shorten!') do |method|
3318
+ method.define_argument('size')
561
3319
  end
562
3320
 
563
- klass.define_instance_method('primary_key')
3321
+ klass.define_method('singularize') do |method|
3322
+ method.define_optional_argument('locale')
3323
+ end
564
3324
 
565
- klass.define_instance_method('project') do |method|
566
- method.define_rest_argument('things')
3325
+ klass.define_method('size')
3326
+
3327
+ klass.define_method('slice') do |method|
3328
+ method.define_argument('index')
3329
+ method.define_optional_argument('other')
567
3330
  end
568
3331
 
569
- klass.define_instance_method('select_manager')
3332
+ klass.define_method('slice!') do |method|
3333
+ method.define_argument('one')
3334
+ method.define_optional_argument('two')
3335
+ end
570
3336
 
571
- klass.define_instance_method('skip') do |method|
572
- method.define_argument('amount')
3337
+ klass.define_method('snake_case')
3338
+
3339
+ klass.define_method('split') do |method|
3340
+ method.define_optional_argument('pattern')
3341
+ method.define_optional_argument('limit')
573
3342
  end
574
3343
 
575
- klass.define_instance_method('table_alias')
3344
+ klass.define_method('squeeze') do |method|
3345
+ method.define_rest_argument('strings')
3346
+ end
576
3347
 
577
- klass.define_instance_method('table_alias=')
3348
+ klass.define_method('squeeze!') do |method|
3349
+ method.define_rest_argument('strings')
3350
+ end
578
3351
 
579
- klass.define_instance_method('table_name')
3352
+ klass.define_method('squish')
580
3353
 
581
- klass.define_instance_method('take') do |method|
582
- method.define_argument('amount')
3354
+ klass.define_method('squish!')
3355
+
3356
+ klass.define_method('start_with?') do |method|
3357
+ method.define_rest_argument('prefixes')
583
3358
  end
584
3359
 
585
- klass.define_instance_method('where') do |method|
586
- method.define_argument('condition')
3360
+ klass.define_method('starts_with?') do |method|
3361
+ method.define_rest_argument('prefixes')
587
3362
  end
588
- end
589
3363
 
590
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::TreeManager') do |klass|
591
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
3364
+ klass.define_method('strip')
592
3365
 
593
- klass.define_instance_method('ast')
3366
+ klass.define_method('strip!')
594
3367
 
595
- klass.define_instance_method('engine')
3368
+ klass.define_method('strip_heredoc')
596
3369
 
597
- klass.define_instance_method('to_dot')
3370
+ klass.define_method('sub') do |method|
3371
+ method.define_argument('pattern')
3372
+ method.define_optional_argument('replacement')
3373
+ end
598
3374
 
599
- klass.define_instance_method('to_sql')
3375
+ klass.define_method('sub!') do |method|
3376
+ method.define_argument('pattern')
3377
+ method.define_optional_argument('replacement')
3378
+ end
600
3379
 
601
- klass.define_instance_method('visitor')
3380
+ klass.define_method('substring') do |method|
3381
+ method.define_argument('start')
3382
+ method.define_argument('count')
3383
+ end
602
3384
 
603
- klass.define_instance_method('where') do |method|
604
- method.define_argument('expr')
3385
+ klass.define_method('succ')
3386
+
3387
+ klass.define_method('succ!')
3388
+
3389
+ klass.define_method('suffix?') do |method|
3390
+ method.define_argument('other')
605
3391
  end
606
- end
607
3392
 
608
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::UpdateManager') do |klass|
609
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Arel::TreeManager'))
3393
+ klass.define_method('sum') do |method|
3394
+ method.define_optional_argument('bits')
3395
+ end
610
3396
 
611
- klass.define_instance_method('key')
3397
+ klass.define_method('swapcase')
612
3398
 
613
- klass.define_instance_method('key=') do |method|
614
- method.define_argument('key')
3399
+ klass.define_method('swapcase!')
3400
+
3401
+ klass.define_method('tableize')
3402
+
3403
+ klass.define_method('tabto') do |method|
3404
+ method.define_argument('n')
615
3405
  end
616
3406
 
617
- klass.define_instance_method('order') do |method|
618
- method.define_rest_argument('expr')
3407
+ klass.define_method('titlecase')
3408
+
3409
+ klass.define_method('titleize')
3410
+
3411
+ klass.define_method('to') do |method|
3412
+ method.define_argument('position')
619
3413
  end
620
3414
 
621
- klass.define_instance_method('set') do |method|
622
- method.define_argument('values')
3415
+ klass.define_method('to_ast') do |method|
3416
+ method.define_optional_argument('name')
3417
+ method.define_optional_argument('line')
623
3418
  end
624
3419
 
625
- klass.define_instance_method('table') do |method|
626
- method.define_argument('table')
3420
+ klass.define_method('to_c')
3421
+
3422
+ klass.define_method('to_crlf')
3423
+
3424
+ klass.define_method('to_d')
3425
+
3426
+ klass.define_method('to_date')
3427
+
3428
+ klass.define_method('to_datetime')
3429
+
3430
+ klass.define_method('to_f')
3431
+
3432
+ klass.define_method('to_i') do |method|
3433
+ method.define_optional_argument('base')
627
3434
  end
628
3435
 
629
- klass.define_instance_method('take') do |method|
3436
+ klass.define_method('to_inum') do |method|
3437
+ method.define_argument('base')
3438
+ method.define_argument('check')
3439
+ end
3440
+
3441
+ klass.define_method('to_json_raw')
3442
+
3443
+ klass.define_method('to_json_raw_object')
3444
+
3445
+ klass.define_method('to_lf')
3446
+
3447
+ klass.define_method('to_r')
3448
+
3449
+ klass.define_method('to_sexp') do |method|
3450
+ method.define_optional_argument('name')
3451
+ method.define_optional_argument('line')
3452
+ end
3453
+
3454
+ klass.define_method('to_str')
3455
+
3456
+ klass.define_method('to_sub_replacement') do |method|
3457
+ method.define_argument('result')
3458
+ method.define_argument('match')
3459
+ end
3460
+
3461
+ klass.define_method('to_sym')
3462
+
3463
+ klass.define_method('to_time') do |method|
3464
+ method.define_optional_argument('form')
3465
+ end
3466
+
3467
+ klass.define_method('tr') do |method|
3468
+ method.define_argument('source')
3469
+ method.define_argument('replacement')
3470
+ end
3471
+
3472
+ klass.define_method('tr!') do |method|
3473
+ method.define_argument('source')
3474
+ method.define_argument('replacement')
3475
+ end
3476
+
3477
+ klass.define_method('tr_expand!') do |method|
630
3478
  method.define_argument('limit')
3479
+ method.define_argument('invalid_as_empty')
631
3480
  end
632
3481
 
633
- klass.define_instance_method('where') do |method|
634
- method.define_argument('expr')
3482
+ klass.define_method('tr_s') do |method|
3483
+ method.define_argument('source')
3484
+ method.define_argument('replacement')
635
3485
  end
636
3486
 
637
- klass.define_instance_method('wheres=') do |method|
638
- method.define_argument('exprs')
3487
+ klass.define_method('tr_s!') do |method|
3488
+ method.define_argument('source')
3489
+ method.define_argument('replacement')
639
3490
  end
640
- end
641
3491
 
642
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::VERSION') do |klass|
643
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
3492
+ klass.define_method('tr_trans') do |method|
3493
+ method.define_argument('source')
3494
+ method.define_argument('replacement')
3495
+ method.define_argument('squeeze')
3496
+ end
3497
+
3498
+ klass.define_method('transform') do |method|
3499
+ method.define_argument('tbl')
3500
+ method.define_argument('respect_kcode')
3501
+ end
3502
+
3503
+ klass.define_method('treetop_camelize')
3504
+
3505
+ klass.define_method('truncate') do |method|
3506
+ method.define_argument('truncate_at')
3507
+ method.define_optional_argument('options')
3508
+ end
3509
+
3510
+ klass.define_method('underscore')
3511
+
3512
+ klass.define_method('unpack') do |method|
3513
+ method.define_argument('directives')
3514
+ end
3515
+
3516
+ klass.define_method('upcase')
3517
+
3518
+ klass.define_method('upcase!')
3519
+
3520
+ klass.define_method('upto') do |method|
3521
+ method.define_argument('stop')
3522
+ method.define_optional_argument('exclusive')
3523
+ end
3524
+
3525
+ klass.define_method('valid_encoding=')
3526
+
3527
+ klass.define_method('valid_encoding?')
644
3528
  end
645
3529
 
646
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::Visitors') do |klass|
647
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
3530
+ RubyLint::GlobalScope.definitions.define_constant('Arel::Visitors') do |klass|
3531
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
648
3532
 
649
3533
  klass.define_method('for') do |method|
650
3534
  method.define_argument('engine')
651
3535
  end
652
3536
 
3537
+ klass.define_method('initialize') do |method|
3538
+ method.define_block_argument('block')
3539
+ end
3540
+
653
3541
  klass.define_method('visitor_for') do |method|
654
3542
  method.define_argument('engine')
655
3543
  end
656
3544
  end
657
3545
 
658
- RubyLint::VirtualMachine.global_scope.define_constant('Arel::WindowPredications') do |klass|
659
- klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
3546
+ RubyLint::GlobalScope.definitions.define_constant('Arel::WindowPredications') do |klass|
3547
+ klass.inherits(RubyLint::GlobalScope.constant_proxy('Object'))
3548
+
3549
+ klass.define_method('initialize') do |method|
3550
+ method.define_block_argument('block')
3551
+ end
660
3552
 
661
3553
  klass.define_instance_method('over') do |method|
662
3554
  method.define_optional_argument('expr')