sorbet-rails 0.7.2 → 0.7.3

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 (130) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/lib/sorbet-rails/config.rb +1 -0
  4. data/lib/sorbet-rails/dependent_gem_rbis/activerecord.rbi +3 -0
  5. data/lib/sorbet-rails/model_plugins/active_record_assoc.rb +17 -5
  6. data/lib/sorbet-rails/model_plugins/active_record_attribute.rb +2 -0
  7. data/lib/sorbet-rails/model_plugins/active_record_serialized_attribute.rb +68 -0
  8. data/lib/sorbet-rails/model_plugins/base.rb +8 -0
  9. data/lib/sorbet-rails/model_plugins/plugins.rb +3 -0
  10. data/lib/sorbet-rails/model_rbi_formatter.rb +3 -3
  11. data/lib/sorbet-rails/rails_mixins/pluck_to_tstruct.rb +39 -2
  12. data/lib/sorbet-rails/routes_rbi_formatter.rb +4 -0
  13. data/lib/sorbet-rails/tasks/rails_rbi.rake +4 -3
  14. data/sorbet-rails.gemspec +1 -1
  15. data/spec/bin/run_spec.sh +1 -1
  16. data/spec/generators/rails-template.rb +16 -0
  17. data/spec/generators/sorbet_test_cases.rb +15 -0
  18. data/spec/pluck_to_tstruct_spec.rb +51 -25
  19. data/spec/sorbet_spec.rb +1 -1
  20. data/spec/support/v5.0/Gemfile.lock +4 -4
  21. data/spec/support/v5.0/app/controllers/application_controller.rb +1 -1
  22. data/spec/support/v5.0/app/models/headmaster.rb +1 -1
  23. data/spec/support/v5.0/app/models/potion.rb +1 -1
  24. data/spec/support/v5.0/app/models/robe.rb +1 -1
  25. data/spec/support/v5.0/app/models/school.rb +1 -1
  26. data/spec/support/v5.0/app/models/spell.rb +1 -1
  27. data/spec/support/v5.0/app/models/subject.rb +1 -1
  28. data/spec/support/v5.0/app/models/wizard.rb +5 -0
  29. data/spec/support/v5.0/config/environments/development.rb +1 -1
  30. data/spec/support/v5.0/config/environments/production.rb +1 -1
  31. data/spec/support/v5.0/config/environments/test.rb +1 -1
  32. data/spec/support/v5.0/config/initializers/wrap_parameters.rb +1 -1
  33. data/spec/support/v5.0/config/routes.rb +1 -1
  34. data/spec/support/v5.0/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
  35. data/spec/support/v5.0/db/schema.rb +8 -4
  36. data/spec/support/v5.0/sorbet_test_cases.rb +15 -0
  37. data/spec/support/v5.1/Gemfile.lock +4 -4
  38. data/spec/support/v5.1/app/controllers/application_controller.rb +1 -1
  39. data/spec/support/v5.1/app/models/headmaster.rb +1 -1
  40. data/spec/support/v5.1/app/models/school.rb +1 -1
  41. data/spec/support/v5.1/app/models/wizard.rb +5 -0
  42. data/spec/support/v5.1/config/environments/production.rb +1 -1
  43. data/spec/support/v5.1/config/initializers/wrap_parameters.rb +1 -1
  44. data/spec/support/v5.1/config/routes.rb +1 -1
  45. data/spec/support/v5.1/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
  46. data/spec/support/v5.1/db/schema.rb +5 -1
  47. data/spec/support/v5.1/sorbet_test_cases.rb +15 -0
  48. data/spec/support/v5.2/Gemfile.lock +4 -4
  49. data/spec/support/v5.2/app/models/headmaster.rb +1 -1
  50. data/spec/support/v5.2/app/models/school.rb +1 -1
  51. data/spec/support/v5.2/app/models/wizard.rb +5 -0
  52. data/spec/support/v5.2/config/environments/development.rb +1 -1
  53. data/spec/support/v5.2/config/environments/production.rb +1 -1
  54. data/spec/support/v5.2/config/environments/test.rb +1 -1
  55. data/spec/support/v5.2/config/initializers/wrap_parameters.rb +1 -1
  56. data/spec/support/v5.2/config/routes.rb +1 -1
  57. data/spec/support/v5.2/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
  58. data/spec/support/v5.2/db/schema.rb +5 -1
  59. data/spec/support/v5.2/sorbet_test_cases.rb +15 -0
  60. data/spec/support/v6.0/Gemfile.lock +4 -4
  61. data/spec/support/v6.0/app/models/wizard.rb +5 -0
  62. data/spec/support/v6.0/config/environments/development.rb +1 -1
  63. data/spec/support/v6.0/config/environments/production.rb +1 -1
  64. data/spec/support/v6.0/config/environments/test.rb +1 -1
  65. data/spec/support/v6.0/config/routes.rb +1 -1
  66. data/spec/support/v6.0/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
  67. data/spec/support/v6.0/db/schema.rb +5 -1
  68. data/spec/support/v6.0/sorbet_test_cases.rb +15 -0
  69. data/spec/test_data/v5.0/expected_headmaster.rbi +6 -0
  70. data/spec/test_data/v5.0/expected_potion.rbi +3 -0
  71. data/spec/test_data/v5.0/expected_robe.rbi +3 -0
  72. data/spec/test_data/v5.0/expected_routes.rbi +4 -0
  73. data/spec/test_data/v5.0/expected_school.rbi +3 -0
  74. data/spec/test_data/v5.0/expected_spell/habtm_spell_books.rbi +6 -0
  75. data/spec/test_data/v5.0/expected_spell_book.rbi +3 -0
  76. data/spec/test_data/v5.0/expected_spell_book/habtm_spells.rbi +6 -0
  77. data/spec/test_data/v5.0/expected_squib.rbi +45 -0
  78. data/spec/test_data/v5.0/expected_subject/habtm_wizards.rbi +6 -0
  79. data/spec/test_data/v5.0/expected_wand.rbi +3 -0
  80. data/spec/test_data/v5.0/expected_wizard.rbi +45 -0
  81. data/spec/test_data/v5.0/expected_wizard/habtm_subjects.rbi +6 -0
  82. data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +45 -0
  83. data/spec/test_data/v5.1/expected_headmaster.rbi +6 -0
  84. data/spec/test_data/v5.1/expected_potion.rbi +3 -0
  85. data/spec/test_data/v5.1/expected_robe.rbi +3 -0
  86. data/spec/test_data/v5.1/expected_routes.rbi +4 -0
  87. data/spec/test_data/v5.1/expected_school.rbi +3 -0
  88. data/spec/test_data/v5.1/expected_spell/habtm_spell_books.rbi +6 -0
  89. data/spec/test_data/v5.1/expected_spell_book.rbi +3 -0
  90. data/spec/test_data/v5.1/expected_spell_book/habtm_spells.rbi +6 -0
  91. data/spec/test_data/v5.1/expected_squib.rbi +45 -0
  92. data/spec/test_data/v5.1/expected_subject/habtm_wizards.rbi +6 -0
  93. data/spec/test_data/v5.1/expected_wand.rbi +3 -0
  94. data/spec/test_data/v5.1/expected_wizard.rbi +45 -0
  95. data/spec/test_data/v5.1/expected_wizard/habtm_subjects.rbi +6 -0
  96. data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +45 -0
  97. data/spec/test_data/v5.2/expected_attachment.rbi +6 -0
  98. data/spec/test_data/v5.2/expected_blob.rbi +6 -0
  99. data/spec/test_data/v5.2/expected_headmaster.rbi +6 -0
  100. data/spec/test_data/v5.2/expected_potion.rbi +3 -0
  101. data/spec/test_data/v5.2/expected_robe.rbi +3 -0
  102. data/spec/test_data/v5.2/expected_routes.rbi +4 -0
  103. data/spec/test_data/v5.2/expected_school.rbi +3 -0
  104. data/spec/test_data/v5.2/expected_spell/habtm_spell_books.rbi +6 -0
  105. data/spec/test_data/v5.2/expected_spell_book.rbi +3 -0
  106. data/spec/test_data/v5.2/expected_spell_book/habtm_spells.rbi +6 -0
  107. data/spec/test_data/v5.2/expected_squib.rbi +51 -0
  108. data/spec/test_data/v5.2/expected_subject/habtm_wizards.rbi +6 -0
  109. data/spec/test_data/v5.2/expected_wand.rbi +3 -0
  110. data/spec/test_data/v5.2/expected_wizard.rbi +51 -0
  111. data/spec/test_data/v5.2/expected_wizard/habtm_subjects.rbi +6 -0
  112. data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +51 -0
  113. data/spec/test_data/v6.0/expected_attachment.rbi +6 -0
  114. data/spec/test_data/v6.0/expected_blob.rbi +6 -0
  115. data/spec/test_data/v6.0/expected_headmaster.rbi +6 -0
  116. data/spec/test_data/v6.0/expected_potion.rbi +3 -0
  117. data/spec/test_data/v6.0/expected_robe.rbi +3 -0
  118. data/spec/test_data/v6.0/expected_routes.rbi +4 -0
  119. data/spec/test_data/v6.0/expected_school.rbi +3 -0
  120. data/spec/test_data/v6.0/expected_spell/habtm_spell_books.rbi +6 -0
  121. data/spec/test_data/v6.0/expected_spell_book.rbi +3 -0
  122. data/spec/test_data/v6.0/expected_spell_book/habtm_spells.rbi +6 -0
  123. data/spec/test_data/v6.0/expected_squib.rbi +51 -0
  124. data/spec/test_data/v6.0/expected_subject/habtm_wizards.rbi +6 -0
  125. data/spec/test_data/v6.0/expected_wand.rbi +3 -0
  126. data/spec/test_data/v6.0/expected_wizard.rbi +51 -0
  127. data/spec/test_data/v6.0/expected_wizard/habtm_subjects.rbi +6 -0
  128. data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +51 -0
  129. data/spec/tstruct_comparable.rb +13 -0
  130. metadata +12 -1
