sorbet-rails 0.5.7 → 0.5.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sorbet-rails/gem_plugins/shrine_plugin.rb +6 -0
  3. data/lib/sorbet-rails/model_plugins/active_record_assoc.rb +17 -7
  4. data/lib/sorbet-rails/sorbet_utils.rb +7 -1
  5. data/sorbet-rails.gemspec +1 -1
  6. data/spec/bin/run_all_specs.sh +1 -1
  7. data/spec/generators/rails-template.rb +17 -1
  8. data/spec/rails_helper.rb +1 -1
  9. data/spec/rake_rails_rbi_models_spec.rb +1 -0
  10. data/spec/sorbet_utils_spec.rb +5 -5
  11. data/spec/support/v5.0/Gemfile.lock +14 -14
  12. data/spec/support/v5.0/app/models/robe.rb +4 -0
  13. data/spec/support/v5.0/app/models/wand.rb +1 -1
  14. data/spec/support/v5.0/config/environments/development.rb +1 -1
  15. data/spec/support/v5.0/config/initializers/sorbet_rails.rb +1 -1
  16. data/spec/support/v5.0/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
  17. data/spec/support/v5.0/db/schema.rb +6 -1
  18. data/spec/support/v5.1/Gemfile.lock +15 -15
  19. data/spec/support/v5.1/app/models/robe.rb +4 -0
  20. data/spec/support/v5.1/app/models/wand.rb +1 -1
  21. data/spec/support/v5.1/config/environments/development.rb +1 -1
  22. data/spec/support/v5.1/config/initializers/sorbet_rails.rb +1 -1
  23. data/spec/support/v5.1/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
  24. data/spec/support/v5.1/db/schema.rb +6 -1
  25. data/spec/support/v5.2/Gemfile.lock +15 -15
  26. data/spec/support/v5.2/app/models/robe.rb +4 -0
  27. data/spec/support/v5.2/app/models/wand.rb +1 -1
  28. data/spec/support/v5.2/config/environments/development.rb +1 -1
  29. data/spec/support/v5.2/config/initializers/sorbet_rails.rb +1 -1
  30. data/spec/support/v5.2/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
  31. data/spec/support/v5.2/db/schema.rb +6 -1
  32. data/spec/support/v6.0/Gemfile.lock +16 -16
  33. data/spec/support/v6.0/app/models/robe.rb +4 -0
  34. data/spec/support/v6.0/app/models/wand.rb +1 -1
  35. data/spec/support/v6.0/config/environments/development.rb +1 -1
  36. data/spec/support/v6.0/config/initializers/sorbet_rails.rb +1 -1
  37. data/spec/support/v6.0/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
  38. data/spec/support/v6.0/db/schema.rb +6 -1
  39. data/spec/test_data/v5.0/expected_daily_prophet_mailer.rbi +1 -1
  40. data/spec/test_data/v5.0/expected_robe.rbi +716 -0
  41. data/spec/test_data/v5.0/expected_squib.rbi +1 -1
  42. data/spec/test_data/v5.0/expected_wizard.rbi +1 -1
  43. data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +1 -1
  44. data/spec/test_data/v5.1/expected_daily_prophet_mailer.rbi +1 -1
  45. data/spec/test_data/v5.1/expected_robe.rbi +728 -0
  46. data/spec/test_data/v5.1/expected_squib.rbi +1 -1
  47. data/spec/test_data/v5.1/expected_wizard.rbi +1 -1
  48. data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +1 -1
  49. data/spec/test_data/v5.2/expected_blob.rbi +1 -1
  50. data/spec/test_data/v5.2/expected_daily_prophet_mailer.rbi +1 -1
  51. data/spec/test_data/v5.2/expected_robe.rbi +728 -0
  52. data/spec/test_data/v5.2/expected_squib.rbi +3 -3
  53. data/spec/test_data/v5.2/expected_wizard.rbi +3 -3
  54. data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +3 -3
  55. data/spec/test_data/v6.0/expected_blob.rbi +1 -1
  56. data/spec/test_data/v6.0/expected_daily_prophet_mailer.rbi +1 -1
  57. data/spec/test_data/v6.0/expected_robe.rbi +776 -0
  58. data/spec/test_data/v6.0/expected_squib.rbi +3 -3
  59. data/spec/test_data/v6.0/expected_wizard.rbi +3 -3
  60. data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +3 -3
  61. metadata +25 -1
