sorbet-rails 0.5.1 → 0.5.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (419) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -10
  3. data/.travis.yml +0 -2
  4. data/Gemfile +2 -2
  5. data/README.md +2 -1
  6. data/Rakefile +4 -15
  7. data/lib/sorbet-rails/gem_plugins/kaminari_plugin.rb +3 -4
  8. data/lib/sorbet-rails/model_plugins/active_record_enum.rb +0 -8
  9. data/lib/sorbet-rails/model_plugins/active_record_finder_methods.rb +3 -0
  10. data/lib/sorbet-rails/model_plugins/active_record_named_scope.rb +4 -3
  11. data/lib/sorbet-rails/model_plugins/active_record_querying.rb +6 -7
  12. data/lib/sorbet-rails/model_plugins/active_relation_where_not.rb +2 -2
  13. data/lib/sorbet-rails/model_plugins/custom_finder_methods.rb +2 -5
  14. data/lib/sorbet-rails/model_plugins/enumerable_collections.rb +15 -0
  15. data/lib/sorbet-rails/model_plugins/plugins.rb +1 -1
  16. data/lib/sorbet-rails/model_rbi_formatter.rb +11 -13
  17. data/lib/sorbet-rails/model_utils.rb +49 -2
  18. data/lib/sorbet-rails/railtie.rb +16 -1
  19. data/lib/sorbet-rails/routes_rbi_formatter.rb +48 -34
  20. data/sorbet-rails.gemspec +1 -1
  21. data/spec/bin/run_all_specs.sh +0 -2
  22. data/spec/bin/run_spec.sh +1 -5
  23. data/spec/generators/rails-template.rb +24 -17
  24. data/spec/generators/sorbet_test_cases.rb +78 -40
  25. data/spec/rails_helper.rb +1 -1
  26. data/spec/sorbet_spec.rb +16 -14
  27. data/spec/support/v4.2/Gemfile.lock +6 -6
  28. data/spec/support/v4.2/app/models/application_record.rb +1 -2
  29. data/spec/support/v4.2/app/models/spell_book.rb +6 -0
  30. data/spec/support/v4.2/app/models/wizard.rb +2 -0
  31. data/spec/support/v4.2/db/migrate/20190620000003_create_spell_books.rb +1 -0
  32. data/spec/support/v4.2/db/schema.rb +1 -0
  33. data/spec/support/v4.2/sorbet_test_cases.rb +78 -40
  34. data/spec/support/v5.0/Gemfile.lock +6 -6
  35. data/spec/support/v5.0/app/models/application_record.rb +1 -2
  36. data/spec/support/v5.0/app/models/spell_book.rb +7 -1
  37. data/spec/support/v5.0/app/models/wizard.rb +2 -0
  38. data/spec/support/v5.0/config/initializers/new_framework_defaults.rb +1 -1
  39. data/spec/support/v5.0/db/migrate/20190620000003_create_spell_books.rb +1 -0
  40. data/spec/support/v5.0/db/schema.rb +1 -0
  41. data/spec/support/v5.0/sorbet_test_cases.rb +78 -40
  42. data/spec/support/v5.1/Gemfile.lock +6 -6
  43. data/spec/support/v5.1/app/models/application_record.rb +1 -2
  44. data/spec/support/v5.1/app/models/spell_book.rb +7 -1
  45. data/spec/support/v5.1/app/models/wizard.rb +2 -0
  46. data/spec/support/v5.1/db/migrate/20190620000003_create_spell_books.rb +1 -0
  47. data/spec/support/v5.1/db/schema.rb +1 -0
  48. data/spec/support/v5.1/sorbet_test_cases.rb +78 -40
  49. data/spec/support/v5.2/Gemfile +1 -1
  50. data/spec/support/v5.2/Gemfile.lock +7 -7
  51. data/spec/support/v5.2/app/models/application_record.rb +1 -2
  52. data/spec/support/v5.2/app/models/spell_book.rb +7 -1
  53. data/spec/support/v5.2/app/models/wizard.rb +2 -0
  54. data/spec/support/v5.2/db/migrate/20190620000003_create_spell_books.rb +1 -0
  55. data/spec/support/v5.2/db/schema.rb +1 -0
  56. data/spec/support/v5.2/sorbet_test_cases.rb +78 -40
  57. data/spec/support/v6.0/Gemfile +2 -3
  58. data/spec/support/v6.0/Gemfile.lock +64 -64
  59. data/spec/support/v6.0/app/models/application_record.rb +1 -2
  60. data/spec/support/v6.0/app/models/spell_book.rb +7 -1
  61. data/spec/support/v6.0/app/models/wizard.rb +2 -0
  62. data/spec/support/v6.0/config/puma.rb +3 -0
  63. data/spec/support/v6.0/db/migrate/20190620000003_create_spell_books.rb +1 -0
  64. data/spec/support/v6.0/db/schema.rb +1 -0
  65. data/spec/support/v6.0/sorbet_test_cases.rb +78 -40
  66. data/spec/test_data/v4.2/expected_no_routes.rbi +3 -10
  67. data/spec/test_data/v4.2/expected_potion.rbi +356 -52
  68. data/spec/test_data/v4.2/expected_routes.rbi +10 -4
  69. data/spec/test_data/v4.2/expected_spell_book.rbi +428 -53
  70. data/spec/test_data/v4.2/expected_srb_tc_output.txt +1 -80
  71. data/spec/test_data/v4.2/expected_wand.rbi +347 -19
  72. data/spec/test_data/v4.2/expected_wizard.rbi +356 -16
  73. data/spec/test_data/v4.2/expected_wizard_wo_spellbook.rbi +356 -16
  74. data/spec/test_data/v5.0/expected_internal_metadata.rbi +385 -51
  75. data/spec/test_data/v5.0/expected_no_routes.rbi +3 -10
  76. data/spec/test_data/v5.0/expected_potion.rbi +383 -52
  77. data/spec/test_data/v5.0/expected_routes.rbi +10 -4
  78. data/spec/test_data/v5.0/expected_schema_migration.rbi +385 -51
  79. data/spec/test_data/v5.0/expected_spell_book.rbi +455 -53
  80. data/spec/test_data/v5.0/expected_srb_tc_output.txt +1 -98
  81. data/spec/test_data/v5.0/expected_wand.rbi +374 -19
  82. data/spec/test_data/v5.0/expected_wizard.rbi +383 -16
  83. data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +383 -16
  84. data/spec/test_data/v5.1/expected_internal_metadata.rbi +403 -51
  85. data/spec/test_data/v5.1/expected_no_routes.rbi +3 -10
  86. data/spec/test_data/v5.1/expected_potion.rbi +401 -52
  87. data/spec/test_data/v5.1/expected_routes.rbi +10 -4
  88. data/spec/test_data/v5.1/expected_schema_migration.rbi +403 -51
  89. data/spec/test_data/v5.1/expected_spell_book.rbi +473 -53
  90. data/spec/test_data/v5.1/expected_srb_tc_output.txt +1 -80
  91. data/spec/test_data/v5.1/expected_wand.rbi +392 -19
  92. data/spec/test_data/v5.1/expected_wizard.rbi +401 -16
  93. data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +401 -16
  94. data/spec/test_data/v5.2-no-sorbet/expected_attachment.rbi +403 -51
  95. data/spec/test_data/v5.2-no-sorbet/expected_blob.rbi +421 -51
  96. data/spec/test_data/v5.2-no-sorbet/expected_internal_metadata.rbi +403 -51
  97. data/spec/test_data/v5.2-no-sorbet/expected_no_routes.rbi +3 -10
  98. data/spec/test_data/v5.2-no-sorbet/expected_potion.rbi +401 -52
  99. data/spec/test_data/v5.2-no-sorbet/expected_routes.rbi +15 -4
  100. data/spec/test_data/v5.2-no-sorbet/expected_schema_migration.rbi +403 -51
  101. data/spec/test_data/v5.2-no-sorbet/expected_spell_book.rbi +473 -53
  102. data/spec/test_data/v5.2-no-sorbet/expected_srb_tc_output.txt +1 -80
  103. data/spec/test_data/v5.2-no-sorbet/expected_wand.rbi +392 -19
  104. data/spec/test_data/v5.2-no-sorbet/expected_wizard.rbi +401 -16
  105. data/spec/test_data/v5.2-no-sorbet/expected_wizard_wo_spellbook.rbi +401 -16
  106. data/spec/test_data/v5.2/expected_attachment.rbi +403 -51
  107. data/spec/test_data/v5.2/expected_blob.rbi +421 -51
  108. data/spec/test_data/v5.2/expected_internal_metadata.rbi +403 -51
  109. data/spec/test_data/v5.2/expected_no_routes.rbi +3 -10
  110. data/spec/test_data/v5.2/expected_potion.rbi +401 -52
  111. data/spec/test_data/v5.2/expected_routes.rbi +15 -4
  112. data/spec/test_data/v5.2/expected_schema_migration.rbi +403 -51
  113. data/spec/test_data/v5.2/expected_spell_book.rbi +473 -53
  114. data/spec/test_data/v5.2/expected_srb_tc_output.txt +1 -80
  115. data/spec/test_data/v5.2/expected_wand.rbi +392 -19
  116. data/spec/test_data/v5.2/expected_wizard.rbi +401 -16
  117. data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +401 -16
  118. data/spec/test_data/v6.0/expected_attachment.rbi +439 -51
  119. data/spec/test_data/v6.0/expected_blob.rbi +457 -51
  120. data/spec/test_data/v6.0/expected_internal_metadata.rbi +439 -51
  121. data/spec/test_data/v6.0/expected_no_routes.rbi +3 -10
  122. data/spec/test_data/v6.0/expected_potion.rbi +437 -52
  123. data/spec/test_data/v6.0/expected_routes.rbi +25 -4
  124. data/spec/test_data/v6.0/expected_schema_migration.rbi +439 -51
  125. data/spec/test_data/v6.0/expected_spell_book.rbi +545 -53
  126. data/spec/test_data/v6.0/expected_srb_tc_output.txt +1 -80
  127. data/spec/test_data/v6.0/expected_wand.rbi +464 -19
  128. data/spec/test_data/v6.0/expected_wizard.rbi +473 -16
  129. data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +473 -16
  130. metadata +29 -581
  131. data/spec/support/v4.2/sorbet/config +0 -2
  132. data/spec/support/v4.2/sorbet/rbi/gems/actionmailer.rbi +0 -267
  133. data/spec/support/v4.2/sorbet/rbi/gems/actionpack.rbi +0 -2883
  134. data/spec/support/v4.2/sorbet/rbi/gems/actionview.rbi +0 -978
  135. data/spec/support/v4.2/sorbet/rbi/gems/activejob.rbi +0 -19
  136. data/spec/support/v4.2/sorbet/rbi/gems/activemodel.rbi +0 -335
  137. data/spec/support/v4.2/sorbet/rbi/gems/activerecord.rbi +0 -3385
  138. data/spec/support/v4.2/sorbet/rbi/gems/activesupport.rbi +0 -1892
  139. data/spec/support/v4.2/sorbet/rbi/gems/arel.rbi +0 -1109
  140. data/spec/support/v4.2/sorbet/rbi/gems/byebug.rbi +0 -1039
  141. data/spec/support/v4.2/sorbet/rbi/gems/concurrent-ruby.rbi +0 -218
  142. data/spec/support/v4.2/sorbet/rbi/gems/crass.rbi +0 -92
  143. data/spec/support/v4.2/sorbet/rbi/gems/erubis.rbi +0 -265
  144. data/spec/support/v4.2/sorbet/rbi/gems/globalid.rbi +0 -98
  145. data/spec/support/v4.2/sorbet/rbi/gems/i18n.rbi +0 -186
  146. data/spec/support/v4.2/sorbet/rbi/gems/jbuilder.rbi +0 -99
  147. data/spec/support/v4.2/sorbet/rbi/gems/loofah.rbi +0 -129
  148. data/spec/support/v4.2/sorbet/rbi/gems/mail.rbi +0 -1091
  149. data/spec/support/v4.2/sorbet/rbi/gems/mini_mime.rbi +0 -51
  150. data/spec/support/v4.2/sorbet/rbi/gems/minitest.rbi +0 -276
  151. data/spec/support/v4.2/sorbet/rbi/gems/nokogiri.rbi +0 -1010
  152. data/spec/support/v4.2/sorbet/rbi/gems/parlour.rbi +0 -214
  153. data/spec/support/v4.2/sorbet/rbi/gems/rack-test.rbi +0 -145
  154. data/spec/support/v4.2/sorbet/rbi/gems/rack.rbi +0 -490
  155. data/spec/support/v4.2/sorbet/rbi/gems/rails-deprecated_sanitizer.rbi +0 -13
  156. data/spec/support/v4.2/sorbet/rbi/gems/rails-dom-testing.rbi +0 -76
  157. data/spec/support/v4.2/sorbet/rbi/gems/rails-html-sanitizer.rbi +0 -91
  158. data/spec/support/v4.2/sorbet/rbi/gems/railties.rbi +0 -617
  159. data/spec/support/v4.2/sorbet/rbi/gems/sqlite3.rbi +0 -345
  160. data/spec/support/v4.2/sorbet/rbi/gems/thor.rbi +0 -401
  161. data/spec/support/v4.2/sorbet/rbi/gems/thread_safe.rbi +0 -81
  162. data/spec/support/v4.2/sorbet/rbi/gems/tzinfo.rbi +0 -407
  163. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +0 -13
  164. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +0 -468
  165. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +0 -422
  166. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +0 -1263
  167. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +0 -458
  168. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +0 -8575
  169. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +0 -99
  170. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +0 -22
  171. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +0 -111
  172. data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +0 -543
  173. data/spec/support/v4.2/sorbet/rbi/todo.rbi +0 -66
  174. data/spec/support/v5.0/sorbet/config +0 -2
  175. data/spec/support/v5.0/sorbet/rbi/gems/actionmailer.rbi +0 -331
  176. data/spec/support/v5.0/sorbet/rbi/gems/actionpack.rbi +0 -2987
  177. data/spec/support/v5.0/sorbet/rbi/gems/actionview.rbi +0 -1092
  178. data/spec/support/v5.0/sorbet/rbi/gems/activejob.rbi +0 -230
  179. data/spec/support/v5.0/sorbet/rbi/gems/activemodel.rbi +0 -562
  180. data/spec/support/v5.0/sorbet/rbi/gems/activerecord.rbi +0 -3684
  181. data/spec/support/v5.0/sorbet/rbi/gems/activesupport.rbi +0 -1943
  182. data/spec/support/v5.0/sorbet/rbi/gems/arel.rbi +0 -1222
  183. data/spec/support/v5.0/sorbet/rbi/gems/byebug.rbi +0 -1039
  184. data/spec/support/v5.0/sorbet/rbi/gems/concurrent-ruby.rbi +0 -1587
  185. data/spec/support/v5.0/sorbet/rbi/gems/crass.rbi +0 -92
  186. data/spec/support/v5.0/sorbet/rbi/gems/erubis.rbi +0 -265
  187. data/spec/support/v5.0/sorbet/rbi/gems/globalid.rbi +0 -98
  188. data/spec/support/v5.0/sorbet/rbi/gems/i18n.rbi +0 -191
  189. data/spec/support/v5.0/sorbet/rbi/gems/jbuilder.rbi +0 -99
  190. data/spec/support/v5.0/sorbet/rbi/gems/loofah.rbi +0 -129
  191. data/spec/support/v5.0/sorbet/rbi/gems/mail.rbi +0 -1091
  192. data/spec/support/v5.0/sorbet/rbi/gems/mini_mime.rbi +0 -51
  193. data/spec/support/v5.0/sorbet/rbi/gems/nokogiri.rbi +0 -1010
  194. data/spec/support/v5.0/sorbet/rbi/gems/parlour.rbi +0 -214
  195. data/spec/support/v5.0/sorbet/rbi/gems/puma.rbi +0 -570
  196. data/spec/support/v5.0/sorbet/rbi/gems/rack-test.rbi +0 -145
  197. data/spec/support/v5.0/sorbet/rbi/gems/rack.rbi +0 -489
  198. data/spec/support/v5.0/sorbet/rbi/gems/rails-html-sanitizer.rbi +0 -91
  199. data/spec/support/v5.0/sorbet/rbi/gems/railties.rbi +0 -472
  200. data/spec/support/v5.0/sorbet/rbi/gems/sqlite3.rbi +0 -345
  201. data/spec/support/v5.0/sorbet/rbi/gems/thread_safe.rbi +0 -81
  202. data/spec/support/v5.0/sorbet/rbi/gems/tzinfo.rbi +0 -407
  203. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +0 -13
  204. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +0 -468
  205. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +0 -422
  206. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +0 -1263
  207. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +0 -458
  208. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +0 -8575
  209. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +0 -99
  210. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +0 -22
  211. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +0 -111
  212. data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +0 -543
  213. data/spec/support/v5.0/sorbet/rbi/todo.rbi +0 -68
  214. data/spec/support/v5.1/sorbet/config +0 -2
  215. data/spec/support/v5.1/sorbet/rbi/gems/actionmailer.rbi +0 -382
  216. data/spec/support/v5.1/sorbet/rbi/gems/actionpack.rbi +0 -3027
  217. data/spec/support/v5.1/sorbet/rbi/gems/actionview.rbi +0 -1114
  218. data/spec/support/v5.1/sorbet/rbi/gems/activejob.rbi +0 -238
  219. data/spec/support/v5.1/sorbet/rbi/gems/activemodel.rbi +0 -547
  220. data/spec/support/v5.1/sorbet/rbi/gems/activerecord.rbi +0 -3943
  221. data/spec/support/v5.1/sorbet/rbi/gems/activesupport.rbi +0 -2042
  222. data/spec/support/v5.1/sorbet/rbi/gems/arel.rbi +0 -1220
  223. data/spec/support/v5.1/sorbet/rbi/gems/bindex.rbi +0 -36
  224. data/spec/support/v5.1/sorbet/rbi/gems/byebug.rbi +0 -1039
  225. data/spec/support/v5.1/sorbet/rbi/gems/concurrent-ruby.rbi +0 -1587
  226. data/spec/support/v5.1/sorbet/rbi/gems/crass.rbi +0 -92
  227. data/spec/support/v5.1/sorbet/rbi/gems/erubi.rbi +0 -26
  228. data/spec/support/v5.1/sorbet/rbi/gems/globalid.rbi +0 -98
  229. data/spec/support/v5.1/sorbet/rbi/gems/i18n.rbi +0 -191
  230. data/spec/support/v5.1/sorbet/rbi/gems/jbuilder.rbi +0 -99
  231. data/spec/support/v5.1/sorbet/rbi/gems/loofah.rbi +0 -129
  232. data/spec/support/v5.1/sorbet/rbi/gems/mail.rbi +0 -1091
  233. data/spec/support/v5.1/sorbet/rbi/gems/mini_mime.rbi +0 -51
  234. data/spec/support/v5.1/sorbet/rbi/gems/nokogiri.rbi +0 -1010
  235. data/spec/support/v5.1/sorbet/rbi/gems/parlour.rbi +0 -214
  236. data/spec/support/v5.1/sorbet/rbi/gems/puma.rbi +0 -570
  237. data/spec/support/v5.1/sorbet/rbi/gems/rack-test.rbi +0 -161
  238. data/spec/support/v5.1/sorbet/rbi/gems/rack.rbi +0 -489
  239. data/spec/support/v5.1/sorbet/rbi/gems/rails-html-sanitizer.rbi +0 -91
  240. data/spec/support/v5.1/sorbet/rbi/gems/railties.rbi +0 -498
  241. data/spec/support/v5.1/sorbet/rbi/gems/sqlite3.rbi +0 -353
  242. data/spec/support/v5.1/sorbet/rbi/gems/thread_safe.rbi +0 -81
  243. data/spec/support/v5.1/sorbet/rbi/gems/tzinfo.rbi +0 -407
  244. data/spec/support/v5.1/sorbet/rbi/gems/web-console.rbi +0 -73
  245. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +0 -13
  246. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +0 -468
  247. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +0 -422
  248. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +0 -1263
  249. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +0 -458
  250. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +0 -8575
  251. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +0 -99
  252. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +0 -22
  253. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +0 -111
  254. data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +0 -543
  255. data/spec/support/v5.1/sorbet/rbi/todo.rbi +0 -68
  256. data/spec/support/v5.2-no-sorbet/.gitignore +0 -31
  257. data/spec/support/v5.2-no-sorbet/Gemfile +0 -39
  258. data/spec/support/v5.2-no-sorbet/Gemfile.lock +0 -156
  259. data/spec/support/v5.2-no-sorbet/README.md +0 -24
  260. data/spec/support/v5.2-no-sorbet/Rakefile +0 -6
  261. data/spec/support/v5.2-no-sorbet/app/assets/config/manifest.js +0 -2
  262. data/spec/support/v5.2-no-sorbet/app/assets/images/.keep +0 -0
  263. data/spec/support/v5.2-no-sorbet/app/assets/stylesheets/application.css +0 -15
  264. data/spec/support/v5.2-no-sorbet/app/controllers/application_controller.rb +0 -2
  265. data/spec/support/v5.2-no-sorbet/app/controllers/concerns/.keep +0 -0
  266. data/spec/support/v5.2-no-sorbet/app/helpers/application_helper.rb +0 -2
  267. data/spec/support/v5.2-no-sorbet/app/helpers/bar_helper.rb +0 -2
  268. data/spec/support/v5.2-no-sorbet/app/helpers/baz_helper.rb +0 -2
  269. data/spec/support/v5.2-no-sorbet/app/helpers/foo_helper.rb +0 -2
  270. data/spec/support/v5.2-no-sorbet/app/jobs/application_job.rb +0 -2
  271. data/spec/support/v5.2-no-sorbet/app/mailers/application_mailer.rb +0 -4
  272. data/spec/support/v5.2-no-sorbet/app/models/application_record.rb +0 -4
  273. data/spec/support/v5.2-no-sorbet/app/models/concerns/.keep +0 -0
  274. data/spec/support/v5.2-no-sorbet/app/models/concerns/mythical.rb +0 -10
  275. data/spec/support/v5.2-no-sorbet/app/models/potion.rb +0 -4
  276. data/spec/support/v5.2-no-sorbet/app/models/spell_book.rb +0 -4
  277. data/spec/support/v5.2-no-sorbet/app/models/wand.rb +0 -16
  278. data/spec/support/v5.2-no-sorbet/app/models/wizard.rb +0 -13
  279. data/spec/support/v5.2-no-sorbet/app/views/layouts/application.html.erb +0 -14
  280. data/spec/support/v5.2-no-sorbet/app/views/layouts/mailer.html.erb +0 -13
  281. data/spec/support/v5.2-no-sorbet/app/views/layouts/mailer.text.erb +0 -1
  282. data/spec/support/v5.2-no-sorbet/bin/bundle +0 -3
  283. data/spec/support/v5.2-no-sorbet/bin/rails +0 -4
  284. data/spec/support/v5.2-no-sorbet/bin/rake +0 -4
  285. data/spec/support/v5.2-no-sorbet/bin/setup +0 -36
  286. data/spec/support/v5.2-no-sorbet/bin/update +0 -31
  287. data/spec/support/v5.2-no-sorbet/bin/yarn +0 -11
  288. data/spec/support/v5.2-no-sorbet/config.ru +0 -5
  289. data/spec/support/v5.2-no-sorbet/config/application.rb +0 -33
  290. data/spec/support/v5.2-no-sorbet/config/boot.rb +0 -3
  291. data/spec/support/v5.2-no-sorbet/config/database.yml +0 -25
  292. data/spec/support/v5.2-no-sorbet/config/environment.rb +0 -5
  293. data/spec/support/v5.2-no-sorbet/config/environments/development.rb +0 -54
  294. data/spec/support/v5.2-no-sorbet/config/environments/production.rb +0 -80
  295. data/spec/support/v5.2-no-sorbet/config/environments/test.rb +0 -46
  296. data/spec/support/v5.2-no-sorbet/config/initializers/application_controller_renderer.rb +0 -8
  297. data/spec/support/v5.2-no-sorbet/config/initializers/backtrace_silencers.rb +0 -7
  298. data/spec/support/v5.2-no-sorbet/config/initializers/content_security_policy.rb +0 -25
  299. data/spec/support/v5.2-no-sorbet/config/initializers/cookies_serializer.rb +0 -5
  300. data/spec/support/v5.2-no-sorbet/config/initializers/filter_parameter_logging.rb +0 -4
  301. data/spec/support/v5.2-no-sorbet/config/initializers/inflections.rb +0 -16
  302. data/spec/support/v5.2-no-sorbet/config/initializers/mime_types.rb +0 -4
  303. data/spec/support/v5.2-no-sorbet/config/initializers/sorbet_rails.rb +0 -3
  304. data/spec/support/v5.2-no-sorbet/config/initializers/wrap_parameters.rb +0 -14
  305. data/spec/support/v5.2-no-sorbet/config/locales/en.yml +0 -33
  306. data/spec/support/v5.2-no-sorbet/config/puma.rb +0 -34
  307. data/spec/support/v5.2-no-sorbet/config/routes.rb +0 -4
  308. data/spec/support/v5.2-no-sorbet/config/storage.yml +0 -34
  309. data/spec/support/v5.2-no-sorbet/db/migrate/20190620000001_create_wizards.rb +0 -12
  310. data/spec/support/v5.2-no-sorbet/db/migrate/20190620000002_create_wands.rb +0 -11
  311. data/spec/support/v5.2-no-sorbet/db/migrate/20190620000003_create_spell_books.rb +0 -8
  312. data/spec/support/v5.2-no-sorbet/db/migrate/20190620000004_add_more_column_types_to_wands.rb +0 -15
  313. data/spec/support/v5.2-no-sorbet/db/schema.rb +0 -47
  314. data/spec/support/v5.2-no-sorbet/db/seeds.rb +0 -7
  315. data/spec/support/v5.2-no-sorbet/lib/assets/.keep +0 -0
  316. data/spec/support/v5.2-no-sorbet/lib/mythical_rbi_plugin.rb +0 -16
  317. data/spec/support/v5.2-no-sorbet/lib/tasks/.keep +0 -0
  318. data/spec/support/v5.2-no-sorbet/log/.keep +0 -0
  319. data/spec/support/v5.2-no-sorbet/package.json +0 -5
  320. data/spec/support/v5.2-no-sorbet/sorbet_test_cases.rb +0 -123
  321. data/spec/support/v5.2-no-sorbet/storage/.keep +0 -0
  322. data/spec/support/v5.2-no-sorbet/tmp/.keep +0 -0
  323. data/spec/support/v5.2-no-sorbet/typed-override.yaml +0 -2
  324. data/spec/support/v5.2-no-sorbet/vendor/.keep +0 -0
  325. data/spec/support/v5.2/sorbet/config +0 -2
  326. data/spec/support/v5.2/sorbet/rbi/gems/actionmailer.rbi +0 -391
  327. data/spec/support/v5.2/sorbet/rbi/gems/actionpack.rbi +0 -3109
  328. data/spec/support/v5.2/sorbet/rbi/gems/actionview.rbi +0 -1128
  329. data/spec/support/v5.2/sorbet/rbi/gems/activejob.rbi +0 -244
  330. data/spec/support/v5.2/sorbet/rbi/gems/activemodel.rbi +0 -741
  331. data/spec/support/v5.2/sorbet/rbi/gems/activerecord.rbi +0 -3827
  332. data/spec/support/v5.2/sorbet/rbi/gems/activestorage.rbi +0 -173
  333. data/spec/support/v5.2/sorbet/rbi/gems/activesupport.rbi +0 -2167
  334. data/spec/support/v5.2/sorbet/rbi/gems/arel.rbi +0 -1252
  335. data/spec/support/v5.2/sorbet/rbi/gems/bindex.rbi +0 -36
  336. data/spec/support/v5.2/sorbet/rbi/gems/byebug.rbi +0 -1039
  337. data/spec/support/v5.2/sorbet/rbi/gems/concurrent-ruby.rbi +0 -1587
  338. data/spec/support/v5.2/sorbet/rbi/gems/crass.rbi +0 -92
  339. data/spec/support/v5.2/sorbet/rbi/gems/erubi.rbi +0 -26
  340. data/spec/support/v5.2/sorbet/rbi/gems/globalid.rbi +0 -98
  341. data/spec/support/v5.2/sorbet/rbi/gems/i18n.rbi +0 -191
  342. data/spec/support/v5.2/sorbet/rbi/gems/jbuilder.rbi +0 -99
  343. data/spec/support/v5.2/sorbet/rbi/gems/loofah.rbi +0 -129
  344. data/spec/support/v5.2/sorbet/rbi/gems/mail.rbi +0 -1091
  345. data/spec/support/v5.2/sorbet/rbi/gems/marcel.rbi +0 -12
  346. data/spec/support/v5.2/sorbet/rbi/gems/mini_mime.rbi +0 -51
  347. data/spec/support/v5.2/sorbet/rbi/gems/nokogiri.rbi +0 -1010
  348. data/spec/support/v5.2/sorbet/rbi/gems/parlour.rbi +0 -214
  349. data/spec/support/v5.2/sorbet/rbi/gems/puma.rbi +0 -570
  350. data/spec/support/v5.2/sorbet/rbi/gems/rack-test.rbi +0 -161
  351. data/spec/support/v5.2/sorbet/rbi/gems/rack.rbi +0 -493
  352. data/spec/support/v5.2/sorbet/rbi/gems/rails-html-sanitizer.rbi +0 -91
  353. data/spec/support/v5.2/sorbet/rbi/gems/railties.rbi +0 -508
  354. data/spec/support/v5.2/sorbet/rbi/gems/sqlite3.rbi +0 -353
  355. data/spec/support/v5.2/sorbet/rbi/gems/thread_safe.rbi +0 -81
  356. data/spec/support/v5.2/sorbet/rbi/gems/tzinfo.rbi +0 -407
  357. data/spec/support/v5.2/sorbet/rbi/gems/web-console.rbi +0 -73
  358. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +0 -13
  359. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +0 -468
  360. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +0 -422
  361. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activerecord/>=5.2/activerecord.rbi +0 -17
  362. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +0 -1263
  363. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activerecord/~>5.2.0/activerecord.rbi +0 -10
  364. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +0 -458
  365. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +0 -8575
  366. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +0 -99
  367. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +0 -22
  368. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +0 -111
  369. data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +0 -543
  370. data/spec/support/v5.2/sorbet/rbi/todo.rbi +0 -68
  371. data/spec/support/v6.0/sorbet/config +0 -2
  372. data/spec/support/v6.0/sorbet/rbi/gems/actionmailbox.rbi +0 -56
  373. data/spec/support/v6.0/sorbet/rbi/gems/actionmailer.rbi +0 -20
  374. data/spec/support/v6.0/sorbet/rbi/gems/actionpack.rbi +0 -2154
  375. data/spec/support/v6.0/sorbet/rbi/gems/actiontext.rbi +0 -32
  376. data/spec/support/v6.0/sorbet/rbi/gems/actionview.rbi +0 -1135
  377. data/spec/support/v6.0/sorbet/rbi/gems/activejob.rbi +0 -80
  378. data/spec/support/v6.0/sorbet/rbi/gems/activemodel.rbi +0 -751
  379. data/spec/support/v6.0/sorbet/rbi/gems/activerecord.rbi +0 -5414
  380. data/spec/support/v6.0/sorbet/rbi/gems/activestorage.rbi +0 -221
  381. data/spec/support/v6.0/sorbet/rbi/gems/activesupport.rbi +0 -2251
  382. data/spec/support/v6.0/sorbet/rbi/gems/bindex.rbi +0 -36
  383. data/spec/support/v6.0/sorbet/rbi/gems/byebug.rbi +0 -1039
  384. data/spec/support/v6.0/sorbet/rbi/gems/concurrent-ruby.rbi +0 -1587
  385. data/spec/support/v6.0/sorbet/rbi/gems/crass.rbi +0 -92
  386. data/spec/support/v6.0/sorbet/rbi/gems/erubi.rbi +0 -26
  387. data/spec/support/v6.0/sorbet/rbi/gems/globalid.rbi +0 -98
  388. data/spec/support/v6.0/sorbet/rbi/gems/i18n.rbi +0 -191
  389. data/spec/support/v6.0/sorbet/rbi/gems/jbuilder.rbi +0 -99
  390. data/spec/support/v6.0/sorbet/rbi/gems/loofah.rbi +0 -129
  391. data/spec/support/v6.0/sorbet/rbi/gems/mail.rbi +0 -1542
  392. data/spec/support/v6.0/sorbet/rbi/gems/marcel.rbi +0 -12
  393. data/spec/support/v6.0/sorbet/rbi/gems/mini_mime.rbi +0 -51
  394. data/spec/support/v6.0/sorbet/rbi/gems/nokogiri.rbi +0 -1010
  395. data/spec/support/v6.0/sorbet/rbi/gems/parlour.rbi +0 -214
  396. data/spec/support/v6.0/sorbet/rbi/gems/puma.rbi +0 -570
  397. data/spec/support/v6.0/sorbet/rbi/gems/rack-test.rbi +0 -161
  398. data/spec/support/v6.0/sorbet/rbi/gems/rack.rbi +0 -481
  399. data/spec/support/v6.0/sorbet/rbi/gems/rails-html-sanitizer.rbi +0 -91
  400. data/spec/support/v6.0/sorbet/rbi/gems/railties.rbi +0 -548
  401. data/spec/support/v6.0/sorbet/rbi/gems/sqlite3.rbi +0 -353
  402. data/spec/support/v6.0/sorbet/rbi/gems/thread_safe.rbi +0 -81
  403. data/spec/support/v6.0/sorbet/rbi/gems/tzinfo.rbi +0 -407
  404. data/spec/support/v6.0/sorbet/rbi/gems/web-console.rbi +0 -72
  405. data/spec/support/v6.0/sorbet/rbi/gems/zeitwerk.rbi +0 -127
  406. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +0 -13
  407. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +0 -468
  408. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +0 -422
  409. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activerecord/>=5.2/activerecord.rbi +0 -17
  410. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +0 -1263
  411. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activerecord/~>6.0.0.rc1/activerecord.rbi +0 -10
  412. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activesupport/>=6.0.0.rc1/activesupport.rbi +0 -23
  413. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +0 -458
  414. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +0 -8575
  415. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +0 -99
  416. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +0 -22
  417. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +0 -111
  418. data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +0 -543
  419. data/spec/support/v6.0/sorbet/rbi/todo.rbi +0 -70