@@ -43,6 +43,9 @@ module Wizard::HABTM_Subjects::GeneratedAssociationMethods
43
43
  sig { params(value: T.nilable(::Wizard)).void }
44
44
  def left_side=(value); end
45
45
 
46
+ sig { returns(T.nilable(::Wizard)) }
47
+ def reload_left_side; end
48
+
46
49
  sig { returns(T.nilable(::Subject)) }
47
50
  def subject; end
48
51
 
@@ -57,6 +60,9 @@ module Wizard::HABTM_Subjects::GeneratedAssociationMethods
57
60
 
58
61
  sig { params(value: T.nilable(::Subject)).void }
59
62
  def subject=(value); end
63
+
64
+ sig { returns(T.nilable(::Subject)) }
65
+ def reload_subject; end
60
66
  end
61
67
 
62
68
  module Wizard::HABTM_Subjects::CustomFinderMethods
@@ -111,6 +111,44 @@ module Wizard::ActiveRelation_WhereNot
111
111
  def not(opts, *rest); end
112
112
  end
113
113
 
114
+ module Wizard::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(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))) }
134
+ def patronus_characteristics; end
135
+
136
+ sig { params(value: T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))).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
+
114
152
  module Wizard::GeneratedAttributeMethods
115
153
  sig { returns(T::Boolean) }