@@ -240,7 +240,7 @@ module Squib::GeneratedAssociationMethods
240
240
  sig { returns(::SpellBook::ActiveRecord_Associations_CollectionProxy) }
241
241
  def spell_books; end
242
242
 
243
- sig { params(value: T.any(T::Array[::SpellBook], ::SpellBook::ActiveRecord_Associations_CollectionProxy)).void }
243
+ sig { params(value: T::Enumerable[::SpellBook]).void }
244
244
  def spell_books=(value); end
245
245
 
246
246
  sig { returns(T.nilable(::Wand)) }
@@ -240,7 +240,7 @@ module Wizard::GeneratedAssociationMethods
240
240
  sig { returns(::SpellBook::ActiveRecord_Associations_CollectionProxy) }
241
241
  def spell_books; end
242
242
 
243
- sig { params(value: T.any(T::Array[::SpellBook], ::SpellBook::ActiveRecord_Associations_CollectionProxy)).void }
243
+ sig { params(value: T::Enumerable[::SpellBook]).void }
244
244
  def spell_books=(value); end
245
245
 
246
246
  sig { returns(T.nilable(::Wand)) }
@@ -240,7 +240,7 @@ module Wizard::GeneratedAssociationMethods
240
240
  sig { returns(ActiveRecord::Associations::CollectionProxy) }
241
241
  def spell_books; end
242
242
 
243
- sig { params(value: T.any(T::Array[T.untyped], ActiveRecord::Associations::CollectionProxy)).void }
243
+ sig { params(value: T::Enumerable[T.untyped]).void }
244
244
  def spell_books=(value); end
245
245
 
246
246
  sig { returns(T.nilable(::Wand)) }
@@ -3,5 +3,5 @@
3
3
  # Please rerun rake rails_rbi:mailers to regenerate.
4
4
  class DailyProphetMailer
5
5
  sig { params(wizards: T::Array[Wizard], hotnews_only: T::Boolean).returns(ActionMailer::MessageDelivery) }
6
- def self.notify_subscribers(wizards, hotnews_only); end
6
+ def self.notify_subscribers(wizards:, hotnews_only:); end
7
7
  end
