sorbet-rails 0.5.8.1 → 0.5.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/README.md +27 -4
  4. data/lib/bundled_rbi/active_record_relation.rbi +79 -0
  5. data/lib/sorbet-rails/gem_plugins/active_flag_plugin.rb +47 -0
  6. data/lib/sorbet-rails/gem_plugins/kaminari_plugin.rb +20 -1
  7. data/lib/sorbet-rails/gem_plugins/paperclip_plugin.rb +33 -0
  8. data/lib/sorbet-rails/model_plugins/active_record_assoc.rb +22 -6
  9. data/lib/sorbet-rails/model_plugins/active_record_attribute.rb +10 -2
  10. data/lib/sorbet-rails/model_plugins/active_record_finder_methods.rb +46 -35
  11. data/lib/sorbet-rails/model_plugins/enumerable_collections.rb +40 -34
  12. data/lib/sorbet-rails/model_plugins/plugins.rb +6 -0
  13. data/lib/sorbet-rails/routes_rbi_formatter.rb +4 -0
  14. data/lib/sorbet-rails/tasks/rails_rbi.rake +2 -1
  15. data/sorbet-rails.gemspec +2 -2
  16. data/spec/generators/rails-template.rb +25 -3
  17. data/spec/generators/sorbet_test_cases.rb +5 -0
  18. data/spec/model_rbi_formatter_spec.rb +1 -1
  19. data/spec/rake_rails_rbi_models_spec.rb +1 -0
  20. data/spec/support/v5.0/Gemfile +1 -1
  21. data/spec/support/v5.0/Gemfile.lock +18 -14
  22. data/spec/support/v5.0/app/models/school.rb +3 -0
  23. data/spec/support/v5.0/app/models/spell_book.rb +3 -1
  24. data/spec/support/v5.0/app/models/wizard.rb +3 -0
  25. data/spec/support/v5.0/config/environments/development.rb +1 -1
  26. data/spec/support/v5.0/config/initializers/sorbet_rails.rb +1 -1
  27. data/spec/support/v5.0/db/migrate/20190620000003_create_spell_books.rb +1 -1
  28. data/spec/support/v5.0/db/migrate/20190620000008_add_robe_to_wizard.rb +1 -1
  29. data/spec/support/v5.0/db/migrate/20190620000009_add_school.rb +10 -0
  30. data/spec/support/v5.0/db/schema.rb +9 -4
  31. data/spec/support/v5.0/sorbet_test_cases.rb +5 -0
  32. data/spec/support/v5.1/Gemfile +1 -1
  33. data/spec/support/v5.1/Gemfile.lock +18 -14
  34. data/spec/support/v5.1/app/models/school.rb +3 -0
  35. data/spec/support/v5.1/app/models/spell_book.rb +3 -1
  36. data/spec/support/v5.1/app/models/wizard.rb +3 -0
  37. data/spec/support/v5.1/config/environments/test.rb +1 -1
  38. data/spec/support/v5.1/config/initializers/sorbet_rails.rb +1 -1
  39. data/spec/support/v5.1/db/migrate/20190620000003_create_spell_books.rb +1 -1
  40. data/spec/support/v5.1/db/migrate/20190620000008_add_robe_to_wizard.rb +1 -1
  41. data/spec/support/v5.1/db/migrate/20190620000009_add_school.rb +10 -0
  42. data/spec/support/v5.1/db/schema.rb +9 -4
  43. data/spec/support/v5.1/sorbet_test_cases.rb +5 -0
  44. data/spec/support/v5.2/Gemfile +1 -1
  45. data/spec/support/v5.2/Gemfile.lock +54 -50
  46. data/spec/support/v5.2/app/models/school.rb +3 -0
  47. data/spec/support/v5.2/app/models/spell_book.rb +3 -1
  48. data/spec/support/v5.2/app/models/wizard.rb +3 -0
  49. data/spec/support/v5.2/config/environments/development.rb +1 -1
  50. data/spec/support/v5.2/config/initializers/sorbet_rails.rb +1 -1
  51. data/spec/support/v5.2/db/migrate/20190620000003_create_spell_books.rb +1 -1
  52. data/spec/support/v5.2/db/migrate/20190620000008_add_robe_to_wizard.rb +1 -1
  53. data/spec/support/v5.2/db/migrate/20190620000009_add_school.rb +10 -0
  54. data/spec/support/v5.2/db/schema.rb +9 -4
  55. data/spec/support/v5.2/sorbet_test_cases.rb +5 -0
  56. data/spec/support/v6.0/Gemfile +1 -1
  57. data/spec/support/v6.0/Gemfile.lock +70 -66
  58. data/spec/support/v6.0/app/models/school.rb +3 -0
  59. data/spec/support/v6.0/app/models/spell_book.rb +3 -1
  60. data/spec/support/v6.0/app/models/wizard.rb +3 -0
  61. data/spec/support/v6.0/config/environments/development.rb +1 -1
  62. data/spec/support/v6.0/config/initializers/sorbet_rails.rb +1 -1
  63. data/spec/support/v6.0/db/migrate/20190620000003_create_spell_books.rb +1 -1
  64. data/spec/support/v6.0/db/migrate/20190620000008_add_robe_to_wizard.rb +1 -1
  65. data/spec/support/v6.0/db/migrate/20190620000009_add_school.rb +10 -0
  66. data/spec/support/v6.0/db/schema.rb +10 -4
  67. data/spec/support/v6.0/sorbet_test_cases.rb +5 -0
  68. data/spec/test_data/v5.0/expected_internal_metadata.rbi +0 -77
  69. data/spec/test_data/v5.0/expected_potion.rbi +0 -77
  70. data/spec/test_data/v5.0/expected_robe.rbi +23 -77
  71. data/spec/test_data/v5.0/expected_routes.rbi +4 -0
  72. data/spec/test_data/v5.0/expected_schema_migration.rbi +0 -77
  73. data/spec/test_data/v5.0/expected_school.rbi +651 -0
  74. data/spec/test_data/v5.0/expected_spell_book.rbi +3 -80
  75. data/spec/test_data/v5.0/expected_squib.rbi +17 -79
  76. data/spec/test_data/v5.0/expected_wand.rbi +4 -81
  77. data/spec/test_data/v5.0/expected_wizard.rbi +17 -79
  78. data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +17 -79
  79. data/spec/test_data/v5.1/expected_internal_metadata.rbi +0 -77
  80. data/spec/test_data/v5.1/expected_potion.rbi +0 -77
  81. data/spec/test_data/v5.1/expected_robe.rbi +23 -77
  82. data/spec/test_data/v5.1/expected_routes.rbi +4 -0
  83. data/spec/test_data/v5.1/expected_schema_migration.rbi +0 -77
  84. data/spec/test_data/v5.1/expected_school.rbi +663 -0
  85. data/spec/test_data/v5.1/expected_spell_book.rbi +3 -80
  86. data/spec/test_data/v5.1/expected_squib.rbi +17 -79
  87. data/spec/test_data/v5.1/expected_wand.rbi +4 -81
  88. data/spec/test_data/v5.1/expected_wizard.rbi +17 -79
  89. data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +17 -79
  90. data/spec/test_data/v5.2/expected_attachment.rbi +0 -77
  91. data/spec/test_data/v5.2/expected_blob.rbi +0 -77
  92. data/spec/test_data/v5.2/expected_internal_metadata.rbi +0 -77
  93. data/spec/test_data/v5.2/expected_potion.rbi +0 -77
  94. data/spec/test_data/v5.2/expected_robe.rbi +23 -77
  95. data/spec/test_data/v5.2/expected_routes.rbi +4 -0
  96. data/spec/test_data/v5.2/expected_schema_migration.rbi +0 -77
  97. data/spec/test_data/v5.2/expected_school.rbi +663 -0
  98. data/spec/test_data/v5.2/expected_spell_book.rbi +3 -80
  99. data/spec/test_data/v5.2/expected_squib.rbi +17 -79
  100. data/spec/test_data/v5.2/expected_wand.rbi +4 -81
  101. data/spec/test_data/v5.2/expected_wizard.rbi +17 -79
  102. data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +17 -79
  103. data/spec/test_data/v6.0/expected_attachment.rbi +0 -77
  104. data/spec/test_data/v6.0/expected_blob.rbi +0 -77
  105. data/spec/test_data/v6.0/expected_internal_metadata.rbi +0 -77
  106. data/spec/test_data/v6.0/expected_potion.rbi +0 -77
  107. data/spec/test_data/v6.0/expected_robe.rbi +23 -77
  108. data/spec/test_data/v6.0/expected_routes.rbi +4 -0
  109. data/spec/test_data/v6.0/expected_schema_migration.rbi +0 -77
  110. data/spec/test_data/v6.0/expected_school.rbi +711 -0
  111. data/spec/test_data/v6.0/expected_spell_book.rbi +3 -80
  112. data/spec/test_data/v6.0/expected_squib.rbi +17 -79
  113. data/spec/test_data/v6.0/expected_wand.rbi +4 -81
  114. data/spec/test_data/v6.0/expected_wizard.rbi +17 -79
  115. data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +17 -79
  116. metadata +31 -4
