sorbet-rails 0.7.33 → 0.7.34

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 (147) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci-master.yml +1 -1
  3. data/.github/workflows/ci.yml +1 -1
  4. data/CONTRIBUTING.md +1 -0
  5. data/Gemfile +4 -0
  6. data/README.md +1 -1
  7. data/Rakefile +27 -1
  8. data/lib/sorbet-rails/active_record_rbi_formatter.rb +1 -1
  9. data/lib/sorbet-rails/model_plugins/active_record_querying.rb +14 -0
  10. data/lib/sorbet-rails/rails_mixins/active_record_overrides.rb +1 -1
  11. data/lib/sorbet-rails/tasks/rails_rbi.rake +15 -0
  12. data/sorbet-rails.gemspec +1 -1
  13. data/spec/bin/run_all_specs.sh +1 -0
  14. data/spec/generators/rails-template.rb +2 -7
  15. data/spec/rails_helper.rb +2 -0
  16. data/spec/rake_rails_rbi_models_spec.rb +1 -1
  17. data/spec/support/v5.2/sorbet_test_cases.rb +8 -0
  18. data/spec/support/v6.0/sorbet_test_cases.rb +8 -0
  19. data/spec/support/v6.1/sorbet_test_cases.rb +8 -0
  20. data/spec/support/v7.0/.gitattributes +7 -0
  21. data/spec/support/v7.0/.gitignore +35 -0
  22. data/spec/support/v7.0/Gemfile +48 -0
  23. data/spec/support/v7.0/Gemfile.lock +218 -0
  24. data/spec/support/v7.0/README.md +24 -0
  25. data/spec/support/v7.0/Rakefile +6 -0
  26. data/spec/support/v7.0/app/assets/images/.keep +0 -0
  27. data/spec/support/v7.0/app/assets/stylesheets/application.css +1 -0
  28. data/spec/support/v7.0/app/controllers/application_controller.rb +3 -0
  29. data/spec/support/v7.0/app/controllers/concerns/.keep +0 -0
  30. data/spec/support/v7.0/app/helpers/application_helper.rb +3 -0
  31. data/spec/support/v7.0/app/helpers/bar_helper.rb +3 -0
  32. data/spec/support/v7.0/app/helpers/baz_helper.rb +3 -0
  33. data/spec/support/v7.0/app/helpers/foo_helper.rb +3 -0
  34. data/spec/support/v7.0/app/jobs/application_job.rb +8 -0
  35. data/spec/support/v7.0/app/jobs/award_house_point_hourglasses.rb +12 -0
  36. data/spec/support/v7.0/app/mailers/application_mailer.rb +5 -0
  37. data/spec/support/v7.0/app/mailers/daily_prophet_mailer.rb +9 -0
  38. data/spec/support/v7.0/app/mailers/hogwarts_acceptance_mailer.rb +29 -0
  39. data/spec/support/v7.0/app/models/application_record.rb +4 -0
  40. data/spec/support/v7.0/app/models/concerns/.keep +0 -0
  41. data/spec/support/v7.0/app/models/concerns/mythical.rb +11 -0
  42. data/spec/support/v7.0/app/models/headmaster.rb +8 -0
  43. data/spec/support/v7.0/app/models/potion.rb +6 -0
  44. data/spec/support/v7.0/app/models/robe.rb +4 -0
  45. data/spec/support/v7.0/app/models/school.rb +5 -0
  46. data/spec/support/v7.0/app/models/spell.rb +5 -0
  47. data/spec/support/v7.0/app/models/spell_book.rb +18 -0
  48. data/spec/support/v7.0/app/models/squib.rb +6 -0
  49. data/spec/support/v7.0/app/models/subject.rb +5 -0
  50. data/spec/support/v7.0/app/models/wand.rb +19 -0
  51. data/spec/support/v7.0/app/models/wizard.rb +65 -0
  52. data/spec/support/v7.0/app/views/layouts/application.html.erb +15 -0
  53. data/spec/support/v7.0/app/views/layouts/mailer.html.erb +13 -0
  54. data/spec/support/v7.0/app/views/layouts/mailer.text.erb +1 -0
  55. data/spec/support/v7.0/bin/bundle +114 -0
  56. data/spec/support/v7.0/bin/rails +4 -0
  57. data/spec/support/v7.0/bin/rake +4 -0
  58. data/spec/support/v7.0/bin/setup +33 -0
  59. data/spec/support/v7.0/config/application.rb +38 -0
  60. data/spec/support/v7.0/config/boot.rb +4 -0
  61. data/spec/support/v7.0/config/database.yml +25 -0
  62. data/spec/support/v7.0/config/environment.rb +6 -0
  63. data/spec/support/v7.0/config/environments/development.rb +69 -0
  64. data/spec/support/v7.0/config/environments/production.rb +83 -0
  65. data/spec/support/v7.0/config/environments/test.rb +61 -0
  66. data/spec/support/v7.0/config/initializers/content_security_policy.rb +26 -0
  67. data/spec/support/v7.0/config/initializers/filter_parameter_logging.rb +9 -0
  68. data/spec/support/v7.0/config/initializers/inflections.rb +17 -0
  69. data/spec/support/v7.0/config/initializers/permissions_policy.rb +12 -0
  70. data/spec/support/v7.0/config/initializers/sorbet_rails.rb +3 -0
  71. data/spec/support/v7.0/config/locales/en.yml +33 -0
  72. data/spec/support/v7.0/config/puma.rb +44 -0
  73. data/spec/support/v7.0/config/routes.rb +8 -0
  74. data/spec/support/v7.0/config/storage.yml +34 -0
  75. data/spec/support/v7.0/config.ru +6 -0
  76. data/spec/support/v7.0/db/migrate/20190620000001_create_wizards.rb +14 -0
  77. data/spec/support/v7.0/db/migrate/20190620000002_create_wands.rb +12 -0
  78. data/spec/support/v7.0/db/migrate/20190620000003_create_spell_books.rb +10 -0
  79. data/spec/support/v7.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +14 -0
  80. data/spec/support/v7.0/db/migrate/20190620000005_add_broom_to_wizard.rb +6 -0
  81. data/spec/support/v7.0/db/migrate/20190620000006_add_more_enums_to_wizard.rb +9 -0
  82. data/spec/support/v7.0/db/migrate/20190620000007_add_type_to_wizard.rb +6 -0
  83. data/spec/support/v7.0/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
  84. data/spec/support/v7.0/db/migrate/20190620000009_add_school.rb +10 -0
  85. data/spec/support/v7.0/db/migrate/20190620000010_add_subject.rb +8 -0
  86. data/spec/support/v7.0/db/migrate/20190620000011_add_subjects_wizards.rb +8 -0
  87. data/spec/support/v7.0/db/migrate/20190620000012_add_spell.rb +8 -0
  88. data/spec/support/v7.0/db/migrate/20190620000013_add_spells_spell_books.rb +8 -0
  89. data/spec/support/v7.0/db/migrate/20190620000014_create_headmasters.rb +9 -0
  90. data/spec/support/v7.0/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
  91. data/spec/support/v7.0/db/schema.rb +98 -0
  92. data/spec/support/v7.0/db/seeds.rb +8 -0
  93. data/spec/support/v7.0/lib/assets/.keep +0 -0
  94. data/spec/support/v7.0/lib/mythical_rbi_plugin.rb +16 -0
  95. data/spec/support/v7.0/lib/tasks/.keep +0 -0
  96. data/spec/support/v7.0/log/.keep +0 -0
  97. data/spec/support/v7.0/sorbet_test_cases.rb +439 -0
  98. data/spec/support/v7.0/storage/.keep +0 -0
  99. data/spec/support/v7.0/tmp/.keep +0 -0
  100. data/spec/support/v7.0/tmp/pids/.keep +0 -0
  101. data/spec/support/v7.0/tmp/storage/.keep +0 -0
  102. data/spec/support/v7.0/vendor/.keep +0 -0
  103. data/spec/test_data/v5.2/expected_active_record_base.rbi +6 -0
  104. data/spec/test_data/v5.2/expected_active_record_relation.rbi +6 -0
  105. data/spec/test_data/v6.0/expected_active_record_base.rbi +6 -0
  106. data/spec/test_data/v6.0/expected_active_record_relation.rbi +6 -0
  107. data/spec/test_data/v6.1/expected_active_record_base.rbi +6 -0
  108. data/spec/test_data/v6.1/expected_active_record_relation.rbi +6 -0
  109. data/spec/test_data/v7.0/expected_active_record_base.rbi +119 -0
  110. data/spec/test_data/v7.0/expected_active_record_relation.rbi +180 -0
  111. data/spec/test_data/v7.0/expected_application_job.rbi +20 -0
  112. data/spec/test_data/v7.0/expected_application_mailer.rbi +5 -0
  113. data/spec/test_data/v7.0/expected_attachment.rbi +358 -0
  114. data/spec/test_data/v7.0/expected_award_house_point_hourglasses.rbi +20 -0
  115. data/spec/test_data/v7.0/expected_blob.rbi +394 -0
  116. data/spec/test_data/v7.0/expected_custom_application_job.rbi +21 -0
  117. data/spec/test_data/v7.0/expected_custom_application_mailer.rbi +6 -0
  118. data/spec/test_data/v7.0/expected_custom_award_house_point_hourglasses.rbi +21 -0
  119. data/spec/test_data/v7.0/expected_custom_daily_prophet_mailer.rbi +8 -0
  120. data/spec/test_data/v7.0/expected_custom_hogwarts_acceptance_mailer.rbi +21 -0
  121. data/spec/test_data/v7.0/expected_daily_prophet_mailer.rbi +7 -0
  122. data/spec/test_data/v7.0/expected_headmaster.rbi +376 -0
  123. data/spec/test_data/v7.0/expected_helpers.rbi +27 -0
  124. data/spec/test_data/v7.0/expected_helpers_with_application_and_devise_helpers.rbi +34 -0
  125. data/spec/test_data/v7.0/expected_hogwarts_acceptance_mailer.rbi +20 -0
  126. data/spec/test_data/v7.0/expected_internal_metadata.rbi +346 -0
  127. data/spec/test_data/v7.0/expected_no_routes.rbi +4 -0
  128. data/spec/test_data/v7.0/expected_potion.rbi +328 -0
  129. data/spec/test_data/v7.0/expected_record.rbi +307 -0
  130. data/spec/test_data/v7.0/expected_robe.rbi +349 -0
  131. data/spec/test_data/v7.0/expected_routes.rbi +182 -0
  132. data/spec/test_data/v7.0/expected_schema_migration.rbi +319 -0
  133. data/spec/test_data/v7.0/expected_school.rbi +349 -0
  134. data/spec/test_data/v7.0/expected_spell/habtm_spell_books.rbi +367 -0
  135. data/spec/test_data/v7.0/expected_spell.rbi +340 -0
  136. data/spec/test_data/v7.0/expected_spell_book/habtm_spells.rbi +367 -0
  137. data/spec/test_data/v7.0/expected_spell_book.rbi +499 -0
  138. data/spec/test_data/v7.0/expected_squib.rbi +1204 -0
  139. data/spec/test_data/v7.0/expected_srb_tc_output.txt +1 -0
  140. data/spec/test_data/v7.0/expected_subject/habtm_wizards.rbi +367 -0
  141. data/spec/test_data/v7.0/expected_subject.rbi +340 -0
  142. data/spec/test_data/v7.0/expected_variant_record.rbi +382 -0
  143. data/spec/test_data/v7.0/expected_wand.rbi +611 -0
  144. data/spec/test_data/v7.0/expected_wizard/habtm_subjects.rbi +367 -0
  145. data/spec/test_data/v7.0/expected_wizard.rbi +1280 -0
  146. data/spec/test_data/v7.0/expected_wizard_wo_spellbook.rbi +1274 -0
  147. metadata +243 -1
