ruby-lint 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. data.tar.gz.asc +14 -14
  2. data/.gitignore +1 -2
  3. data/.rubocop.yml +59 -0
  4. data/.travis.yml +3 -7
  5. data/.yardopts +2 -2
  6. data/Gemfile +4 -0
  7. data/MANIFEST +103 -67
  8. data/README.md +13 -31
  9. data/Rakefile +1 -6
  10. data/checksum/ruby-lint-0.0.3.gem.sha512 +1 -0
  11. data/debug/memory_usage.rb +14 -0
  12. data/debug/profile.rb +18 -0
  13. data/doc/architecture.md +14 -18
  14. data/doc/changelog.md +29 -0
  15. data/doc/code_analysis.md +12 -12
  16. data/doc/configuration.md +21 -50
  17. data/doc/graphviz/flow.dot +1 -1
  18. data/doc/images/flow.png +0 -0
  19. data/lib/ruby-lint.rb +33 -19
  20. data/lib/ruby-lint/analysis/argument_amount.rb +84 -0
  21. data/lib/ruby-lint/analysis/base.rb +132 -0
  22. data/lib/ruby-lint/analysis/confusing_variables.rb +26 -0
  23. data/lib/ruby-lint/analysis/pedantics.rb +36 -0
  24. data/lib/ruby-lint/analysis/shadowing_variables.rb +47 -0
  25. data/lib/ruby-lint/analysis/undefined_methods.rb +91 -0
  26. data/lib/ruby-lint/analysis/undefined_variables.rb +46 -0
  27. data/lib/ruby-lint/analysis/unused_variables.rb +49 -0
  28. data/lib/ruby-lint/ast/builder.rb +17 -0
  29. data/lib/ruby-lint/ast/node.rb +39 -0
  30. data/lib/ruby-lint/cli.rb +0 -19
  31. data/lib/ruby-lint/cli/analyze.rb +54 -28
  32. data/lib/ruby-lint/cli/ast.rb +21 -6
  33. data/lib/ruby-lint/cli/base.rb +0 -23
  34. data/lib/ruby-lint/configuration.rb +112 -42
  35. data/lib/ruby-lint/constant_loader.rb +10 -28
  36. data/lib/ruby-lint/default_names.rb +19 -0
  37. data/lib/ruby-lint/definition/constant_proxy.rb +56 -0
  38. data/lib/ruby-lint/definition/ruby_method.rb +21 -143
  39. data/lib/ruby-lint/definition/ruby_object.rb +142 -246
  40. data/lib/ruby-lint/definition_builder/base.rb +43 -0
  41. data/lib/ruby-lint/definition_builder/primitive.rb +39 -0
  42. data/lib/ruby-lint/definition_builder/ruby_array.rb +77 -0
  43. data/lib/ruby-lint/definition_builder/ruby_block.rb +34 -0
  44. data/lib/ruby-lint/definition_builder/ruby_class.rb +24 -0
  45. data/lib/ruby-lint/definition_builder/ruby_hash.rb +37 -0
  46. data/lib/ruby-lint/definition_builder/ruby_method.rb +84 -0
  47. data/lib/ruby-lint/definition_builder/ruby_module.rb +68 -0
  48. data/lib/ruby-lint/definition_generator.rb +41 -15
  49. data/lib/ruby-lint/definitions/core/arg0.rb +1 -1
  50. data/lib/ruby-lint/definitions/core/argf.rb +1 -1
  51. data/lib/ruby-lint/definitions/core/argument_error.rb +2 -2
  52. data/lib/ruby-lint/definitions/core/argv.rb +1 -1
  53. data/lib/ruby-lint/definitions/core/array.rb +6 -6
  54. data/lib/ruby-lint/definitions/core/autoload.rb +2 -2
  55. data/lib/ruby-lint/definitions/core/basic_object.rb +3 -3
  56. data/lib/ruby-lint/definitions/core/bignum.rb +2 -2
  57. data/lib/ruby-lint/definitions/core/binding.rb +2 -2
  58. data/lib/ruby-lint/definitions/core/class.rb +2 -2
  59. data/lib/ruby-lint/definitions/core/comparable.rb +1 -1
  60. data/lib/ruby-lint/definitions/core/complex.rb +4 -4
  61. data/lib/ruby-lint/definitions/core/condition_variable.rb +2 -2
  62. data/lib/ruby-lint/definitions/core/continuation.rb +2 -2
  63. data/lib/ruby-lint/definitions/core/data.rb +2 -2
  64. data/lib/ruby-lint/definitions/core/date.rb +34 -34
  65. data/lib/ruby-lint/definitions/core/date_time.rb +26 -26
  66. data/lib/ruby-lint/definitions/core/default_record_separator.rb +1 -1
  67. data/lib/ruby-lint/definitions/core/digest.rb +14 -14
  68. data/lib/ruby-lint/definitions/core/dir.rb +34 -34
  69. data/lib/ruby-lint/definitions/core/encoding.rb +237 -237
  70. data/lib/ruby-lint/definitions/core/encoding_error.rb +2 -2
  71. data/lib/ruby-lint/definitions/core/enumerable.rb +15 -15
  72. data/lib/ruby-lint/definitions/core/enumerator.rb +2 -2
  73. data/lib/ruby-lint/definitions/core/env.rb +1 -1
  74. data/lib/ruby-lint/definitions/core/eoferror.rb +2 -2
  75. data/lib/ruby-lint/definitions/core/erb.rb +22 -22
  76. data/lib/ruby-lint/definitions/core/errno.rb +525 -525
  77. data/lib/ruby-lint/definitions/core/etc.rb +6 -6
  78. data/lib/ruby-lint/definitions/core/exception.rb +2 -2
  79. data/lib/ruby-lint/definitions/core/false.rb +1 -1
  80. data/lib/ruby-lint/definitions/core/false_class.rb +2 -2
  81. data/lib/ruby-lint/definitions/core/fatal_error.rb +2 -2
  82. data/lib/ruby-lint/definitions/core/fiber.rb +2 -2
  83. data/lib/ruby-lint/definitions/core/fiber_error.rb +2 -2
  84. data/lib/ruby-lint/definitions/core/file.rb +68 -68
  85. data/lib/ruby-lint/definitions/core/file_list.rb +2 -2
  86. data/lib/ruby-lint/definitions/core/file_test.rb +1 -1
  87. data/lib/ruby-lint/definitions/core/file_utils.rb +16 -16
  88. data/lib/ruby-lint/definitions/core/fixnum.rb +4 -4
  89. data/lib/ruby-lint/definitions/core/float.rb +16 -16
  90. data/lib/ruby-lint/definitions/core/float_domain_error.rb +2 -2
  91. data/lib/ruby-lint/definitions/core/gc.rb +2 -2
  92. data/lib/ruby-lint/definitions/core/gem.rb +119 -119
  93. data/lib/ruby-lint/definitions/core/hash.rb +14 -14
  94. data/lib/ruby-lint/definitions/core/immediate_value.rb +1 -1
  95. data/lib/ruby-lint/definitions/core/index_error.rb +2 -2
  96. data/lib/ruby-lint/definitions/core/integer.rb +2 -2
  97. data/lib/ruby-lint/definitions/core/interrupt.rb +2 -2
  98. data/lib/ruby-lint/definitions/core/io.rb +38 -38
  99. data/lib/ruby-lint/definitions/core/ioerror.rb +2 -2
  100. data/lib/ruby-lint/definitions/core/kernel.rb +3 -3
  101. data/lib/ruby-lint/definitions/core/key_error.rb +2 -2
  102. data/lib/ruby-lint/definitions/core/load_error.rb +6 -6
  103. data/lib/ruby-lint/definitions/core/local_jump_error.rb +2 -2
  104. data/lib/ruby-lint/definitions/core/main.rb +1 -1
  105. data/lib/ruby-lint/definitions/core/marshal.rb +35 -35
  106. data/lib/ruby-lint/definitions/core/match_data.rb +2 -2
  107. data/lib/ruby-lint/definitions/core/math.rb +7 -7
  108. data/lib/ruby-lint/definitions/core/memory_segmention_error.rb +2 -2
  109. data/lib/ruby-lint/definitions/core/method.rb +2 -2
  110. data/lib/ruby-lint/definitions/core/module.rb +1 -1
  111. data/lib/ruby-lint/definitions/core/monitor.rb +4 -4
  112. data/lib/ruby-lint/definitions/core/monitor_mixin.rb +5 -5
  113. data/lib/ruby-lint/definitions/core/mutex.rb +2 -2
  114. data/lib/ruby-lint/definitions/core/name_error.rb +2 -2
  115. data/lib/ruby-lint/definitions/core/nil.rb +1 -1
  116. data/lib/ruby-lint/definitions/core/nil_class.rb +2 -2
  117. data/lib/ruby-lint/definitions/core/no_memory_error.rb +2 -2
  118. data/lib/ruby-lint/definitions/core/no_method_error.rb +2 -2
  119. data/lib/ruby-lint/definitions/core/not_implemented_error.rb +2 -2
  120. data/lib/ruby-lint/definitions/core/numeric.rb +2 -2
  121. data/lib/ruby-lint/definitions/core/object.rb +2 -2
  122. data/lib/ruby-lint/definitions/core/object_space.rb +1 -1
  123. data/lib/ruby-lint/definitions/core/open_struct.rb +3 -3
  124. data/lib/ruby-lint/definitions/core/option_parser.rb +83 -83
  125. data/lib/ruby-lint/definitions/core/precision.rb +1 -1
  126. data/lib/ruby-lint/definitions/core/primitive_failure.rb +2 -2
  127. data/lib/ruby-lint/definitions/core/proc.rb +2 -2
  128. data/lib/ruby-lint/definitions/core/process.rb +29 -29
  129. data/lib/ruby-lint/definitions/core/psych.rb +149 -149
  130. data/lib/ruby-lint/definitions/core/queue.rb +2 -2
  131. data/lib/ruby-lint/definitions/core/rake.rb +117 -117
  132. data/lib/ruby-lint/definitions/core/rake_file_utils.rb +1 -1
  133. data/lib/ruby-lint/definitions/core/rakeversion.rb +1 -1
  134. data/lib/ruby-lint/definitions/core/random.rb +2 -2
  135. data/lib/ruby-lint/definitions/core/range.rb +4 -4
  136. data/lib/ruby-lint/definitions/core/range_error.rb +2 -2
  137. data/lib/ruby-lint/definitions/core/rational.rb +2 -2
  138. data/lib/ruby-lint/definitions/core/rb_config.rb +3 -3
  139. data/lib/ruby-lint/definitions/core/regexp.rb +28 -28
  140. data/lib/ruby-lint/definitions/core/regexp_error.rb +2 -2
  141. data/lib/ruby-lint/definitions/core/rubinius.rb +1057 -1057
  142. data/lib/ruby-lint/definitions/core/ruby_copyright.rb +1 -1
  143. data/lib/ruby-lint/definitions/core/ruby_description.rb +1 -1
  144. data/lib/ruby-lint/definitions/core/ruby_engine.rb +1 -1
  145. data/lib/ruby-lint/definitions/core/ruby_lint.rb +9 -9
  146. data/lib/ruby-lint/definitions/core/ruby_patchlevel.rb +1 -1
  147. data/lib/ruby-lint/definitions/core/ruby_platform.rb +1 -1
  148. data/lib/ruby-lint/definitions/core/ruby_release_date.rb +1 -1
  149. data/lib/ruby-lint/definitions/core/ruby_version.rb +1 -1
  150. data/lib/ruby-lint/definitions/core/runtime_error.rb +2 -2
  151. data/lib/ruby-lint/definitions/core/scan_error.rb +2 -2
  152. data/lib/ruby-lint/definitions/core/script_error.rb +2 -2
  153. data/lib/ruby-lint/definitions/core/security_error.rb +2 -2
  154. data/lib/ruby-lint/definitions/core/shellwords.rb +1 -1
  155. data/lib/ruby-lint/definitions/core/signal.rb +3 -3
  156. data/lib/ruby-lint/definitions/core/signal_exception.rb +2 -2
  157. data/lib/ruby-lint/definitions/core/singleton.rb +2 -2
  158. data/lib/ruby-lint/definitions/core/sized_queue.rb +2 -2
  159. data/lib/ruby-lint/definitions/core/standard_error.rb +2 -2
  160. data/lib/ruby-lint/definitions/core/stderr.rb +1 -1
  161. data/lib/ruby-lint/definitions/core/stdin.rb +1 -1
  162. data/lib/ruby-lint/definitions/core/stdout.rb +1 -1
  163. data/lib/ruby-lint/definitions/core/stop_iteration.rb +2 -2
  164. data/lib/ruby-lint/definitions/core/string.rb +21 -21
  165. data/lib/ruby-lint/definitions/core/string_io.rb +7 -7
  166. data/lib/ruby-lint/definitions/core/string_scanner.rb +4 -4
  167. data/lib/ruby-lint/definitions/core/struct.rb +20 -20
  168. data/lib/ruby-lint/definitions/core/syck.rb +4 -4
  169. data/lib/ruby-lint/definitions/core/symbol.rb +2 -2
  170. data/lib/ruby-lint/definitions/core/syntax_error.rb +2 -2
  171. data/lib/ruby-lint/definitions/core/system_call_error.rb +2 -2
  172. data/lib/ruby-lint/definitions/core/system_exit.rb +2 -2
  173. data/lib/ruby-lint/definitions/core/system_stack_error.rb +2 -2
  174. data/lib/ruby-lint/definitions/core/thread.rb +6 -6
  175. data/lib/ruby-lint/definitions/core/thread_error.rb +2 -2
  176. data/lib/ruby-lint/definitions/core/thread_group.rb +2 -2
  177. data/lib/ruby-lint/definitions/core/time.rb +3 -3
  178. data/lib/ruby-lint/definitions/core/toplevel_binding.rb +1 -1
  179. data/lib/ruby-lint/definitions/core/true.rb +1 -1
  180. data/lib/ruby-lint/definitions/core/true_class.rb +2 -2
  181. data/lib/ruby-lint/definitions/core/type_error.rb +2 -2
  182. data/lib/ruby-lint/definitions/core/unbound_method.rb +2 -2
  183. data/lib/ruby-lint/definitions/core/unmarshalable.rb +1 -1
  184. data/lib/ruby-lint/definitions/core/unsupported_library_error.rb +2 -2
  185. data/lib/ruby-lint/definitions/core/weak_ref.rb +4 -4
  186. data/lib/ruby-lint/definitions/core/zero_division_error.rb +2 -2
  187. data/lib/ruby-lint/definitions/rails.rb +12 -0
  188. data/lib/ruby-lint/definitions/rails/abstract_controller.rb +335 -0
  189. data/lib/ruby-lint/definitions/rails/action_controller.rb +1244 -0
  190. data/lib/ruby-lint/definitions/rails/action_dispatch.rb +741 -0
  191. data/lib/ruby-lint/definitions/rails/action_mailer.rb +502 -0
  192. data/lib/ruby-lint/definitions/rails/action_pack.rb +16 -0
  193. data/lib/ruby-lint/definitions/rails/action_view.rb +898 -0
  194. data/lib/ruby-lint/definitions/rails/active_model.rb +437 -0
  195. data/lib/ruby-lint/definitions/rails/active_record.rb +2901 -0
  196. data/lib/ruby-lint/definitions/rails/active_support.rb +1963 -0
  197. data/lib/ruby-lint/definitions/rails/arel.rb +665 -0
  198. data/lib/ruby-lint/definitions/rails/rails.rb +452 -0
  199. data/lib/ruby-lint/definitions/rails/sprockets.rb +968 -0
  200. data/lib/ruby-lint/generated_constant.rb +33 -0
  201. data/lib/ruby-lint/helper/constant_paths.rb +30 -21
  202. data/lib/ruby-lint/inspector.rb +20 -2
  203. data/lib/ruby-lint/iterator.rb +11 -171
  204. data/lib/ruby-lint/nested_stack.rb +46 -0
  205. data/lib/ruby-lint/parser.rb +24 -806
  206. data/lib/ruby-lint/report.rb +2 -30
  207. data/lib/ruby-lint/report/entry.rb +2 -2
  208. data/lib/ruby-lint/runner.rb +81 -0
  209. data/lib/ruby-lint/template/definition.erb +12 -8
  210. data/lib/ruby-lint/variable_predicates.rb +16 -58
  211. data/lib/ruby-lint/version.rb +1 -1
  212. data/lib/ruby-lint/virtual_machine.rb +1044 -0
  213. data/ruby-lint.gemspec +17 -7
  214. data/spec/fixtures/complex/rails/basic_controller.rb +9 -0
  215. data/spec/fixtures/complex/rcap.rb +38 -0
  216. data/spec/fixtures/complex/slop.rb +680 -0
  217. data/spec/fixtures/config.yml +8 -0
  218. data/spec/fixtures/invalid.rb +3 -0
  219. data/spec/fixtures/invalid_2.rb +3 -0
  220. data/spec/fixtures/syntax_error.rb +1 -0
  221. data/spec/fixtures/valid.rb +3 -0
  222. data/spec/helper.rb +6 -0
  223. data/spec/ruby-lint/{analyze → analysis}/argument_amount.rb +7 -7
  224. data/spec/ruby-lint/analysis/confusing_variables.rb +46 -0
  225. data/spec/ruby-lint/analysis/pedantics.rb +43 -0
  226. data/spec/ruby-lint/{analyze → analysis}/shadowing_variables.rb +5 -5
  227. data/spec/ruby-lint/{analyze → analysis}/undefined_methods.rb +18 -18
  228. data/spec/ruby-lint/{analyze → analysis}/undefined_variables.rb +19 -25
  229. data/spec/ruby-lint/{analyze → analysis}/unused_variables.rb +29 -16
  230. data/spec/ruby-lint/ast/node.rb +33 -0
  231. data/spec/ruby-lint/cli/analyze.rb +31 -0
  232. data/spec/ruby-lint/cli/ast.rb +23 -0
  233. data/spec/ruby-lint/configuration.rb +45 -6
  234. data/spec/ruby-lint/definition/constant_proxy.rb +31 -0
  235. data/spec/ruby-lint/definition/dsl.rb +13 -20
  236. data/spec/ruby-lint/definition/ruby_method.rb +65 -148
  237. data/spec/ruby-lint/definition/ruby_object.rb +60 -96
  238. data/spec/ruby-lint/definition_builder/primitive.rb +62 -0
  239. data/spec/ruby-lint/definition_builder/ruby_class.rb +108 -0
  240. data/spec/ruby-lint/definition_builder/ruby_method.rb +53 -0
  241. data/spec/ruby-lint/definition_builder/ruby_module.rb +50 -0
  242. data/spec/ruby-lint/iterator.rb +40 -16
  243. data/spec/ruby-lint/nested_stack.rb +23 -0
  244. data/spec/ruby-lint/parser.rb +14 -0
  245. data/spec/ruby-lint/report.rb +0 -10
  246. data/spec/ruby-lint/report/entry.rb +8 -4
  247. data/spec/ruby-lint/runner.rb +32 -0
  248. data/spec/ruby-lint/virtual_machine/assignments/arrays.rb +87 -0
  249. data/spec/ruby-lint/virtual_machine/assignments/hashes.rb +52 -0
  250. data/spec/ruby-lint/virtual_machine/assignments/optional.rb +41 -0
  251. data/spec/ruby-lint/{definitions_builder → virtual_machine}/assignments/return_values.rb +11 -11
  252. data/spec/ruby-lint/virtual_machine/assignments/variables.rb +85 -0
  253. data/spec/ruby-lint/virtual_machine/associate_nodes.rb +17 -0
  254. data/spec/ruby-lint/virtual_machine/autoloading.rb +31 -0
  255. data/spec/ruby-lint/virtual_machine/blocks.rb +64 -0
  256. data/spec/ruby-lint/virtual_machine/classes/class_methods.rb +21 -0
  257. data/spec/ruby-lint/virtual_machine/classes/extending.rb +104 -0
  258. data/spec/ruby-lint/virtual_machine/classes/redefining.rb +24 -0
  259. data/spec/ruby-lint/virtual_machine/classes/sclass.rb +94 -0
  260. data/spec/ruby-lint/virtual_machine/classes/scoping.rb +60 -0
  261. data/spec/ruby-lint/virtual_machine/complex/rails.rb +18 -0
  262. data/spec/ruby-lint/virtual_machine/complex/rcap.rb +15 -0
  263. data/spec/ruby-lint/virtual_machine/complex/slop.rb +16 -0
  264. data/spec/ruby-lint/{definitions_builder → virtual_machine}/for.rb +2 -2
  265. data/spec/ruby-lint/virtual_machine/freeze.rb +13 -0
  266. data/spec/ruby-lint/virtual_machine/interpolation.rb +12 -0
  267. data/spec/ruby-lint/virtual_machine/methods/defining.rb +40 -0
  268. data/spec/ruby-lint/virtual_machine/methods/exporting.rb +19 -0
  269. data/spec/ruby-lint/virtual_machine/methods/parameters.rb +77 -0
  270. data/spec/ruby-lint/virtual_machine/methods/patching.rb +26 -0
  271. data/spec/ruby-lint/virtual_machine/methods/scoping.rb +63 -0
  272. data/spec/ruby-lint/virtual_machine/methods/visibility.rb +64 -0
  273. data/spec/ruby-lint/{definitions_builder → virtual_machine}/modules.rb +16 -16
  274. data/spec/ruby-lint/virtual_machine/reference_amount.rb +33 -0
  275. data/spec/ruby-lint/virtual_machine/unused.rb +17 -0
  276. data/spec/support/bacon.rb +13 -13
  277. data/spec/support/building.rb +23 -16
  278. data/spec/support/coveralls.rb +5 -0
  279. data/spec/support/fixtures.rb +20 -0
  280. data/spec/support/parsing.rb +3 -5
  281. data/spec/support/simplecov.rb +5 -3
  282. data/task/build.rake +1 -1
  283. data/task/cop.rake +11 -0
  284. data/task/generate.rake +40 -2
  285. data/task/profile.rake +27 -0
  286. data/task/todo.rake +6 -0
  287. data/task/travis.rake +7 -0
  288. metadata +160 -75
  289. metadata.gz.asc +14 -14
  290. data/doc/build/.gitkeep +0 -0
  291. data/lib/ruby-lint/analyze/argument_amount.rb +0 -73
  292. data/lib/ruby-lint/analyze/shadowing_variables.rb +0 -32
  293. data/lib/ruby-lint/analyze/undefined_methods.rb +0 -68
  294. data/lib/ruby-lint/analyze/undefined_variables.rb +0 -72
  295. data/lib/ruby-lint/analyze/unused_variables.rb +0 -48
  296. data/lib/ruby-lint/base.rb +0 -85
  297. data/lib/ruby-lint/definitions_builder.rb +0 -692
  298. data/lib/ruby-lint/helper/conversion.rb +0 -33
  299. data/lib/ruby-lint/helper/current_scope.rb +0 -98
  300. data/lib/ruby-lint/helper/methods.rb +0 -91
  301. data/lib/ruby-lint/node.rb +0 -107
  302. data/lib/ruby-lint/parser_error.rb +0 -30
  303. data/spec/ruby-lint/constant_loader.rb +0 -32
  304. data/spec/ruby-lint/definition/method_calls.rb +0 -26
  305. data/spec/ruby-lint/definitions_builder/assignments/arrays.rb +0 -71
  306. data/spec/ruby-lint/definitions_builder/assignments/hashes.rb +0 -65
  307. data/spec/ruby-lint/definitions_builder/assignments/objects.rb +0 -23
  308. data/spec/ruby-lint/definitions_builder/assignments/optional.rb +0 -22
  309. data/spec/ruby-lint/definitions_builder/assignments/variables.rb +0 -71
  310. data/spec/ruby-lint/definitions_builder/associate_nodes.rb +0 -17
  311. data/spec/ruby-lint/definitions_builder/blocks.rb +0 -40
  312. data/spec/ruby-lint/definitions_builder/classes.rb +0 -230
  313. data/spec/ruby-lint/definitions_builder/methods.rb +0 -147
  314. data/spec/ruby-lint/definitions_builder/reference_amount.rb +0 -31
  315. data/spec/ruby-lint/definitions_builder/unused.rb +0 -15
  316. data/spec/ruby-lint/node.rb +0 -38
  317. data/spec/ruby-lint/parser/assignments.rb +0 -225
  318. data/spec/ruby-lint/parser/classes.rb +0 -110
  319. data/spec/ruby-lint/parser/errors.rb +0 -12
  320. data/spec/ruby-lint/parser/metadata.rb +0 -17
  321. data/spec/ruby-lint/parser/method_definitions.rb +0 -111
  322. data/spec/ruby-lint/parser/methods.rb +0 -217
  323. data/spec/ruby-lint/parser/modules.rb +0 -70
  324. data/spec/ruby-lint/parser/operators.rb +0 -40
  325. data/spec/ruby-lint/parser/statements/begin.rb +0 -55
  326. data/spec/ruby-lint/parser/statements/case.rb +0 -34
  327. data/spec/ruby-lint/parser/statements/defined.rb +0 -11
  328. data/spec/ruby-lint/parser/statements/for.rb +0 -34
  329. data/spec/ruby-lint/parser/statements/if.rb +0 -46
  330. data/spec/ruby-lint/parser/statements/return.rb +0 -14
  331. data/spec/ruby-lint/parser/statements/super.rb +0 -49
  332. data/spec/ruby-lint/parser/statements/unless.rb +0 -42
  333. data/spec/ruby-lint/parser/statements/until.rb +0 -25
  334. data/spec/ruby-lint/parser/statements/while.rb +0 -25
  335. data/spec/ruby-lint/parser/statements/yield.rb +0 -18
  336. data/spec/ruby-lint/parser/types/arrays.rb +0 -47
  337. data/spec/ruby-lint/parser/types/booleans.rb +0 -11
  338. data/spec/ruby-lint/parser/types/constants.rb +0 -32
  339. data/spec/ruby-lint/parser/types/hashes.rb +0 -55
  340. data/spec/ruby-lint/parser/types/nil.rb +0 -7
  341. data/spec/ruby-lint/parser/types/numbers.rb +0 -11
  342. data/spec/ruby-lint/parser/types/procs.rb +0 -11
  343. data/spec/ruby-lint/parser/types/ranges.rb +0 -11
  344. data/spec/ruby-lint/parser/types/regexp.rb +0 -27
  345. data/spec/ruby-lint/parser/types/strings.rb +0 -44
  346. data/spec/ruby-lint/parser/types/symbols.rb +0 -15
  347. data/task/stdlib.rake +0 -23
@@ -0,0 +1,1963 @@
1
+ # This file was automatically generated, any manual changes will be lost the
2
+ # next time this file is generated.
3
+ #
4
+ # Created: 2013-07-07 17:54:58 +0200
5
+ # Platform: rbx 2.0.0.rc1
6
+
7
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport') do |klass|
8
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
9
+
10
+ klass.define_method('encode_big_decimal_as_string') do |method|
11
+ method.define_rest_argument('args')
12
+ method.define_block_argument('block')
13
+ end
14
+
15
+ klass.define_method('encode_big_decimal_as_string=') do |method|
16
+ method.define_argument('arg')
17
+ end
18
+
19
+ klass.define_method('escape_html_entities_in_json') do |method|
20
+ method.define_rest_argument('args')
21
+ method.define_block_argument('block')
22
+ end
23
+
24
+ klass.define_method('escape_html_entities_in_json=') do |method|
25
+ method.define_argument('arg')
26
+ end
27
+
28
+ klass.define_method('execute_hook') do |method|
29
+ method.define_argument('base')
30
+ method.define_argument('options')
31
+ method.define_argument('block')
32
+ end
33
+
34
+ klass.define_method('on_load') do |method|
35
+ method.define_argument('name')
36
+ method.define_optional_argument('options')
37
+ method.define_block_argument('block')
38
+ end
39
+
40
+ klass.define_method('parse_json_times')
41
+
42
+ klass.define_method('parse_json_times=') do |method|
43
+ method.define_argument('obj')
44
+ end
45
+
46
+ klass.define_method('run_load_hooks') do |method|
47
+ method.define_argument('name')
48
+ method.define_optional_argument('base')
49
+ end
50
+
51
+ klass.define_method('use_standard_json_time_format') do |method|
52
+ method.define_rest_argument('args')
53
+ method.define_block_argument('block')
54
+ end
55
+
56
+ klass.define_method('use_standard_json_time_format=') do |method|
57
+ method.define_argument('arg')
58
+ end
59
+
60
+ klass.define_method('version')
61
+
62
+ klass.define_instance_method('parse_json_times')
63
+
64
+ klass.define_instance_method('parse_json_times=') do |method|
65
+ method.define_argument('obj')
66
+ end
67
+ end
68
+
69
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Autoload') do |klass|
70
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
71
+
72
+ klass.define_method('extended') do |method|
73
+ method.define_argument('base')
74
+ end
75
+
76
+ klass.define_instance_method('autoload') do |method|
77
+ method.define_argument('const_name')
78
+ method.define_optional_argument('path')
79
+ end
80
+
81
+ klass.define_instance_method('autoload_at') do |method|
82
+ method.define_argument('path')
83
+ end
84
+
85
+ klass.define_instance_method('autoload_under') do |method|
86
+ method.define_argument('path')
87
+ end
88
+
89
+ klass.define_instance_method('autoloads')
90
+
91
+ klass.define_instance_method('eager_autoload')
92
+
93
+ klass.define_instance_method('eager_load!')
94
+ end
95
+
96
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::BacktraceCleaner') do |klass|
97
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
98
+
99
+ klass.define_instance_method('add_filter') do |method|
100
+ method.define_block_argument('block')
101
+ end
102
+
103
+ klass.define_instance_method('add_silencer') do |method|
104
+ method.define_block_argument('block')
105
+ end
106
+
107
+ klass.define_instance_method('clean') do |method|
108
+ method.define_argument('backtrace')
109
+ method.define_optional_argument('kind')
110
+ end
111
+
112
+ klass.define_instance_method('filter') do |method|
113
+ method.define_argument('backtrace')
114
+ method.define_optional_argument('kind')
115
+ end
116
+
117
+ klass.define_instance_method('remove_filters!')
118
+
119
+ klass.define_instance_method('remove_silencers!')
120
+ end
121
+
122
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::BasicObject') do |klass|
123
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('ActiveSupport::ProxyObject'))
124
+
125
+ klass.define_method('inherited') do |method|
126
+ method.define_rest_argument('')
127
+ end
128
+ end
129
+
130
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Benchmarkable') do |klass|
131
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
132
+
133
+ klass.define_instance_method('benchmark') do |method|
134
+ method.define_optional_argument('message')
135
+ method.define_optional_argument('options')
136
+ end
137
+
138
+ klass.define_instance_method('silence')
139
+ end
140
+
141
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Cache') do |klass|
142
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
143
+
144
+ klass.define_method('expand_cache_key') do |method|
145
+ method.define_argument('key')
146
+ method.define_optional_argument('namespace')
147
+ end
148
+
149
+ klass.define_method('lookup_store') do |method|
150
+ method.define_rest_argument('store_option')
151
+ end
152
+ end
153
+
154
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::CachingKeyGenerator') do |klass|
155
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
156
+
157
+ klass.define_instance_method('generate_key') do |method|
158
+ method.define_argument('salt')
159
+ method.define_optional_argument('key_size')
160
+ end
161
+ end
162
+
163
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Callbacks') do |klass|
164
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
165
+
166
+ klass.define_instance_method('run_callbacks') do |method|
167
+ method.define_argument('kind')
168
+ method.define_block_argument('block')
169
+ end
170
+ end
171
+
172
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Concern') do |klass|
173
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
174
+
175
+ klass.define_method('extended') do |method|
176
+ method.define_argument('base')
177
+ end
178
+
179
+ klass.define_instance_method('append_features') do |method|
180
+ method.define_argument('base')
181
+ end
182
+
183
+ klass.define_instance_method('included') do |method|
184
+ method.define_optional_argument('base')
185
+ method.define_block_argument('block')
186
+ end
187
+ end
188
+
189
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Configurable') do |klass|
190
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
191
+
192
+ klass.define_instance_method('config')
193
+ end
194
+
195
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Dependencies') do |klass|
196
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
197
+
198
+ klass.define_method('autoload_once_paths')
199
+
200
+ klass.define_method('autoload_once_paths=') do |method|
201
+ method.define_argument('obj')
202
+ end
203
+
204
+ klass.define_method('autoload_paths')
205
+
206
+ klass.define_method('autoload_paths=') do |method|
207
+ method.define_argument('obj')
208
+ end
209
+
210
+ klass.define_method('autoloaded_constants')
211
+
212
+ klass.define_method('autoloaded_constants=') do |method|
213
+ method.define_argument('obj')
214
+ end
215
+
216
+ klass.define_method('constant_watch_stack')
217
+
218
+ klass.define_method('constant_watch_stack=') do |method|
219
+ method.define_argument('obj')
220
+ end
221
+
222
+ klass.define_method('explicitly_unloadable_constants')
223
+
224
+ klass.define_method('explicitly_unloadable_constants=') do |method|
225
+ method.define_argument('obj')
226
+ end
227
+
228
+ klass.define_method('history')
229
+
230
+ klass.define_method('history=') do |method|
231
+ method.define_argument('obj')
232
+ end
233
+
234
+ klass.define_method('loaded')
235
+
236
+ klass.define_method('loaded=') do |method|
237
+ method.define_argument('obj')
238
+ end
239
+
240
+ klass.define_method('log_activity')
241
+
242
+ klass.define_method('log_activity=') do |method|
243
+ method.define_argument('obj')
244
+ end
245
+
246
+ klass.define_method('logger')
247
+
248
+ klass.define_method('logger=') do |method|
249
+ method.define_argument('obj')
250
+ end
251
+
252
+ klass.define_method('mechanism')
253
+
254
+ klass.define_method('mechanism=') do |method|
255
+ method.define_argument('obj')
256
+ end
257
+
258
+ klass.define_method('warnings_on_first_load')
259
+
260
+ klass.define_method('warnings_on_first_load=') do |method|
261
+ method.define_argument('obj')
262
+ end
263
+
264
+ klass.define_instance_method('autoload_module!') do |method|
265
+ method.define_argument('into')
266
+ method.define_argument('const_name')
267
+ method.define_argument('qualified_name')
268
+ method.define_argument('path_suffix')
269
+ end
270
+
271
+ klass.define_instance_method('autoload_once_paths')
272
+
273
+ klass.define_instance_method('autoload_once_paths=') do |method|
274
+ method.define_argument('obj')
275
+ end
276
+
277
+ klass.define_instance_method('autoload_paths')
278
+
279
+ klass.define_instance_method('autoload_paths=') do |method|
280
+ method.define_argument('obj')
281
+ end
282
+
283
+ klass.define_instance_method('autoloadable_module?') do |method|
284
+ method.define_argument('path_suffix')
285
+ end
286
+
287
+ klass.define_instance_method('autoloaded?') do |method|
288
+ method.define_argument('desc')
289
+ end
290
+
291
+ klass.define_instance_method('autoloaded_constants')
292
+
293
+ klass.define_instance_method('autoloaded_constants=') do |method|
294
+ method.define_argument('obj')
295
+ end
296
+
297
+ klass.define_instance_method('clear')
298
+
299
+ klass.define_instance_method('constant_watch_stack')
300
+
301
+ klass.define_instance_method('constant_watch_stack=') do |method|
302
+ method.define_argument('obj')
303
+ end
304
+
305
+ klass.define_instance_method('constantize') do |method|
306
+ method.define_argument('name')
307
+ end
308
+
309
+ klass.define_instance_method('depend_on') do |method|
310
+ method.define_argument('file_name')
311
+ method.define_optional_argument('message')
312
+ end
313
+
314
+ klass.define_instance_method('explicitly_unloadable_constants')
315
+
316
+ klass.define_instance_method('explicitly_unloadable_constants=') do |method|
317
+ method.define_argument('obj')
318
+ end
319
+
320
+ klass.define_instance_method('history')
321
+
322
+ klass.define_instance_method('history=') do |method|
323
+ method.define_argument('obj')
324
+ end
325
+
326
+ klass.define_instance_method('hook!')
327
+
328
+ klass.define_instance_method('load?')
329
+
330
+ klass.define_instance_method('load_file') do |method|
331
+ method.define_argument('path')
332
+ method.define_optional_argument('const_paths')
333
+ end
334
+
335
+ klass.define_instance_method('load_missing_constant') do |method|
336
+ method.define_argument('from_mod')
337
+ method.define_argument('const_name')
338
+ end
339
+
340
+ klass.define_instance_method('load_once_path?') do |method|
341
+ method.define_argument('path')
342
+ end
343
+
344
+ klass.define_instance_method('loadable_constants_for_path') do |method|
345
+ method.define_argument('path')
346
+ method.define_optional_argument('bases')
347
+ end
348
+
349
+ klass.define_instance_method('loaded')
350
+
351
+ klass.define_instance_method('loaded=') do |method|
352
+ method.define_argument('obj')
353
+ end
354
+
355
+ klass.define_instance_method('log') do |method|
356
+ method.define_argument('msg')
357
+ end
358
+
359
+ klass.define_instance_method('log_activity')
360
+
361
+ klass.define_instance_method('log_activity=') do |method|
362
+ method.define_argument('obj')
363
+ end
364
+
365
+ klass.define_instance_method('log_activity?')
366
+
367
+ klass.define_instance_method('log_call') do |method|
368
+ method.define_rest_argument('args')
369
+ end
370
+
371
+ klass.define_instance_method('logger')
372
+
373
+ klass.define_instance_method('logger=') do |method|
374
+ method.define_argument('obj')
375
+ end
376
+
377
+ klass.define_instance_method('mark_for_unload') do |method|
378
+ method.define_argument('const_desc')
379
+ end
380
+
381
+ klass.define_instance_method('mechanism')
382
+
383
+ klass.define_instance_method('mechanism=') do |method|
384
+ method.define_argument('obj')
385
+ end
386
+
387
+ klass.define_instance_method('new_constants_in') do |method|
388
+ method.define_rest_argument('descs')
389
+ end
390
+
391
+ klass.define_instance_method('qualified_const_defined?') do |method|
392
+ method.define_argument('path')
393
+ end
394
+
395
+ klass.define_instance_method('qualified_name_for') do |method|
396
+ method.define_argument('mod')
397
+ method.define_argument('name')
398
+ end
399
+
400
+ klass.define_instance_method('reference') do |method|
401
+ method.define_argument('klass')
402
+ end
403
+
404
+ klass.define_instance_method('remove_constant') do |method|
405
+ method.define_argument('const')
406
+ end
407
+
408
+ klass.define_instance_method('remove_unloadable_constants!')
409
+
410
+ klass.define_instance_method('require_or_load') do |method|
411
+ method.define_argument('file_name')
412
+ method.define_optional_argument('const_path')
413
+ end
414
+
415
+ klass.define_instance_method('safe_constantize') do |method|
416
+ method.define_argument('name')
417
+ end
418
+
419
+ klass.define_instance_method('search_for_file') do |method|
420
+ method.define_argument('path_suffix')
421
+ end
422
+
423
+ klass.define_instance_method('to_constant_name') do |method|
424
+ method.define_argument('desc')
425
+ end
426
+
427
+ klass.define_instance_method('unhook!')
428
+
429
+ klass.define_instance_method('warnings_on_first_load')
430
+
431
+ klass.define_instance_method('warnings_on_first_load=') do |method|
432
+ method.define_argument('obj')
433
+ end
434
+
435
+ klass.define_instance_method('will_unload?') do |method|
436
+ method.define_argument('const_desc')
437
+ end
438
+ end
439
+
440
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Deprecation') do |klass|
441
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
442
+
443
+ klass.define_method('behavior') do |method|
444
+ method.define_rest_argument('args')
445
+ method.define_block_argument('block')
446
+ end
447
+
448
+ klass.define_method('behavior=') do |method|
449
+ method.define_argument('arg')
450
+ end
451
+
452
+ klass.define_method('debug') do |method|
453
+ method.define_rest_argument('args')
454
+ method.define_block_argument('block')
455
+ end
456
+
457
+ klass.define_method('debug=') do |method|
458
+ method.define_argument('arg')
459
+ end
460
+
461
+ klass.define_method('deprecate_methods') do |method|
462
+ method.define_rest_argument('args')
463
+ method.define_block_argument('block')
464
+ end
465
+
466
+ klass.define_method('deprecation_horizon') do |method|
467
+ method.define_rest_argument('args')
468
+ method.define_block_argument('block')
469
+ end
470
+
471
+ klass.define_method('deprecation_horizon=') do |method|
472
+ method.define_argument('arg')
473
+ end
474
+
475
+ klass.define_method('deprecation_warning') do |method|
476
+ method.define_rest_argument('args')
477
+ method.define_block_argument('block')
478
+ end
479
+
480
+ klass.define_method('gem_name') do |method|
481
+ method.define_rest_argument('args')
482
+ method.define_block_argument('block')
483
+ end
484
+
485
+ klass.define_method('gem_name=') do |method|
486
+ method.define_argument('arg')
487
+ end
488
+
489
+ klass.define_method('initialize') do |method|
490
+ method.define_rest_argument('args')
491
+ method.define_block_argument('block')
492
+ end
493
+
494
+ klass.define_method('instance')
495
+
496
+ klass.define_method('new') do |method|
497
+ method.define_rest_argument('args')
498
+ end
499
+
500
+ klass.define_method('silence') do |method|
501
+ method.define_rest_argument('args')
502
+ method.define_block_argument('block')
503
+ end
504
+
505
+ klass.define_method('silenced') do |method|
506
+ method.define_rest_argument('args')
507
+ method.define_block_argument('block')
508
+ end
509
+
510
+ klass.define_method('silenced=') do |method|
511
+ method.define_argument('arg')
512
+ end
513
+
514
+ klass.define_method('warn') do |method|
515
+ method.define_rest_argument('args')
516
+ method.define_block_argument('block')
517
+ end
518
+
519
+ klass.define_instance_method('deprecation_horizon')
520
+
521
+ klass.define_instance_method('deprecation_horizon=')
522
+ end
523
+
524
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::DescendantsTracker') do |klass|
525
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
526
+
527
+ klass.define_method('clear')
528
+
529
+ klass.define_method('descendants') do |method|
530
+ method.define_argument('klass')
531
+ end
532
+
533
+ klass.define_method('direct_descendants') do |method|
534
+ method.define_argument('klass')
535
+ end
536
+
537
+ klass.define_method('store_inherited') do |method|
538
+ method.define_argument('klass')
539
+ method.define_argument('descendant')
540
+ end
541
+
542
+ klass.define_instance_method('descendants')
543
+
544
+ klass.define_instance_method('direct_descendants')
545
+
546
+ klass.define_instance_method('inherited') do |method|
547
+ method.define_argument('base')
548
+ end
549
+ end
550
+
551
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Duration') do |klass|
552
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('ActiveSupport::ProxyObject'))
553
+
554
+ klass.define_method('===') do |method|
555
+ method.define_argument('other')
556
+ end
557
+
558
+ klass.define_instance_method('+') do |method|
559
+ method.define_argument('other')
560
+ end
561
+
562
+ klass.define_instance_method('-') do |method|
563
+ method.define_argument('other')
564
+ end
565
+
566
+ klass.define_instance_method('-@')
567
+
568
+ klass.define_instance_method('==') do |method|
569
+ method.define_argument('other')
570
+ end
571
+
572
+ klass.define_instance_method('ago') do |method|
573
+ method.define_optional_argument('time')
574
+ end
575
+
576
+ klass.define_instance_method('as_json') do |method|
577
+ method.define_optional_argument('options')
578
+ end
579
+
580
+ klass.define_instance_method('from_now') do |method|
581
+ method.define_optional_argument('time')
582
+ end
583
+
584
+ klass.define_instance_method('inspect')
585
+
586
+ klass.define_instance_method('is_a?') do |method|
587
+ method.define_argument('klass')
588
+ end
589
+
590
+ klass.define_instance_method('kind_of?') do |method|
591
+ method.define_argument('klass')
592
+ end
593
+
594
+ klass.define_instance_method('parts')
595
+
596
+ klass.define_instance_method('parts=')
597
+
598
+ klass.define_instance_method('since') do |method|
599
+ method.define_optional_argument('time')
600
+ end
601
+
602
+ klass.define_instance_method('sum') do |method|
603
+ method.define_argument('sign')
604
+ method.define_optional_argument('time')
605
+ end
606
+
607
+ klass.define_instance_method('until') do |method|
608
+ method.define_optional_argument('time')
609
+ end
610
+
611
+ klass.define_instance_method('value')
612
+
613
+ klass.define_instance_method('value=')
614
+ end
615
+
616
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::FileUpdateChecker') do |klass|
617
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
618
+
619
+ klass.define_instance_method('execute')
620
+
621
+ klass.define_instance_method('execute_if_updated')
622
+
623
+ klass.define_instance_method('updated?')
624
+ end
625
+
626
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Gzip') do |klass|
627
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
628
+
629
+ klass.define_method('compress') do |method|
630
+ method.define_argument('source')
631
+ method.define_optional_argument('level')
632
+ method.define_optional_argument('strategy')
633
+ end
634
+
635
+ klass.define_method('decompress') do |method|
636
+ method.define_argument('source')
637
+ end
638
+ end
639
+
640
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::HashWithIndifferentAccess') do |klass|
641
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Hash'))
642
+
643
+ klass.define_method('[]') do |method|
644
+ method.define_rest_argument('args')
645
+ end
646
+
647
+ klass.define_method('new_from_hash_copying_default') do |method|
648
+ method.define_argument('hash')
649
+ end
650
+
651
+ klass.define_instance_method('[]=') do |method|
652
+ method.define_argument('key')
653
+ method.define_argument('value')
654
+ end
655
+
656
+ klass.define_instance_method('convert_key') do |method|
657
+ method.define_argument('key')
658
+ end
659
+
660
+ klass.define_instance_method('convert_value') do |method|
661
+ method.define_argument('value')
662
+ method.define_optional_argument('options')
663
+ end
664
+
665
+ klass.define_instance_method('deep_stringify_keys')
666
+
667
+ klass.define_instance_method('deep_stringify_keys!')
668
+
669
+ klass.define_instance_method('deep_symbolize_keys')
670
+
671
+ klass.define_instance_method('default') do |method|
672
+ method.define_optional_argument('key')
673
+ end
674
+
675
+ klass.define_instance_method('delete') do |method|
676
+ method.define_argument('key')
677
+ end
678
+
679
+ klass.define_instance_method('dup')
680
+
681
+ klass.define_instance_method('extractable_options?')
682
+
683
+ klass.define_instance_method('fetch') do |method|
684
+ method.define_argument('key')
685
+ method.define_rest_argument('extras')
686
+ end
687
+
688
+ klass.define_instance_method('has_key?') do |method|
689
+ method.define_argument('key')
690
+ end
691
+
692
+ klass.define_instance_method('include?') do |method|
693
+ method.define_argument('key')
694
+ end
695
+
696
+ klass.define_instance_method('key?') do |method|
697
+ method.define_argument('key')
698
+ end
699
+
700
+ klass.define_instance_method('member?') do |method|
701
+ method.define_argument('key')
702
+ end
703
+
704
+ klass.define_instance_method('merge') do |method|
705
+ method.define_argument('hash')
706
+ method.define_block_argument('block')
707
+ end
708
+
709
+ klass.define_instance_method('merge!') do |method|
710
+ method.define_argument('other_hash')
711
+ end
712
+
713
+ klass.define_instance_method('nested_under_indifferent_access')
714
+
715
+ klass.define_instance_method('regular_update') do |method|
716
+ method.define_argument('other')
717
+ end
718
+
719
+ klass.define_instance_method('regular_writer') do |method|
720
+ method.define_argument('key')
721
+ method.define_argument('value')
722
+ end
723
+
724
+ klass.define_instance_method('replace') do |method|
725
+ method.define_argument('other_hash')
726
+ end
727
+
728
+ klass.define_instance_method('reverse_merge') do |method|
729
+ method.define_argument('other_hash')
730
+ end
731
+
732
+ klass.define_instance_method('reverse_merge!') do |method|
733
+ method.define_argument('other_hash')
734
+ end
735
+
736
+ klass.define_instance_method('store') do |method|
737
+ method.define_argument('key')
738
+ method.define_argument('value')
739
+ end
740
+
741
+ klass.define_instance_method('stringify_keys')
742
+
743
+ klass.define_instance_method('stringify_keys!')
744
+
745
+ klass.define_instance_method('symbolize_keys')
746
+
747
+ klass.define_instance_method('to_hash')
748
+
749
+ klass.define_instance_method('to_options!')
750
+
751
+ klass.define_instance_method('update') do |method|
752
+ method.define_argument('other_hash')
753
+ end
754
+
755
+ klass.define_instance_method('values_at') do |method|
756
+ method.define_rest_argument('indices')
757
+ end
758
+
759
+ klass.define_instance_method('with_indifferent_access')
760
+ end
761
+
762
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Inflector') do |klass|
763
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
764
+
765
+ klass.define_instance_method('camelize') do |method|
766
+ method.define_argument('term')
767
+ method.define_optional_argument('uppercase_first_letter')
768
+ end
769
+
770
+ klass.define_instance_method('classify') do |method|
771
+ method.define_argument('table_name')
772
+ end
773
+
774
+ klass.define_instance_method('constantize') do |method|
775
+ method.define_argument('camel_cased_word')
776
+ end
777
+
778
+ klass.define_instance_method('dasherize') do |method|
779
+ method.define_argument('underscored_word')
780
+ end
781
+
782
+ klass.define_instance_method('deconstantize') do |method|
783
+ method.define_argument('path')
784
+ end
785
+
786
+ klass.define_instance_method('demodulize') do |method|
787
+ method.define_argument('path')
788
+ end
789
+
790
+ klass.define_instance_method('foreign_key') do |method|
791
+ method.define_argument('class_name')
792
+ method.define_optional_argument('separate_class_name_and_id_with_underscore')
793
+ end
794
+
795
+ klass.define_instance_method('humanize') do |method|
796
+ method.define_argument('lower_case_and_underscored_word')
797
+ end
798
+
799
+ klass.define_instance_method('inflections') do |method|
800
+ method.define_optional_argument('locale')
801
+ end
802
+
803
+ klass.define_instance_method('ordinal') do |method|
804
+ method.define_argument('number')
805
+ end
806
+
807
+ klass.define_instance_method('ordinalize') do |method|
808
+ method.define_argument('number')
809
+ end
810
+
811
+ klass.define_instance_method('parameterize') do |method|
812
+ method.define_argument('string')
813
+ method.define_optional_argument('sep')
814
+ end
815
+
816
+ klass.define_instance_method('pluralize') do |method|
817
+ method.define_argument('word')
818
+ method.define_optional_argument('locale')
819
+ end
820
+
821
+ klass.define_instance_method('safe_constantize') do |method|
822
+ method.define_argument('camel_cased_word')
823
+ end
824
+
825
+ klass.define_instance_method('singularize') do |method|
826
+ method.define_argument('word')
827
+ method.define_optional_argument('locale')
828
+ end
829
+
830
+ klass.define_instance_method('tableize') do |method|
831
+ method.define_argument('class_name')
832
+ end
833
+
834
+ klass.define_instance_method('titleize') do |method|
835
+ method.define_argument('word')
836
+ end
837
+
838
+ klass.define_instance_method('transliterate') do |method|
839
+ method.define_argument('string')
840
+ method.define_optional_argument('replacement')
841
+ end
842
+
843
+ klass.define_instance_method('underscore') do |method|
844
+ method.define_argument('camel_cased_word')
845
+ end
846
+ end
847
+
848
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::InheritableOptions') do |klass|
849
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('ActiveSupport::OrderedOptions'))
850
+
851
+ klass.define_instance_method('inheritable_copy')
852
+ end
853
+
854
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::JSON') do |klass|
855
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
856
+
857
+ klass.define_method('backend')
858
+
859
+ klass.define_method('backend=') do |method|
860
+ method.define_argument('name')
861
+ end
862
+
863
+ klass.define_method('decode') do |method|
864
+ method.define_argument('json')
865
+ method.define_optional_argument('options')
866
+ end
867
+
868
+ klass.define_method('encode') do |method|
869
+ method.define_argument('value')
870
+ method.define_optional_argument('options')
871
+ end
872
+
873
+ klass.define_method('engine')
874
+
875
+ klass.define_method('engine=') do |method|
876
+ method.define_argument('name')
877
+ end
878
+
879
+ klass.define_method('parse_error')
880
+
881
+ klass.define_method('with_backend') do |method|
882
+ method.define_argument('name')
883
+ end
884
+ end
885
+
886
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::KeyGenerator') do |klass|
887
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
888
+
889
+ klass.define_instance_method('generate_key') do |method|
890
+ method.define_argument('salt')
891
+ method.define_optional_argument('key_size')
892
+ end
893
+ end
894
+
895
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::LegacyKeyGenerator') do |klass|
896
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
897
+
898
+ klass.define_instance_method('generate_key') do |method|
899
+ method.define_argument('salt')
900
+ end
901
+ end
902
+
903
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::LogSubscriber') do |klass|
904
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('ActiveSupport::Subscriber'))
905
+
906
+ klass.define_method('colorize_logging')
907
+
908
+ klass.define_method('colorize_logging=') do |method|
909
+ method.define_argument('obj')
910
+ end
911
+
912
+ klass.define_method('flush_all!')
913
+
914
+ klass.define_method('log_subscribers')
915
+
916
+ klass.define_method('logger')
917
+
918
+ klass.define_method('logger=')
919
+
920
+ klass.define_instance_method('color') do |method|
921
+ method.define_argument('text')
922
+ method.define_argument('color')
923
+ method.define_optional_argument('bold')
924
+ end
925
+
926
+ klass.define_instance_method('colorize_logging')
927
+
928
+ klass.define_instance_method('colorize_logging=') do |method|
929
+ method.define_argument('obj')
930
+ end
931
+
932
+ klass.define_instance_method('debug') do |method|
933
+ method.define_optional_argument('progname')
934
+ method.define_block_argument('block')
935
+ end
936
+
937
+ klass.define_instance_method('error') do |method|
938
+ method.define_optional_argument('progname')
939
+ method.define_block_argument('block')
940
+ end
941
+
942
+ klass.define_instance_method('fatal') do |method|
943
+ method.define_optional_argument('progname')
944
+ method.define_block_argument('block')
945
+ end
946
+
947
+ klass.define_instance_method('finish') do |method|
948
+ method.define_argument('name')
949
+ method.define_argument('id')
950
+ method.define_argument('payload')
951
+ end
952
+
953
+ klass.define_instance_method('info') do |method|
954
+ method.define_optional_argument('progname')
955
+ method.define_block_argument('block')
956
+ end
957
+
958
+ klass.define_instance_method('logger')
959
+
960
+ klass.define_instance_method('start') do |method|
961
+ method.define_argument('name')
962
+ method.define_argument('id')
963
+ method.define_argument('payload')
964
+ end
965
+
966
+ klass.define_instance_method('unknown') do |method|
967
+ method.define_optional_argument('progname')
968
+ method.define_block_argument('block')
969
+ end
970
+
971
+ klass.define_instance_method('warn') do |method|
972
+ method.define_optional_argument('progname')
973
+ method.define_block_argument('block')
974
+ end
975
+ end
976
+
977
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Logger') do |klass|
978
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Logger'))
979
+
980
+ klass.define_method('broadcast') do |method|
981
+ method.define_argument('logger')
982
+ end
983
+
984
+ klass.define_method('silencer')
985
+
986
+ klass.define_method('silencer=') do |method|
987
+ method.define_argument('obj')
988
+ end
989
+
990
+ klass.define_instance_method('silencer')
991
+
992
+ klass.define_instance_method('silencer=') do |method|
993
+ method.define_argument('obj')
994
+ end
995
+ end
996
+
997
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::MessageEncryptor') do |klass|
998
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
999
+
1000
+ klass.define_instance_method('decrypt_and_verify') do |method|
1001
+ method.define_argument('value')
1002
+ end
1003
+
1004
+ klass.define_instance_method('encrypt_and_sign') do |method|
1005
+ method.define_argument('value')
1006
+ end
1007
+ end
1008
+
1009
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::MessageVerifier') do |klass|
1010
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1011
+
1012
+ klass.define_instance_method('generate') do |method|
1013
+ method.define_argument('value')
1014
+ end
1015
+
1016
+ klass.define_instance_method('verify') do |method|
1017
+ method.define_argument('signed_message')
1018
+ end
1019
+ end
1020
+
1021
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Multibyte') do |klass|
1022
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1023
+
1024
+ klass.define_method('clean') do |method|
1025
+ method.define_argument('string')
1026
+ end
1027
+
1028
+ klass.define_method('proxy_class')
1029
+
1030
+ klass.define_method('proxy_class=') do |method|
1031
+ method.define_argument('klass')
1032
+ end
1033
+
1034
+ klass.define_method('valid_character')
1035
+
1036
+ klass.define_method('verify') do |method|
1037
+ method.define_argument('string')
1038
+ end
1039
+
1040
+ klass.define_method('verify!') do |method|
1041
+ method.define_argument('string')
1042
+ end
1043
+ end
1044
+
1045
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Notifications') do |klass|
1046
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1047
+
1048
+ klass.define_method('instrument') do |method|
1049
+ method.define_argument('name')
1050
+ method.define_optional_argument('payload')
1051
+ end
1052
+
1053
+ klass.define_method('instrumenter')
1054
+
1055
+ klass.define_method('notifier')
1056
+
1057
+ klass.define_method('notifier=')
1058
+
1059
+ klass.define_method('publish') do |method|
1060
+ method.define_argument('name')
1061
+ method.define_rest_argument('args')
1062
+ end
1063
+
1064
+ klass.define_method('subscribe') do |method|
1065
+ method.define_rest_argument('args')
1066
+ method.define_block_argument('block')
1067
+ end
1068
+
1069
+ klass.define_method('subscribed') do |method|
1070
+ method.define_argument('callback')
1071
+ method.define_rest_argument('args')
1072
+ method.define_block_argument('block')
1073
+ end
1074
+
1075
+ klass.define_method('unsubscribe') do |method|
1076
+ method.define_argument('args')
1077
+ end
1078
+ end
1079
+
1080
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::NumberHelper') do |klass|
1081
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1082
+
1083
+ klass.define_instance_method('number_to_currency') do |method|
1084
+ method.define_argument('number')
1085
+ method.define_optional_argument('options')
1086
+ end
1087
+
1088
+ klass.define_instance_method('number_to_delimited') do |method|
1089
+ method.define_argument('number')
1090
+ method.define_optional_argument('options')
1091
+ end
1092
+
1093
+ klass.define_instance_method('number_to_human') do |method|
1094
+ method.define_argument('number')
1095
+ method.define_optional_argument('options')
1096
+ end
1097
+
1098
+ klass.define_instance_method('number_to_human_size') do |method|
1099
+ method.define_argument('number')
1100
+ method.define_optional_argument('options')
1101
+ end
1102
+
1103
+ klass.define_instance_method('number_to_percentage') do |method|
1104
+ method.define_argument('number')
1105
+ method.define_optional_argument('options')
1106
+ end
1107
+
1108
+ klass.define_instance_method('number_to_phone') do |method|
1109
+ method.define_argument('number')
1110
+ method.define_optional_argument('options')
1111
+ end
1112
+
1113
+ klass.define_instance_method('number_to_rounded') do |method|
1114
+ method.define_argument('number')
1115
+ method.define_optional_argument('options')
1116
+ end
1117
+ end
1118
+
1119
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::OptionMerger') do |klass|
1120
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1121
+ end
1122
+
1123
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::OrderedHash') do |klass|
1124
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Hash'))
1125
+
1126
+ klass.define_instance_method('encode_with') do |method|
1127
+ method.define_argument('coder')
1128
+ end
1129
+
1130
+ klass.define_instance_method('extractable_options?')
1131
+
1132
+ klass.define_instance_method('nested_under_indifferent_access')
1133
+
1134
+ klass.define_instance_method('to_yaml_type')
1135
+ end
1136
+
1137
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::OrderedOptions') do |klass|
1138
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Hash'))
1139
+
1140
+ klass.define_instance_method('[]') do |method|
1141
+ method.define_argument('key')
1142
+ end
1143
+
1144
+ klass.define_instance_method('[]=') do |method|
1145
+ method.define_argument('key')
1146
+ method.define_argument('value')
1147
+ end
1148
+
1149
+ klass.define_instance_method('_get') do |method|
1150
+ method.define_argument('key')
1151
+ end
1152
+
1153
+ klass.define_instance_method('method_missing') do |method|
1154
+ method.define_argument('name')
1155
+ method.define_rest_argument('args')
1156
+ end
1157
+
1158
+ klass.define_instance_method('respond_to_missing?') do |method|
1159
+ method.define_argument('name')
1160
+ method.define_argument('include_private')
1161
+ end
1162
+ end
1163
+
1164
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::PerThreadRegistry') do |klass|
1165
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1166
+
1167
+ klass.define_instance_method('method_missing') do |method|
1168
+ method.define_argument('name')
1169
+ method.define_rest_argument('args')
1170
+ method.define_block_argument('block')
1171
+ end
1172
+ end
1173
+
1174
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::ProxyObject') do |klass|
1175
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('BasicObject'))
1176
+
1177
+ klass.define_instance_method('raise') do |method|
1178
+ method.define_rest_argument('args')
1179
+ end
1180
+ end
1181
+
1182
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Railtie') do |klass|
1183
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Rails::Railtie'))
1184
+ end
1185
+
1186
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Rescuable') do |klass|
1187
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1188
+
1189
+ klass.define_instance_method('handler_for_rescue') do |method|
1190
+ method.define_argument('exception')
1191
+ end
1192
+
1193
+ klass.define_instance_method('rescue_with_handler') do |method|
1194
+ method.define_argument('exception')
1195
+ end
1196
+ end
1197
+
1198
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::SafeBuffer') do |klass|
1199
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('String'))
1200
+
1201
+ klass.define_instance_method('%') do |method|
1202
+ method.define_argument('args')
1203
+ end
1204
+
1205
+ klass.define_instance_method('+') do |method|
1206
+ method.define_argument('other')
1207
+ end
1208
+
1209
+ klass.define_instance_method('<<') do |method|
1210
+ method.define_argument('value')
1211
+ end
1212
+
1213
+ klass.define_instance_method('[]') do |method|
1214
+ method.define_rest_argument('args')
1215
+ end
1216
+
1217
+ klass.define_instance_method('capitalize') do |method|
1218
+ method.define_rest_argument('args')
1219
+ method.define_block_argument('block')
1220
+ end
1221
+
1222
+ klass.define_instance_method('capitalize!') do |method|
1223
+ method.define_rest_argument('args')
1224
+ end
1225
+
1226
+ klass.define_instance_method('chomp') do |method|
1227
+ method.define_rest_argument('args')
1228
+ method.define_block_argument('block')
1229
+ end
1230
+
1231
+ klass.define_instance_method('chomp!') do |method|
1232
+ method.define_rest_argument('args')
1233
+ end
1234
+
1235
+ klass.define_instance_method('chop') do |method|
1236
+ method.define_rest_argument('args')
1237
+ method.define_block_argument('block')
1238
+ end
1239
+
1240
+ klass.define_instance_method('chop!') do |method|
1241
+ method.define_rest_argument('args')
1242
+ end
1243
+
1244
+ klass.define_instance_method('clone_empty')
1245
+
1246
+ klass.define_instance_method('concat') do |method|
1247
+ method.define_argument('value')
1248
+ end
1249
+
1250
+ klass.define_instance_method('delete') do |method|
1251
+ method.define_rest_argument('args')
1252
+ method.define_block_argument('block')
1253
+ end
1254
+
1255
+ klass.define_instance_method('delete!') do |method|
1256
+ method.define_rest_argument('args')
1257
+ end
1258
+
1259
+ klass.define_instance_method('downcase') do |method|
1260
+ method.define_rest_argument('args')
1261
+ method.define_block_argument('block')
1262
+ end
1263
+
1264
+ klass.define_instance_method('downcase!') do |method|
1265
+ method.define_rest_argument('args')
1266
+ end
1267
+
1268
+ klass.define_instance_method('encode_with') do |method|
1269
+ method.define_argument('coder')
1270
+ end
1271
+
1272
+ klass.define_instance_method('gsub') do |method|
1273
+ method.define_rest_argument('args')
1274
+ method.define_block_argument('block')
1275
+ end
1276
+
1277
+ klass.define_instance_method('gsub!') do |method|
1278
+ method.define_rest_argument('args')
1279
+ end
1280
+
1281
+ klass.define_instance_method('html_safe?')
1282
+
1283
+ klass.define_instance_method('lstrip') do |method|
1284
+ method.define_rest_argument('args')
1285
+ method.define_block_argument('block')
1286
+ end
1287
+
1288
+ klass.define_instance_method('lstrip!') do |method|
1289
+ method.define_rest_argument('args')
1290
+ end
1291
+
1292
+ klass.define_instance_method('next') do |method|
1293
+ method.define_rest_argument('args')
1294
+ method.define_block_argument('block')
1295
+ end
1296
+
1297
+ klass.define_instance_method('next!') do |method|
1298
+ method.define_rest_argument('args')
1299
+ end
1300
+
1301
+ klass.define_instance_method('prepend') do |method|
1302
+ method.define_rest_argument('args')
1303
+ method.define_block_argument('block')
1304
+ end
1305
+
1306
+ klass.define_instance_method('prepend!') do |method|
1307
+ method.define_rest_argument('args')
1308
+ end
1309
+
1310
+ klass.define_instance_method('reverse') do |method|
1311
+ method.define_rest_argument('args')
1312
+ method.define_block_argument('block')
1313
+ end
1314
+
1315
+ klass.define_instance_method('reverse!') do |method|
1316
+ method.define_rest_argument('args')
1317
+ end
1318
+
1319
+ klass.define_instance_method('rstrip') do |method|
1320
+ method.define_rest_argument('args')
1321
+ method.define_block_argument('block')
1322
+ end
1323
+
1324
+ klass.define_instance_method('rstrip!') do |method|
1325
+ method.define_rest_argument('args')
1326
+ end
1327
+
1328
+ klass.define_instance_method('safe_concat') do |method|
1329
+ method.define_argument('value')
1330
+ end
1331
+
1332
+ klass.define_instance_method('slice') do |method|
1333
+ method.define_rest_argument('args')
1334
+ method.define_block_argument('block')
1335
+ end
1336
+
1337
+ klass.define_instance_method('slice!') do |method|
1338
+ method.define_rest_argument('args')
1339
+ end
1340
+
1341
+ klass.define_instance_method('squeeze') do |method|
1342
+ method.define_rest_argument('args')
1343
+ method.define_block_argument('block')
1344
+ end
1345
+
1346
+ klass.define_instance_method('squeeze!') do |method|
1347
+ method.define_rest_argument('args')
1348
+ end
1349
+
1350
+ klass.define_instance_method('strip') do |method|
1351
+ method.define_rest_argument('args')
1352
+ method.define_block_argument('block')
1353
+ end
1354
+
1355
+ klass.define_instance_method('strip!') do |method|
1356
+ method.define_rest_argument('args')
1357
+ end
1358
+
1359
+ klass.define_instance_method('sub') do |method|
1360
+ method.define_rest_argument('args')
1361
+ method.define_block_argument('block')
1362
+ end
1363
+
1364
+ klass.define_instance_method('sub!') do |method|
1365
+ method.define_rest_argument('args')
1366
+ end
1367
+
1368
+ klass.define_instance_method('succ') do |method|
1369
+ method.define_rest_argument('args')
1370
+ method.define_block_argument('block')
1371
+ end
1372
+
1373
+ klass.define_instance_method('succ!') do |method|
1374
+ method.define_rest_argument('args')
1375
+ end
1376
+
1377
+ klass.define_instance_method('swapcase') do |method|
1378
+ method.define_rest_argument('args')
1379
+ method.define_block_argument('block')
1380
+ end
1381
+
1382
+ klass.define_instance_method('swapcase!') do |method|
1383
+ method.define_rest_argument('args')
1384
+ end
1385
+
1386
+ klass.define_instance_method('to_param')
1387
+
1388
+ klass.define_instance_method('to_s')
1389
+
1390
+ klass.define_instance_method('tr') do |method|
1391
+ method.define_rest_argument('args')
1392
+ method.define_block_argument('block')
1393
+ end
1394
+
1395
+ klass.define_instance_method('tr!') do |method|
1396
+ method.define_rest_argument('args')
1397
+ end
1398
+
1399
+ klass.define_instance_method('tr_s') do |method|
1400
+ method.define_rest_argument('args')
1401
+ method.define_block_argument('block')
1402
+ end
1403
+
1404
+ klass.define_instance_method('tr_s!') do |method|
1405
+ method.define_rest_argument('args')
1406
+ end
1407
+
1408
+ klass.define_instance_method('upcase') do |method|
1409
+ method.define_rest_argument('args')
1410
+ method.define_block_argument('block')
1411
+ end
1412
+
1413
+ klass.define_instance_method('upcase!') do |method|
1414
+ method.define_rest_argument('args')
1415
+ end
1416
+ end
1417
+
1418
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::StringInquirer') do |klass|
1419
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('String'))
1420
+ end
1421
+
1422
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Subscriber') do |klass|
1423
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1424
+
1425
+ klass.define_method('attach_to') do |method|
1426
+ method.define_argument('namespace')
1427
+ method.define_optional_argument('subscriber')
1428
+ method.define_optional_argument('notifier')
1429
+ end
1430
+
1431
+ klass.define_method('subscribers')
1432
+
1433
+ klass.define_instance_method('finish') do |method|
1434
+ method.define_argument('name')
1435
+ method.define_argument('id')
1436
+ method.define_argument('payload')
1437
+ end
1438
+
1439
+ klass.define_instance_method('start') do |method|
1440
+ method.define_argument('name')
1441
+ method.define_argument('id')
1442
+ method.define_argument('payload')
1443
+ end
1444
+ end
1445
+
1446
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::SubscriberQueueRegistry') do |klass|
1447
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1448
+
1449
+ klass.define_instance_method('get_queue') do |method|
1450
+ method.define_argument('queue_key')
1451
+ end
1452
+ end
1453
+
1454
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::TaggedLogging') do |klass|
1455
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1456
+
1457
+ klass.define_method('new') do |method|
1458
+ method.define_argument('logger')
1459
+ end
1460
+
1461
+ klass.define_instance_method('clear_tags!') do |method|
1462
+ method.define_rest_argument('args')
1463
+ method.define_block_argument('block')
1464
+ end
1465
+
1466
+ klass.define_instance_method('flush')
1467
+
1468
+ klass.define_instance_method('pop_tags') do |method|
1469
+ method.define_rest_argument('args')
1470
+ method.define_block_argument('block')
1471
+ end
1472
+
1473
+ klass.define_instance_method('push_tags') do |method|
1474
+ method.define_rest_argument('args')
1475
+ method.define_block_argument('block')
1476
+ end
1477
+
1478
+ klass.define_instance_method('tagged') do |method|
1479
+ method.define_rest_argument('tags')
1480
+ end
1481
+ end
1482
+
1483
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::TestCase') do |klass|
1484
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('MiniTest::Unit::TestCase'))
1485
+
1486
+ klass.define_method('_setup_callbacks')
1487
+
1488
+ klass.define_method('_setup_callbacks=') do |method|
1489
+ method.define_argument('val')
1490
+ end
1491
+
1492
+ klass.define_method('_setup_callbacks?')
1493
+
1494
+ klass.define_method('_teardown_callbacks')
1495
+
1496
+ klass.define_method('_teardown_callbacks=') do |method|
1497
+ method.define_argument('val')
1498
+ end
1499
+
1500
+ klass.define_method('_teardown_callbacks?')
1501
+
1502
+ klass.define_method('describe') do |method|
1503
+ method.define_argument('text')
1504
+ end
1505
+
1506
+ klass.define_method('for_tag') do |method|
1507
+ method.define_argument('tag')
1508
+ end
1509
+
1510
+ klass.define_method('test_order')
1511
+
1512
+ klass.define_instance_method('_setup_callbacks')
1513
+
1514
+ klass.define_instance_method('_setup_callbacks=')
1515
+
1516
+ klass.define_instance_method('_setup_callbacks?')
1517
+
1518
+ klass.define_instance_method('_teardown_callbacks')
1519
+
1520
+ klass.define_instance_method('_teardown_callbacks=')
1521
+
1522
+ klass.define_instance_method('_teardown_callbacks?')
1523
+
1524
+ klass.define_instance_method('assert_no_match') do |method|
1525
+ method.define_argument('matcher')
1526
+ method.define_argument('obj')
1527
+ method.define_optional_argument('msg')
1528
+ end
1529
+
1530
+ klass.define_instance_method('assert_not_empty') do |method|
1531
+ method.define_argument('obj')
1532
+ method.define_optional_argument('msg')
1533
+ end
1534
+
1535
+ klass.define_instance_method('assert_not_equal') do |method|
1536
+ method.define_argument('exp')
1537
+ method.define_argument('act')
1538
+ method.define_optional_argument('msg')
1539
+ end
1540
+
1541
+ klass.define_instance_method('assert_not_in_delta') do |method|
1542
+ method.define_argument('exp')
1543
+ method.define_argument('act')
1544
+ method.define_optional_argument('delta')
1545
+ method.define_optional_argument('msg')
1546
+ end
1547
+
1548
+ klass.define_instance_method('assert_not_in_epsilon') do |method|
1549
+ method.define_argument('a')
1550
+ method.define_argument('b')
1551
+ method.define_optional_argument('epsilon')
1552
+ method.define_optional_argument('msg')
1553
+ end
1554
+
1555
+ klass.define_instance_method('assert_not_includes') do |method|
1556
+ method.define_argument('collection')
1557
+ method.define_argument('obj')
1558
+ method.define_optional_argument('msg')
1559
+ end
1560
+
1561
+ klass.define_instance_method('assert_not_instance_of') do |method|
1562
+ method.define_argument('cls')
1563
+ method.define_argument('obj')
1564
+ method.define_optional_argument('msg')
1565
+ end
1566
+
1567
+ klass.define_instance_method('assert_not_kind_of') do |method|
1568
+ method.define_argument('cls')
1569
+ method.define_argument('obj')
1570
+ method.define_optional_argument('msg')
1571
+ end
1572
+
1573
+ klass.define_instance_method('assert_not_nil') do |method|
1574
+ method.define_argument('obj')
1575
+ method.define_optional_argument('msg')
1576
+ end
1577
+
1578
+ klass.define_instance_method('assert_not_operator') do |method|
1579
+ method.define_argument('o1')
1580
+ method.define_argument('op')
1581
+ method.define_optional_argument('o2')
1582
+ method.define_optional_argument('msg')
1583
+ end
1584
+
1585
+ klass.define_instance_method('assert_not_predicate') do |method|
1586
+ method.define_argument('o1')
1587
+ method.define_argument('op')
1588
+ method.define_optional_argument('msg')
1589
+ end
1590
+
1591
+ klass.define_instance_method('assert_not_respond_to') do |method|
1592
+ method.define_argument('obj')
1593
+ method.define_argument('meth')
1594
+ method.define_optional_argument('msg')
1595
+ end
1596
+
1597
+ klass.define_instance_method('assert_not_same') do |method|
1598
+ method.define_argument('exp')
1599
+ method.define_argument('act')
1600
+ method.define_optional_argument('msg')
1601
+ end
1602
+
1603
+ klass.define_instance_method('assert_nothing_raised') do |method|
1604
+ method.define_rest_argument('args')
1605
+ end
1606
+
1607
+ klass.define_instance_method('assert_raise') do |method|
1608
+ method.define_rest_argument('exp')
1609
+ end
1610
+
1611
+ klass.define_instance_method('method_name')
1612
+ end
1613
+
1614
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::Testing') do |klass|
1615
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1616
+ end
1617
+
1618
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::TimeWithZone') do |klass|
1619
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1620
+
1621
+ klass.define_method('name')
1622
+
1623
+ klass.define_instance_method('+') do |method|
1624
+ method.define_argument('other')
1625
+ end
1626
+
1627
+ klass.define_instance_method('-') do |method|
1628
+ method.define_argument('other')
1629
+ end
1630
+
1631
+ klass.define_instance_method('<=>') do |method|
1632
+ method.define_argument('other')
1633
+ end
1634
+
1635
+ klass.define_instance_method('acts_like_time?')
1636
+
1637
+ klass.define_instance_method('advance') do |method|
1638
+ method.define_argument('options')
1639
+ end
1640
+
1641
+ klass.define_instance_method('ago') do |method|
1642
+ method.define_argument('other')
1643
+ end
1644
+
1645
+ klass.define_instance_method('as_json') do |method|
1646
+ method.define_optional_argument('options')
1647
+ end
1648
+
1649
+ klass.define_instance_method('between?') do |method|
1650
+ method.define_argument('min')
1651
+ method.define_argument('max')
1652
+ end
1653
+
1654
+ klass.define_instance_method('comparable_time')
1655
+
1656
+ klass.define_instance_method('day')
1657
+
1658
+ klass.define_instance_method('dst?')
1659
+
1660
+ klass.define_instance_method('encode_with') do |method|
1661
+ method.define_argument('coder')
1662
+ end
1663
+
1664
+ klass.define_instance_method('eql?') do |method|
1665
+ method.define_argument('other')
1666
+ end
1667
+
1668
+ klass.define_instance_method('formatted_offset') do |method|
1669
+ method.define_optional_argument('colon')
1670
+ method.define_optional_argument('alternate_utc_string')
1671
+ end
1672
+
1673
+ klass.define_instance_method('freeze')
1674
+
1675
+ klass.define_instance_method('future?')
1676
+
1677
+ klass.define_instance_method('getgm')
1678
+
1679
+ klass.define_instance_method('getlocal')
1680
+
1681
+ klass.define_instance_method('getutc')
1682
+
1683
+ klass.define_instance_method('gmt?')
1684
+
1685
+ klass.define_instance_method('gmt_offset')
1686
+
1687
+ klass.define_instance_method('gmtime')
1688
+
1689
+ klass.define_instance_method('gmtoff')
1690
+
1691
+ klass.define_instance_method('hash')
1692
+
1693
+ klass.define_instance_method('hour')
1694
+
1695
+ klass.define_instance_method('httpdate')
1696
+
1697
+ klass.define_instance_method('in_time_zone') do |method|
1698
+ method.define_optional_argument('new_zone')
1699
+ end
1700
+
1701
+ klass.define_instance_method('inspect')
1702
+
1703
+ klass.define_instance_method('is_a?') do |method|
1704
+ method.define_argument('klass')
1705
+ end
1706
+
1707
+ klass.define_instance_method('isdst')
1708
+
1709
+ klass.define_instance_method('iso8601') do |method|
1710
+ method.define_optional_argument('fraction_digits')
1711
+ end
1712
+
1713
+ klass.define_instance_method('kind_of?') do |method|
1714
+ method.define_argument('klass')
1715
+ end
1716
+
1717
+ klass.define_instance_method('localtime')
1718
+
1719
+ klass.define_instance_method('marshal_dump')
1720
+
1721
+ klass.define_instance_method('marshal_load') do |method|
1722
+ method.define_argument('variables')
1723
+ end
1724
+
1725
+ klass.define_instance_method('mday')
1726
+
1727
+ klass.define_instance_method('method_missing') do |method|
1728
+ method.define_argument('sym')
1729
+ method.define_rest_argument('args')
1730
+ method.define_block_argument('block')
1731
+ end
1732
+
1733
+ klass.define_instance_method('min')
1734
+
1735
+ klass.define_instance_method('mon')
1736
+
1737
+ klass.define_instance_method('month')
1738
+
1739
+ klass.define_instance_method('past?')
1740
+
1741
+ klass.define_instance_method('period')
1742
+
1743
+ klass.define_instance_method('respond_to_missing?') do |method|
1744
+ method.define_argument('sym')
1745
+ method.define_argument('include_priv')
1746
+ end
1747
+
1748
+ klass.define_instance_method('rfc2822')
1749
+
1750
+ klass.define_instance_method('rfc822')
1751
+
1752
+ klass.define_instance_method('sec')
1753
+
1754
+ klass.define_instance_method('since') do |method|
1755
+ method.define_argument('other')
1756
+ end
1757
+
1758
+ klass.define_instance_method('strftime') do |method|
1759
+ method.define_argument('format')
1760
+ end
1761
+
1762
+ klass.define_instance_method('time')
1763
+
1764
+ klass.define_instance_method('time_zone')
1765
+
1766
+ klass.define_instance_method('to_a')
1767
+
1768
+ klass.define_instance_method('to_date')
1769
+
1770
+ klass.define_instance_method('to_datetime')
1771
+
1772
+ klass.define_instance_method('to_f')
1773
+
1774
+ klass.define_instance_method('to_formatted_s') do |method|
1775
+ method.define_optional_argument('format')
1776
+ end
1777
+
1778
+ klass.define_instance_method('to_i')
1779
+
1780
+ klass.define_instance_method('to_r')
1781
+
1782
+ klass.define_instance_method('to_s') do |method|
1783
+ method.define_optional_argument('format')
1784
+ end
1785
+
1786
+ klass.define_instance_method('to_time')
1787
+
1788
+ klass.define_instance_method('today?')
1789
+
1790
+ klass.define_instance_method('tv_sec')
1791
+
1792
+ klass.define_instance_method('usec')
1793
+
1794
+ klass.define_instance_method('utc')
1795
+
1796
+ klass.define_instance_method('utc?')
1797
+
1798
+ klass.define_instance_method('utc_offset')
1799
+
1800
+ klass.define_instance_method('wday')
1801
+
1802
+ klass.define_instance_method('xmlschema') do |method|
1803
+ method.define_optional_argument('fraction_digits')
1804
+ end
1805
+
1806
+ klass.define_instance_method('yday')
1807
+
1808
+ klass.define_instance_method('year')
1809
+
1810
+ klass.define_instance_method('zone')
1811
+ end
1812
+
1813
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::TimeZone') do |klass|
1814
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1815
+
1816
+ klass.define_method('[]') do |method|
1817
+ method.define_argument('arg')
1818
+ end
1819
+
1820
+ klass.define_method('all')
1821
+
1822
+ klass.define_method('create') do |method|
1823
+ method.define_rest_argument('args')
1824
+ end
1825
+
1826
+ klass.define_method('find_tzinfo') do |method|
1827
+ method.define_argument('name')
1828
+ end
1829
+
1830
+ klass.define_method('new') do |method|
1831
+ method.define_argument('name')
1832
+ end
1833
+
1834
+ klass.define_method('require_tzinfo')
1835
+
1836
+ klass.define_method('seconds_to_utc_offset') do |method|
1837
+ method.define_argument('seconds')
1838
+ method.define_optional_argument('colon')
1839
+ end
1840
+
1841
+ klass.define_method('us_zones')
1842
+
1843
+ klass.define_method('zones_map')
1844
+
1845
+ klass.define_instance_method('<=>') do |method|
1846
+ method.define_argument('zone')
1847
+ end
1848
+
1849
+ klass.define_instance_method('=~') do |method|
1850
+ method.define_argument('re')
1851
+ end
1852
+
1853
+ klass.define_instance_method('at') do |method|
1854
+ method.define_argument('secs')
1855
+ end
1856
+
1857
+ klass.define_instance_method('formatted_offset') do |method|
1858
+ method.define_optional_argument('colon')
1859
+ method.define_optional_argument('alternate_utc_string')
1860
+ end
1861
+
1862
+ klass.define_instance_method('local') do |method|
1863
+ method.define_rest_argument('args')
1864
+ end
1865
+
1866
+ klass.define_instance_method('local_to_utc') do |method|
1867
+ method.define_argument('time')
1868
+ method.define_optional_argument('dst')
1869
+ end
1870
+
1871
+ klass.define_instance_method('name')
1872
+
1873
+ klass.define_instance_method('now')
1874
+
1875
+ klass.define_instance_method('parse') do |method|
1876
+ method.define_argument('str')
1877
+ method.define_optional_argument('now')
1878
+ end
1879
+
1880
+ klass.define_instance_method('period_for_local') do |method|
1881
+ method.define_argument('time')
1882
+ method.define_optional_argument('dst')
1883
+ end
1884
+
1885
+ klass.define_instance_method('period_for_utc') do |method|
1886
+ method.define_argument('time')
1887
+ end
1888
+
1889
+ klass.define_instance_method('to_s')
1890
+
1891
+ klass.define_instance_method('today')
1892
+
1893
+ klass.define_instance_method('tzinfo')
1894
+
1895
+ klass.define_instance_method('utc_offset')
1896
+
1897
+ klass.define_instance_method('utc_to_local') do |method|
1898
+ method.define_argument('time')
1899
+ end
1900
+ end
1901
+
1902
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::VERSION') do |klass|
1903
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1904
+ end
1905
+
1906
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::XMLConverter') do |klass|
1907
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1908
+
1909
+ klass.define_instance_method('to_h')
1910
+ end
1911
+
1912
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::XmlMini') do |klass|
1913
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1914
+
1915
+ klass.define_instance_method('_dasherize') do |method|
1916
+ method.define_argument('key')
1917
+ end
1918
+
1919
+ klass.define_instance_method('_parse_binary') do |method|
1920
+ method.define_argument('bin')
1921
+ method.define_argument('entity')
1922
+ end
1923
+
1924
+ klass.define_instance_method('_parse_file') do |method|
1925
+ method.define_argument('file')
1926
+ method.define_argument('entity')
1927
+ end
1928
+
1929
+ klass.define_instance_method('backend')
1930
+
1931
+ klass.define_instance_method('backend=') do |method|
1932
+ method.define_argument('name')
1933
+ end
1934
+
1935
+ klass.define_instance_method('parse') do |method|
1936
+ method.define_rest_argument('args')
1937
+ method.define_block_argument('block')
1938
+ end
1939
+
1940
+ klass.define_instance_method('rename_key') do |method|
1941
+ method.define_argument('key')
1942
+ method.define_optional_argument('options')
1943
+ end
1944
+
1945
+ klass.define_instance_method('to_tag') do |method|
1946
+ method.define_argument('key')
1947
+ method.define_argument('value')
1948
+ method.define_argument('options')
1949
+ end
1950
+
1951
+ klass.define_instance_method('with_backend') do |method|
1952
+ method.define_argument('name')
1953
+ end
1954
+ end
1955
+
1956
+ RubyLint::VirtualMachine.global_scope.define_constant('ActiveSupport::XmlMini_REXML') do |klass|
1957
+ klass.inherits(RubyLint::VirtualMachine.constant_proxy('Object'))
1958
+
1959
+ klass.define_instance_method('parse') do |method|
1960
+ method.define_argument('data')
1961
+ end
1962
+ end
1963
+