@@ -317,83 +317,6 @@ class ActiveStorage::Blob::ActiveRecord_Relation < ActiveRecord::Relation
317
317
 
318
318
  sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
319
319
  def extending(*args, &block); end
320
-
321
- sig { params(args: T.untyped).returns(ActiveStorage::Blob) }
322
- def find(*args); end
323
-
324
- sig { params(args: T.untyped).returns(T.nilable(ActiveStorage::Blob)) }
325
- def find_by(*args); end
326
-
327
- sig { params(args: T.untyped).returns(ActiveStorage::Blob) }
328
- def find_by!(*args); end
329
-
330
- sig { returns(T.nilable(ActiveStorage::Blob)) }
331
- def first; end
332
-
333
- sig { returns(ActiveStorage::Blob) }
334
- def first!; end
335
-
336
- sig { returns(T.nilable(ActiveStorage::Blob)) }
337
- def second; end
338
-
339
- sig { returns(ActiveStorage::Blob) }
340
- def second!; end
341
-
342
- sig { returns(T.nilable(ActiveStorage::Blob)) }
343
- def third; end
344
-
345
- sig { returns(ActiveStorage::Blob) }
346
- def third!; end
347
-
348
- sig { returns(T.nilable(ActiveStorage::Blob)) }
349
- def third_to_last; end
350
-
351
- sig { returns(ActiveStorage::Blob) }
352
- def third_to_last!; end
353
-
354
- sig { returns(T.nilable(ActiveStorage::Blob)) }
355
- def second_to_last; end
356
-
357
- sig { returns(ActiveStorage::Blob) }
358
- def second_to_last!; end
359
-
360
- sig { returns(T.nilable(ActiveStorage::Blob)) }
361
- def last; end
362
-
363
- sig { returns(ActiveStorage::Blob) }
364
- def last!; end
365
-
366
- sig { params(conditions: T.untyped).returns(T::Boolean) }
367
- def exists?(conditions = nil); end
368
-
369
- sig { params(args: T.untyped).returns(T::Boolean) }
370
- def any?(*args); end
371
-
372
- sig { params(args: T.untyped).returns(T::Boolean) }
373
- def many?(*args); end
374
-
375
- sig { params(args: T.untyped).returns(T::Boolean) }
376
- def none?(*args); end
377
-
378
- sig { params(args: T.untyped).returns(T::Boolean) }
379
- def one?(*args); end
380
-
381
- sig { override.params(block: T.proc.params(e: ActiveStorage::Blob).void).returns(T::Array[ActiveStorage::Blob]) }
382
- def each(&block); end
383
-
384
- sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveStorage::Blob]) }
385
- def flatten(level); end
386
-
387
- sig { returns(T::Array[ActiveStorage::Blob]) }
388
- def to_a; end
389
-
390
- sig do
391
- type_parameters(:U).params(
392
- blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
393
- )
394
- .returns(T::Array[T.type_parameter(:U)])
395
- end
396
- def map(&blk); end
397
320
  end