116
154
  def broom?; end
@@ -246,6 +284,9 @@ module Wizard::GeneratedAssociationMethods
246
284
  sig { params(value: T.nilable(T.untyped)).void }
247
285
  def school=(value); end
248
286
 
287
+ sig { returns(T.nilable(T.untyped)) }
288
+ def reload_school; end
289
+
249
290
  sig { returns(ActiveRecord::Associations::CollectionProxy) }
250
291
  def spell_books; end
251
292
 
@@ -272,6 +313,9 @@ module Wizard::GeneratedAssociationMethods
272
313
 
273
314
  sig { params(value: T.nilable(::Wand)).void }
274
315
  def wand=(value); end
316
+
317
+ sig { returns(T.nilable(::Wand)) }
318
+ def reload_wand; end
275
319
  end
276
320
 
277
321
  module Wizard::CustomFinderMethods
@@ -293,6 +337,7 @@ end
293
337
 
294
338
  class Wizard < ApplicationRecord
295
339
  include Wizard::EnumInstanceMethods
340
+ include Wizard::GeneratedSerializedAttributeMethods
296
341
  include Wizard::GeneratedAttributeMethods
297
342
  include Wizard::GeneratedAssociationMethods
298
343
  extend Wizard::CustomFinderMethods
@@ -52,6 +52,9 @@ module Headmaster::GeneratedAssociationMethods
52
52
  sig { params(value: ::School).void }
53
53
  def school=(value); end
54
54
 
55
+ sig { returns(::School) }
56
+ def reload_school; end
57
+
55
58
  sig { returns(::Wizard) }
56
59
  def wizard; end
57
60
 
@@ -66,6 +69,9 @@ module Headmaster::GeneratedAssociationMethods
66
69
 
67
70
  sig { params(value: ::Wizard).void }
68
71
  def wizard=(value); end
72
+
73
+ sig { returns(::Wizard) }
74
+ def reload_wizard; end
69
75
  end
70
76
 
71
77
  module Headmaster::CustomFinderMethods
@@ -22,6 +22,9 @@ module Potion::GeneratedAssociationMethods
22
22
 
23
23
  sig { params(value: T.nilable(::Wizard)).void }
24
24
  def wizard=(value); end
25
+
26
+ sig { returns(T.nilable(::Wizard)) }
27
+ def reload_wizard; end
25
28
  end
26
29
 
27
30
  module Potion::CustomFinderMethods
@@ -42,6 +42,9 @@ module Robe::GeneratedAssociationMethods
42
42
 
43
43
  sig { params(value: T.nilable(::Wizard)).void }
44
44
  def wizard=(value); end
45
+
46
+ sig { returns(T.nilable(::Wizard)) }
47
+ def reload_wizard; end
45
48
  end
46
49
 
47
50
  module Robe::CustomFinderMethods
@@ -5,6 +5,10 @@ class ActionController::Base
5
5
  include GeneratedUrlHelpers
6
6
  end
7
7
 
8
+ class ActionController::API
9
+ include GeneratedUrlHelpers
10
+ end
11
+
8
12
  module ActionView::Helpers
9
13
  include GeneratedUrlHelpers
10
14
  end
@@ -42,6 +42,9 @@ module School::GeneratedAssociationMethods
42
42
 
43
43
  sig { params(value: ::Headmaster).void }
44
44
  def headmaster=(value); end
45
+
46
+ sig { returns(::Headmaster) }
47
+ def reload_headmaster; end
45
48
  end
46
49
 
47
50
  module School::CustomFinderMethods
@@ -43,6 +43,9 @@ module Spell::HABTM_SpellBooks::GeneratedAssociationMethods
43
43
  sig { params(value: T.nilable(::Spell)).void }
44
44
  def left_side=(value); end
45
45
 
46
+ sig { returns(T.nilable(::Spell)) }
47
+ def reload_left_side; end
48
+
46
49
  sig { returns(::SpellBook) }
47
50
  def spell_book; end
48
51
 
@@ -57,6 +60,9 @@ module Spell::HABTM_SpellBooks::GeneratedAssociationMethods
57
60
 
58
61
  sig { params(value: ::SpellBook).void }
59
62
  def spell_book=(value); end
63
+
64
+ sig { returns(::SpellBook) }
65
+ def reload_spell_book; end
60
66
  end
61
67
 
62
68
  module Spell::HABTM_SpellBooks::CustomFinderMethods
@@ -89,6 +89,9 @@ module SpellBook::GeneratedAssociationMethods
89
89
 
90
90
  sig { params(value: ::Wizard).void }
91
91
  def wizard=(value); end
92
+
93
+ sig { returns(::Wizard) }
94
+ def reload_wizard; end
92
95
  end