@@ -0,0 +1,1204 @@
1
+ # This is an autogenerated file for dynamic methods in Squib
2
+ # Please rerun bundle exec rake rails_rbi:models[Squib] to regenerate.
3
+
4
+ # typed: strong
5
+ module Squib::EnumInstanceMethods
6
+ sig { returns(T::Boolean) }
7
+ def broom_nimbus?; end
8
+
9
+ sig { void }
10
+ def broom_nimbus!; end
11
+
12
+ sig { returns(T::Boolean) }
13
+ def broom_firebolt?; end
14
+
15
+ sig { void }
16
+ def broom_firebolt!; end
17
+
18
+ sig { returns(T::Boolean) }
19
+ def color_brown_eyes?; end
20
+
21
+ sig { void }
22
+ def color_brown_eyes!; end
23
+
24
+ sig { returns(T::Boolean) }
25
+ def color_green_eyes?; end
26
+
27
+ sig { void }
28
+ def color_green_eyes!; end
29
+
30
+ sig { returns(T::Boolean) }
31
+ def color_blue_eyes?; end
32
+
33
+ sig { void }
34
+ def color_blue_eyes!; end
35
+
36
+ sig { returns(T::Boolean) }
37
+ def brown_hair?; end
38
+
39
+ sig { void }
40
+ def brown_hair!; end
41
+
42
+ sig { returns(T::Boolean) }
43
+ def black_hair?; end
44
+
45
+ sig { void }
46
+ def black_hair!; end
47
+
48
+ sig { returns(T::Boolean) }
49
+ def blonde_hair?; end
50
+
51
+ sig { void }
52
+ def blonde_hair!; end
53
+
54
+ sig { returns(T::Boolean) }
55
+ def Gryffindor?; end
56
+
57
+ sig { void }
58
+ def Gryffindor!; end
59
+
60
+ sig { returns(T::Boolean) }
61
+ def Hufflepuff?; end
62
+
63
+ sig { void }
64
+ def Hufflepuff!; end
65
+
66
+ sig { returns(T::Boolean) }
67
+ def Ravenclaw?; end
68
+
69
+ sig { void }
70
+ def Ravenclaw!; end
71
+
72
+ sig { returns(T::Boolean) }
73
+ def Slytherin?; end
74
+
75
+ sig { void }
76
+ def Slytherin!; end
77
+
78
+ sig { returns(T::Boolean) }
79
+ def Hagrid?; end
80
+
81
+ sig { void }
82
+ def Hagrid!; end
83
+
84
+ sig { returns(T::Boolean) }
85
+ def quidditch_keeper?; end
86
+
87
+ sig { void }
88
+ def quidditch_keeper!; end
89
+
90
+ sig { returns(T::Boolean) }
91
+ def quidditch_seeker?; end
92
+
93
+ sig { void }
94
+ def quidditch_seeker!; end
95
+
96
+ sig { returns(T::Boolean) }
97
+ def quidditch_beater?; end
98
+
99
+ sig { void }
100
+ def quidditch_beater!; end
101
+
102
+ sig { returns(T::Boolean) }
103
+ def quidditch_chaser?; end
104
+
105
+ sig { void }
106
+ def quidditch_chaser!; end
107
+ end
108
+
109
+ module Squib::ActiveRelation_WhereNot
110
+ sig { params(opts: T.untyped, rest: T.untyped).returns(T.self_type) }
111
+ def not(opts, *rest); end
112
+ end
113
+
114
+ module Squib::GeneratedSerializedAttributeMethods
115
+ sig { returns(T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))) }
116
+ def newt_subjects; end
117
+
118
+ sig { params(value: T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))).void }
119
+ def newt_subjects=(value); end
120
+
121
+ sig { returns(T::Boolean) }
122
+ def newt_subjects?; end
123
+
124
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
125
+ def owl_results; end
126
+
127
+ sig { params(value: T.nilable(T::Hash[T.untyped, T.untyped])).void }
128
+ def owl_results=(value); end
129
+
130
+ sig { returns(T::Boolean) }
131
+ def owl_results?; end
132
+
133
+ sig { returns(T.nilable(ActiveRecord::Coders::JSON)) }
134
+ def patronus_characteristics; end
135
+
136
+ sig { params(value: T.nilable(ActiveRecord::Coders::JSON)).void }
137
+ def patronus_characteristics=(value); end
138
+
139
+ sig { returns(T::Boolean) }
140
+ def patronus_characteristics?; end
141
+
142
+ sig { returns(T.nilable(T::Array[T.untyped])) }
143
+ def pets; end
144
+
145
+ sig { params(value: T.nilable(T::Array[T.untyped])).void }
146
+ def pets=(value); end
147
+
148
+ sig { returns(T::Boolean) }
149
+ def pets?; end
150
+ end
151
+
152
+ module Squib::GeneratedAttributeMethods
153
+ sig { returns(T.nilable(String)) }
154
+ def broom; end
155
+
156
+ sig { params(value: T.nilable(T.any(Integer, String, Symbol))).void }
157
+ def broom=(value); end
158
+
159
+ sig { returns(T::Boolean) }
160
+ def broom?; end
161
+
162
+ sig { returns(ActiveSupport::TimeWithZone) }
163
+ def created_at; end
164
+
165
+ sig { params(value: T.any(Date, Time, ActiveSupport::TimeWithZone)).void }
166
+ def created_at=(value); end
167
+
168
+ sig { returns(T::Boolean) }
169
+ def created_at?; end
170
+
171
+ sig { returns(T.nilable(String)) }
172
+ def eye_color; end
173
+
174
+ sig { params(value: T.nilable(T.any(Integer, String, Symbol))).void }
175
+ def eye_color=(value); end
176
+
177
+ sig { returns(T::Boolean) }
178
+ def eye_color?; end
179
+
180
+ sig { returns(T.nilable(String)) }
181
+ def hair_color; end
182
+
183
+ sig { params(value: T.nilable(T.any(Integer, String, Symbol))).void }
184
+ def hair_color=(value); end
185
+
186
+ sig { returns(T::Boolean) }
187
+ def hair_color?; end
188
+
189
+ sig { returns(T.nilable(Integer)) }
190
+ def hair_length; end
191
+
192
+ sig { params(value: T.nilable(T.any(Numeric, ActiveSupport::Duration))).void }
193
+ def hair_length=(value); end
194
+
195
+ sig { returns(T::Boolean) }
196
+ def hair_length?; end
197
+
198
+ sig { returns(T.nilable(String)) }
199
+ def house; end
200
+
201
+ sig { params(value: T.nilable(T.any(Integer, String, Symbol))).void }
202
+ def house=(value); end
203
+
204
+ sig { returns(T::Boolean) }
205
+ def house?; end
206
+
207
+ sig { returns(Integer) }
208
+ def id; end
209
+
210
+ sig { params(value: T.any(Numeric, ActiveSupport::Duration)).void }
211
+ def id=(value); end
212
+
213
+ sig { returns(T::Boolean) }
214
+ def id?; end
215
+
216
+ sig { returns(String) }
217
+ def name; end
218
+
219
+ sig { params(value: T.any(String, Symbol)).void }
220
+ def name=(value); end
221
+
222
+ sig { returns(T::Boolean) }
223
+ def name?; end
224
+
225
+ sig { returns(T.nilable(String)) }
226
+ def notes; end
227
+
228
+ sig { params(value: T.nilable(T.any(String, Symbol))).void }
229
+ def notes=(value); end
230
+
231
+ sig { returns(T::Boolean) }
232
+ def notes?; end
233
+
234
+ sig { returns(T.nilable(String)) }
235
+ def parent_email; end
236
+
237
+ sig { params(value: T.nilable(T.any(String, Symbol))).void }
238
+ def parent_email=(value); end
239
+
240
+ sig { returns(T::Boolean) }
241
+ def parent_email?; end
242
+
243
+ sig { returns(T.nilable(String)) }
244
+ def professor; end
245
+
246
+ sig { params(value: T.nilable(T.any(Integer, String, Symbol))).void }
247
+ def professor=(value); end
248
+
249
+ sig { returns(T::Boolean) }
250
+ def professor?; end
251
+
252
+ sig { returns(T.nilable(String)) }
253
+ def quidditch_position; end
254
+
255
+ sig { params(value: T.nilable(T.any(Integer, String, Symbol))).void }
256
+ def quidditch_position=(value); end
257
+
258
+ sig { returns(T::Boolean) }
259
+ def quidditch_position?; end
260
+
261
+ sig { returns(T.nilable(Integer)) }
262
+ def school_id; end
263
+
264
+ sig { params(value: T.nilable(T.any(Numeric, ActiveSupport::Duration))).void }
265
+ def school_id=(value); end
266
+
267
+ sig { returns(T::Boolean) }
268
+ def school_id?; end
269
+
270
+ sig { returns(String) }
271
+ def type; end
272
+
273
+ sig { params(value: T.any(String, Symbol)).void }
274
+ def type=(value); end
275
+
276
+ sig { returns(T::Boolean) }
277
+ def type?; end
278
+
279
+ sig { returns(ActiveSupport::TimeWithZone) }
280
+ def updated_at; end
281
+
282
+ sig { params(value: T.any(Date, Time, ActiveSupport::TimeWithZone)).void }
283
+ def updated_at=(value); end
284
+
285
+ sig { returns(T::Boolean) }
286
+ def updated_at?; end
287
+ end
288
+
289
+ module Squib::GeneratedAssociationMethods
290
+ sig { returns(T.nilable(::School)) }
291
+ def school; end
292
+
293
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::School).void)).returns(::School) }
294
+ def build_school(*args, &block); end
295
+
296
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::School).void)).returns(::School) }
297
+ def create_school(*args, &block); end
298
+
299
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::School).void)).returns(::School) }
300
+ def create_school!(*args, &block); end
301
+
302
+ sig { params(value: T.nilable(::School)).void }
303
+ def school=(value); end
304
+
305
+ sig { returns(T.nilable(::School)) }
306
+ def reload_school; end
307
+
308
+ sig { returns(::SpellBook::ActiveRecord_Associations_CollectionProxy) }
309
+ def spell_books; end
310
+
311
+ sig { returns(T::Array[Integer]) }
312
+ def spell_book_ids; end
313
+
314
+ sig { params(value: T::Enumerable[::SpellBook]).void }
315
+ def spell_books=(value); end
316
+
317
+ sig { returns(::Subject::ActiveRecord_Associations_CollectionProxy) }
318
+ def subjects; end
319
+
320
+ sig { returns(T::Array[Integer]) }
321
+ def subject_ids; end
322
+
323
+ sig { params(value: T::Enumerable[::Subject]).void }
324
+ def subjects=(value); end
325
+
326
+ sig { returns(T.nilable(::Wand)) }
327
+ def wand; end
328
+
329
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::Wand).void)).returns(::Wand) }
330
+ def build_wand(*args, &block); end
331
+
332
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::Wand).void)).returns(::Wand) }
333
+ def create_wand(*args, &block); end
334
+
335
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::Wand).void)).returns(::Wand) }
336
+ def create_wand!(*args, &block); end
337
+
338
+ sig { params(value: T.nilable(::Wand)).void }
339
+ def wand=(value); end
340
+
341
+ sig { returns(T.nilable(::Wand)) }
342
+ def reload_wand; end
343
+ end
344
+
345
+ module Squib::CustomFinderMethods
346
+ sig { params(limit: Integer).returns(T::Array[Squib]) }
347
+ def first_n(limit); end
348
+
349
+ sig { params(limit: Integer).returns(T::Array[Squib]) }
350
+ def last_n(limit); end
351
+
352
+ sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Squib]) }
353
+ def find_n(*args); end
354
+
355
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Squib)) }
356
+ def find_by_id(id); end
357
+
358
+ sig { params(id: Integer).returns(Squib) }
359
+ def find_by_id!(id); end
360
+ end
361
+
362
+ class Squib < Wizard
363
+ include Squib::EnumInstanceMethods
364
+ include Squib::GeneratedSerializedAttributeMethods
365
+ include Squib::GeneratedAttributeMethods
366
+ include Squib::GeneratedAssociationMethods
367
+ extend Squib::CustomFinderMethods
368
+ extend Squib::QueryMethodsReturningRelation
369
+ RelationType = T.type_alias { T.any(Squib::ActiveRecord_Relation, Squib::ActiveRecord_Associations_CollectionProxy, Squib::ActiveRecord_AssociationRelation) }
370
+
371
+ sig { returns(T::Hash[T.any(String, Symbol), String]) }
372
+ def self.brooms; end
373
+
374
+ sig { returns(T::Hash[T.any(String, Symbol), Integer]) }
375
+ def self.eye_colors; end
376
+
377
+ sig { returns(T::Hash[T.any(String, Symbol), Integer]) }
378
+ def self.hair_colors; end
379
+
380
+ sig { returns(T::Hash[T.any(String, Symbol), Integer]) }
381
+ def self.houses; end
382
+
383
+ sig { returns(T::Hash[T.any(String, Symbol), Integer]) }
384
+ def self.professors; end
385
+
386
+ sig { returns(T::Hash[T.any(String, Symbol), Integer]) }
387
+ def self.quidditch_positions; end
388
+
389
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
390
+ def self.Alastor_Mad_Eye_Moody(*args); end
391
+
392
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
393
+ def self.Filius_Flitwick(*args); end
394
+
395
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
396
+ def self.Gryffindor(*args); end
397
+
398
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
399
+ def self.Hagrid(*args); end
400
+
401
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
402
+ def self.Hufflepuff(*args); end
403
+
404
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
405
+ def self.Minerva_McGonagall(*args); end
406
+
407
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
408
+ def self.Pomona_Sprout(*args); end
409
+
410
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
411
+ def self.Ravenclaw(*args); end
412
+
413
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
414
+ def self.Severus_Snape(*args); end
415
+
416
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
417
+ def self.Slytherin(*args); end
418
+
419
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
420
+ def self.black_hair(*args); end
421
+
422
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
423
+ def self.blonde_hair(*args); end
424
+
425
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
426
+ def self.broom_firebolt(*args); end
427
+
428
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
429
+ def self.broom_nimbus(*args); end
430
+
431
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
432
+ def self.brown_hair(*args); end
433
+
434
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
435
+ def self.color_blue_eyes(*args); end
436
+
437
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
438
+ def self.color_brown_eyes(*args); end
439
+
440
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
441
+ def self.color_green_eyes(*args); end
442
+
443
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
444
+ def self.not_Alastor_Mad_Eye_Moody(*args); end
445
+
446
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
447
+ def self.not_Filius_Flitwick(*args); end
448
+
449
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
450
+ def self.not_Gryffindor(*args); end
451
+
452
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
453
+ def self.not_Hagrid(*args); end
454
+
455
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
456
+ def self.not_Hufflepuff(*args); end
457
+
458
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
459
+ def self.not_Minerva_McGonagall(*args); end
460
+
461
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
462
+ def self.not_Pomona_Sprout(*args); end
463
+
464
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
465
+ def self.not_Ravenclaw(*args); end
466
+
467
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
468
+ def self.not_Severus_Snape(*args); end
469
+
470
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
471
+ def self.not_Slytherin(*args); end
472
+
473
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
474
+ def self.not_black_hair(*args); end
475
+
476
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
477
+ def self.not_blonde_hair(*args); end
478
+
479
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
480
+ def self.not_broom_firebolt(*args); end
481
+
482
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
483
+ def self.not_broom_nimbus(*args); end
484
+
485
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
486
+ def self.not_brown_hair(*args); end
487
+
488
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
489
+ def self.not_color_blue_eyes(*args); end
490
+
491
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
492
+ def self.not_color_brown_eyes(*args); end
493
+
494
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
495
+ def self.not_color_green_eyes(*args); end
496
+
497
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
498
+ def self.not_quidditch_beater(*args); end
499
+
500
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
501
+ def self.not_quidditch_chaser(*args); end
502
+
503
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
504
+ def self.not_quidditch_keeper(*args); end
505
+
506
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
507
+ def self.not_quidditch_seeker(*args); end
508
+
509
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
510
+ def self.quidditch_beater(*args); end
511
+
512
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
513
+ def self.quidditch_chaser(*args); end
514
+
515
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
516
+ def self.quidditch_keeper(*args); end
517
+
518
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
519
+ def self.quidditch_seeker(*args); end
520
+
521
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
522
+ def self.recent(*args); end
523
+ end
524
+
525
+ class Squib::ActiveRecord_Relation < ActiveRecord::Relation
526
+ include Squib::ActiveRelation_WhereNot
527
+ include Squib::CustomFinderMethods
528
+ include Squib::QueryMethodsReturningRelation
529
+ Elem = type_member {{fixed: Squib}}
530
+
531
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
532
+ def Alastor_Mad_Eye_Moody(*args); end
533
+
534
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
535
+ def Filius_Flitwick(*args); end
536
+
537
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
538
+ def Gryffindor(*args); end
539
+
540
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
541
+ def Hagrid(*args); end
542
+
543
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
544
+ def Hufflepuff(*args); end
545
+
546
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
547
+ def Minerva_McGonagall(*args); end
548
+
549
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
550
+ def Pomona_Sprout(*args); end
551
+
552
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
553
+ def Ravenclaw(*args); end
554
+
555
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
556
+ def Severus_Snape(*args); end
557
+
558
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
559
+ def Slytherin(*args); end
560
+
561
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
562
+ def black_hair(*args); end
563
+
564
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
565
+ def blonde_hair(*args); end
566
+
567
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
568
+ def broom_firebolt(*args); end
569
+
570
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
571
+ def broom_nimbus(*args); end
572
+
573
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
574
+ def brown_hair(*args); end
575
+
576
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
577
+ def color_blue_eyes(*args); end
578
+
579
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
580
+ def color_brown_eyes(*args); end
581
+
582
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
583
+ def color_green_eyes(*args); end
584
+
585
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
586
+ def not_Alastor_Mad_Eye_Moody(*args); end
587
+
588
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
589
+ def not_Filius_Flitwick(*args); end
590
+
591
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
592
+ def not_Gryffindor(*args); end
593
+
594
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
595
+ def not_Hagrid(*args); end
596
+
597
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
598
+ def not_Hufflepuff(*args); end
599
+
600
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
601
+ def not_Minerva_McGonagall(*args); end
602
+
603
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
604
+ def not_Pomona_Sprout(*args); end
605
+
606
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
607
+ def not_Ravenclaw(*args); end
608
+
609
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
610
+ def not_Severus_Snape(*args); end
611
+
612
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
613
+ def not_Slytherin(*args); end
614
+
615
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
616
+ def not_black_hair(*args); end
617
+
618
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
619
+ def not_blonde_hair(*args); end
620
+
621
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
622
+ def not_broom_firebolt(*args); end
623
+
624
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
625
+ def not_broom_nimbus(*args); end
626
+
627
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
628
+ def not_brown_hair(*args); end
629
+
630
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
631
+ def not_color_blue_eyes(*args); end
632
+
633
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
634
+ def not_color_brown_eyes(*args); end
635
+
636
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
637
+ def not_color_green_eyes(*args); end
638
+
639
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
640
+ def not_quidditch_beater(*args); end
641
+
642
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
643
+ def not_quidditch_chaser(*args); end
644
+
645
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
646
+ def not_quidditch_keeper(*args); end
647
+
648
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
649
+ def not_quidditch_seeker(*args); end
650
+
651
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
652
+ def quidditch_beater(*args); end
653
+
654
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
655
+ def quidditch_chaser(*args); end
656
+
657
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
658
+ def quidditch_keeper(*args); end
659
+
660
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
661
+ def quidditch_seeker(*args); end
662
+
663
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
664
+ def recent(*args); end
665
+ end
666
+
667
+ class Squib::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
668
+ include Squib::ActiveRelation_WhereNot
669
+ include Squib::CustomFinderMethods
670
+ include Squib::QueryMethodsReturningAssociationRelation
671
+ Elem = type_member {{fixed: Squib}}
672
+
673
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
674
+ def Alastor_Mad_Eye_Moody(*args); end
675
+
676
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
677
+ def Filius_Flitwick(*args); end
678
+
679
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
680
+ def Gryffindor(*args); end
681
+
682
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
683
+ def Hagrid(*args); end
684
+
685
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
686
+ def Hufflepuff(*args); end
687
+
688
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
689
+ def Minerva_McGonagall(*args); end
690
+
691
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
692
+ def Pomona_Sprout(*args); end
693
+
694
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
695
+ def Ravenclaw(*args); end
696
+
697
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
698
+ def Severus_Snape(*args); end
699
+
700
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
701
+ def Slytherin(*args); end
702
+
703
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
704
+ def black_hair(*args); end
705
+
706
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
707
+ def blonde_hair(*args); end
708
+
709
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
710
+ def broom_firebolt(*args); end
711
+
712
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
713
+ def broom_nimbus(*args); end
714
+
715
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
716
+ def brown_hair(*args); end
717
+
718
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
719
+ def color_blue_eyes(*args); end
720
+
721
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
722
+ def color_brown_eyes(*args); end
723
+
724
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
725
+ def color_green_eyes(*args); end
726
+
727
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
728
+ def not_Alastor_Mad_Eye_Moody(*args); end
729
+
730
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
731
+ def not_Filius_Flitwick(*args); end
732
+
733
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
734
+ def not_Gryffindor(*args); end
735
+
736
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
737
+ def not_Hagrid(*args); end
738
+
739
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
740
+ def not_Hufflepuff(*args); end
741
+
742
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
743
+ def not_Minerva_McGonagall(*args); end
744
+
745
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
746
+ def not_Pomona_Sprout(*args); end
747
+
748
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
749
+ def not_Ravenclaw(*args); end
750
+
751
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
752
+ def not_Severus_Snape(*args); end
753
+
754
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
755
+ def not_Slytherin(*args); end
756
+
757
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
758
+ def not_black_hair(*args); end
759
+
760
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
761
+ def not_blonde_hair(*args); end
762
+
763
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
764
+ def not_broom_firebolt(*args); end
765
+
766
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
767
+ def not_broom_nimbus(*args); end
768
+
769
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
770
+ def not_brown_hair(*args); end
771
+
772
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
773
+ def not_color_blue_eyes(*args); end
774
+
775
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
776
+ def not_color_brown_eyes(*args); end
777
+
778
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
779
+ def not_color_green_eyes(*args); end
780
+
781
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
782
+ def not_quidditch_beater(*args); end
783
+
784
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
785
+ def not_quidditch_chaser(*args); end
786
+
787
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
788
+ def not_quidditch_keeper(*args); end
789
+
790
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
791
+ def not_quidditch_seeker(*args); end
792
+
793
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
794
+ def quidditch_beater(*args); end
795
+
796
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
797
+ def quidditch_chaser(*args); end
798
+
799
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
800
+ def quidditch_keeper(*args); end
801
+
802
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
803
+ def quidditch_seeker(*args); end
804
+
805
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
806
+ def recent(*args); end
807
+ end
808
+
809
+ class Squib::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associations::CollectionProxy
810
+ include Squib::CustomFinderMethods
811
+ include Squib::QueryMethodsReturningAssociationRelation
812
+ Elem = type_member {{fixed: Squib}}
813
+
814
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
815
+ def Alastor_Mad_Eye_Moody(*args); end
816
+
817
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
818
+ def Filius_Flitwick(*args); end
819
+
820
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
821
+ def Gryffindor(*args); end
822
+
823
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
824
+ def Hagrid(*args); end
825
+
826
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
827
+ def Hufflepuff(*args); end
828
+
829
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
830
+ def Minerva_McGonagall(*args); end
831
+
832
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
833
+ def Pomona_Sprout(*args); end
834
+
835
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
836
+ def Ravenclaw(*args); end
837
+
838
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
839
+ def Severus_Snape(*args); end
840
+
841
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
842
+ def Slytherin(*args); end
843
+
844
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
845
+ def black_hair(*args); end
846
+
847
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
848
+ def blonde_hair(*args); end
849
+
850
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
851
+ def broom_firebolt(*args); end
852
+
853
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
854
+ def broom_nimbus(*args); end
855
+
856
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
857
+ def brown_hair(*args); end
858
+
859
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
860
+ def color_blue_eyes(*args); end
861
+
862
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
863
+ def color_brown_eyes(*args); end
864
+
865
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
866
+ def color_green_eyes(*args); end
867
+
868
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
869
+ def not_Alastor_Mad_Eye_Moody(*args); end
870
+
871
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
872
+ def not_Filius_Flitwick(*args); end
873
+
874
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
875
+ def not_Gryffindor(*args); end
876
+
877
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
878
+ def not_Hagrid(*args); end
879
+
880
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
881
+ def not_Hufflepuff(*args); end
882
+
883
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
884
+ def not_Minerva_McGonagall(*args); end
885
+
886
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
887
+ def not_Pomona_Sprout(*args); end
888
+
889
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
890
+ def not_Ravenclaw(*args); end
891
+
892
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
893
+ def not_Severus_Snape(*args); end
894
+
895
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
896
+ def not_Slytherin(*args); end
897
+
898
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
899
+ def not_black_hair(*args); end
900
+
901
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
902
+ def not_blonde_hair(*args); end
903
+
904
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
905
+ def not_broom_firebolt(*args); end
906
+
907
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
908
+ def not_broom_nimbus(*args); end
909
+
910
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
911
+ def not_brown_hair(*args); end
912
+
913
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
914
+ def not_color_blue_eyes(*args); end
915
+
916
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
917
+ def not_color_brown_eyes(*args); end
918
+
919
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
920
+ def not_color_green_eyes(*args); end
921
+
922
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
923
+ def not_quidditch_beater(*args); end
924
+
925
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
926
+ def not_quidditch_chaser(*args); end
927
+
928
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
929
+ def not_quidditch_keeper(*args); end
930
+
931
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
932
+ def not_quidditch_seeker(*args); end
933
+
934
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
935
+ def quidditch_beater(*args); end
936
+
937
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
938
+ def quidditch_chaser(*args); end
939
+
940
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
941
+ def quidditch_keeper(*args); end
942
+
943
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
944
+ def quidditch_seeker(*args); end
945
+
946
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
947
+ def recent(*args); end
948
+
949
+ sig { params(records: T.any(Squib, T::Array[Squib])).returns(T.self_type) }
950
+ def <<(*records); end
951
+
952
+ sig { params(records: T.any(Squib, T::Array[Squib])).returns(T.self_type) }
953
+ def append(*records); end
954
+
955
+ sig { params(records: T.any(Squib, T::Array[Squib])).returns(T.self_type) }
956
+ def push(*records); end
957
+
958
+ sig { params(records: T.any(Squib, T::Array[Squib])).returns(T.self_type) }
959
+ def concat(*records); end
960
+ end
961
+
962
+ module Squib::QueryMethodsReturningRelation
963
+ sig { returns(Squib::ActiveRecord_Relation) }
964
+ def all; end
965
+
966
+ sig { params(block: T.nilable(T.proc.void)).returns(Squib::ActiveRecord_Relation) }
967
+ def unscoped(&block); end
968
+
969
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
970
+ def reselect(*args); end
971
+
972
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
973
+ def order(*args); end
974
+
975
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
976
+ def reorder(*args); end
977
+
978
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
979
+ def group(*args); end
980
+
981
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
982
+ def limit(*args); end
983
+
984
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
985
+ def offset(*args); end
986
+
987
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
988
+ def joins(*args); end
989
+
990
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
991
+ def left_joins(*args); end
992
+
993
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
994
+ def left_outer_joins(*args); end
995
+
996
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
997
+ def where(*args); end
998
+
999
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1000
+ def rewhere(*args); end
1001
+
1002
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1003
+ def preload(*args); end
1004
+
1005
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1006
+ def extract_associated(*args); end
1007
+
1008
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1009
+ def eager_load(*args); end
1010
+
1011
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1012
+ def includes(*args); end
1013
+
1014
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1015
+ def from(*args); end
1016
+
1017
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1018
+ def lock(*args); end
1019
+
1020
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1021
+ def readonly(*args); end
1022
+
1023
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1024
+ def or(*args); end
1025
+
1026
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1027
+ def having(*args); end
1028
+
1029
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1030
+ def create_with(*args); end
1031
+
1032
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1033
+ def distinct(*args); end
1034
+
1035
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1036
+ def references(*args); end
1037
+
1038
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1039
+ def none(*args); end
1040
+
1041
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1042
+ def unscope(*args); end
1043
+
1044
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1045
+ def optimizer_hints(*args); end
1046
+
1047
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1048
+ def merge(*args); end
1049
+
1050
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1051
+ def except(*args); end
1052
+
1053
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_Relation) }
1054
+ def only(*args); end
1055
+
1056
+ sig { params(block: T.proc.params(e: Squib).returns(T::Boolean)).returns(T::Array[Squib]) }
1057
+ def select(&block); end
1058
+
1059
+ sig { params(args: T.any(String, Symbol, T::Array[T.any(String, Symbol)])).returns(Squib::ActiveRecord_Relation) }
1060
+ def select_columns(*args); end
1061
+
1062
+ sig { params(args: Symbol).returns(Squib::ActiveRecord_Relation) }
1063
+ def where_missing(*args); end
1064
+
1065
+ sig { params(column: Symbol, values: T::Array[T.untyped]).returns(Squib::ActiveRecord_Relation) }
1066
+ def in_order_of(column, values); end
1067
+
1068
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Squib::ActiveRecord_Relation) }
1069
+ def extending(*args, &block); end
1070
+
1071
+ sig do
1072
+ params(
1073
+ of: T.nilable(Integer),
1074
+ start: T.nilable(Integer),
1075
+ finish: T.nilable(Integer),
1076
+ load: T.nilable(T::Boolean),
1077
+ error_on_ignore: T.nilable(T::Boolean),
1078
+ block: T.nilable(T.proc.params(e: Squib::ActiveRecord_Relation).void)
1079
+ ).returns(ActiveRecord::Batches::BatchEnumerator)
1080
+ end
1081
+ def in_batches(of: 1000, start: nil, finish: nil, load: false, error_on_ignore: nil, &block); end
1082
+ end
1083
+
1084
+ module Squib::QueryMethodsReturningAssociationRelation
1085
+ sig { returns(Squib::ActiveRecord_AssociationRelation) }
1086
+ def all; end
1087
+
1088
+ sig { params(block: T.nilable(T.proc.void)).returns(Squib::ActiveRecord_Relation) }
1089
+ def unscoped(&block); end
1090
+
1091
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1092
+ def reselect(*args); end
1093
+
1094
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1095
+ def order(*args); end
1096
+
1097
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1098
+ def reorder(*args); end
1099
+
1100
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1101
+ def group(*args); end
1102
+
1103
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1104
+ def limit(*args); end
1105
+
1106
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1107
+ def offset(*args); end
1108
+
1109
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1110
+ def joins(*args); end
1111
+
1112
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1113
+ def left_joins(*args); end
1114
+
1115
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1116
+ def left_outer_joins(*args); end
1117
+
1118
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1119
+ def where(*args); end
1120
+
1121
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1122
+ def rewhere(*args); end
1123
+
1124
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1125
+ def preload(*args); end
1126
+
1127
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1128
+ def extract_associated(*args); end
1129
+
1130
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1131
+ def eager_load(*args); end
1132
+
1133
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1134
+ def includes(*args); end
1135
+
1136
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1137
+ def from(*args); end
1138
+
1139
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1140
+ def lock(*args); end
1141
+
1142
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1143
+ def readonly(*args); end
1144
+
1145
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1146
+ def or(*args); end
1147
+
1148
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1149
+ def having(*args); end
1150
+
1151
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1152
+ def create_with(*args); end
1153
+
1154
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1155
+ def distinct(*args); end
1156
+
1157
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1158
+ def references(*args); end
1159
+
1160
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1161
+ def none(*args); end
1162
+
1163
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1164
+ def unscope(*args); end
1165
+
1166
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1167
+ def optimizer_hints(*args); end
1168
+
1169
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1170
+ def merge(*args); end
1171
+
1172
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1173
+ def except(*args); end
1174
+
1175
+ sig { params(args: T.untyped).returns(Squib::ActiveRecord_AssociationRelation) }
1176
+ def only(*args); end
1177
+
1178
+ sig { params(block: T.proc.params(e: Squib).returns(T::Boolean)).returns(T::Array[Squib]) }
1179
+ def select(&block); end
1180
+
1181
+ sig { params(args: T.any(String, Symbol, T::Array[T.any(String, Symbol)])).returns(Squib::ActiveRecord_AssociationRelation) }
1182
+ def select_columns(*args); end
1183
+
1184
+ sig { params(args: Symbol).returns(Squib::ActiveRecord_AssociationRelation) }
1185
+ def where_missing(*args); end
1186
+
1187
+ sig { params(column: Symbol, values: T::Array[T.untyped]).returns(Squib::ActiveRecord_AssociationRelation) }
1188
+ def in_order_of(column, values); end
1189
+
1190
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Squib::ActiveRecord_AssociationRelation) }
1191
+ def extending(*args, &block); end
1192
+
1193
+ sig do
1194
+ params(
1195
+ of: T.nilable(Integer),
1196
+ start: T.nilable(Integer),
1197
+ finish: T.nilable(Integer),
1198
+ load: T.nilable(T::Boolean),
1199
+ error_on_ignore: T.nilable(T::Boolean),
1200
+ block: T.nilable(T.proc.params(e: Squib::ActiveRecord_AssociationRelation).void)
1201
+ ).returns(ActiveRecord::Batches::BatchEnumerator)
1202
+ end
1203
+ def in_batches(of: 1000, start: nil, finish: nil, load: false, error_on_ignore: nil, &block); end
1204
+ end