@@ -0,0 +1,728 @@
1
+ # This is an autogenerated file for dynamic methods in Robe
2
+ # Please rerun rake rails_rbi:models[Robe] to regenerate.
3
+
4
+ # typed: strong
5
+ module Robe::ActiveRelation_WhereNot
6
+ sig { params(opts: T.untyped, rest: T.untyped).returns(T.self_type) }
7
+ def not(opts, *rest); end
8
+ end
9
+
10
+ module Robe::GeneratedAssociationMethods
11
+ extend T::Sig
12
+
13
+ sig { returns(T.nilable(::Wizard)) }
14
+ def wizard; end
15
+
16
+ sig { params(value: T.nilable(::Wizard)).void }
17
+ def wizard=(value); end
18
+ end
19
+
20
+ module Robe::CustomFinderMethods
21
+ sig { params(limit: Integer).returns(T::Array[Robe]) }
22
+ def first_n(limit); end
23
+
24
+ sig { params(limit: Integer).returns(T::Array[Robe]) }
25
+ def last_n(limit); end
26
+
27
+ sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Robe]) }
28
+ def find_n(*args); end
29
+
30
+ sig { params(id: Integer).returns(T.nilable(Robe)) }
31
+ def find_by_id(id); end
32
+
33
+ sig { params(id: Integer).returns(Robe) }
34
+ def find_by_id!(id); end
35
+ end
36
+
37
+ class Robe < ApplicationRecord
38
+ include Robe::GeneratedAssociationMethods
39
+ extend Robe::CustomFinderMethods
40
+ extend T::Sig
41
+ extend T::Generic
42
+
43
+ sig { returns(Robe::ActiveRecord_Relation) }
44
+ def self.all; end
45
+
46
+ sig { params(block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_Relation) }
47
+ def self.unscoped(&block); end
48
+
49
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
50
+ def self.select(*args); end
51
+
52
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
53
+ def self.order(*args); end
54
+
55
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
56
+ def self.reorder(*args); end
57
+
58
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
59
+ def self.group(*args); end
60
+
61
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
62
+ def self.limit(*args); end
63
+
64
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
65
+ def self.offset(*args); end
66
+
67
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
68
+ def self.joins(*args); end
69
+
70
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
71
+ def self.left_joins(*args); end
72
+
73
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
74
+ def self.left_outer_joins(*args); end
75
+
76
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
77
+ def self.where(*args); end
78
+
79
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
80
+ def self.rewhere(*args); end
81
+
82
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
83
+ def self.preload(*args); end
84
+
85
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
86
+ def self.eager_load(*args); end
87
+
88
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
89
+ def self.includes(*args); end
90
+
91
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
92
+ def self.from(*args); end
93
+
94
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
95
+ def self.lock(*args); end
96
+
97
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
98
+ def self.readonly(*args); end
99
+
100
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
101
+ def self.or(*args); end
102
+
103
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
104
+ def self.having(*args); end
105
+
106
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
107
+ def self.create_with(*args); end
108
+
109
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
110
+ def self.distinct(*args); end
111
+
112
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
113
+ def self.references(*args); end
114
+
115
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
116
+ def self.none(*args); end
117
+
118
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
119
+ def self.unscope(*args); end
120
+
121
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
122
+ def self.merge(*args); end
123
+
124
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
125
+ def self.except(*args); end
126
+
127
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_Relation) }
128
+ def self.extending(*args, &block); end
129
+
130
+ sig { params(args: T.untyped).returns(Robe) }
131
+ def self.find(*args); end
132
+
133
+ sig { params(args: T.untyped).returns(T.nilable(Robe)) }
134
+ def self.find_by(*args); end
135
+
136
+ sig { params(args: T.untyped).returns(Robe) }
137
+ def self.find_by!(*args); end
138
+
139
+ sig { returns(T.nilable(Robe)) }
140
+ def self.first; end
141
+
142
+ sig { returns(Robe) }
143
+ def self.first!; end
144
+
145
+ sig { returns(T.nilable(Robe)) }
146
+ def self.second; end
147
+
148
+ sig { returns(Robe) }
149
+ def self.second!; end
150
+
151
+ sig { returns(T.nilable(Robe)) }
152
+ def self.third; end
153
+
154
+ sig { returns(Robe) }
155
+ def self.third!; end
156
+
157
+ sig { returns(T.nilable(Robe)) }
158
+ def self.third_to_last; end
159
+
160
+ sig { returns(Robe) }
161
+ def self.third_to_last!; end
162
+
163
+ sig { returns(T.nilable(Robe)) }
164
+ def self.second_to_last; end
165
+
166
+ sig { returns(Robe) }
167
+ def self.second_to_last!; end
168
+
169
+ sig { returns(T.nilable(Robe)) }
170
+ def self.last; end
171
+
172
+ sig { returns(Robe) }
173
+ def self.last!; end
174
+
175
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
176
+ def self.exists?(conditions = nil); end
177
+
178
+ sig { params(args: T.untyped).returns(T::Boolean) }
179
+ def self.any?(*args); end
180
+
181
+ sig { params(args: T.untyped).returns(T::Boolean) }
182
+ def self.many?(*args); end
183
+
184
+ sig { params(args: T.untyped).returns(T::Boolean) }
185
+ def self.none?(*args); end
186
+
187
+ sig { params(args: T.untyped).returns(T::Boolean) }
188
+ def self.one?(*args); end
189
+
190
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Robe) }
191
+ def self.create(attributes = nil, &block); end
192
+
193
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Robe) }
194
+ def self.create!(attributes = nil, &block); end
195
+
196
+ sig { params(attributes: T.untyped, block: T.untyped).returns(Robe) }
197
+ def self.new(attributes = nil, &block); end
198
+ end
199
+
200
+ class Robe::ActiveRecord_Relation < ActiveRecord::Relation
201
+ include Robe::ActiveRelation_WhereNot
202
+ include Robe::CustomFinderMethods
203
+ include Enumerable
204
+ extend T::Sig
205
+ extend T::Generic
206
+ Elem = type_member(fixed: Robe)
207
+
208
+ sig { returns(Robe::ActiveRecord_Relation) }
209
+ def all; end
210
+
211
+ sig { params(block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_Relation) }
212
+ def unscoped(&block); end
213
+
214
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
215
+ def select(*args); end
216
+
217
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
218
+ def order(*args); end
219
+
220
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
221
+ def reorder(*args); end
222
+
223
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
224
+ def group(*args); end
225
+
226
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
227
+ def limit(*args); end
228
+
229
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
230
+ def offset(*args); end
231
+
232
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
233
+ def joins(*args); end
234
+
235
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
236
+ def left_joins(*args); end
237
+
238
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
239
+ def left_outer_joins(*args); end
240
+
241
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
242
+ def where(*args); end
243
+
244
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
245
+ def rewhere(*args); end
246
+
247
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
248
+ def preload(*args); end
249
+
250
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
251
+ def eager_load(*args); end
252
+
253
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
254
+ def includes(*args); end
255
+
256
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
257
+ def from(*args); end
258
+
259
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
260
+ def lock(*args); end
261
+
262
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
263
+ def readonly(*args); end
264
+
265
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
266
+ def or(*args); end
267
+
268
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
269
+ def having(*args); end
270
+
271
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
272
+ def create_with(*args); end
273
+
274
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
275
+ def distinct(*args); end
276
+
277
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
278
+ def references(*args); end
279
+
280
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
281
+ def none(*args); end
282
+
283
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
284
+ def unscope(*args); end
285
+
286
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
287
+ def merge(*args); end
288
+
289
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
290
+ def except(*args); end
291
+
292
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_Relation) }
293
+ def extending(*args, &block); end
294
+
295
+ sig { params(args: T.untyped).returns(Robe) }
296
+ def find(*args); end
297
+
298
+ sig { params(args: T.untyped).returns(T.nilable(Robe)) }
299
+ def find_by(*args); end
300
+
301
+ sig { params(args: T.untyped).returns(Robe) }
302
+ def find_by!(*args); end
303
+
304
+ sig { returns(T.nilable(Robe)) }
305
+ def first; end
306
+
307
+ sig { returns(Robe) }
308
+ def first!; end
309
+
310
+ sig { returns(T.nilable(Robe)) }
311
+ def second; end
312
+
313
+ sig { returns(Robe) }
314
+ def second!; end
315
+
316
+ sig { returns(T.nilable(Robe)) }
317
+ def third; end
318
+
319
+ sig { returns(Robe) }
320
+ def third!; end
321
+
322
+ sig { returns(T.nilable(Robe)) }
323
+ def third_to_last; end
324
+
325
+ sig { returns(Robe) }
326
+ def third_to_last!; end
327
+
328
+ sig { returns(T.nilable(Robe)) }
329
+ def second_to_last; end
330
+
331
+ sig { returns(Robe) }
332
+ def second_to_last!; end
333
+
334
+ sig { returns(T.nilable(Robe)) }
335
+ def last; end
336
+
337
+ sig { returns(Robe) }
338
+ def last!; end
339
+
340
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
341
+ def exists?(conditions = nil); end
342
+
343
+ sig { params(args: T.untyped).returns(T::Boolean) }
344
+ def any?(*args); end
345
+
346
+ sig { params(args: T.untyped).returns(T::Boolean) }
347
+ def many?(*args); end
348
+
349
+ sig { params(args: T.untyped).returns(T::Boolean) }
350
+ def none?(*args); end
351
+
352
+ sig { params(args: T.untyped).returns(T::Boolean) }
353
+ def one?(*args); end
354
+
355
+ sig { override.params(block: T.proc.params(e: Robe).void).returns(T::Array[Robe]) }
356
+ def each(&block); end
357
+
358
+ sig { params(level: T.nilable(Integer)).returns(T::Array[Robe]) }
359
+ def flatten(level); end
360
+
361
+ sig { returns(T::Array[Robe]) }
362
+ def to_a; end
363
+
364
+ sig do
365
+ type_parameters(:U).params(
366
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
367
+ )
368
+ .returns(T::Array[T.type_parameter(:U)])
369
+ end
370
+ def map(&blk); end
371
+ end
372
+
373
+ class Robe::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
374
+ include Robe::ActiveRelation_WhereNot
375
+ include Robe::CustomFinderMethods
376
+ include Enumerable
377
+ extend T::Sig
378
+ extend T::Generic
379
+ Elem = type_member(fixed: Robe)
380
+
381
+ sig { returns(Robe::ActiveRecord_AssociationRelation) }
382
+ def all; end
383
+
384
+ sig { params(block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_AssociationRelation) }
385
+ def unscoped(&block); end
386
+
387
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
388
+ def select(*args); end
389
+
390
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
391
+ def order(*args); end
392
+
393
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
394
+ def reorder(*args); end
395
+
396
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
397
+ def group(*args); end
398
+
399
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
400
+ def limit(*args); end
401
+
402
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
403
+ def offset(*args); end
404
+
405
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
406
+ def joins(*args); end
407
+
408
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
409
+ def left_joins(*args); end
410
+
411
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
412
+ def left_outer_joins(*args); end
413
+
414
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
415
+ def where(*args); end
416
+
417
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
418
+ def rewhere(*args); end
419
+
420
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
421
+ def preload(*args); end
422
+
423
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
424
+ def eager_load(*args); end
425
+
426
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
427
+ def includes(*args); end
428
+
429
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
430
+ def from(*args); end
431
+
432
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
433
+ def lock(*args); end
434
+
435
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
436
+ def readonly(*args); end
437
+
438
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
439
+ def or(*args); end
440
+
441
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
442
+ def having(*args); end
443
+
444
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
445
+ def create_with(*args); end
446
+
447
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
448
+ def distinct(*args); end
449
+
450
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
451
+ def references(*args); end
452
+
453
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
454
+ def none(*args); end
455
+
456
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
457
+ def unscope(*args); end
458
+
459
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
460
+ def merge(*args); end
461
+
462
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
463
+ def except(*args); end
464
+
465
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_AssociationRelation) }
466
+ def extending(*args, &block); end
467
+
468
+ sig { params(args: T.untyped).returns(Robe) }
469
+ def find(*args); end
470
+
471
+ sig { params(args: T.untyped).returns(T.nilable(Robe)) }
472
+ def find_by(*args); end
473
+
474
+ sig { params(args: T.untyped).returns(Robe) }
475
+ def find_by!(*args); end
476
+
477
+ sig { returns(T.nilable(Robe)) }
478
+ def first; end
479
+
480
+ sig { returns(Robe) }
481
+ def first!; end
482
+
483
+ sig { returns(T.nilable(Robe)) }
484
+ def second; end
485
+
486
+ sig { returns(Robe) }
487
+ def second!; end
488
+
489
+ sig { returns(T.nilable(Robe)) }
490
+ def third; end
491
+
492
+ sig { returns(Robe) }
493
+ def third!; end
494
+
495
+ sig { returns(T.nilable(Robe)) }
496
+ def third_to_last; end
497
+
498
+ sig { returns(Robe) }
499
+ def third_to_last!; end
500
+
501
+ sig { returns(T.nilable(Robe)) }
502
+ def second_to_last; end
503
+
504
+ sig { returns(Robe) }
505
+ def second_to_last!; end
506
+
507
+ sig { returns(T.nilable(Robe)) }
508
+ def last; end
509
+
510
+ sig { returns(Robe) }
511
+ def last!; end
512
+
513
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
514
+ def exists?(conditions = nil); end
515
+
516
+ sig { params(args: T.untyped).returns(T::Boolean) }
517
+ def any?(*args); end
518
+
519
+ sig { params(args: T.untyped).returns(T::Boolean) }
520
+ def many?(*args); end
521
+
522
+ sig { params(args: T.untyped).returns(T::Boolean) }
523
+ def none?(*args); end
524
+
525
+ sig { params(args: T.untyped).returns(T::Boolean) }
526
+ def one?(*args); end
527
+
528
+ sig { override.params(block: T.proc.params(e: Robe).void).returns(T::Array[Robe]) }
529
+ def each(&block); end
530
+
531
+ sig { params(level: T.nilable(Integer)).returns(T::Array[Robe]) }
532
+ def flatten(level); end
533
+
534
+ sig { returns(T::Array[Robe]) }
535
+ def to_a; end
536
+
537
+ sig do
538
+ type_parameters(:U).params(
539
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
540
+ )
541
+ .returns(T::Array[T.type_parameter(:U)])
542
+ end
543
+ def map(&blk); end
544
+ end
545
+
546
+ class Robe::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associations::CollectionProxy
547
+ include Robe::CustomFinderMethods
548
+ include Enumerable
549
+ extend T::Sig
550
+ extend T::Generic
551
+ Elem = type_member(fixed: Robe)
552
+
553
+ sig { returns(Robe::ActiveRecord_AssociationRelation) }
554
+ def all; end
555
+
556
+ sig { params(block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_AssociationRelation) }
557
+ def unscoped(&block); end
558
+
559
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
560
+ def select(*args); end
561
+
562
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
563
+ def order(*args); end
564
+
565
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
566
+ def reorder(*args); end
567
+
568
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
569
+ def group(*args); end
570
+
571
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
572
+ def limit(*args); end
573
+
574
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
575
+ def offset(*args); end
576
+
577
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
578
+ def joins(*args); end
579
+
580
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
581
+ def left_joins(*args); end
582
+
583
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
584
+ def left_outer_joins(*args); end
585
+
586
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
587
+ def where(*args); end
588
+
589
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
590
+ def rewhere(*args); end
591
+
592
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
593
+ def preload(*args); end
594
+
595
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
596
+ def eager_load(*args); end
597
+
598
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
599
+ def includes(*args); end
600
+
601
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
602
+ def from(*args); end
603
+
604
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
605
+ def lock(*args); end
606
+
607
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
608
+ def readonly(*args); end
609
+
610
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
611
+ def or(*args); end
612
+
613
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
614
+ def having(*args); end
615
+
616
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
617
+ def create_with(*args); end
618
+
619
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
620
+ def distinct(*args); end
621
+
622
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
623
+ def references(*args); end
624
+
625
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
626
+ def none(*args); end
627
+
628
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
629
+ def unscope(*args); end
630
+
631
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
632
+ def merge(*args); end
633
+
634
+ sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
635
+ def except(*args); end
636
+
637
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_AssociationRelation) }
638
+ def extending(*args, &block); end
639
+
640
+ sig { params(args: T.untyped).returns(Robe) }
641
+ def find(*args); end
642
+
643
+ sig { params(args: T.untyped).returns(T.nilable(Robe)) }
644
+ def find_by(*args); end
645
+
646
+ sig { params(args: T.untyped).returns(Robe) }
647
+ def find_by!(*args); end
648
+
649
+ sig { returns(T.nilable(Robe)) }
650
+ def first; end
651
+
652
+ sig { returns(Robe) }
653
+ def first!; end
654
+
655
+ sig { returns(T.nilable(Robe)) }
656
+ def second; end
657
+
658
+ sig { returns(Robe) }
659
+ def second!; end
660
+
661
+ sig { returns(T.nilable(Robe)) }
662
+ def third; end
663
+
664
+ sig { returns(Robe) }
665
+ def third!; end
666
+
667
+ sig { returns(T.nilable(Robe)) }
668
+ def third_to_last; end
669
+
670
+ sig { returns(Robe) }
671
+ def third_to_last!; end
672
+
673
+ sig { returns(T.nilable(Robe)) }
674
+ def second_to_last; end
675
+
676
+ sig { returns(Robe) }
677
+ def second_to_last!; end
678
+
679
+ sig { returns(T.nilable(Robe)) }
680
+ def last; end
681
+
682
+ sig { returns(Robe) }
683
+ def last!; end
684
+
685
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
686
+ def exists?(conditions = nil); end
687
+
688
+ sig { params(args: T.untyped).returns(T::Boolean) }
689
+ def any?(*args); end
690
+
691
+ sig { params(args: T.untyped).returns(T::Boolean) }
692
+ def many?(*args); end
693
+
694
+ sig { params(args: T.untyped).returns(T::Boolean) }
695
+ def none?(*args); end
696
+
697
+ sig { params(args: T.untyped).returns(T::Boolean) }
698
+ def one?(*args); end
699
+
700
+ sig { override.params(block: T.proc.params(e: Robe).void).returns(T::Array[Robe]) }
701
+ def each(&block); end
702
+
703
+ sig { params(level: T.nilable(Integer)).returns(T::Array[Robe]) }
704
+ def flatten(level); end
705
+
706
+ sig { returns(T::Array[Robe]) }
707
+ def to_a; end
708
+
709
+ sig do
710
+ type_parameters(:U).params(
711
+ blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
712
+ )
713
+ .returns(T::Array[T.type_parameter(:U)])
714
+ end
715
+ def map(&blk); end
716
+
717
+ sig { params(records: T.any(Robe, T::Array[Robe])).returns(T.self_type) }
718
+ def <<(*records); end
719
+
720
+ sig { params(records: T.any(Robe, T::Array[Robe])).returns(T.self_type) }
721
+ def append(*records); end
722
+
723
+ sig { params(records: T.any(Robe, T::Array[Robe])).returns(T.self_type) }
724
+ def push(*records); end
725
+
726
+ sig { params(records: T.any(Robe, T::Array[Robe])).returns(T.self_type) }
727
+ def concat(*records); end
728
+ end