398
321
 
399
322
  class ActiveStorage::Blob::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
@@ -345,83 +345,6 @@ class ActiveRecord::InternalMetadata::ActiveRecord_Relation < ActiveRecord::Rela
345
345
 
346
346
  sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(ActiveRecord::InternalMetadata::ActiveRecord_Relation) }
347
347
  def extending(*args, &block); end
348
-
349
- sig { params(args: T.untyped).returns(ActiveRecord::InternalMetadata) }
350
- def find(*args); end
351
-
352
- sig { params(args: T.untyped).returns(T.nilable(ActiveRecord::InternalMetadata)) }
353
- def find_by(*args); end
354
-
355
- sig { params(args: T.untyped).returns(ActiveRecord::InternalMetadata) }
356
- def find_by!(*args); end
357
-
358
- sig { returns(T.nilable(ActiveRecord::InternalMetadata)) }
359
- def first; end
360
-
361
- sig { returns(ActiveRecord::InternalMetadata) }
362
- def first!; end
363
-
364
- sig { returns(T.nilable(ActiveRecord::InternalMetadata)) }
365
- def second; end
366
-
367
- sig { returns(ActiveRecord::InternalMetadata) }
368
- def second!; end
369
-
370
- sig { returns(T.nilable(ActiveRecord::InternalMetadata)) }
371
- def third; end
372
-
373
- sig { returns(ActiveRecord::InternalMetadata) }
374
- def third!; end
375
-
376
- sig { returns(T.nilable(ActiveRecord::InternalMetadata)) }
377
- def third_to_last; end
378
-
379
- sig { returns(ActiveRecord::InternalMetadata) }
380
- def third_to_last!; end
381
-
382
- sig { returns(T.nilable(ActiveRecord::InternalMetadata)) }
383
- def second_to_last; end
384
-
385
- sig { returns(ActiveRecord::InternalMetadata) }
386
- def second_to_last!; end
387
-
388
- sig { returns(T.nilable(ActiveRecord::InternalMetadata)) }
389
- def last; end
390
-
391
- sig { returns(ActiveRecord::InternalMetadata) }
392
- def last!; end
393
-
394
- sig { params(conditions: T.untyped).returns(T::Boolean) }
395
- def exists?(conditions = nil); end
396
-
397
- sig { params(args: T.untyped).returns(T::Boolean) }
398
- def any?(*args); end
399
-
400
- sig { params(args: T.untyped).returns(T::Boolean) }
401
- def many?(*args); end
402
-
403
- sig { params(args: T.untyped).returns(T::Boolean) }
404
- def none?(*args); end
405
-
406
- sig { params(args: T.untyped).returns(T::Boolean) }
407
- def one?(*args); end
408
-
409
- sig { override.params(block: T.proc.params(e: ActiveRecord::InternalMetadata).void).returns(T::Array[ActiveRecord::InternalMetadata]) }
410
- def each(&block); end
411
-
412
- sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveRecord::InternalMetadata]) }
413
- def flatten(level); end
414
-
415
- sig { returns(T::Array[ActiveRecord::InternalMetadata]) }
416
- def to_a; end
417
-
418
- sig do
419
- type_parameters(:U).params(
420
- blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
421
- )
422
- .returns(T::Array[T.type_parameter(:U)])
423
- end
424
- def map(&blk); end
425
348
  end