93
96
 
94
97
  module SpellBook::CustomFinderMethods
@@ -43,6 +43,9 @@ module SpellBook::HABTM_Spells::GeneratedAssociationMethods
43
43
  sig { params(value: T.nilable(::SpellBook)).void }
44
44
  def left_side=(value); end
45
45
 
46
+ sig { returns(T.nilable(::SpellBook)) }
47
+ def reload_left_side; end
48
+
46
49
  sig { returns(::Spell) }
47
50
  def spell; end
48
51
 
@@ -57,6 +60,9 @@ module SpellBook::HABTM_Spells::GeneratedAssociationMethods
57
60
 
58
61
  sig { params(value: ::Spell).void }
59
62
  def spell=(value); end
63
+
64
+ sig { returns(::Spell) }
65
+ def reload_spell; end
60
66
  end
61
67
 
62
68
  module SpellBook::HABTM_Spells::CustomFinderMethods
@@ -111,6 +111,44 @@ module Squib::ActiveRelation_WhereNot
111
111
  def not(opts, *rest); end
112
112
  end
113
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(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))) }
134
+ def patronus_characteristics; end
135
+
136
+ sig { params(value: T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))).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
+
114
152
  module Squib::GeneratedAttributeMethods
115
153
  sig { returns(T.nilable(String)) }
116
154
  def broom; end
@@ -264,6 +302,9 @@ module Squib::GeneratedAssociationMethods
264
302
  sig { params(value: T.nilable(::School)).void }
265
303
  def school=(value); end
266
304
 
305
+ sig { returns(T.nilable(::School)) }
306
+ def reload_school; end
307
+
267
308
  sig { returns(::SpellBook::ActiveRecord_Associations_CollectionProxy) }
268
309
  def spell_books; end
269
310
 
@@ -296,6 +337,9 @@ module Squib::GeneratedAssociationMethods
296
337
 
297
338
  sig { params(value: T.nilable(::Wand)).void }
298
339
  def wand=(value); end
340
+
341
+ sig { returns(T.nilable(::Wand)) }
342
+ def reload_wand; end
299
343
  end
300
344
 
301
345
  module Squib::CustomFinderMethods
@@ -317,6 +361,7 @@ end
317
361
 
318
362
  class Squib < Wizard
319
363
  include Squib::EnumInstanceMethods
364
+ include Squib::GeneratedSerializedAttributeMethods
320
365
  include Squib::GeneratedAttributeMethods
321
366
  include Squib::GeneratedAssociationMethods
322
367
  extend Squib::CustomFinderMethods
@@ -43,6 +43,9 @@ module Subject::HABTM_Wizards::GeneratedAssociationMethods
43
43
  sig { params(value: T.nilable(::Subject)).void }
44
44
  def left_side=(value); end
45
45
 
46
+ sig { returns(T.nilable(::Subject)) }
47
+ def reload_left_side; end
48
+
46
49
  sig { returns(T.nilable(::Wizard)) }
47
50
  def wizard; end
48
51
 
@@ -57,6 +60,9 @@ module Subject::HABTM_Wizards::GeneratedAssociationMethods
57
60
 
58
61
  sig { params(value: T.nilable(::Wizard)).void }
59
62
  def wizard=(value); end
63
+
64
+ sig { returns(T.nilable(::Wizard)) }
65
+ def reload_wizard; end
60
66
  end
61
67
 
62
68
  module Subject::HABTM_Wizards::CustomFinderMethods
@@ -167,6 +167,9 @@ module Wand::GeneratedAssociationMethods
167
167
 
168
168
  sig { params(value: ::Wizard).void }
169
169
  def wizard=(value); end
170
+
171
+ sig { returns(::Wizard) }
172
+ def reload_wizard; end
170
173
  end
171
174
 
172
175
  module Wand::CustomFinderMethods
@@ -111,6 +111,44 @@ module Wizard::ActiveRelation_WhereNot
111
111
  def not(opts, *rest); end
112
112
  end
113
113
 
