sorbet-rails 0.5.7 → 0.5.8
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/lib/sorbet-rails/gem_plugins/shrine_plugin.rb +6 -0
- data/lib/sorbet-rails/model_plugins/active_record_assoc.rb +17 -7
- data/lib/sorbet-rails/sorbet_utils.rb +7 -1
- data/sorbet-rails.gemspec +1 -1
- data/spec/bin/run_all_specs.sh +1 -1
- data/spec/generators/rails-template.rb +17 -1
- data/spec/rails_helper.rb +1 -1
- data/spec/rake_rails_rbi_models_spec.rb +1 -0
- data/spec/sorbet_utils_spec.rb +5 -5
- data/spec/support/v5.0/Gemfile.lock +14 -14
- data/spec/support/v5.0/app/models/robe.rb +4 -0
- data/spec/support/v5.0/app/models/wand.rb +1 -1
- data/spec/support/v5.0/config/environments/development.rb +1 -1
- data/spec/support/v5.0/config/initializers/sorbet_rails.rb +1 -1
- data/spec/support/v5.0/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
- data/spec/support/v5.0/db/schema.rb +6 -1
- data/spec/support/v5.1/Gemfile.lock +15 -15
- data/spec/support/v5.1/app/models/robe.rb +4 -0
- data/spec/support/v5.1/app/models/wand.rb +1 -1
- data/spec/support/v5.1/config/environments/development.rb +1 -1
- data/spec/support/v5.1/config/initializers/sorbet_rails.rb +1 -1
- data/spec/support/v5.1/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
- data/spec/support/v5.1/db/schema.rb +6 -1
- data/spec/support/v5.2/Gemfile.lock +15 -15
- data/spec/support/v5.2/app/models/robe.rb +4 -0
- data/spec/support/v5.2/app/models/wand.rb +1 -1
- data/spec/support/v5.2/config/environments/development.rb +1 -1
- data/spec/support/v5.2/config/initializers/sorbet_rails.rb +1 -1
- data/spec/support/v5.2/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
- data/spec/support/v5.2/db/schema.rb +6 -1
- data/spec/support/v6.0/Gemfile.lock +16 -16
- data/spec/support/v6.0/app/models/robe.rb +4 -0
- data/spec/support/v6.0/app/models/wand.rb +1 -1
- data/spec/support/v6.0/config/environments/development.rb +1 -1
- data/spec/support/v6.0/config/initializers/sorbet_rails.rb +1 -1
- data/spec/support/v6.0/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
- data/spec/support/v6.0/db/schema.rb +6 -1
- data/spec/test_data/v5.0/expected_daily_prophet_mailer.rbi +1 -1
- data/spec/test_data/v5.0/expected_robe.rbi +716 -0
- data/spec/test_data/v5.0/expected_squib.rbi +1 -1
- data/spec/test_data/v5.0/expected_wizard.rbi +1 -1
- data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +1 -1
- data/spec/test_data/v5.1/expected_daily_prophet_mailer.rbi +1 -1
- data/spec/test_data/v5.1/expected_robe.rbi +728 -0
- data/spec/test_data/v5.1/expected_squib.rbi +1 -1
- data/spec/test_data/v5.1/expected_wizard.rbi +1 -1
- data/spec/test_data/v5.1/expected_wizard_wo_spellbook.rbi +1 -1
- data/spec/test_data/v5.2/expected_blob.rbi +1 -1
- data/spec/test_data/v5.2/expected_daily_prophet_mailer.rbi +1 -1
- data/spec/test_data/v5.2/expected_robe.rbi +728 -0
- data/spec/test_data/v5.2/expected_squib.rbi +3 -3
- data/spec/test_data/v5.2/expected_wizard.rbi +3 -3
- data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +3 -3
- data/spec/test_data/v6.0/expected_blob.rbi +1 -1
- data/spec/test_data/v6.0/expected_daily_prophet_mailer.rbi +1 -1
- data/spec/test_data/v6.0/expected_robe.rbi +776 -0
- data/spec/test_data/v6.0/expected_squib.rbi +3 -3
- data/spec/test_data/v6.0/expected_wizard.rbi +3 -3
- data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +3 -3
- metadata +25 -1
@@ -240,13 +240,13 @@ module Squib::GeneratedAssociationMethods
|
|
240
240
|
sig { returns(::ActiveStorage::Attachment::ActiveRecord_Associations_CollectionProxy) }
|
241
241
|
def hats_attachments; end
|
242
242
|
|
243
|
-
sig { params(value: T
|
243
|
+
sig { params(value: T::Enumerable[::ActiveStorage::Attachment]).void }
|
244
244
|
def hats_attachments=(value); end
|
245
245
|
|
246
246
|
sig { returns(::ActiveStorage::Blob::ActiveRecord_Associations_CollectionProxy) }
|
247
247
|
def hats_blobs; end
|
248
248
|
|
249
|
-
sig { params(value: T
|
249
|
+
sig { params(value: T::Enumerable[::ActiveStorage::Blob]).void }
|
250
250
|
def hats_blobs=(value); end
|
251
251
|
|
252
252
|
sig { returns(T.nilable(::ActiveStorage::Attachment)) }
|
@@ -264,7 +264,7 @@ module Squib::GeneratedAssociationMethods
|
|
264
264
|
sig { returns(::SpellBook::ActiveRecord_Associations_CollectionProxy) }
|
265
265
|
def spell_books; end
|
266
266
|
|
267
|
-
sig { params(value: T
|
267
|
+
sig { params(value: T::Enumerable[::SpellBook]).void }
|
268
268
|
def spell_books=(value); end
|
269
269
|
|
270
270
|
sig { returns(T.nilable(::Wand)) }
|
@@ -240,13 +240,13 @@ module Wizard::GeneratedAssociationMethods
|
|
240
240
|
sig { returns(::ActiveStorage::Attachment::ActiveRecord_Associations_CollectionProxy) }
|
241
241
|
def hats_attachments; end
|
242
242
|
|
243
|
-
sig { params(value: T
|
243
|
+
sig { params(value: T::Enumerable[::ActiveStorage::Attachment]).void }
|
244
244
|
def hats_attachments=(value); end
|
245
245
|
|
246
246
|
sig { returns(::ActiveStorage::Blob::ActiveRecord_Associations_CollectionProxy) }
|
247
247
|
def hats_blobs; end
|
248
248
|
|
249
|
-
sig { params(value: T
|
249
|
+
sig { params(value: T::Enumerable[::ActiveStorage::Blob]).void }
|
250
250
|
def hats_blobs=(value); end
|
251
251
|
|
252
252
|
sig { returns(T.nilable(::ActiveStorage::Attachment)) }
|
@@ -264,7 +264,7 @@ module Wizard::GeneratedAssociationMethods
|
|
264
264
|
sig { returns(::SpellBook::ActiveRecord_Associations_CollectionProxy) }
|
265
265
|
def spell_books; end
|
266
266
|
|
267
|
-
sig { params(value: T
|
267
|
+
sig { params(value: T::Enumerable[::SpellBook]).void }
|
268
268
|
def spell_books=(value); end
|
269
269
|
|
270
270
|
sig { returns(T.nilable(::Wand)) }
|
@@ -240,13 +240,13 @@ module Wizard::GeneratedAssociationMethods
|
|
240
240
|
sig { returns(::ActiveStorage::Attachment::ActiveRecord_Associations_CollectionProxy) }
|
241
241
|
def hats_attachments; end
|
242
242
|
|
243
|
-
sig { params(value: T
|
243
|
+
sig { params(value: T::Enumerable[::ActiveStorage::Attachment]).void }
|
244
244
|
def hats_attachments=(value); end
|
245
245
|
|
246
246
|
sig { returns(::ActiveStorage::Blob::ActiveRecord_Associations_CollectionProxy) }
|
247
247
|
def hats_blobs; end
|
248
248
|
|
249
|
-
sig { params(value: T
|
249
|
+
sig { params(value: T::Enumerable[::ActiveStorage::Blob]).void }
|
250
250
|
def hats_blobs=(value); end
|
251
251
|
|
252
252
|
sig { returns(T.nilable(::ActiveStorage::Attachment)) }
|
@@ -264,7 +264,7 @@ module Wizard::GeneratedAssociationMethods
|
|
264
264
|
sig { returns(ActiveRecord::Associations::CollectionProxy) }
|
265
265
|
def spell_books; end
|
266
266
|
|
267
|
-
sig { params(value: T
|
267
|
+
sig { params(value: T::Enumerable[T.untyped]).void }
|
268
268
|
def spell_books=(value); end
|
269
269
|
|
270
270
|
sig { returns(T.nilable(::Wand)) }
|
@@ -795,7 +795,7 @@ module ActiveStorage::Blob::GeneratedAssociationMethods
|
|
795
795
|
sig { returns(::ActiveStorage::Attachment::ActiveRecord_Associations_CollectionProxy) }
|
796
796
|
def attachments; end
|
797
797
|
|
798
|
-
sig { params(value: T
|
798
|
+
sig { params(value: T::Enumerable[::ActiveStorage::Attachment]).void }
|
799
799
|
def attachments=(value); end
|
800
800
|
|
801
801
|
sig { returns(T.nilable(::ActiveStorage::Attachment)) }
|
@@ -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
|
6
|
+
def self.notify_subscribers(wizards:, hotnews_only:); end
|
7
7
|
end
|
@@ -0,0 +1,776 @@
|
|
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.reselect(*args); end
|
54
|
+
|
55
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
56
|
+
def self.order(*args); end
|
57
|
+
|
58
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
59
|
+
def self.reorder(*args); end
|
60
|
+
|
61
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
62
|
+
def self.group(*args); end
|
63
|
+
|
64
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
65
|
+
def self.limit(*args); end
|
66
|
+
|
67
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
68
|
+
def self.offset(*args); end
|
69
|
+
|
70
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
71
|
+
def self.joins(*args); end
|
72
|
+
|
73
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
74
|
+
def self.left_joins(*args); end
|
75
|
+
|
76
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
77
|
+
def self.left_outer_joins(*args); end
|
78
|
+
|
79
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
80
|
+
def self.where(*args); end
|
81
|
+
|
82
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
83
|
+
def self.rewhere(*args); end
|
84
|
+
|
85
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
86
|
+
def self.preload(*args); end
|
87
|
+
|
88
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
89
|
+
def self.extract_associated(*args); end
|
90
|
+
|
91
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
92
|
+
def self.eager_load(*args); end
|
93
|
+
|
94
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
95
|
+
def self.includes(*args); end
|
96
|
+
|
97
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
98
|
+
def self.from(*args); end
|
99
|
+
|
100
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
101
|
+
def self.lock(*args); end
|
102
|
+
|
103
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
104
|
+
def self.readonly(*args); end
|
105
|
+
|
106
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
107
|
+
def self.or(*args); end
|
108
|
+
|
109
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
110
|
+
def self.having(*args); end
|
111
|
+
|
112
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
113
|
+
def self.create_with(*args); end
|
114
|
+
|
115
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
116
|
+
def self.distinct(*args); end
|
117
|
+
|
118
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
119
|
+
def self.references(*args); end
|
120
|
+
|
121
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
122
|
+
def self.none(*args); end
|
123
|
+
|
124
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
125
|
+
def self.unscope(*args); end
|
126
|
+
|
127
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
128
|
+
def self.optimizer_hints(*args); end
|
129
|
+
|
130
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
131
|
+
def self.merge(*args); end
|
132
|
+
|
133
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
134
|
+
def self.except(*args); end
|
135
|
+
|
136
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
137
|
+
def self.only(*args); end
|
138
|
+
|
139
|
+
sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_Relation) }
|
140
|
+
def self.extending(*args, &block); end
|
141
|
+
|
142
|
+
sig { params(args: T.untyped).returns(Robe) }
|
143
|
+
def self.find(*args); end
|
144
|
+
|
145
|
+
sig { params(args: T.untyped).returns(T.nilable(Robe)) }
|
146
|
+
def self.find_by(*args); end
|
147
|
+
|
148
|
+
sig { params(args: T.untyped).returns(Robe) }
|
149
|
+
def self.find_by!(*args); end
|
150
|
+
|
151
|
+
sig { returns(T.nilable(Robe)) }
|
152
|
+
def self.first; end
|
153
|
+
|
154
|
+
sig { returns(Robe) }
|
155
|
+
def self.first!; end
|
156
|
+
|
157
|
+
sig { returns(T.nilable(Robe)) }
|
158
|
+
def self.second; end
|
159
|
+
|
160
|
+
sig { returns(Robe) }
|
161
|
+
def self.second!; end
|
162
|
+
|
163
|
+
sig { returns(T.nilable(Robe)) }
|
164
|
+
def self.third; end
|
165
|
+
|
166
|
+
sig { returns(Robe) }
|
167
|
+
def self.third!; end
|
168
|
+
|
169
|
+
sig { returns(T.nilable(Robe)) }
|
170
|
+
def self.third_to_last; end
|
171
|
+
|
172
|
+
sig { returns(Robe) }
|
173
|
+
def self.third_to_last!; end
|
174
|
+
|
175
|
+
sig { returns(T.nilable(Robe)) }
|
176
|
+
def self.second_to_last; end
|
177
|
+
|
178
|
+
sig { returns(Robe) }
|
179
|
+
def self.second_to_last!; end
|
180
|
+
|
181
|
+
sig { returns(T.nilable(Robe)) }
|
182
|
+
def self.last; end
|
183
|
+
|
184
|
+
sig { returns(Robe) }
|
185
|
+
def self.last!; end
|
186
|
+
|
187
|
+
sig { params(conditions: T.untyped).returns(T::Boolean) }
|
188
|
+
def self.exists?(conditions = nil); end
|
189
|
+
|
190
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
191
|
+
def self.any?(*args); end
|
192
|
+
|
193
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
194
|
+
def self.many?(*args); end
|
195
|
+
|
196
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
197
|
+
def self.none?(*args); end
|
198
|
+
|
199
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
200
|
+
def self.one?(*args); end
|
201
|
+
|
202
|
+
sig { params(attributes: T.untyped, block: T.untyped).returns(Robe) }
|
203
|
+
def self.create(attributes = nil, &block); end
|
204
|
+
|
205
|
+
sig { params(attributes: T.untyped, block: T.untyped).returns(Robe) }
|
206
|
+
def self.create!(attributes = nil, &block); end
|
207
|
+
|
208
|
+
sig { params(attributes: T.untyped, block: T.untyped).returns(Robe) }
|
209
|
+
def self.new(attributes = nil, &block); end
|
210
|
+
end
|
211
|
+
|
212
|
+
class Robe::ActiveRecord_Relation < ActiveRecord::Relation
|
213
|
+
include Robe::ActiveRelation_WhereNot
|
214
|
+
include Robe::CustomFinderMethods
|
215
|
+
include Enumerable
|
216
|
+
extend T::Sig
|
217
|
+
extend T::Generic
|
218
|
+
Elem = type_member(fixed: Robe)
|
219
|
+
|
220
|
+
sig { returns(Robe::ActiveRecord_Relation) }
|
221
|
+
def all; end
|
222
|
+
|
223
|
+
sig { params(block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_Relation) }
|
224
|
+
def unscoped(&block); end
|
225
|
+
|
226
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
227
|
+
def select(*args); end
|
228
|
+
|
229
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
230
|
+
def reselect(*args); end
|
231
|
+
|
232
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
233
|
+
def order(*args); end
|
234
|
+
|
235
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
236
|
+
def reorder(*args); end
|
237
|
+
|
238
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
239
|
+
def group(*args); end
|
240
|
+
|
241
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
242
|
+
def limit(*args); end
|
243
|
+
|
244
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
245
|
+
def offset(*args); end
|
246
|
+
|
247
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
248
|
+
def joins(*args); end
|
249
|
+
|
250
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
251
|
+
def left_joins(*args); end
|
252
|
+
|
253
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
254
|
+
def left_outer_joins(*args); end
|
255
|
+
|
256
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
257
|
+
def where(*args); end
|
258
|
+
|
259
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
260
|
+
def rewhere(*args); end
|
261
|
+
|
262
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
263
|
+
def preload(*args); end
|
264
|
+
|
265
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
266
|
+
def extract_associated(*args); end
|
267
|
+
|
268
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
269
|
+
def eager_load(*args); end
|
270
|
+
|
271
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
272
|
+
def includes(*args); end
|
273
|
+
|
274
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
275
|
+
def from(*args); end
|
276
|
+
|
277
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
278
|
+
def lock(*args); end
|
279
|
+
|
280
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
281
|
+
def readonly(*args); end
|
282
|
+
|
283
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
284
|
+
def or(*args); end
|
285
|
+
|
286
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
287
|
+
def having(*args); end
|
288
|
+
|
289
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
290
|
+
def create_with(*args); end
|
291
|
+
|
292
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
293
|
+
def distinct(*args); end
|
294
|
+
|
295
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
296
|
+
def references(*args); end
|
297
|
+
|
298
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
299
|
+
def none(*args); end
|
300
|
+
|
301
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
302
|
+
def unscope(*args); end
|
303
|
+
|
304
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
305
|
+
def optimizer_hints(*args); end
|
306
|
+
|
307
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
308
|
+
def merge(*args); end
|
309
|
+
|
310
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
311
|
+
def except(*args); end
|
312
|
+
|
313
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_Relation) }
|
314
|
+
def only(*args); end
|
315
|
+
|
316
|
+
sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_Relation) }
|
317
|
+
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
|
+
end
|
396
|
+
|
397
|
+
class Robe::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
|
398
|
+
include Robe::ActiveRelation_WhereNot
|
399
|
+
include Robe::CustomFinderMethods
|
400
|
+
include Enumerable
|
401
|
+
extend T::Sig
|
402
|
+
extend T::Generic
|
403
|
+
Elem = type_member(fixed: Robe)
|
404
|
+
|
405
|
+
sig { returns(Robe::ActiveRecord_AssociationRelation) }
|
406
|
+
def all; end
|
407
|
+
|
408
|
+
sig { params(block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_AssociationRelation) }
|
409
|
+
def unscoped(&block); end
|
410
|
+
|
411
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
412
|
+
def select(*args); end
|
413
|
+
|
414
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
415
|
+
def reselect(*args); end
|
416
|
+
|
417
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
418
|
+
def order(*args); end
|
419
|
+
|
420
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
421
|
+
def reorder(*args); end
|
422
|
+
|
423
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
424
|
+
def group(*args); end
|
425
|
+
|
426
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
427
|
+
def limit(*args); end
|
428
|
+
|
429
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
430
|
+
def offset(*args); end
|
431
|
+
|
432
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
433
|
+
def joins(*args); end
|
434
|
+
|
435
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
436
|
+
def left_joins(*args); end
|
437
|
+
|
438
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
439
|
+
def left_outer_joins(*args); end
|
440
|
+
|
441
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
442
|
+
def where(*args); end
|
443
|
+
|
444
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
445
|
+
def rewhere(*args); end
|
446
|
+
|
447
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
448
|
+
def preload(*args); end
|
449
|
+
|
450
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
451
|
+
def extract_associated(*args); end
|
452
|
+
|
453
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
454
|
+
def eager_load(*args); end
|
455
|
+
|
456
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
457
|
+
def includes(*args); end
|
458
|
+
|
459
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
460
|
+
def from(*args); end
|
461
|
+
|
462
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
463
|
+
def lock(*args); end
|
464
|
+
|
465
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
466
|
+
def readonly(*args); end
|
467
|
+
|
468
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
469
|
+
def or(*args); end
|
470
|
+
|
471
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
472
|
+
def having(*args); end
|
473
|
+
|
474
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
475
|
+
def create_with(*args); end
|
476
|
+
|
477
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
478
|
+
def distinct(*args); end
|
479
|
+
|
480
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
481
|
+
def references(*args); end
|
482
|
+
|
483
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
484
|
+
def none(*args); end
|
485
|
+
|
486
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
487
|
+
def unscope(*args); end
|
488
|
+
|
489
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
490
|
+
def optimizer_hints(*args); end
|
491
|
+
|
492
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
493
|
+
def merge(*args); end
|
494
|
+
|
495
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
496
|
+
def except(*args); end
|
497
|
+
|
498
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
499
|
+
def only(*args); end
|
500
|
+
|
501
|
+
sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_AssociationRelation) }
|
502
|
+
def extending(*args, &block); end
|
503
|
+
|
504
|
+
sig { params(args: T.untyped).returns(Robe) }
|
505
|
+
def find(*args); end
|
506
|
+
|
507
|
+
sig { params(args: T.untyped).returns(T.nilable(Robe)) }
|
508
|
+
def find_by(*args); end
|
509
|
+
|
510
|
+
sig { params(args: T.untyped).returns(Robe) }
|
511
|
+
def find_by!(*args); end
|
512
|
+
|
513
|
+
sig { returns(T.nilable(Robe)) }
|
514
|
+
def first; end
|
515
|
+
|
516
|
+
sig { returns(Robe) }
|
517
|
+
def first!; end
|
518
|
+
|
519
|
+
sig { returns(T.nilable(Robe)) }
|
520
|
+
def second; end
|
521
|
+
|
522
|
+
sig { returns(Robe) }
|
523
|
+
def second!; end
|
524
|
+
|
525
|
+
sig { returns(T.nilable(Robe)) }
|
526
|
+
def third; end
|
527
|
+
|
528
|
+
sig { returns(Robe) }
|
529
|
+
def third!; end
|
530
|
+
|
531
|
+
sig { returns(T.nilable(Robe)) }
|
532
|
+
def third_to_last; end
|
533
|
+
|
534
|
+
sig { returns(Robe) }
|
535
|
+
def third_to_last!; end
|
536
|
+
|
537
|
+
sig { returns(T.nilable(Robe)) }
|
538
|
+
def second_to_last; end
|
539
|
+
|
540
|
+
sig { returns(Robe) }
|
541
|
+
def second_to_last!; end
|
542
|
+
|
543
|
+
sig { returns(T.nilable(Robe)) }
|
544
|
+
def last; end
|
545
|
+
|
546
|
+
sig { returns(Robe) }
|
547
|
+
def last!; end
|
548
|
+
|
549
|
+
sig { params(conditions: T.untyped).returns(T::Boolean) }
|
550
|
+
def exists?(conditions = nil); end
|
551
|
+
|
552
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
553
|
+
def any?(*args); end
|
554
|
+
|
555
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
556
|
+
def many?(*args); end
|
557
|
+
|
558
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
559
|
+
def none?(*args); end
|
560
|
+
|
561
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
562
|
+
def one?(*args); end
|
563
|
+
|
564
|
+
sig { override.params(block: T.proc.params(e: Robe).void).returns(T::Array[Robe]) }
|
565
|
+
def each(&block); end
|
566
|
+
|
567
|
+
sig { params(level: T.nilable(Integer)).returns(T::Array[Robe]) }
|
568
|
+
def flatten(level); end
|
569
|
+
|
570
|
+
sig { returns(T::Array[Robe]) }
|
571
|
+
def to_a; end
|
572
|
+
|
573
|
+
sig do
|
574
|
+
type_parameters(:U).params(
|
575
|
+
blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
|
576
|
+
)
|
577
|
+
.returns(T::Array[T.type_parameter(:U)])
|
578
|
+
end
|
579
|
+
def map(&blk); end
|
580
|
+
end
|
581
|
+
|
582
|
+
class Robe::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associations::CollectionProxy
|
583
|
+
include Robe::CustomFinderMethods
|
584
|
+
include Enumerable
|
585
|
+
extend T::Sig
|
586
|
+
extend T::Generic
|
587
|
+
Elem = type_member(fixed: Robe)
|
588
|
+
|
589
|
+
sig { returns(Robe::ActiveRecord_AssociationRelation) }
|
590
|
+
def all; end
|
591
|
+
|
592
|
+
sig { params(block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_AssociationRelation) }
|
593
|
+
def unscoped(&block); end
|
594
|
+
|
595
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
596
|
+
def select(*args); end
|
597
|
+
|
598
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
599
|
+
def reselect(*args); end
|
600
|
+
|
601
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
602
|
+
def order(*args); end
|
603
|
+
|
604
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
605
|
+
def reorder(*args); end
|
606
|
+
|
607
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
608
|
+
def group(*args); end
|
609
|
+
|
610
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
611
|
+
def limit(*args); end
|
612
|
+
|
613
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
614
|
+
def offset(*args); end
|
615
|
+
|
616
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
617
|
+
def joins(*args); end
|
618
|
+
|
619
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
620
|
+
def left_joins(*args); end
|
621
|
+
|
622
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
623
|
+
def left_outer_joins(*args); end
|
624
|
+
|
625
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
626
|
+
def where(*args); end
|
627
|
+
|
628
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
629
|
+
def rewhere(*args); end
|
630
|
+
|
631
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
632
|
+
def preload(*args); end
|
633
|
+
|
634
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
635
|
+
def extract_associated(*args); end
|
636
|
+
|
637
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
638
|
+
def eager_load(*args); end
|
639
|
+
|
640
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
641
|
+
def includes(*args); end
|
642
|
+
|
643
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
644
|
+
def from(*args); end
|
645
|
+
|
646
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
647
|
+
def lock(*args); end
|
648
|
+
|
649
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
650
|
+
def readonly(*args); end
|
651
|
+
|
652
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
653
|
+
def or(*args); end
|
654
|
+
|
655
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
656
|
+
def having(*args); end
|
657
|
+
|
658
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
659
|
+
def create_with(*args); end
|
660
|
+
|
661
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
662
|
+
def distinct(*args); end
|
663
|
+
|
664
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
665
|
+
def references(*args); end
|
666
|
+
|
667
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
668
|
+
def none(*args); end
|
669
|
+
|
670
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
671
|
+
def unscope(*args); end
|
672
|
+
|
673
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
674
|
+
def optimizer_hints(*args); end
|
675
|
+
|
676
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
677
|
+
def merge(*args); end
|
678
|
+
|
679
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
680
|
+
def except(*args); end
|
681
|
+
|
682
|
+
sig { params(args: T.untyped).returns(Robe::ActiveRecord_AssociationRelation) }
|
683
|
+
def only(*args); end
|
684
|
+
|
685
|
+
sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(Robe::ActiveRecord_AssociationRelation) }
|
686
|
+
def extending(*args, &block); end
|
687
|
+
|
688
|
+
sig { params(args: T.untyped).returns(Robe) }
|
689
|
+
def find(*args); end
|
690
|
+
|
691
|
+
sig { params(args: T.untyped).returns(T.nilable(Robe)) }
|
692
|
+
def find_by(*args); end
|
693
|
+
|
694
|
+
sig { params(args: T.untyped).returns(Robe) }
|
695
|
+
def find_by!(*args); end
|
696
|
+
|
697
|
+
sig { returns(T.nilable(Robe)) }
|
698
|
+
def first; end
|
699
|
+
|
700
|
+
sig { returns(Robe) }
|
701
|
+
def first!; end
|
702
|
+
|
703
|
+
sig { returns(T.nilable(Robe)) }
|
704
|
+
def second; end
|
705
|
+
|
706
|
+
sig { returns(Robe) }
|
707
|
+
def second!; end
|
708
|
+
|
709
|
+
sig { returns(T.nilable(Robe)) }
|
710
|
+
def third; end
|
711
|
+
|
712
|
+
sig { returns(Robe) }
|
713
|
+
def third!; end
|
714
|
+
|
715
|
+
sig { returns(T.nilable(Robe)) }
|
716
|
+
def third_to_last; end
|
717
|
+
|
718
|
+
sig { returns(Robe) }
|
719
|
+
def third_to_last!; end
|
720
|
+
|
721
|
+
sig { returns(T.nilable(Robe)) }
|
722
|
+
def second_to_last; end
|
723
|
+
|
724
|
+
sig { returns(Robe) }
|
725
|
+
def second_to_last!; end
|
726
|
+
|
727
|
+
sig { returns(T.nilable(Robe)) }
|
728
|
+
def last; end
|
729
|
+
|
730
|
+
sig { returns(Robe) }
|
731
|
+
def last!; end
|
732
|
+
|
733
|
+
sig { params(conditions: T.untyped).returns(T::Boolean) }
|
734
|
+
def exists?(conditions = nil); end
|
735
|
+
|
736
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
737
|
+
def any?(*args); end
|
738
|
+
|
739
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
740
|
+
def many?(*args); end
|
741
|
+
|
742
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
743
|
+
def none?(*args); end
|
744
|
+
|
745
|
+
sig { params(args: T.untyped).returns(T::Boolean) }
|
746
|
+
def one?(*args); end
|
747
|
+
|
748
|
+
sig { override.params(block: T.proc.params(e: Robe).void).returns(T::Array[Robe]) }
|
749
|
+
def each(&block); end
|
750
|
+
|
751
|
+
sig { params(level: T.nilable(Integer)).returns(T::Array[Robe]) }
|
752
|
+
def flatten(level); end
|
753
|
+
|
754
|
+
sig { returns(T::Array[Robe]) }
|
755
|
+
def to_a; end
|
756
|
+
|
757
|
+
sig do
|
758
|
+
type_parameters(:U).params(
|
759
|
+
blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:U)),
|
760
|
+
)
|
761
|
+
.returns(T::Array[T.type_parameter(:U)])
|
762
|
+
end
|
763
|
+
def map(&blk); end
|
764
|
+
|
765
|
+
sig { params(records: T.any(Robe, T::Array[Robe])).returns(T.self_type) }
|
766
|
+
def <<(*records); end
|
767
|
+
|
768
|
+
sig { params(records: T.any(Robe, T::Array[Robe])).returns(T.self_type) }
|
769
|
+
def append(*records); end
|
770
|
+
|
771
|
+
sig { params(records: T.any(Robe, T::Array[Robe])).returns(T.self_type) }
|
772
|
+
def push(*records); end
|
773
|
+
|
774
|
+
sig { params(records: T.any(Robe, T::Array[Robe])).returns(T.self_type) }
|
775
|
+
def concat(*records); end
|
776
|
+
end
|