426
349
 
427
350
  class ActiveRecord::InternalMetadata::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
@@ -304,83 +304,6 @@ class Potion::ActiveRecord_Relation < ActiveRecord::Relation
304
304
 
305
305
  sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Potion::ActiveRecord_Relation) }
306
306
  def extending(*args, &block); end
307
-
308
- sig { params(args: T.untyped).returns(Potion) }
309
- def find(*args); end
310
-
311
- sig { params(args: T.untyped).returns(T.nilable(Potion)) }
312
- def find_by(*args); end
313
-
314
- sig { params(args: T.untyped).returns(Potion) }
315
- def find_by!(*args); end
316
-
317
- sig { returns(T.nilable(Potion)) }
318
- def first; end
319
-
320
- sig { returns(Potion) }
321
- def first!; end
322
-
323
- sig { returns(T.nilable(Potion)) }
324
- def second; end
325
-
326
- sig { returns(Potion) }
327
- def second!; end
328
-
329
- sig { returns(T.nilable(Potion)) }
330
- def third; end
331
-
332
- sig { returns(Potion) }
333
- def third!; end
334
-
335
- sig { returns(T.nilable(Potion)) }
336
- def third_to_last; end
337
-
338
- sig { returns(Potion) }
339
- def third_to_last!; end
340
-
341
- sig { returns(T.nilable(Potion)) }
342
- def second_to_last; end
343
-
344
- sig { returns(Potion) }
345
- def second_to_last!; end
346
-
347
- sig { returns(T.nilable(Potion)) }
348
- def last; end
349
-
350
- sig { returns(Potion) }
351
- def last!; end
352
-
353
- sig { params(conditions: T.untyped).returns(T::Boolean) }
354
- def exists?(conditions = nil); end
355
-
356
- sig { params(args: T.untyped).returns(T::Boolean) }
357
- def any?(*args); end
358
-
359
- sig { params(args: T.untyped).returns(T::Boolean) }
360
- def many?(*args); end
361
-
362
- sig { params(args: T.untyped).returns(T::Boolean) }
363
- def none?(*args); end
364
-
365
- sig { params(args: T.untyped).returns(T::Boolean) }
366
- def one?(*args); end
367
-
368
- sig { override.params(block: T.proc.params(e: Potion).void).returns(T::Array[Potion]) }
369
- def each(&block); end
370
-
371
- sig { params(level: T.nilable(Integer)).returns(T::Array[Potion]) }
372
- def flatten(level); end
373
-
374
- sig { returns(T::Array[Potion]) }
375
- def to_a; end
376
-
377
- sig do
378
- type_parameters(:U).params(
379
- blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
380
- )
381
- .returns(T::Array[T.type_parameter(:U)])
382
- end
383
- def map(&blk); end
384
307
  end