@@ -139,26 +139,99 @@ class Wizard < ApplicationRecord
139
139
  include Wizard::EnumInstanceMethods
140
140
  include Wizard::GeneratedAttributeMethods
141
141
  include Wizard::GeneratedAssociationMethods
142
- extend SorbetRails::CustomFinderMethods
143
142
  extend Wizard::CustomFinderMethods
144
143
  extend T::Sig
145
144
  extend T::Generic
146
- extend Wizard::ModelRelationShared
147
145
 
148
146
  sig { returns(T::Hash[T.any(String, Symbol), Integer]) }
149
147
  def self.houses; end
150
148
 
151
- sig { returns(Wizard::ActiveRecord_Relation) }
152
- def self.Gryffindor; end
149
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
150
+ def self.Gryffindor(*args); end
153
151
 
154
- sig { returns(Wizard::ActiveRecord_Relation) }
155
- def self.Hufflepuff; end
152
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
153
+ def self.Hufflepuff(*args); end
156
154
 
157
- sig { returns(Wizard::ActiveRecord_Relation) }
158
- def self.Ravenclaw; end
155
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
156
+ def self.Ravenclaw(*args); end
157
+
158
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
159
+ def self.Slytherin(*args); end
160
+
161
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
162
+ def self.recent(*args); end
159
163
 
