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.
- checksums.yaml +4 -4
- data/.travis.yml +1 -1
- data/lib/sorbet-rails/config.rb +1 -0
- data/lib/sorbet-rails/dependent_gem_rbis/activerecord.rbi +3 -0
- data/lib/sorbet-rails/model_plugins/active_record_assoc.rb +17 -5
- data/lib/sorbet-rails/model_plugins/active_record_attribute.rb +2 -0
- data/lib/sorbet-rails/model_plugins/active_record_serialized_attribute.rb +68 -0
- data/lib/sorbet-rails/model_plugins/base.rb +8 -0
- data/lib/sorbet-rails/model_plugins/plugins.rb +3 -0
- data/lib/sorbet-rails/model_rbi_formatter.rb +3 -3
- data/lib/sorbet-rails/rails_mixins/pluck_to_tstruct.rb +39 -2
- data/lib/sorbet-rails/routes_rbi_formatter.rb +4 -0
- data/lib/sorbet-rails/tasks/rails_rbi.rake +4 -3
- data/sorbet-rails.gemspec +1 -1
- data/spec/bin/run_spec.sh +1 -1
- data/spec/generators/rails-template.rb +16 -0
- data/spec/generators/sorbet_test_cases.rb +15 -0
- data/spec/pluck_to_tstruct_spec.rb +51 -25
- data/spec/sorbet_spec.rb +1 -1
- data/spec/support/v5.0/Gemfile.lock +4 -4
- data/spec/support/v5.0/app/controllers/application_controller.rb +1 -1
- data/spec/support/v5.0/app/models/headmaster.rb +1 -1
- data/spec/support/v5.0/app/models/potion.rb +1 -1
- data/spec/support/v5.0/app/models/robe.rb +1 -1
- data/spec/support/v5.0/app/models/school.rb +1 -1
- data/spec/support/v5.0/app/models/spell.rb +1 -1
- data/spec/support/v5.0/app/models/subject.rb +1 -1
- data/spec/support/v5.0/app/models/wizard.rb +5 -0
- data/spec/support/v5.0/config/environments/development.rb +1 -1
- data/spec/support/v5.0/config/environments/production.rb +1 -1
- data/spec/support/v5.0/config/environments/test.rb +1 -1
- data/spec/support/v5.0/config/initializers/wrap_parameters.rb +1 -1
- data/spec/support/v5.0/config/routes.rb +1 -1
- data/spec/support/v5.0/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
- data/spec/support/v5.0/db/schema.rb +8 -4
- data/spec/support/v5.0/sorbet_test_cases.rb +15 -0
- data/spec/support/v5.1/Gemfile.lock +4 -4
- data/spec/support/v5.1/app/controllers/application_controller.rb +1 -1
- data/spec/support/v5.1/app/models/headmaster.rb +1 -1
- data/spec/support/v5.1/app/models/school.rb +1 -1
- data/spec/support/v5.1/app/models/wizard.rb +5 -0
- data/spec/support/v5.1/config/environments/production.rb +1 -1
- data/spec/support/v5.1/config/initializers/wrap_parameters.rb +1 -1
- data/spec/support/v5.1/config/routes.rb +1 -1
- data/spec/support/v5.1/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
- data/spec/support/v5.1/db/schema.rb +5 -1
- data/spec/support/v5.1/sorbet_test_cases.rb +15 -0
- data/spec/support/v5.2/Gemfile.lock +4 -4
- data/spec/support/v5.2/app/models/headmaster.rb +1 -1
- data/spec/support/v5.2/app/models/school.rb +1 -1
- data/spec/support/v5.2/app/models/wizard.rb +5 -0
- data/spec/support/v5.2/config/environments/development.rb +1 -1
- data/spec/support/v5.2/config/environments/production.rb +1 -1
- data/spec/support/v5.2/config/environments/test.rb +1 -1
- data/spec/support/v5.2/config/initializers/wrap_parameters.rb +1 -1
- data/spec/support/v5.2/config/routes.rb +1 -1
- data/spec/support/v5.2/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
- data/spec/support/v5.2/db/schema.rb +5 -1
- data/spec/support/v5.2/sorbet_test_cases.rb +15 -0
- data/spec/support/v6.0/Gemfile.lock +4 -4
- data/spec/support/v6.0/app/models/wizard.rb +5 -0
- data/spec/support/v6.0/config/environments/development.rb +1 -1
- data/spec/support/v6.0/config/environments/production.rb +1 -1
- data/spec/support/v6.0/config/environments/test.rb +1 -1
- data/spec/support/v6.0/config/routes.rb +1 -1
- data/spec/support/v6.0/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
- data/spec/support/v6.0/db/schema.rb +5 -1
- data/spec/support/v6.0/sorbet_test_cases.rb +15 -0
- data/spec/test_data/v5.0/expected_headmaster.rbi +6 -0
- data/spec/test_data/v5.0/expected_potion.rbi +3 -0
- data/spec/test_data/v5.0/expected_robe.rbi +3 -0
- data/spec/test_data/v5.0/expected_routes.rbi +4 -0
- data/spec/test_data/v5.0/expected_school.rbi +3 -0
- data/spec/test_data/v5.0/expected_spell/habtm_spell_books.rbi +6 -0
- data/spec/test_data/v5.0/expected_spell_book.rbi +3 -0
- data/spec/test_data/v5.0/expected_spell_book/habtm_spells.rbi +6 -0
- data/spec/test_data/v5.0/expected_squib.rbi +45 -0
- data/spec/test_data/v5.0/expected_subject/habtm_wizards.rbi +6 -0
- data/spec/test_data/v5.0/expected_wand.rbi +3 -0
- data/spec/test_data/v5.0/expected_wizard.rbi +45 -0
- data/spec/test_data/v5.0/expected_wizard/habtm_subjects.rbi +6 -0
- data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +45 -0
- data/spec/test_data/v5.1/expected_headmaster.rbi +6 -0
- data/spec/test_data/v5.1/expected_potion.rbi +3 -0
- data/spec/test_data/v5.1/expected_robe.rbi +3 -0
- data/spec/test_data/v5.1/expected_routes.rbi +4 -0
- data/spec/test_data/v5.1/expected_school.rbi +3 -0
- data/spec/test_data/v5.1/expected_spell/habtm_spell_books.rbi +6 -0
- data/spec/test_data/v5.1/expected_spell_book.rbi +3 -0
- data/spec/test_data/v5.1/expected_spell_book/habtm_spells.rbi +6 -0
- data/spec/test_data/v5.1/expected_squib.rbi +45 -0
- data/spec/test_data/v5.1/expected_subject/habtm_wizards.rbi +6 -0
- data/spec/test_data/v5.1/expected_wand.rbi +3 -0
- data/spec/test_data/v5.1/expected_wizard.rbi +45 -0
- data/spec/test_data/v5.1/expected_wizard/habtm_subjects.rbi +6 -0
- data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +45 -0
- data/spec/test_data/v5.2/expected_attachment.rbi +6 -0
- data/spec/test_data/v5.2/expected_blob.rbi +6 -0
- data/spec/test_data/v5.2/expected_headmaster.rbi +6 -0
- data/spec/test_data/v5.2/expected_potion.rbi +3 -0
- data/spec/test_data/v5.2/expected_robe.rbi +3 -0
- data/spec/test_data/v5.2/expected_routes.rbi +4 -0
- data/spec/test_data/v5.2/expected_school.rbi +3 -0
- data/spec/test_data/v5.2/expected_spell/habtm_spell_books.rbi +6 -0
- data/spec/test_data/v5.2/expected_spell_book.rbi +3 -0
- data/spec/test_data/v5.2/expected_spell_book/habtm_spells.rbi +6 -0
- data/spec/test_data/v5.2/expected_squib.rbi +51 -0
- data/spec/test_data/v5.2/expected_subject/habtm_wizards.rbi +6 -0
- data/spec/test_data/v5.2/expected_wand.rbi +3 -0
- data/spec/test_data/v5.2/expected_wizard.rbi +51 -0
- data/spec/test_data/v5.2/expected_wizard/habtm_subjects.rbi +6 -0
- data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +51 -0
- data/spec/test_data/v6.0/expected_attachment.rbi +6 -0
- data/spec/test_data/v6.0/expected_blob.rbi +6 -0
- data/spec/test_data/v6.0/expected_headmaster.rbi +6 -0
- data/spec/test_data/v6.0/expected_potion.rbi +3 -0
- data/spec/test_data/v6.0/expected_robe.rbi +3 -0
- data/spec/test_data/v6.0/expected_routes.rbi +4 -0
- data/spec/test_data/v6.0/expected_school.rbi +3 -0
- data/spec/test_data/v6.0/expected_spell/habtm_spell_books.rbi +6 -0
- data/spec/test_data/v6.0/expected_spell_book.rbi +3 -0
- data/spec/test_data/v6.0/expected_spell_book/habtm_spells.rbi +6 -0
- data/spec/test_data/v6.0/expected_squib.rbi +51 -0
- data/spec/test_data/v6.0/expected_subject/habtm_wizards.rbi +6 -0
- data/spec/test_data/v6.0/expected_wand.rbi +3 -0
- data/spec/test_data/v6.0/expected_wizard.rbi +51 -0
- data/spec/test_data/v6.0/expected_wizard/habtm_subjects.rbi +6 -0
- data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +51 -0
- data/spec/tstruct_comparable.rb +13 -0
- metadata +12 -1
@@ -11,7 +11,7 @@
|
|
11
11
|
#
|
12
12
|
# It's strongly recommended that you check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(version:
|
14
|
+
ActiveRecord::Schema.define(version: 2019_06_20_000015) do
|
15
15
|
|
16
16
|
create_table "headmasters", force: :cascade do |t|
|
17
17
|
t.integer "school_id"
|
@@ -89,6 +89,10 @@ ActiveRecord::Schema.define(version: 2019_06_20_000014) do
|
|
89
89
|
t.integer "hair_length"
|
90
90
|
t.string "type", default: "Wizard", null: false
|
91
91
|
t.integer "school_id"
|
92
|
+
t.text "owl_results"
|
93
|
+
t.text "newt_subjects"
|
94
|
+
t.text "pets"
|
95
|
+
t.text "patronus_characteristics"
|
92
96
|
end
|
93
97
|
|
94
98
|
end
|
@@ -305,6 +305,21 @@ T.assert_type!(Wizard::House::Hufflepuff, Wizard::House)
|
|
305
305
|
T.assert_type!(Wizard::House::Ravenclaw, Wizard::House)
|
306
306
|
T.assert_type!(Wizard::House::Slytherin, Wizard::House)
|
307
307
|
|
308
|
+
# Serialization
|
309
|
+
T.assert_type!(
|
310
|
+
wizard.owl_results,
|
311
|
+
T.nilable(T::Hash[T.untyped, T.untyped])
|
312
|
+
)
|
313
|
+
T.assert_type!(
|
314
|
+
wizard.newt_subjects,
|
315
|
+
T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))
|
316
|
+
)
|
317
|
+
T.assert_type!(
|
318
|
+
wizard.patronus_characteristics,
|
319
|
+
T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[String, T.untyped], Integer, String))
|
320
|
+
)
|
321
|
+
T.assert_type!(wizard.pets, T.nilable(T::Array[T.untyped]))
|
322
|
+
|
308
323
|
# Mythical plugin
|
309
324
|
T.assert_type!(Wand.mythicals, T::Array[Wand])
|
310
325
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ../../..
|
3
3
|
specs:
|
4
|
-
sorbet-rails (0.7.
|
4
|
+
sorbet-rails (0.7.3)
|
5
5
|
method_source (>= 0.9.2)
|
6
6
|
parlour (>= 4.0.1)
|
7
7
|
parser (>= 2.7)
|
@@ -97,12 +97,12 @@ GEM
|
|
97
97
|
nio4r (2.5.2)
|
98
98
|
nokogiri (1.10.10)
|
99
99
|
mini_portile2 (~> 2.4.0)
|
100
|
-
parlour (
|
100
|
+
parlour (5.0.0)
|
101
101
|
commander (~> 4.5)
|
102
102
|
parser
|
103
103
|
rainbow (~> 3.0)
|
104
104
|
sorbet-runtime (>= 0.5)
|
105
|
-
parser (
|
105
|
+
parser (3.0.0.0)
|
106
106
|
ast (~> 2.4.1)
|
107
107
|
polyfill (1.9.0)
|
108
108
|
puma (4.3.5)
|
@@ -141,7 +141,7 @@ GEM
|
|
141
141
|
safe_type (1.1.1)
|
142
142
|
sorbet (0.5.5815)
|
143
143
|
sorbet-static (= 0.5.5815)
|
144
|
-
sorbet-coerce (0.
|
144
|
+
sorbet-coerce (0.3.0)
|
145
145
|
polyfill (~> 1.8)
|
146
146
|
safe_type (~> 1.1, >= 1.1.1)
|
147
147
|
sorbet (>= 0.4.4704)
|
@@ -47,6 +47,11 @@ class Wizard < ApplicationRecord
|
|
47
47
|
blue: 2,
|
48
48
|
}, _prefix: :color, _suffix: :eyes
|
49
49
|
|
50
|
+
serialize :owl_results, Hash
|
51
|
+
serialize :newt_subjects # no specific data type, uses the default YAML Object coder
|
52
|
+
serialize :pets, Array
|
53
|
+
serialize :patronus_characteristics, JSON
|
54
|
+
|
50
55
|
has_one :wand
|
51
56
|
has_many :spell_books
|
52
57
|
# habtm which is optional at the db level
|
@@ -0,0 +1,9 @@
|
|
1
|
+
# typed: true
|
2
|
+
class AddSerializedToWizards < ActiveRecord::Migration[6.0]
|
3
|
+
def change
|
4
|
+
add_column :wizards, :owl_results, :text # Hash
|
5
|
+
add_column :wizards, :newt_subjects, :text # generic
|
6
|
+
add_column :wizards, :pets, :text # Array
|
7
|
+
add_column :wizards, :patronus_characteristics, :text # serialized as JSON, but not a JSON column type
|
8
|
+
end
|
9
|
+
end
|
@@ -11,7 +11,7 @@
|
|
11
11
|
#
|
12
12
|
# It's strongly recommended that you check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(version:
|
14
|
+
ActiveRecord::Schema.define(version: 2019_06_20_000015) do
|
15
15
|
|
16
16
|
create_table "headmasters", force: :cascade do |t|
|
17
17
|
t.integer "school_id"
|
@@ -89,6 +89,10 @@ ActiveRecord::Schema.define(version: 2019_06_20_000014) do
|
|
89
89
|
t.integer "hair_length"
|
90
90
|
t.string "type", default: "Wizard", null: false
|
91
91
|
t.integer "school_id"
|
92
|
+
t.text "owl_results"
|
93
|
+
t.text "newt_subjects"
|
94
|
+
t.text "pets"
|
95
|
+
t.text "patronus_characteristics"
|
92
96
|
end
|
93
97
|
|
94
98
|
add_foreign_key "wizards", "schools"
|
@@ -305,6 +305,21 @@ T.assert_type!(Wizard::House::Hufflepuff, Wizard::House)
|
|
305
305
|
T.assert_type!(Wizard::House::Ravenclaw, Wizard::House)
|
306
306
|
T.assert_type!(Wizard::House::Slytherin, Wizard::House)
|
307
307
|
|
308
|
+
# Serialization
|
309
|
+
T.assert_type!(
|
310
|
+
wizard.owl_results,
|
311
|
+
T.nilable(T::Hash[T.untyped, T.untyped])
|
312
|
+
)
|
313
|
+
T.assert_type!(
|
314
|
+
wizard.newt_subjects,
|
315
|
+
T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))
|
316
|
+
)
|
317
|
+
T.assert_type!(
|
318
|
+
wizard.patronus_characteristics,
|
319
|
+
T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[String, T.untyped], Integer, String))
|
320
|
+
)
|
321
|
+
T.assert_type!(wizard.pets, T.nilable(T::Array[T.untyped]))
|
322
|
+
|
308
323
|
# Mythical plugin
|
309
324
|
T.assert_type!(Wand.mythicals, T::Array[Wand])
|
310
325
|
|
@@ -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
|
@@ -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
|
@@ -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
|
@@ -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
|