385
308
 
386
309
  class Potion::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
@@ -7,6 +7,28 @@ module Robe::ActiveRelation_WhereNot
7
7
  def not(opts, *rest); end
8
8
  end
9
9
 
10
+ module Robe::GeneratedAttributeMethods
11
+ extend T::Sig
12
+
13
+ sig { returns(Integer) }
14
+ def id; end
15
+
16
+ sig { params(value: T.any(Integer, Float, ActiveSupport::Duration)).void }
17
+ def id=(value); end
18
+
19
+ sig { returns(T::Boolean) }
20
+ def id?; end
21
+
22
+ sig { returns(T.nilable(Integer)) }
23
+ def wizard_id; end
24
+
25
+ sig { params(value: T.nilable(T.any(Integer, Float, ActiveSupport::Duration))).void }
26
+ def wizard_id=(value); end
27
+
28
+ sig { returns(T::Boolean) }
29
+ def wizard_id?; end
30
+ end
31
+
10
32
  module Robe::GeneratedAssociationMethods
11
33
  extend T::Sig
12
34
 
@@ -35,6 +57,7 @@ module Robe::CustomFinderMethods
35
57
  end
36
58
 
37
59
  class Robe < ApplicationRecord
60
+ include Robe::GeneratedAttributeMethods
38
61
  include Robe::GeneratedAssociationMethods
39
62
  extend Robe::CustomFinderMethods
40
63
  extend T::Sig
@@ -315,83 +338,6 @@ class Robe::ActiveRecord_Relation < ActiveRecord::Relation
315
338
 
316
339
  sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_Relation) }
317
340
  def extending(*args, &block); end
318
-
319
- sig { params(args: T.untyped).returns(Robe) }
320
- def find(*args); end
321
-
322
- sig { params(args: T.untyped).returns(T.nilable(Robe)) }
323
- def find_by(*args); end
324
-
325
- sig { params(args: T.untyped).returns(Robe) }
326
- def find_by!(*args); end
327
-
328
- sig { returns(T.nilable(Robe)) }
329
- def first; end
330
-
331
- sig { returns(Robe) }
332
- def first!; end
333
-
334
- sig { returns(T.nilable(Robe)) }
335
- def second; end
336
-
337
- sig { returns(Robe) }
338
- def second!; end
339
-
340
- sig { returns(T.nilable(Robe)) }
341
- def third; end
342
-
343
- sig { returns(Robe) }
344
- def third!; end
345
-
346
- sig { returns(T.nilable(Robe)) }
347
- def third_to_last; end
348
-
349
- sig { returns(Robe) }
350
- def third_to_last!; end
351
-
352
- sig { returns(T.nilable(Robe)) }
353
- def second_to_last; end
354
-
355
- sig { returns(Robe) }
356
- def second_to_last!; end
357
-
358
- sig { returns(T.nilable(Robe)) }
359
- def last; end
360
-
361
- sig { returns(Robe) }
362
- def last!; end
363
-
364
- sig { params(conditions: T.untyped).returns(T::Boolean) }
365
- def exists?(conditions = nil); end
366
-
367
- sig { params(args: T.untyped).returns(T::Boolean) }
368
- def any?(*args); end
369
-
370
- sig { params(args: T.untyped).returns(T::Boolean) }
371
- def many?(*args); end
372
-
373
- sig { params(args: T.untyped).returns(T::Boolean) }
374
- def none?(*args); end
375
-
376
- sig { params(args: T.untyped).returns(T::Boolean) }
377
- def one?(*args); end
378
-
379
- sig { override.params(block: T.proc.params(e: Robe).void).returns(T::Array[Robe]) }
380
- def each(&block); end
381
-
382
- sig { params(level: T.nilable(Integer)).returns(T::Array[Robe]) }
383
- def flatten(level); end
384
-
385
- sig { returns(T::Array[Robe]) }
386
- def to_a; end
387
-
388
- sig do
389
- type_parameters(:U).params(
390
- blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
391
- )
392
- .returns(T::Array[T.type_parameter(:U)])
393
- end
394
- def map(&blk); end
395
341
  end