160
164
  sig { returns(Wizard::ActiveRecord_Relation) }
161
- def self.Slytherin; end
165
+ def self.all; end
166
+
167
+ sig { params(block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
168
+ def self.unscoped(&block); end
169
+
170
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
171
+ def self.select(*args, &block); end
172
+
173
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
174
+ def self.order(*args, &block); end
175
+
176
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
177
+ def self.reorder(*args, &block); end
178
+
179
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
180
+ def self.group(*args, &block); end
181
+
182
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
183
+ def self.limit(*args, &block); end
184
+
185
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
186
+ def self.offset(*args, &block); end
187
+
188
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
189
+ def self.joins(*args, &block); end
190
+
191
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
192
+ def self.where(*args, &block); end
193
+
194
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
195
+ def self.rewhere(*args, &block); end
196
+
197
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
198
+ def self.preload(*args, &block); end
199
+
200
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
201
+ def self.eager_load(*args, &block); end
202
+
203
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
204
+ def self.includes(*args, &block); end
205
+
206
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
207
+ def self.from(*args, &block); end
208
+
209
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
210
+ def self.lock(*args, &block); end
211
+
212
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
213
+ def self.readonly(*args, &block); end
214
+
215
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
216
+ def self.having(*args, &block); end
217
+
218
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
219
+ def self.create_with(*args, &block); end
220
+
221
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
222
+ def self.distinct(*args, &block); end
223
+
224
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
225
+ def self.references(*args, &block); end
226
+
227
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
228
+ def self.none(*args, &block); end
229
+
230
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
231
+ def self.unscope(*args, &block); end
232
+
233
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
234
+ def self.except(*args, &block); end
162
235
 
163
236
  sig { params(args: T.untyped).returns(Wizard) }
164
237
  def self.find(*args); end
@@ -221,8 +294,13 @@ class Wizard < ApplicationRecord
221
294
  def self.one?(*args); end
222
295
  end
223
296
 
224
- module Wizard::ModelRelationShared
297
+ class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
298
+ include Wizard::ActiveRelation_WhereNot
299
+ include Wizard::CustomFinderMethods
300
+ include Enumerable
225
301
  extend T::Sig
302
+ extend T::Generic
303
+ Elem = type_member(fixed: Wizard)
226
304
 
227
305
  sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
228
306
  def Gryffindor(*args); end
@@ -310,18 +388,180 @@ module Wizard::ModelRelationShared
310
388
 
311
389
  sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
312
390
  def except(*args, &block); end
391
+
392
+ sig { params(args: T.untyped).returns(Wizard) }
393
+ def find(*args); end
394
+
395
+ sig { params(args: T.untyped).returns(T.nilable(Wizard)) }
396
+ def find_by(*args); end
397
+
398
+ sig { params(args: T.untyped).returns(Wizard) }
399
+ def find_by!(*args); end
400
+
401
+ sig { returns(T.nilable(Wizard)) }
402
+ def first; end
403
+
404
+ sig { returns(Wizard) }
405
+ def first!; end
406
+
407
+ sig { returns(T.nilable(Wizard)) }
408
+ def second; end
409
+
410
+ sig { returns(Wizard) }
411
+ def second!; end
412
+
413
+ sig { returns(T.nilable(Wizard)) }
414
+ def third; end
415
+
416
+ sig { returns(Wizard) }
417
+ def third!; end
418
+
419
+ sig { returns(T.nilable(Wizard)) }
420
+ def third_to_last; end
421
+
422
+ sig { returns(Wizard) }
423
+ def third_to_last!; end
424
+
425
+ sig { returns(T.nilable(Wizard)) }
426
+ def second_to_last; end
427
+
428
+ sig { returns(Wizard) }
429
+ def second_to_last!; end
430
+
431
+ sig { returns(T.nilable(Wizard)) }
432
+ def last; end
433
+
434
+ sig { returns(Wizard) }
435
+ def last!; end
436
+
437
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
438
+ def exists?(conditions = nil); end
439
+
440
+ sig { params(args: T.untyped).returns(T::Boolean) }
441
+ def any?(*args); end
442
+
443
+ sig { params(args: T.untyped).returns(T::Boolean) }
444
+ def many?(*args); end
445
+
446
+ sig { params(args: T.untyped).returns(T::Boolean) }
447
+ def none?(*args); end
448
+
449
+ sig { params(args: T.untyped).returns(T::Boolean) }
450
+ def one?(*args); end
451
+
452
+ sig { implementation.params(block: T.proc.params(e: Wizard).void).void }
453
+ def each(&block); end
454
+
455
+ sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
456
+ def flatten(level); end
457
+
458
+ sig { returns(T::Array[Wizard]) }
459
+ def to_a; end
460
+
461
+ sig do
462
+ type_parameters(:U).params(
463
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
464
+ )
465
+ .returns(T::Array[T.type_parameter(:U)])
466
+ end
467
+ def map(&blk); end
313
468
  end
314
469
 
315
- class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
470
+ class Wizard::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
316
471
  include Wizard::ActiveRelation_WhereNot
317
- include SorbetRails::CustomFinderMethods
318
472
  include Wizard::CustomFinderMethods
319
473
  include Enumerable
320
- include Wizard::ModelRelationShared
321
474
  extend T::Sig
322
475
  extend T::Generic
323
476
  Elem = type_member(fixed: Wizard)
324
477
 
478
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
479
+ def Gryffindor(*args); end
480
+
481
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
482
+ def Hufflepuff(*args); end
483
+
484
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
485
+ def Ravenclaw(*args); end
486
+
487
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
488
+ def Slytherin(*args); end
489
+
490
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
491
+ def recent(*args); end
492
+
493
+ sig { returns(Wizard::ActiveRecord_AssociationRelation) }
494
+ def all; end
495
+
496
+ sig { params(block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
497
+ def unscoped(&block); end
498
+
499
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
500
+ def select(*args, &block); end
501
+
502
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
503
+ def order(*args, &block); end
504
+
505
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
506
+ def reorder(*args, &block); end
507
+
508
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
509
+ def group(*args, &block); end
510
+
511
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
512
+ def limit(*args, &block); end
513
+
514
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
515
+ def offset(*args, &block); end
516
+
517
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
518
+ def joins(*args, &block); end
519
+
520
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
521
+ def where(*args, &block); end
522
+
523
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
524
+ def rewhere(*args, &block); end
525
+
526
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
527
+ def preload(*args, &block); end
528
+
529
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
530
+ def eager_load(*args, &block); end
531
+
532
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
533
+ def includes(*args, &block); end
534
+
535
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
536
+ def from(*args, &block); end
537
+
538
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
539
+ def lock(*args, &block); end
540
+
541
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
542
+ def readonly(*args, &block); end
543
+
544
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
545
+ def having(*args, &block); end
546
+
547
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
548
+ def create_with(*args, &block); end
549
+
550
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
551
+ def distinct(*args, &block); end
552
+
553
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
554
+ def references(*args, &block); end
555
+
556
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
557
+ def none(*args, &block); end
558
+
559
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
560
+ def unscope(*args, &block); end
561
+
562
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
563
+ def except(*args, &block); end
564
+
325
565
  sig { params(args: T.untyped).returns(Wizard) }
326
566
  def find(*args); end
327
567
 
@@ -390,18 +630,110 @@ class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
390
630
 
391
631
  sig { returns(T::Array[Wizard]) }
392
632
  def to_a; end
633
+
634
+ sig do
635
+ type_parameters(:U).params(
636
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
637
+ )
638
+ .returns(T::Array[T.type_parameter(:U)])
639
+ end
640
+ def map(&blk); end
393
641
  end
394
642
 
395
643
  class Wizard::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associations::CollectionProxy
396
- include Wizard::ActiveRelation_WhereNot
397
- include SorbetRails::CustomFinderMethods
398
644
  include Wizard::CustomFinderMethods
399
645
  include Enumerable
400
- include Wizard::ModelRelationShared
401
646
  extend T::Sig
402
647
  extend T::Generic
403
648
  Elem = type_member(fixed: Wizard)
404
649
 
650
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
651
+ def Gryffindor(*args); end
652
+
653
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
654
+ def Hufflepuff(*args); end
655
+
656
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
657
+ def Ravenclaw(*args); end
658
+
659
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
660
+ def Slytherin(*args); end
661
+
662
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
663
+ def recent(*args); end
664
+
665
+ sig { returns(Wizard::ActiveRecord_AssociationRelation) }
666
+ def all; end
667
+
668
+ sig { params(block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
669
+ def unscoped(&block); end
670
+
671
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
672
+ def select(*args, &block); end
673
+
674
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
675
+ def order(*args, &block); end
676
+
677
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
678
+ def reorder(*args, &block); end
679
+
680
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
681
+ def group(*args, &block); end
682
+
683
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
684
+ def limit(*args, &block); end
685
+
686
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
687
+ def offset(*args, &block); end
688
+
689
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
690
+ def joins(*args, &block); end
691
+
692
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
693
+ def where(*args, &block); end
694
+
695
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
696
+ def rewhere(*args, &block); end
697
+
698
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
699
+ def preload(*args, &block); end
700
+
701
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
702
+ def eager_load(*args, &block); end
703
+
704
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
705
+ def includes(*args, &block); end
706
+
707
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
708
+ def from(*args, &block); end
709
+
710
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
711
+ def lock(*args, &block); end
712
+
713
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
714
+ def readonly(*args, &block); end
715
+
716
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
717
+ def having(*args, &block); end
718
+
719
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
720
+ def create_with(*args, &block); end
721
+
722
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
723
+ def distinct(*args, &block); end
724
+
725
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
726
+ def references(*args, &block); end
727
+
728
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
729
+ def none(*args, &block); end
730
+
731
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
732
+ def unscope(*args, &block); end
733
+
734
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
735
+ def except(*args, &block); end
736
+
405
737
  sig { params(args: T.untyped).returns(Wizard) }
406
738
  def find(*args); end
407
739
 
@@ -471,6 +803,14 @@ class Wizard::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associat
471
803
  sig { returns(T::Array[Wizard]) }
472
804
  def to_a; end
473
805
 
806
+ sig do
807
+ type_parameters(:U).params(
808
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
809
+ )
810
+ .returns(T::Array[T.type_parameter(:U)])
811
+ end
812
+ def map(&blk); end
813
+
474
814
  sig { params(records: T.any(Wizard, T::Array[Wizard])).returns(T.self_type) }
475
815
  def <<(*records); end
476
816
 
@@ -139,26 +139,99 @@ class Wizard < ApplicationRecord
139
139
  include Wizard::EnumInstanceMethods
140
140
  include Wizard::GeneratedAttributeMethods
141
141
  include Wizard::GeneratedAssociationMethods
142
- extend SorbetRails::CustomFinderMethods
143
142
  extend Wizard::CustomFinderMethods
144
143
  extend T::Sig
145
144
  extend T::Generic
146
- extend Wizard::ModelRelationShared
147
145
 
148
146
  sig { returns(T::Hash[T.any(String, Symbol), Integer]) }
149
147
  def self.houses; end
150
148
 
151
- sig { returns(Wizard::ActiveRecord_Relation) }
152
- def self.Gryffindor; end
149
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
150
+ def self.Gryffindor(*args); end
153
151
 
154
- sig { returns(Wizard::ActiveRecord_Relation) }
155
- def self.Hufflepuff; end
152
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
153
+ def self.Hufflepuff(*args); end
156
154
 
157
- sig { returns(Wizard::ActiveRecord_Relation) }
158
- def self.Ravenclaw; end
155
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
156
+ def self.Ravenclaw(*args); end
157
+
158
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
159
+ def self.Slytherin(*args); end
160
+
161
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
162
+ def self.recent(*args); end
159
163
 
160
164
  sig { returns(Wizard::ActiveRecord_Relation) }
161
- def self.Slytherin; end
165
+ def self.all; end
166
+
167
+ sig { params(block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
168
+ def self.unscoped(&block); end
169
+
170
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
171
+ def self.select(*args, &block); end
172
+
173
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
174
+ def self.order(*args, &block); end
175
+
176
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
177
+ def self.reorder(*args, &block); end
178
+
179
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
180
+ def self.group(*args, &block); end
181
+
182
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
183
+ def self.limit(*args, &block); end
184
+
185
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
186
+ def self.offset(*args, &block); end
187
+
188
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
189
+ def self.joins(*args, &block); end
190
+
191
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
192
+ def self.where(*args, &block); end
193
+
194
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
195
+ def self.rewhere(*args, &block); end
196
+
197
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
198
+ def self.preload(*args, &block); end
199
+
200
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
201
+ def self.eager_load(*args, &block); end
202
+
203
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
204
+ def self.includes(*args, &block); end
205
+
206
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
207
+ def self.from(*args, &block); end
208
+
209
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
210
+ def self.lock(*args, &block); end
211
+
212
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
213
+ def self.readonly(*args, &block); end
214
+
215
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
216
+ def self.having(*args, &block); end
217
+
218
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
219
+ def self.create_with(*args, &block); end
220
+
221
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
222
+ def self.distinct(*args, &block); end
223
+
224
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
225
+ def self.references(*args, &block); end
226
+
227
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
228
+ def self.none(*args, &block); end
229
+
230
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
231
+ def self.unscope(*args, &block); end
232
+
233
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
234
+ def self.except(*args, &block); end
162
235
 
163
236
  sig { params(args: T.untyped).returns(Wizard) }
164
237
  def self.find(*args); end
@@ -221,8 +294,13 @@ class Wizard < ApplicationRecord
221
294
  def self.one?(*args); end
222
295
  end
223
296
 
224
- module Wizard::ModelRelationShared
297
+ class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
298
+ include Wizard::ActiveRelation_WhereNot
299
+ include Wizard::CustomFinderMethods
300
+ include Enumerable
225
301
  extend T::Sig
302
+ extend T::Generic
303
+ Elem = type_member(fixed: Wizard)
226
304
 
227
305
  sig { params(args: T.untyped).returns(Wizard::ActiveRecord_Relation) }
228
306
  def Gryffindor(*args); end
@@ -310,18 +388,180 @@ module Wizard::ModelRelationShared
310
388
 
311
389
  sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_Relation) }
312
390
  def except(*args, &block); end
391
+
392
+ sig { params(args: T.untyped).returns(Wizard) }
393
+ def find(*args); end
394
+
395
+ sig { params(args: T.untyped).returns(T.nilable(Wizard)) }
396
+ def find_by(*args); end
397
+
398
+ sig { params(args: T.untyped).returns(Wizard) }
399
+ def find_by!(*args); end
400
+
401
+ sig { returns(T.nilable(Wizard)) }
402
+ def first; end
403
+
404
+ sig { returns(Wizard) }
405
+ def first!; end
406
+
407
+ sig { returns(T.nilable(Wizard)) }
408
+ def second; end
409
+
410
+ sig { returns(Wizard) }
411
+ def second!; end
412
+
413
+ sig { returns(T.nilable(Wizard)) }
414
+ def third; end
415
+
416
+ sig { returns(Wizard) }
417
+ def third!; end
418
+
419
+ sig { returns(T.nilable(Wizard)) }
420
+ def third_to_last; end
421
+
422
+ sig { returns(Wizard) }
423
+ def third_to_last!; end
424
+
425
+ sig { returns(T.nilable(Wizard)) }
426
+ def second_to_last; end
427
+
428
+ sig { returns(Wizard) }
429
+ def second_to_last!; end
430
+
431
+ sig { returns(T.nilable(Wizard)) }
432
+ def last; end
433
+
434
+ sig { returns(Wizard) }
435
+ def last!; end
436
+
437
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
438
+ def exists?(conditions = nil); end
439
+
440
+ sig { params(args: T.untyped).returns(T::Boolean) }
441
+ def any?(*args); end
442
+
443
+ sig { params(args: T.untyped).returns(T::Boolean) }
444
+ def many?(*args); end
445
+
446
+ sig { params(args: T.untyped).returns(T::Boolean) }
447
+ def none?(*args); end
448
+
449
+ sig { params(args: T.untyped).returns(T::Boolean) }
450
+ def one?(*args); end
451
+
452
+ sig { implementation.params(block: T.proc.params(e: Wizard).void).void }
453
+ def each(&block); end
454
+
455
+ sig { params(level: T.nilable(Integer)).returns(T::Array[Wizard]) }
456
+ def flatten(level); end
457
+
458
+ sig { returns(T::Array[Wizard]) }
459
+ def to_a; end
460
+
461
+ sig do
462
+ type_parameters(:U).params(
463
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
464
+ )
465
+ .returns(T::Array[T.type_parameter(:U)])
466
+ end
467
+ def map(&blk); end
313
468
  end
314
469
 
315
- class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
470
+ class Wizard::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
316
471
  include Wizard::ActiveRelation_WhereNot
317
- include SorbetRails::CustomFinderMethods
318
472
  include Wizard::CustomFinderMethods
319
473
  include Enumerable
320
- include Wizard::ModelRelationShared
321
474
  extend T::Sig
322
475
  extend T::Generic
323
476
  Elem = type_member(fixed: Wizard)
324
477
 
478
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
479
+ def Gryffindor(*args); end
480
+
481
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
482
+ def Hufflepuff(*args); end
483
+
484
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
485
+ def Ravenclaw(*args); end
486
+
487
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
488
+ def Slytherin(*args); end
489
+
490
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
491
+ def recent(*args); end
492
+
493
+ sig { returns(Wizard::ActiveRecord_AssociationRelation) }
494
+ def all; end
495
+
496
+ sig { params(block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
497
+ def unscoped(&block); end
498
+
499
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
500
+ def select(*args, &block); end
501
+
502
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
503
+ def order(*args, &block); end
504
+
505
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
506
+ def reorder(*args, &block); end
507
+
508
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
509
+ def group(*args, &block); end
510
+
511
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
512
+ def limit(*args, &block); end
513
+
514
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
515
+ def offset(*args, &block); end
516
+
517
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
518
+ def joins(*args, &block); end
519
+
520
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
521
+ def where(*args, &block); end
522
+
523
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
524
+ def rewhere(*args, &block); end
525
+
526
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
527
+ def preload(*args, &block); end
528
+
529
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
530
+ def eager_load(*args, &block); end
531
+
532
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
533
+ def includes(*args, &block); end
534
+
535
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
536
+ def from(*args, &block); end
537
+
538
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
539
+ def lock(*args, &block); end
540
+
541
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
542
+ def readonly(*args, &block); end
543
+
544
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
545
+ def having(*args, &block); end
546
+
547
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
548
+ def create_with(*args, &block); end
549
+
550
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
551
+ def distinct(*args, &block); end
552
+
553
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
554
+ def references(*args, &block); end
555
+
556
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
557
+ def none(*args, &block); end
558
+
559
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
560
+ def unscope(*args, &block); end
561
+
562
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
563
+ def except(*args, &block); end
564
+
325
565
  sig { params(args: T.untyped).returns(Wizard) }
326
566
  def find(*args); end
327
567
 
@@ -390,18 +630,110 @@ class Wizard::ActiveRecord_Relation < ActiveRecord::Relation
390
630
 
391
631
  sig { returns(T::Array[Wizard]) }
392
632
  def to_a; end
633
+
634
+ sig do
635
+ type_parameters(:U).params(
636
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
637
+ )
638
+ .returns(T::Array[T.type_parameter(:U)])
639
+ end
640
+ def map(&blk); end
393
641
  end
394
642
 
395
643
  class Wizard::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associations::CollectionProxy
396
- include Wizard::ActiveRelation_WhereNot
397
- include SorbetRails::CustomFinderMethods
398
644
  include Wizard::CustomFinderMethods
399
645
  include Enumerable
400
- include Wizard::ModelRelationShared
401
646
  extend T::Sig
402
647
  extend T::Generic
403
648
  Elem = type_member(fixed: Wizard)
404
649
 
650
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
651
+ def Gryffindor(*args); end
652
+
653
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
654
+ def Hufflepuff(*args); end
655
+
656
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
657
+ def Ravenclaw(*args); end
658
+
659
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
660
+ def Slytherin(*args); end
661
+
662
+ sig { params(args: T.untyped).returns(Wizard::ActiveRecord_AssociationRelation) }
663
+ def recent(*args); end
664
+
665
+ sig { returns(Wizard::ActiveRecord_AssociationRelation) }
666
+ def all; end
667
+
668
+ sig { params(block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
669
+ def unscoped(&block); end
670
+
671
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
672
+ def select(*args, &block); end
673
+
674
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
675
+ def order(*args, &block); end
676
+
677
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
678
+ def reorder(*args, &block); end
679
+
680
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
681
+ def group(*args, &block); end
682
+
683
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
684
+ def limit(*args, &block); end
685
+
686
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
687
+ def offset(*args, &block); end
688
+
689
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
690
+ def joins(*args, &block); end
691
+
692
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
693
+ def where(*args, &block); end
694
+
695
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
696
+ def rewhere(*args, &block); end
697
+
698
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
699
+ def preload(*args, &block); end
700
+
701
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
702
+ def eager_load(*args, &block); end
703
+
704
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
705
+ def includes(*args, &block); end
706
+
707
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
708
+ def from(*args, &block); end
709
+
710
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
711
+ def lock(*args, &block); end
712
+
713
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
714
+ def readonly(*args, &block); end
715
+
716
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
717
+ def having(*args, &block); end
718
+
719
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
720
+ def create_with(*args, &block); end
721
+
722
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
723
+ def distinct(*args, &block); end
724
+
725
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
726
+ def references(*args, &block); end
727
+
728
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
729
+ def none(*args, &block); end
730
+
731
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
732
+ def unscope(*args, &block); end
733
+
734
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Wizard::ActiveRecord_AssociationRelation) }
735
+ def except(*args, &block); end
736
+
405
737
  sig { params(args: T.untyped).returns(Wizard) }
406
738
  def find(*args); end
407
739
 
@@ -471,6 +803,14 @@ class Wizard::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associat
471
803
  sig { returns(T::Array[Wizard]) }
472
804
  def to_a; end
473
805
 
806
+ sig do
807
+ type_parameters(:U).params(
808
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
809
+ )
810
+ .returns(T::Array[T.type_parameter(:U)])
811
+ end
812
+ def map(&blk); end
813
+
474
814
  sig { params(records: T.any(Wizard, T::Array[Wizard])).returns(T.self_type) }
475
815
  def <<(*records); end
476
816