114
+ module Wizard::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(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))) }
134
+ def patronus_characteristics; end
135
+
136
+ sig { params(value: T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))).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
+
114
152
  module Wizard::GeneratedAttributeMethods
115
153
  sig { returns(T::Boolean) }
116
154
  def broom?; end
@@ -246,6 +284,9 @@ module Wizard::GeneratedAssociationMethods
246
284
  sig { params(value: T.nilable(::School)).void }
247
285
  def school=(value); end
248
286
 
287
+ sig { returns(T.nilable(::School)) }
288
+ def reload_school; end
289
+
249
290
  sig { returns(::SpellBook::ActiveRecord_Associations_CollectionProxy) }
250
291
  def spell_books; end
251
292
 
@@ -278,6 +319,9 @@ module Wizard::GeneratedAssociationMethods
278
319
 
279
320
  sig { params(value: T.nilable(::Wand)).void }
280
321
  def wand=(value); end
322
+
323
+ sig { returns(T.nilable(::Wand)) }
324
+ def reload_wand; end
281
325
  end
282
326
 
283
327
  module Wizard::CustomFinderMethods
@@ -299,6 +343,7 @@ end
299
343
 
300
344
  class Wizard < ApplicationRecord
301
345
  include Wizard::EnumInstanceMethods
346
+ include Wizard::GeneratedSerializedAttributeMethods
302
347
  include Wizard::GeneratedAttributeMethods
303
348
  include Wizard::GeneratedAssociationMethods
304
349
  extend Wizard::CustomFinderMethods
@@ -43,6 +43,9 @@ module Wizard::HABTM_Subjects::GeneratedAssociationMethods
43
43
  sig { params(value: T.nilable(::Wizard)).void }
44
44
  def left_side=(value); end
45
45
 
46
+ sig { returns(T.nilable(::Wizard)) }
47
+ def reload_left_side; end
48
+
46
49
  sig { returns(T.nilable(::Subject)) }
47
50
  def subject; end
48
51
 
@@ -57,6 +60,9 @@ module Wizard::HABTM_Subjects::GeneratedAssociationMethods
57
60
 
58
61
  sig { params(value: T.nilable(::Subject)).void }
59
62
  def subject=(value); end
63
+
64
+ sig { returns(T.nilable(::Subject)) }
65
+ def reload_subject; end
60
66
  end
61
67
 
62
68
  module Wizard::HABTM_Subjects::CustomFinderMethods
@@ -111,6 +111,44 @@ module Wizard::ActiveRelation_WhereNot
111
111
  def not(opts, *rest); end
112
112
  end
113
113
 
114
+ module Wizard::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(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))) }
134
+ def patronus_characteristics; end
135
+
136
+ sig { params(value: T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))).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
+
114
152
  module Wizard::GeneratedAttributeMethods
115
153
  sig { returns(T::Boolean) }
116
154
  def broom?; end
@@ -246,6 +284,9 @@ module Wizard::GeneratedAssociationMethods
246
284
  sig { params(value: T.nilable(T.untyped)).void }
247
285
  def school=(value); end
248
286
 
287
+ sig { returns(T.nilable(T.untyped)) }
288
+ def reload_school; end
289
+
249
290
  sig { returns(ActiveRecord::Associations::CollectionProxy) }
250
291
  def spell_books; end
251
292
 
@@ -272,6 +313,9 @@ module Wizard::GeneratedAssociationMethods
272
313
 
273
314
  sig { params(value: T.nilable(::Wand)).void }
274
315
  def wand=(value); end
316
+
317
+ sig { returns(T.nilable(::Wand)) }
318
+ def reload_wand; end
275
319
  end
276
320
 
277
321
  module Wizard::CustomFinderMethods
@@ -293,6 +337,7 @@ end
293
337
 
294
338
  class Wizard < ApplicationRecord
295
339
  include Wizard::EnumInstanceMethods
340
+ include Wizard::GeneratedSerializedAttributeMethods
296
341
  include Wizard::GeneratedAttributeMethods
297
342
  include Wizard::GeneratedAssociationMethods
298
343
  extend Wizard::CustomFinderMethods