396
342
 
397
343
  class Robe::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
@@ -9,6 +9,10 @@ module ActionView::Helpers
9
9
  include GeneratedUrlHelpers
10
10
  end
11
11
 
12
+ class ActionMailer::Base
13
+ include GeneratedUrlHelpers
14
+ end
15
+
12
16
  module GeneratedUrlHelpers
13
17
  # Sigs for route /test/index(.:format)
14
18
  sig { params(args: T.untyped, kwargs: T.untyped).returns(String) }
@@ -318,83 +318,6 @@ class ActiveRecord::SchemaMigration::ActiveRecord_Relation < ActiveRecord::Relat
318
318
 
319
319
  sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(ActiveRecord::SchemaMigration::ActiveRecord_Relation) }
320
320
  def extending(*args, &block); end
321
-
322
- sig { params(args: T.untyped).returns(ActiveRecord::SchemaMigration) }
323
- def find(*args); end
324
-
325
- sig { params(args: T.untyped).returns(T.nilable(ActiveRecord::SchemaMigration)) }
326
- def find_by(*args); end
327
-
328
- sig { params(args: T.untyped).returns(ActiveRecord::SchemaMigration) }
329
- def find_by!(*args); end
330
-
331
- sig { returns(T.nilable(ActiveRecord::SchemaMigration)) }
332
- def first; end
333
-
334
- sig { returns(ActiveRecord::SchemaMigration) }
335
- def first!; end
336
-
337
- sig { returns(T.nilable(ActiveRecord::SchemaMigration)) }
338
- def second; end
339
-
340
- sig { returns(ActiveRecord::SchemaMigration) }
341
- def second!; end
342
-
343
- sig { returns(T.nilable(ActiveRecord::SchemaMigration)) }
344
- def third; end
345
-
346
- sig { returns(ActiveRecord::SchemaMigration) }
347
- def third!; end
348
-
349
- sig { returns(T.nilable(ActiveRecord::SchemaMigration)) }
350
- def third_to_last; end
351
-
352
- sig { returns(ActiveRecord::SchemaMigration) }
353
- def third_to_last!; end
354
-
355
- sig { returns(T.nilable(ActiveRecord::SchemaMigration)) }
356
- def second_to_last; end
357
-
358
- sig { returns(ActiveRecord::SchemaMigration) }
359
- def second_to_last!; end
360
-
361
- sig { returns(T.nilable(ActiveRecord::SchemaMigration)) }
362
- def last; end
363
-
364
- sig { returns(ActiveRecord::SchemaMigration) }
365
- def last!; end
366
-
367
- sig { params(conditions: T.untyped).returns(T::Boolean) }
368
- def exists?(conditions = nil); end
369
-
370
- sig { params(args: T.untyped).returns(T::Boolean) }
371
- def any?(*args); end
372
-
373
- sig { params(args: T.untyped).returns(T::Boolean) }
374
- def many?(*args); end
375
-
376
- sig { params(args: T.untyped).returns(T::Boolean) }
377
- def none?(*args); end
378
-
379
- sig { params(args: T.untyped).returns(T::Boolean) }
380
- def one?(*args); end
381
-
382
- sig { override.params(block: T.proc.params(e: ActiveRecord::SchemaMigration).void).returns(T::Array[ActiveRecord::SchemaMigration]) }
383
- def each(&block); end
384
-
385
- sig { params(level: T.nilable(Integer)).returns(T::Array[ActiveRecord::SchemaMigration]) }
386
- def flatten(level); end
387
-
388
- sig { returns(T::Array[ActiveRecord::SchemaMigration]) }
389
- def to_a; end
390
-
391
- sig do
392
- type_parameters(:U).params(
393
- blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
394
- )
395
- .returns(T::Array[T.type_parameter(:U)])
396
- end
397
- def map(&blk); end
398
321
  end
399
322
 
400
323
  class ActiveRecord::SchemaMigration::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation