sorbet-result 0.3.1 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/.standard.yml +6 -0
  4. data/.tool-versions +1 -1
  5. data/CHANGELOG.md +16 -0
  6. data/Gemfile +2 -4
  7. data/Gemfile.lock +75 -55
  8. data/README.md +23 -0
  9. data/Rakefile +3 -5
  10. data/lib/minitest/result_assertions.rb +48 -0
  11. data/lib/sorbet-result.rb +1 -5
  12. data/lib/typed/result.rb +169 -7
  13. data/sorbet/rbi/gems/.gitattributes +1 -0
  14. data/sorbet/rbi/gems/erubi@1.12.0.rbi +145 -0
  15. data/sorbet/rbi/gems/{json@2.6.3.rbi → json@2.7.1.rbi} +80 -60
  16. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +14237 -0
  17. data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +239 -0
  18. data/sorbet/rbi/gems/{minitest@5.18.1.rbi → minitest@5.22.2.rbi} +285 -241
  19. data/sorbet/rbi/gems/{parallel@1.23.0.rbi → parallel@1.24.0.rbi} +8 -1
  20. data/sorbet/rbi/gems/{parser@3.2.2.3.rbi → parser@3.3.0.5.rbi} +438 -2219
  21. data/sorbet/rbi/gems/prettier_print@1.2.1.rbi +951 -0
  22. data/sorbet/rbi/gems/prism@0.24.0.rbi +31040 -0
  23. data/sorbet/rbi/gems/psych@5.1.2.rbi +1731 -0
  24. data/sorbet/rbi/gems/{racc@1.7.1.rbi → racc@1.7.3.rbi} +35 -39
  25. data/sorbet/rbi/gems/{rake@13.0.6.rbi → rake@13.1.0.rbi} +68 -65
  26. data/sorbet/rbi/gems/{rbi@0.0.16.rbi → rbi@0.1.9.rbi} +712 -714
  27. data/sorbet/rbi/gems/{regexp_parser@2.8.1.rbi → regexp_parser@2.9.0.rbi} +187 -165
  28. data/sorbet/rbi/gems/{rexml@3.2.5.rbi → rexml@3.2.6.rbi} +116 -52
  29. data/sorbet/rbi/gems/{rubocop-ast@1.29.0.rbi → rubocop-ast@1.30.0.rbi} +77 -77
  30. data/sorbet/rbi/gems/rubocop-performance@1.20.2.rbi +8 -0
  31. data/sorbet/rbi/gems/rubocop-sorbet@0.7.7.rbi +8 -0
  32. data/sorbet/rbi/gems/{rubocop@1.52.1.rbi → rubocop@1.60.2.rbi} +3593 -1700
  33. data/sorbet/rbi/gems/{spoom@1.2.1.rbi → spoom@1.2.4.rbi} +1378 -104
  34. data/sorbet/rbi/gems/standard-custom@1.0.2.rbi +8 -0
  35. data/sorbet/rbi/gems/standard-performance@1.3.1.rbi +8 -0
  36. data/sorbet/rbi/gems/standard-sorbet@0.0.2.rbi +52 -0
  37. data/sorbet/rbi/gems/standard@1.34.0.rbi +850 -0
  38. data/sorbet/rbi/gems/stringio@3.1.0.rbi +8 -0
  39. data/sorbet/rbi/gems/syntax_tree@6.2.0.rbi +23133 -0
  40. data/sorbet/rbi/gems/{tapioca@0.11.6.rbi → tapioca@0.12.0.rbi} +776 -574
  41. data/sorbet/rbi/gems/{thor@1.2.2.rbi → thor@1.3.0.rbi} +775 -395
  42. data/sorbet/rbi/gems/yard-sorbet@0.8.1.rbi +1 -1
  43. data/sorbet/rbi/gems/yard@0.9.34.rbi +2 -2
  44. data/sorbet/tapioca/config.yml +3 -12
  45. data/sorbet/tapioca/require.rb +0 -1
  46. metadata +42 -35
  47. data/.rubocop.yml +0 -33
  48. data/lib/typed/failure.rb +0 -81
  49. data/lib/typed/success.rb +0 -80
  50. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +0 -1083
  51. data/sorbet/rbi/gems/irb@1.7.0.rbi +0 -342
  52. data/sorbet/rbi/gems/rubocop-minitest@0.31.0.rbi +0 -2528
  53. data/sorbet/rbi/gems/rubocop-rake@0.6.0.rbi +0 -328
  54. data/sorbet/rbi/gems/rubocop-sorbet@0.7.0.rbi +0 -1043
  55. data/sorbet/rbi/gems/unparser@0.6.8.rbi +0 -4525
  56. data/sorbet/rbi/gems/zeitwerk@2.6.8.rbi +0 -986
  57. /data/sorbet/rbi/gems/{io-console@0.6.0.rbi → io-console@0.7.2.rbi} +0 -0
  58. /data/sorbet/rbi/gems/{reline@0.3.5.rbi → reline@0.4.2.rbi} +0 -0
  59. /data/sorbet/rbi/gems/{unicode-display_width@2.4.2.rbi → unicode-display_width@2.5.0.rbi} +0 -0
@@ -4,58 +4,28 @@
4
4
  # This is an autogenerated file for types exported from the `rbi` gem.
5
5
  # Please instead update this file by running `bin/tapioca gem rbi`.
6
6
 
7
- # source://rbi//lib/rbi.rb#7
7
+ # source://rbi//lib/rbi/loc.rb#4
8
8
  module RBI; end
9
9
 
10
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
11
- #
12
- # source://rbi//lib/rbi/parser.rb#129
13
- class RBI::ASTVisitor
14
- abstract!
15
-
16
- # source://sorbet-runtime/0.5.10792/lib/types/private/abstract/declare.rb#37
17
- def initialize(*args, **_arg1, &blk); end
18
-
19
- # @abstract
20
- #
21
- # source://rbi//lib/rbi/parser.rb#141
22
- sig { abstract.params(node: T.nilable(::AST::Node)).void }
23
- def visit(node); end
24
-
25
- # source://rbi//lib/rbi/parser.rb#136
26
- sig { params(nodes: T::Array[::AST::Node]).void }
27
- def visit_all(nodes); end
28
-
29
- private
30
-
31
- # source://rbi//lib/rbi/parser.rb#151
32
- sig { params(node: ::AST::Node).returns(::String) }
33
- def parse_expr(node); end
34
-
35
- # source://rbi//lib/rbi/parser.rb#146
36
- sig { params(node: ::AST::Node).returns(::String) }
37
- def parse_name(node); end
38
- end
39
-
40
- # source://rbi//lib/rbi/model.rb#960
10
+ # source://rbi//lib/rbi/model.rb#968
41
11
  class RBI::Arg < ::RBI::Node
42
- # source://rbi//lib/rbi/model.rb#972
12
+ # source://rbi//lib/rbi/model.rb#980
43
13
  sig { params(value: ::String, loc: T.nilable(::RBI::Loc)).void }
44
14
  def initialize(value, loc: T.unsafe(nil)); end
45
15
 
46
- # source://rbi//lib/rbi/model.rb#978
16
+ # source://rbi//lib/rbi/model.rb#986
47
17
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
48
18
  def ==(other); end
49
19
 
50
- # source://rbi//lib/rbi/printer.rb#611
20
+ # source://rbi//lib/rbi/printer.rb#613
51
21
  sig { override.params(v: ::RBI::Printer).void }
52
22
  def accept_printer(v); end
53
23
 
54
- # source://rbi//lib/rbi/model.rb#983
24
+ # source://rbi//lib/rbi/model.rb#991
55
25
  sig { returns(::String) }
56
26
  def to_s; end
57
27
 
58
- # source://rbi//lib/rbi/model.rb#964
28
+ # source://rbi//lib/rbi/model.rb#972
59
29
  sig { returns(::String) }
60
30
  def value; end
61
31
  end
@@ -64,13 +34,13 @@ end
64
34
  #
65
35
  # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
66
36
  #
67
- # source://rbi//lib/rbi/model.rb#341
37
+ # source://rbi//lib/rbi/model.rb#349
68
38
  class RBI::Attr < ::RBI::NodeWithComments
69
39
  include ::RBI::Indexable
70
40
 
71
41
  abstract!
72
42
 
73
- # source://rbi//lib/rbi/model.rb#366
43
+ # source://rbi//lib/rbi/model.rb#374
74
44
  sig do
75
45
  params(
76
46
  name: ::Symbol,
@@ -83,58 +53,53 @@ class RBI::Attr < ::RBI::NodeWithComments
83
53
  end
84
54
  def initialize(name, names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil)); end
85
55
 
86
- # source://rbi//lib/rbi/printer.rb#346
56
+ # source://rbi//lib/rbi/printer.rb#348
87
57
  sig { override.params(v: ::RBI::Printer).void }
88
58
  def accept_printer(v); end
89
59
 
90
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#406
60
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#412
91
61
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
92
62
  def compatible_with?(other); end
93
63
 
94
64
  # @abstract
95
65
  #
96
- # source://rbi//lib/rbi/model.rb#374
66
+ # source://rbi//lib/rbi/model.rb#382
97
67
  sig { abstract.returns(T::Array[::String]) }
98
68
  def fully_qualified_names; end
99
69
 
100
- # source://rbi//lib/rbi/index.rb#109
70
+ # source://rbi//lib/rbi/index.rb#113
101
71
  sig { override.returns(T::Array[::String]) }
102
72
  def index_ids; end
103
73
 
104
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#413
74
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#420
105
75
  sig { override.params(other: ::RBI::Node).void }
106
76
  def merge_with(other); end
107
77
 
108
- # source://rbi//lib/rbi/model.rb#348
78
+ # source://rbi//lib/rbi/model.rb#356
109
79
  sig { returns(T::Array[::Symbol]) }
110
80
  def names; end
111
81
 
112
- # @return [Array<Symbol>]
113
- #
114
- # source://rbi//lib/rbi/model.rb#348
115
- def names=(_arg0); end
116
-
117
- # source://rbi//lib/rbi/printer.rb#373
82
+ # source://rbi//lib/rbi/printer.rb#375
118
83
  sig { override.returns(T::Boolean) }
119
84
  def oneline?; end
120
85
 
121
- # source://rbi//lib/rbi/model.rb#354
86
+ # source://rbi//lib/rbi/model.rb#362
122
87
  sig { returns(T::Array[::RBI::Sig]) }
123
88
  def sigs; end
124
89
 
125
- # source://rbi//lib/rbi/model.rb#351
90
+ # source://rbi//lib/rbi/model.rb#359
126
91
  sig { returns(::RBI::Visibility) }
127
92
  def visibility; end
128
93
 
129
94
  # @return [Visibility]
130
95
  #
131
- # source://rbi//lib/rbi/model.rb#351
96
+ # source://rbi//lib/rbi/model.rb#359
132
97
  def visibility=(_arg0); end
133
98
  end
134
99
 
135
- # source://rbi//lib/rbi/model.rb#377
100
+ # source://rbi//lib/rbi/model.rb#385
136
101
  class RBI::AttrAccessor < ::RBI::Attr
137
- # source://rbi//lib/rbi/model.rb#391
102
+ # source://rbi//lib/rbi/model.rb#399
138
103
  sig do
139
104
  params(
140
105
  name: ::Symbol,
@@ -148,22 +113,22 @@ class RBI::AttrAccessor < ::RBI::Attr
148
113
  end
149
114
  def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
150
115
 
151
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#444
116
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#452
152
117
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
153
118
  def compatible_with?(other); end
154
119
 
155
- # source://rbi//lib/rbi/model.rb#397
120
+ # source://rbi//lib/rbi/model.rb#405
156
121
  sig { override.returns(T::Array[::String]) }
157
122
  def fully_qualified_names; end
158
123
 
159
- # source://rbi//lib/rbi/model.rb#403
124
+ # source://rbi//lib/rbi/model.rb#411
160
125
  sig { override.returns(::String) }
161
126
  def to_s; end
162
127
  end
163
128
 
164
- # source://rbi//lib/rbi/model.rb#409
129
+ # source://rbi//lib/rbi/model.rb#417
165
130
  class RBI::AttrReader < ::RBI::Attr
166
- # source://rbi//lib/rbi/model.rb#423
131
+ # source://rbi//lib/rbi/model.rb#431
167
132
  sig do
168
133
  params(
169
134
  name: ::Symbol,
@@ -177,22 +142,22 @@ class RBI::AttrReader < ::RBI::Attr
177
142
  end
178
143
  def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
179
144
 
180
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#426
145
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#434
181
146
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
182
147
  def compatible_with?(other); end
183
148
 
184
- # source://rbi//lib/rbi/model.rb#429
149
+ # source://rbi//lib/rbi/model.rb#437
185
150
  sig { override.returns(T::Array[::String]) }
186
151
  def fully_qualified_names; end
187
152
 
188
- # source://rbi//lib/rbi/model.rb#435
153
+ # source://rbi//lib/rbi/model.rb#443
189
154
  sig { override.returns(::String) }
190
155
  def to_s; end
191
156
  end
192
157
 
193
- # source://rbi//lib/rbi/model.rb#441
158
+ # source://rbi//lib/rbi/model.rb#449
194
159
  class RBI::AttrWriter < ::RBI::Attr
195
- # source://rbi//lib/rbi/model.rb#455
160
+ # source://rbi//lib/rbi/model.rb#463
196
161
  sig do
197
162
  params(
198
163
  name: ::Symbol,
@@ -206,35 +171,35 @@ class RBI::AttrWriter < ::RBI::Attr
206
171
  end
207
172
  def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
208
173
 
209
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#435
174
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#443
210
175
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
211
176
  def compatible_with?(other); end
212
177
 
213
- # source://rbi//lib/rbi/model.rb#461
178
+ # source://rbi//lib/rbi/model.rb#469
214
179
  sig { override.returns(T::Array[::String]) }
215
180
  def fully_qualified_names; end
216
181
 
217
- # source://rbi//lib/rbi/model.rb#467
182
+ # source://rbi//lib/rbi/model.rb#475
218
183
  sig { override.returns(::String) }
219
184
  def to_s; end
220
185
  end
221
186
 
222
187
  # An arbitrary blank line that can be added both in trees and comments
223
188
  #
224
- # source://rbi//lib/rbi/model.rb#70
189
+ # source://rbi//lib/rbi/model.rb#74
225
190
  class RBI::BlankLine < ::RBI::Comment
226
- # source://rbi//lib/rbi/model.rb#74
191
+ # source://rbi//lib/rbi/model.rb#78
227
192
  sig { params(loc: T.nilable(::RBI::Loc)).void }
228
193
  def initialize(loc: T.unsafe(nil)); end
229
194
 
230
- # source://rbi//lib/rbi/printer.rb#215
195
+ # source://rbi//lib/rbi/printer.rb#217
231
196
  sig { override.params(v: ::RBI::Printer).void }
232
197
  def accept_printer(v); end
233
198
  end
234
199
 
235
- # source://rbi//lib/rbi/model.rb#733
200
+ # source://rbi//lib/rbi/model.rb#741
236
201
  class RBI::BlockParam < ::RBI::Param
237
- # source://rbi//lib/rbi/model.rb#744
202
+ # source://rbi//lib/rbi/model.rb#752
238
203
  sig do
239
204
  params(
240
205
  name: ::String,
@@ -245,26 +210,26 @@ class RBI::BlockParam < ::RBI::Param
245
210
  end
246
211
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
247
212
 
248
- # source://rbi//lib/rbi/model.rb#755
213
+ # source://rbi//lib/rbi/model.rb#763
249
214
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
250
215
  def ==(other); end
251
216
 
252
- # source://rbi//lib/rbi/printer.rb#541
217
+ # source://rbi//lib/rbi/printer.rb#543
253
218
  sig { override.params(v: ::RBI::Printer).void }
254
219
  def accept_printer(v); end
255
220
 
256
- # source://rbi//lib/rbi/printer.rb#546
221
+ # source://rbi//lib/rbi/printer.rb#548
257
222
  sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
258
223
  def print_comment_leading_space(v, last:); end
259
224
 
260
- # source://rbi//lib/rbi/model.rb#750
225
+ # source://rbi//lib/rbi/model.rb#758
261
226
  sig { override.returns(::String) }
262
227
  def to_s; end
263
228
  end
264
229
 
265
- # source://rbi//lib/rbi/model.rb#213
230
+ # source://rbi//lib/rbi/model.rb#218
266
231
  class RBI::Class < ::RBI::Scope
267
- # source://rbi//lib/rbi/model.rb#231
232
+ # source://rbi//lib/rbi/model.rb#236
268
233
  sig do
269
234
  params(
270
235
  name: ::String,
@@ -276,58 +241,58 @@ class RBI::Class < ::RBI::Scope
276
241
  end
277
242
  def initialize(name, superclass_name: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
278
243
 
279
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#370
244
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#376
280
245
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
281
246
  def compatible_with?(other); end
282
247
 
283
- # source://rbi//lib/rbi/model.rb#239
248
+ # source://rbi//lib/rbi/model.rb#244
284
249
  sig { override.returns(::String) }
285
250
  def fully_qualified_name; end
286
251
 
287
- # source://rbi//lib/rbi/model.rb#217
252
+ # source://rbi//lib/rbi/model.rb#222
288
253
  sig { returns(::String) }
289
254
  def name; end
290
255
 
291
256
  # @return [String]
292
257
  #
293
- # source://rbi//lib/rbi/model.rb#217
258
+ # source://rbi//lib/rbi/model.rb#222
294
259
  def name=(_arg0); end
295
260
 
296
- # source://rbi//lib/rbi/printer.rb#282
261
+ # source://rbi//lib/rbi/printer.rb#284
297
262
  sig { override.params(v: ::RBI::Printer).void }
298
263
  def print_header(v); end
299
264
 
300
- # source://rbi//lib/rbi/model.rb#220
265
+ # source://rbi//lib/rbi/model.rb#225
301
266
  sig { returns(T.nilable(::String)) }
302
267
  def superclass_name; end
303
268
 
304
269
  # @return [String, nil]
305
270
  #
306
- # source://rbi//lib/rbi/model.rb#220
271
+ # source://rbi//lib/rbi/model.rb#225
307
272
  def superclass_name=(_arg0); end
308
273
  end
309
274
 
310
- # source://rbi//lib/rbi/model.rb#50
275
+ # source://rbi//lib/rbi/model.rb#53
311
276
  class RBI::Comment < ::RBI::Node
312
- # source://rbi//lib/rbi/model.rb#57
277
+ # source://rbi//lib/rbi/model.rb#60
313
278
  sig { params(text: ::String, loc: T.nilable(::RBI::Loc)).void }
314
279
  def initialize(text, loc: T.unsafe(nil)); end
315
280
 
316
- # source://rbi//lib/rbi/model.rb#63
281
+ # source://rbi//lib/rbi/model.rb#66
317
282
  sig { params(other: ::Object).returns(T::Boolean) }
318
283
  def ==(other); end
319
284
 
320
- # source://rbi//lib/rbi/printer.rb#195
285
+ # source://rbi//lib/rbi/printer.rb#197
321
286
  sig { override.params(v: ::RBI::Printer).void }
322
287
  def accept_printer(v); end
323
288
 
324
- # source://rbi//lib/rbi/model.rb#54
289
+ # source://rbi//lib/rbi/model.rb#57
325
290
  sig { returns(::String) }
326
291
  def text; end
327
292
 
328
293
  # @return [String]
329
294
  #
330
- # source://rbi//lib/rbi/model.rb#54
295
+ # source://rbi//lib/rbi/model.rb#57
331
296
  def text=(_arg0); end
332
297
  end
333
298
 
@@ -346,33 +311,33 @@ end
346
311
  # end
347
312
  # ~~~
348
313
  #
349
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#578
314
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#589
350
315
  class RBI::ConflictTree < ::RBI::Tree
351
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#585
316
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#596
352
317
  sig { params(left_name: ::String, right_name: ::String).void }
353
318
  def initialize(left_name: T.unsafe(nil), right_name: T.unsafe(nil)); end
354
319
 
355
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#596
320
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#607
356
321
  sig { override.params(v: ::RBI::Printer).void }
357
322
  def accept_printer(v); end
358
323
 
359
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#582
324
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#593
360
325
  sig { returns(::RBI::Tree) }
361
326
  def left; end
362
327
 
363
328
  # @return [Tree]
364
329
  #
365
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#582
330
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#593
366
331
  def right; end
367
332
  end
368
333
 
369
334
  # Consts
370
335
  #
371
- # source://rbi//lib/rbi/model.rb#305
336
+ # source://rbi//lib/rbi/model.rb#312
372
337
  class RBI::Const < ::RBI::NodeWithComments
373
338
  include ::RBI::Indexable
374
339
 
375
- # source://rbi//lib/rbi/model.rb#320
340
+ # source://rbi//lib/rbi/model.rb#327
376
341
  sig do
377
342
  params(
378
343
  name: ::String,
@@ -384,70 +349,41 @@ class RBI::Const < ::RBI::NodeWithComments
384
349
  end
385
350
  def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
386
351
 
387
- # source://rbi//lib/rbi/printer.rb#333
352
+ # source://rbi//lib/rbi/printer.rb#335
388
353
  sig { override.params(v: ::RBI::Printer).void }
389
354
  def accept_printer(v); end
390
355
 
391
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#397
356
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#403
392
357
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
393
358
  def compatible_with?(other); end
394
359
 
395
- # source://rbi//lib/rbi/model.rb#328
360
+ # source://rbi//lib/rbi/model.rb#335
396
361
  sig { returns(::String) }
397
362
  def fully_qualified_name; end
398
363
 
399
- # source://rbi//lib/rbi/index.rb#99
364
+ # source://rbi//lib/rbi/index.rb#103
400
365
  sig { override.returns(T::Array[::String]) }
401
366
  def index_ids; end
402
367
 
403
- # source://rbi//lib/rbi/model.rb#309
368
+ # source://rbi//lib/rbi/model.rb#316
404
369
  sig { returns(::String) }
405
370
  def name; end
406
371
 
407
- # source://rbi//lib/rbi/model.rb#334
372
+ # source://rbi//lib/rbi/model.rb#342
408
373
  sig { override.returns(::String) }
409
374
  def to_s; end
410
375
 
411
376
  # @return [String]
412
377
  #
413
- # source://rbi//lib/rbi/model.rb#309
378
+ # source://rbi//lib/rbi/model.rb#316
414
379
  def value; end
415
380
  end
416
381
 
417
- # source://rbi//lib/rbi/parser.rb#600
418
- class RBI::ConstBuilder < ::RBI::ASTVisitor
419
- # source://rbi//lib/rbi/parser.rb#615
420
- sig { void }
421
- def initialize; end
422
-
423
- # source://rbi//lib/rbi/parser.rb#612
424
- sig { returns(T::Array[::String]) }
425
- def names; end
426
-
427
- # @return [Array<String>]
428
- #
429
- # source://rbi//lib/rbi/parser.rb#612
430
- def names=(_arg0); end
431
-
432
- # source://rbi//lib/rbi/parser.rb#621
433
- sig { override.params(node: T.nilable(::AST::Node)).void }
434
- def visit(node); end
435
-
436
- class << self
437
- # source://rbi//lib/rbi/parser.rb#604
438
- sig { params(node: T.nilable(::AST::Node)).returns(T.nilable(::String)) }
439
- def visit(node); end
440
- end
441
- end
442
-
443
- # source://rbi//lib/rbi.rb#8
444
- class RBI::Error < ::StandardError; end
445
-
446
- # source://rbi//lib/rbi/model.rb#808
382
+ # source://rbi//lib/rbi/model.rb#816
447
383
  class RBI::Extend < ::RBI::Mixin
448
384
  include ::RBI::Indexable
449
385
 
450
- # source://rbi//lib/rbi/model.rb#820
386
+ # source://rbi//lib/rbi/model.rb#828
451
387
  sig do
452
388
  params(
453
389
  name: ::String,
@@ -459,22 +395,22 @@ class RBI::Extend < ::RBI::Mixin
459
395
  end
460
396
  def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
461
397
 
462
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#492
398
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#502
463
399
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
464
400
  def compatible_with?(other); end
465
401
 
466
- # source://rbi//lib/rbi/index.rb#139
402
+ # source://rbi//lib/rbi/index.rb#143
467
403
  sig { override.returns(T::Array[::String]) }
468
404
  def index_ids; end
469
405
 
470
- # source://rbi//lib/rbi/model.rb#826
406
+ # source://rbi//lib/rbi/model.rb#834
471
407
  sig { override.returns(::String) }
472
408
  def to_s; end
473
409
  end
474
410
 
475
- # source://rbi//lib/rbi/model.rb#133
411
+ # source://rbi//lib/rbi/model.rb#137
476
412
  class RBI::File
477
- # source://rbi//lib/rbi/model.rb#152
413
+ # source://rbi//lib/rbi/model.rb#156
478
414
  sig do
479
415
  params(
480
416
  strictness: T.nilable(::String),
@@ -484,28 +420,28 @@ class RBI::File
484
420
  end
485
421
  def initialize(strictness: T.unsafe(nil), comments: T.unsafe(nil), &block); end
486
422
 
487
- # source://rbi//lib/rbi/model.rb#160
423
+ # source://rbi//lib/rbi/model.rb#164
488
424
  sig { params(node: ::RBI::Node).void }
489
425
  def <<(node); end
490
426
 
491
- # source://rbi//lib/rbi/printer.rb#104
427
+ # source://rbi//lib/rbi/printer.rb#105
492
428
  sig { params(v: ::RBI::Printer).void }
493
429
  def accept_printer(v); end
494
430
 
495
- # source://rbi//lib/rbi/model.rb#143
431
+ # source://rbi//lib/rbi/model.rb#147
496
432
  sig { returns(T::Array[::RBI::Comment]) }
497
433
  def comments; end
498
434
 
499
435
  # @return [Array<Comment>]
500
436
  #
501
- # source://rbi//lib/rbi/model.rb#143
437
+ # source://rbi//lib/rbi/model.rb#147
502
438
  def comments=(_arg0); end
503
439
 
504
- # source://rbi//lib/rbi/model.rb#165
440
+ # source://rbi//lib/rbi/model.rb#169
505
441
  sig { returns(T::Boolean) }
506
442
  def empty?; end
507
443
 
508
- # source://rbi//lib/rbi/printer.rb#128
444
+ # source://rbi//lib/rbi/printer.rb#129
509
445
  sig do
510
446
  params(
511
447
  out: T.any(::IO, ::StringIO),
@@ -516,32 +452,32 @@ class RBI::File
516
452
  end
517
453
  def print(out: T.unsafe(nil), indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
518
454
 
519
- # source://rbi//lib/rbi/model.rb#137
455
+ # source://rbi//lib/rbi/model.rb#141
520
456
  sig { returns(::RBI::Tree) }
521
457
  def root; end
522
458
 
523
459
  # @return [Tree]
524
460
  #
525
- # source://rbi//lib/rbi/model.rb#137
461
+ # source://rbi//lib/rbi/model.rb#141
526
462
  def root=(_arg0); end
527
463
 
528
- # source://rbi//lib/rbi/model.rb#140
464
+ # source://rbi//lib/rbi/model.rb#144
529
465
  sig { returns(T.nilable(::String)) }
530
466
  def strictness; end
531
467
 
532
468
  # @return [String, nil]
533
469
  #
534
- # source://rbi//lib/rbi/model.rb#140
470
+ # source://rbi//lib/rbi/model.rb#144
535
471
  def strictness=(_arg0); end
536
472
 
537
- # source://rbi//lib/rbi/printer.rb#134
473
+ # source://rbi//lib/rbi/printer.rb#135
538
474
  sig { params(indent: ::Integer, print_locs: T::Boolean, max_line_length: T.nilable(::Integer)).returns(::String) }
539
475
  def string(indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
540
476
  end
541
477
 
542
478
  # source://rbi//lib/rbi/formatter.rb#5
543
479
  class RBI::Formatter
544
- # source://rbi//lib/rbi/formatter.rb#24
480
+ # source://rbi//lib/rbi/formatter.rb#36
545
481
  sig do
546
482
  params(
547
483
  add_sig_templates: T::Boolean,
@@ -554,79 +490,46 @@ class RBI::Formatter
554
490
  end
555
491
  def initialize(add_sig_templates: T.unsafe(nil), group_nodes: T.unsafe(nil), max_line_length: T.unsafe(nil), nest_singleton_methods: T.unsafe(nil), nest_non_public_methods: T.unsafe(nil), sort_nodes: T.unsafe(nil)); end
556
492
 
557
- # source://rbi//lib/rbi/formatter.rb#9
558
- sig { returns(T::Boolean) }
559
- def add_sig_templates; end
493
+ # source://rbi//lib/rbi/formatter.rb#15
494
+ sig { params(add_sig_templates: T::Boolean).returns(T::Boolean) }
495
+ def add_sig_templates=(add_sig_templates); end
560
496
 
561
- # @return [Boolean]
562
- #
563
- # source://rbi//lib/rbi/formatter.rb#9
564
- def add_sig_templates=(_arg0); end
565
-
566
- # source://rbi//lib/rbi/formatter.rb#53
497
+ # source://rbi//lib/rbi/formatter.rb#59
567
498
  sig { params(file: ::RBI::File).void }
568
499
  def format_file(file); end
569
500
 
570
- # source://rbi//lib/rbi/formatter.rb#58
501
+ # source://rbi//lib/rbi/formatter.rb#64
571
502
  sig { params(tree: ::RBI::Tree).void }
572
503
  def format_tree(tree); end
573
504
 
574
- # @return [Boolean]
575
- #
576
- # source://rbi//lib/rbi/formatter.rb#9
577
- def group_nodes; end
578
-
579
- # @return [Boolean]
580
- #
581
- # source://rbi//lib/rbi/formatter.rb#9
582
- def group_nodes=(_arg0); end
505
+ # source://rbi//lib/rbi/formatter.rb#18
506
+ sig { params(group_nodes: T::Boolean).returns(T::Boolean) }
507
+ def group_nodes=(group_nodes); end
583
508
 
584
- # source://rbi//lib/rbi/formatter.rb#12
509
+ # source://rbi//lib/rbi/formatter.rb#24
585
510
  sig { returns(T.nilable(::Integer)) }
586
511
  def max_line_length; end
587
512
 
588
513
  # @return [Integer, nil]
589
514
  #
590
- # source://rbi//lib/rbi/formatter.rb#12
515
+ # source://rbi//lib/rbi/formatter.rb#24
591
516
  def max_line_length=(_arg0); end
592
517
 
593
- # @return [Boolean]
594
- #
595
- # source://rbi//lib/rbi/formatter.rb#9
596
- def nest_non_public_methods; end
518
+ # source://rbi//lib/rbi/formatter.rb#21
519
+ sig { params(nest_non_public_methods: T::Boolean).returns(T::Boolean) }
520
+ def nest_non_public_methods=(nest_non_public_methods); end
597
521
 
598
- # @return [Boolean]
599
- #
600
- # source://rbi//lib/rbi/formatter.rb#9
601
- def nest_non_public_methods=(_arg0); end
602
-
603
- # @return [Boolean]
604
- #
605
- # source://rbi//lib/rbi/formatter.rb#9
606
- def nest_singleton_methods; end
607
-
608
- # @return [Boolean]
609
- #
610
- # source://rbi//lib/rbi/formatter.rb#9
611
- def nest_singleton_methods=(_arg0); end
522
+ # source://rbi//lib/rbi/formatter.rb#12
523
+ sig { params(nest_singleton_methods: T::Boolean).returns(T::Boolean) }
524
+ def nest_singleton_methods=(nest_singleton_methods); end
612
525
 
613
- # source://rbi//lib/rbi/formatter.rb#41
526
+ # source://rbi//lib/rbi/formatter.rb#53
614
527
  sig { params(file: ::RBI::File).returns(::String) }
615
528
  def print_file(file); end
616
529
 
617
- # source://rbi//lib/rbi/formatter.rb#47
618
- sig { params(tree: ::RBI::Tree).returns(::String) }
619
- def print_tree(tree); end
620
-
621
- # @return [Boolean]
622
- #
623
- # source://rbi//lib/rbi/formatter.rb#9
624
- def sort_nodes; end
625
-
626
- # @return [Boolean]
627
- #
628
530
  # source://rbi//lib/rbi/formatter.rb#9
629
- def sort_nodes=(_arg0); end
531
+ sig { params(sort_nodes: T::Boolean).returns(T::Boolean) }
532
+ def sort_nodes=(sort_nodes); end
630
533
  end
631
534
 
632
535
  # source://rbi//lib/rbi/rewriters/group_nodes.rb#88
@@ -635,7 +538,7 @@ class RBI::Group < ::RBI::Tree
635
538
  sig { params(kind: ::RBI::Group::Kind).void }
636
539
  def initialize(kind); end
637
540
 
638
- # source://rbi//lib/rbi/printer.rb#836
541
+ # source://rbi//lib/rbi/printer.rb#838
639
542
  sig { override.params(v: ::RBI::Printer).void }
640
543
  def accept_printer(v); end
641
544
 
@@ -665,11 +568,11 @@ end
665
568
 
666
569
  # Sorbet's misc.
667
570
  #
668
- # source://rbi//lib/rbi/model.rb#1285
571
+ # source://rbi//lib/rbi/model.rb#1294
669
572
  class RBI::Helper < ::RBI::NodeWithComments
670
573
  include ::RBI::Indexable
671
574
 
672
- # source://rbi//lib/rbi/model.rb#1299
575
+ # source://rbi//lib/rbi/model.rb#1308
673
576
  sig do
674
577
  params(
675
578
  name: ::String,
@@ -680,32 +583,32 @@ class RBI::Helper < ::RBI::NodeWithComments
680
583
  end
681
584
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
682
585
 
683
- # source://rbi//lib/rbi/printer.rb#823
586
+ # source://rbi//lib/rbi/printer.rb#825
684
587
  sig { override.params(v: ::RBI::Printer).void }
685
588
  def accept_printer(v); end
686
589
 
687
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#510
590
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#520
688
591
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
689
592
  def compatible_with?(other); end
690
593
 
691
- # source://rbi//lib/rbi/index.rb#169
594
+ # source://rbi//lib/rbi/index.rb#173
692
595
  sig { override.returns(T::Array[::String]) }
693
596
  def index_ids; end
694
597
 
695
- # source://rbi//lib/rbi/model.rb#1289
598
+ # source://rbi//lib/rbi/model.rb#1298
696
599
  sig { returns(::String) }
697
600
  def name; end
698
601
 
699
- # source://rbi//lib/rbi/model.rb#1306
602
+ # source://rbi//lib/rbi/model.rb#1315
700
603
  sig { override.returns(::String) }
701
604
  def to_s; end
702
605
  end
703
606
 
704
- # source://rbi//lib/rbi/model.rb#785
607
+ # source://rbi//lib/rbi/model.rb#793
705
608
  class RBI::Include < ::RBI::Mixin
706
609
  include ::RBI::Indexable
707
610
 
708
- # source://rbi//lib/rbi/model.rb#797
611
+ # source://rbi//lib/rbi/model.rb#805
709
612
  sig do
710
613
  params(
711
614
  name: ::String,
@@ -717,49 +620,49 @@ class RBI::Include < ::RBI::Mixin
717
620
  end
718
621
  def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
719
622
 
720
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#483
623
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#493
721
624
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
722
625
  def compatible_with?(other); end
723
626
 
724
- # source://rbi//lib/rbi/index.rb#129
627
+ # source://rbi//lib/rbi/index.rb#133
725
628
  sig { override.returns(T::Array[::String]) }
726
629
  def index_ids; end
727
630
 
728
- # source://rbi//lib/rbi/model.rb#803
631
+ # source://rbi//lib/rbi/model.rb#811
729
632
  sig { override.returns(::String) }
730
633
  def to_s; end
731
634
  end
732
635
 
733
636
  # source://rbi//lib/rbi/index.rb#5
734
637
  class RBI::Index < ::RBI::Visitor
735
- # source://rbi//lib/rbi/index.rb#17
638
+ # source://rbi//lib/rbi/index.rb#21
736
639
  sig { void }
737
640
  def initialize; end
738
641
 
739
- # source://rbi//lib/rbi/index.rb#28
642
+ # source://rbi//lib/rbi/index.rb#32
740
643
  sig { params(id: ::String).returns(T::Array[::RBI::Node]) }
741
644
  def [](id); end
742
645
 
743
- # source://rbi//lib/rbi/index.rb#33
646
+ # source://rbi//lib/rbi/index.rb#37
744
647
  sig { params(nodes: ::RBI::Node).void }
745
648
  def index(*nodes); end
746
649
 
747
- # source://rbi//lib/rbi/index.rb#23
650
+ # source://rbi//lib/rbi/index.rb#27
748
651
  sig { returns(T::Array[::String]) }
749
652
  def keys; end
750
653
 
751
- # source://rbi//lib/rbi/index.rb#38
654
+ # source://rbi//lib/rbi/index.rb#42
752
655
  sig { override.params(node: T.nilable(::RBI::Node)).void }
753
656
  def visit(node); end
754
657
 
755
658
  private
756
659
 
757
- # source://rbi//lib/rbi/index.rb#55
660
+ # source://rbi//lib/rbi/index.rb#59
758
661
  sig { params(node: T.all(::RBI::Indexable, ::RBI::Node)).void }
759
662
  def index_node(node); end
760
663
 
761
664
  class << self
762
- # source://rbi//lib/rbi/index.rb#10
665
+ # source://rbi//lib/rbi/index.rb#13
763
666
  sig { params(node: ::RBI::Node).returns(::RBI::Index) }
764
667
  def index(*node); end
765
668
  end
@@ -769,7 +672,7 @@ end
769
672
  #
770
673
  # @abstract Subclasses must implement the `abstract` methods below.
771
674
  #
772
- # source://rbi//lib/rbi/index.rb#70
675
+ # source://rbi//lib/rbi/index.rb#74
773
676
  module RBI::Indexable
774
677
  interface!
775
678
 
@@ -780,37 +683,37 @@ module RBI::Indexable
780
683
  #
781
684
  # @abstract
782
685
  #
783
- # source://rbi//lib/rbi/index.rb#81
686
+ # source://rbi//lib/rbi/index.rb#85
784
687
  sig { abstract.returns(T::Array[::String]) }
785
688
  def index_ids; end
786
689
  end
787
690
 
788
- # source://rbi//lib/rbi/model.rb#988
691
+ # source://rbi//lib/rbi/model.rb#996
789
692
  class RBI::KwArg < ::RBI::Arg
790
- # source://rbi//lib/rbi/model.rb#1001
693
+ # source://rbi//lib/rbi/model.rb#1009
791
694
  sig { params(keyword: ::String, value: ::String, loc: T.nilable(::RBI::Loc)).void }
792
695
  def initialize(keyword, value, loc: T.unsafe(nil)); end
793
696
 
794
- # source://rbi//lib/rbi/model.rb#1007
697
+ # source://rbi//lib/rbi/model.rb#1015
795
698
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
796
699
  def ==(other); end
797
700
 
798
- # source://rbi//lib/rbi/printer.rb#620
701
+ # source://rbi//lib/rbi/printer.rb#622
799
702
  sig { override.params(v: ::RBI::Printer).void }
800
703
  def accept_printer(v); end
801
704
 
802
- # source://rbi//lib/rbi/model.rb#992
705
+ # source://rbi//lib/rbi/model.rb#1000
803
706
  sig { returns(::String) }
804
707
  def keyword; end
805
708
 
806
- # source://rbi//lib/rbi/model.rb#1012
709
+ # source://rbi//lib/rbi/model.rb#1020
807
710
  sig { returns(::String) }
808
711
  def to_s; end
809
712
  end
810
713
 
811
- # source://rbi//lib/rbi/model.rb#674
714
+ # source://rbi//lib/rbi/model.rb#682
812
715
  class RBI::KwOptParam < ::RBI::Param
813
- # source://rbi//lib/rbi/model.rb#689
716
+ # source://rbi//lib/rbi/model.rb#697
814
717
  sig do
815
718
  params(
816
719
  name: ::String,
@@ -822,30 +725,30 @@ class RBI::KwOptParam < ::RBI::Param
822
725
  end
823
726
  def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
824
727
 
825
- # source://rbi//lib/rbi/model.rb#701
728
+ # source://rbi//lib/rbi/model.rb#709
826
729
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
827
730
  def ==(other); end
828
731
 
829
- # source://rbi//lib/rbi/printer.rb#511
732
+ # source://rbi//lib/rbi/printer.rb#513
830
733
  sig { override.params(v: ::RBI::Printer).void }
831
734
  def accept_printer(v); end
832
735
 
833
- # source://rbi//lib/rbi/printer.rb#516
736
+ # source://rbi//lib/rbi/printer.rb#518
834
737
  sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
835
738
  def print_comment_leading_space(v, last:); end
836
739
 
837
- # source://rbi//lib/rbi/model.rb#696
740
+ # source://rbi//lib/rbi/model.rb#704
838
741
  sig { override.returns(::String) }
839
742
  def to_s; end
840
743
 
841
- # source://rbi//lib/rbi/model.rb#678
744
+ # source://rbi//lib/rbi/model.rb#686
842
745
  sig { returns(::String) }
843
746
  def value; end
844
747
  end
845
748
 
846
- # source://rbi//lib/rbi/model.rb#647
749
+ # source://rbi//lib/rbi/model.rb#655
847
750
  class RBI::KwParam < ::RBI::Param
848
- # source://rbi//lib/rbi/model.rb#658
751
+ # source://rbi//lib/rbi/model.rb#666
849
752
  sig do
850
753
  params(
851
754
  name: ::String,
@@ -856,26 +759,26 @@ class RBI::KwParam < ::RBI::Param
856
759
  end
857
760
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
858
761
 
859
- # source://rbi//lib/rbi/model.rb#669
762
+ # source://rbi//lib/rbi/model.rb#677
860
763
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
861
764
  def ==(other); end
862
765
 
863
- # source://rbi//lib/rbi/printer.rb#496
766
+ # source://rbi//lib/rbi/printer.rb#498
864
767
  sig { override.params(v: ::RBI::Printer).void }
865
768
  def accept_printer(v); end
866
769
 
867
- # source://rbi//lib/rbi/printer.rb#501
770
+ # source://rbi//lib/rbi/printer.rb#503
868
771
  sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
869
772
  def print_comment_leading_space(v, last:); end
870
773
 
871
- # source://rbi//lib/rbi/model.rb#664
774
+ # source://rbi//lib/rbi/model.rb#672
872
775
  sig { override.returns(::String) }
873
776
  def to_s; end
874
777
  end
875
778
 
876
- # source://rbi//lib/rbi/model.rb#706
779
+ # source://rbi//lib/rbi/model.rb#714
877
780
  class RBI::KwRestParam < ::RBI::Param
878
- # source://rbi//lib/rbi/model.rb#717
781
+ # source://rbi//lib/rbi/model.rb#725
879
782
  sig do
880
783
  params(
881
784
  name: ::String,
@@ -886,26 +789,26 @@ class RBI::KwRestParam < ::RBI::Param
886
789
  end
887
790
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
888
791
 
889
- # source://rbi//lib/rbi/model.rb#728
792
+ # source://rbi//lib/rbi/model.rb#736
890
793
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
891
794
  def ==(other); end
892
795
 
893
- # source://rbi//lib/rbi/printer.rb#526
796
+ # source://rbi//lib/rbi/printer.rb#528
894
797
  sig { override.params(v: ::RBI::Printer).void }
895
798
  def accept_printer(v); end
896
799
 
897
- # source://rbi//lib/rbi/printer.rb#531
800
+ # source://rbi//lib/rbi/printer.rb#533
898
801
  sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
899
802
  def print_comment_leading_space(v, last:); end
900
803
 
901
- # source://rbi//lib/rbi/model.rb#723
804
+ # source://rbi//lib/rbi/model.rb#731
902
805
  sig { override.returns(::String) }
903
806
  def to_s; end
904
807
  end
905
808
 
906
809
  # source://rbi//lib/rbi/loc.rb#5
907
810
  class RBI::Loc
908
- # source://rbi//lib/rbi/loc.rb#23
811
+ # source://rbi//lib/rbi/loc.rb#38
909
812
  sig do
910
813
  params(
911
814
  file: T.nilable(::String),
@@ -919,47 +822,47 @@ class RBI::Loc
919
822
 
920
823
  # @return [Integer, nil]
921
824
  #
922
- # source://rbi//lib/rbi/loc.rb#12
825
+ # source://rbi//lib/rbi/loc.rb#27
923
826
  def begin_column; end
924
827
 
925
- # source://rbi//lib/rbi/loc.rb#12
828
+ # source://rbi//lib/rbi/loc.rb#27
926
829
  sig { returns(T.nilable(::Integer)) }
927
830
  def begin_line; end
928
831
 
929
832
  # @return [Integer, nil]
930
833
  #
931
- # source://rbi//lib/rbi/loc.rb#12
834
+ # source://rbi//lib/rbi/loc.rb#27
932
835
  def end_column; end
933
836
 
934
837
  # @return [Integer, nil]
935
838
  #
936
- # source://rbi//lib/rbi/loc.rb#12
839
+ # source://rbi//lib/rbi/loc.rb#27
937
840
  def end_line; end
938
841
 
939
- # source://rbi//lib/rbi/loc.rb#9
842
+ # source://rbi//lib/rbi/loc.rb#24
940
843
  sig { returns(T.nilable(::String)) }
941
844
  def file; end
942
845
 
943
- # source://rbi//lib/rbi/loc.rb#37
846
+ # source://rbi//lib/rbi/loc.rb#56
944
847
  sig { returns(T.nilable(::String)) }
945
848
  def source; end
946
849
 
947
- # source://rbi//lib/rbi/loc.rb#32
850
+ # source://rbi//lib/rbi/loc.rb#47
948
851
  sig { returns(::String) }
949
852
  def to_s; end
950
853
 
951
854
  class << self
952
- # source://rbi//lib/rbi/parser.rb#707
953
- sig { params(file: ::String, ast_loc: T.any(::Parser::Source::Map, ::Parser::Source::Range)).returns(::RBI::Loc) }
954
- def from_ast_loc(file, ast_loc); end
855
+ # source://rbi//lib/rbi/loc.rb#12
856
+ sig { params(file: ::String, prism_location: ::Prism::Location).returns(::RBI::Loc) }
857
+ def from_prism(file, prism_location); end
955
858
  end
956
859
  end
957
860
 
958
861
  # A tree that _might_ contain conflicts
959
862
  #
960
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#324
863
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#330
961
864
  class RBI::MergeTree < ::RBI::Tree
962
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#338
865
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#344
963
866
  sig do
964
867
  params(
965
868
  loc: T.nilable(::RBI::Loc),
@@ -970,18 +873,18 @@ class RBI::MergeTree < ::RBI::Tree
970
873
  end
971
874
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), conflicts: T.unsafe(nil), &block); end
972
875
 
973
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#328
876
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#334
974
877
  sig { returns(T::Array[::RBI::Rewriters::Merge::Conflict]) }
975
878
  def conflicts; end
976
879
  end
977
880
 
978
881
  # Methods and args
979
882
  #
980
- # source://rbi//lib/rbi/model.rb#475
883
+ # source://rbi//lib/rbi/model.rb#483
981
884
  class RBI::Method < ::RBI::NodeWithComments
982
885
  include ::RBI::Indexable
983
886
 
984
- # source://rbi//lib/rbi/model.rb#505
887
+ # source://rbi//lib/rbi/model.rb#513
985
888
  sig do
986
889
  params(
987
890
  name: ::String,
@@ -996,88 +899,88 @@ class RBI::Method < ::RBI::NodeWithComments
996
899
  end
997
900
  def initialize(name, params: T.unsafe(nil), is_singleton: T.unsafe(nil), visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
998
901
 
999
- # source://rbi//lib/rbi/model.rb#525
902
+ # source://rbi//lib/rbi/model.rb#533
1000
903
  sig { params(param: ::RBI::Param).void }
1001
904
  def <<(param); end
1002
905
 
1003
- # source://rbi//lib/rbi/printer.rb#382
906
+ # source://rbi//lib/rbi/printer.rb#384
1004
907
  sig { override.params(v: ::RBI::Printer).void }
1005
908
  def accept_printer(v); end
1006
909
 
1007
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#453
910
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#461
1008
911
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
1009
912
  def compatible_with?(other); end
1010
913
 
1011
- # source://rbi//lib/rbi/model.rb#530
914
+ # source://rbi//lib/rbi/model.rb#538
1012
915
  sig { returns(::String) }
1013
916
  def fully_qualified_name; end
1014
917
 
1015
- # source://rbi//lib/rbi/index.rb#119
918
+ # source://rbi//lib/rbi/index.rb#123
1016
919
  sig { override.returns(T::Array[::String]) }
1017
920
  def index_ids; end
1018
921
 
1019
- # source://rbi//lib/rbi/printer.rb#435
922
+ # source://rbi//lib/rbi/printer.rb#437
1020
923
  sig { returns(T::Boolean) }
1021
924
  def inline_params?; end
1022
925
 
1023
- # source://rbi//lib/rbi/model.rb#485
926
+ # source://rbi//lib/rbi/model.rb#493
1024
927
  sig { returns(T::Boolean) }
1025
928
  def is_singleton; end
1026
929
 
1027
930
  # @return [Boolean]
1028
931
  #
1029
- # source://rbi//lib/rbi/model.rb#485
932
+ # source://rbi//lib/rbi/model.rb#493
1030
933
  def is_singleton=(_arg0); end
1031
934
 
1032
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#461
935
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#470
1033
936
  sig { override.params(other: ::RBI::Node).void }
1034
937
  def merge_with(other); end
1035
938
 
1036
- # source://rbi//lib/rbi/model.rb#479
939
+ # source://rbi//lib/rbi/model.rb#487
1037
940
  sig { returns(::String) }
1038
941
  def name; end
1039
942
 
1040
943
  # @return [String]
1041
944
  #
1042
- # source://rbi//lib/rbi/model.rb#479
945
+ # source://rbi//lib/rbi/model.rb#487
1043
946
  def name=(_arg0); end
1044
947
 
1045
- # source://rbi//lib/rbi/printer.rb#430
948
+ # source://rbi//lib/rbi/printer.rb#432
1046
949
  sig { override.returns(T::Boolean) }
1047
950
  def oneline?; end
1048
951
 
1049
- # source://rbi//lib/rbi/model.rb#482
952
+ # source://rbi//lib/rbi/model.rb#490
1050
953
  sig { returns(T::Array[::RBI::Param]) }
1051
954
  def params; end
1052
955
 
1053
- # source://rbi//lib/rbi/model.rb#491
956
+ # source://rbi//lib/rbi/model.rb#499
1054
957
  sig { returns(T::Array[::RBI::Sig]) }
1055
958
  def sigs; end
1056
959
 
1057
960
  # @return [Array<Sig>]
1058
961
  #
1059
- # source://rbi//lib/rbi/model.rb#491
962
+ # source://rbi//lib/rbi/model.rb#499
1060
963
  def sigs=(_arg0); end
1061
964
 
1062
- # source://rbi//lib/rbi/model.rb#539
965
+ # source://rbi//lib/rbi/model.rb#547
1063
966
  sig { override.returns(::String) }
1064
967
  def to_s; end
1065
968
 
1066
- # source://rbi//lib/rbi/model.rb#488
969
+ # source://rbi//lib/rbi/model.rb#496
1067
970
  sig { returns(::RBI::Visibility) }
1068
971
  def visibility; end
1069
972
 
1070
973
  # @return [Visibility]
1071
974
  #
1072
- # source://rbi//lib/rbi/model.rb#488
975
+ # source://rbi//lib/rbi/model.rb#496
1073
976
  def visibility=(_arg0); end
1074
977
  end
1075
978
 
1076
- # source://rbi//lib/rbi/model.rb#1345
979
+ # source://rbi//lib/rbi/model.rb#1355
1077
980
  class RBI::MixesInClassMethods < ::RBI::Mixin
1078
981
  include ::RBI::Indexable
1079
982
 
1080
- # source://rbi//lib/rbi/model.rb#1357
983
+ # source://rbi//lib/rbi/model.rb#1367
1081
984
  sig do
1082
985
  params(
1083
986
  name: ::String,
@@ -1089,15 +992,15 @@ class RBI::MixesInClassMethods < ::RBI::Mixin
1089
992
  end
1090
993
  def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1091
994
 
1092
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#501
995
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#511
1093
996
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
1094
997
  def compatible_with?(other); end
1095
998
 
1096
- # source://rbi//lib/rbi/index.rb#149
999
+ # source://rbi//lib/rbi/index.rb#153
1097
1000
  sig { override.returns(T::Array[::String]) }
1098
1001
  def index_ids; end
1099
1002
 
1100
- # source://rbi//lib/rbi/model.rb#1363
1003
+ # source://rbi//lib/rbi/model.rb#1373
1101
1004
  sig { override.returns(::String) }
1102
1005
  def to_s; end
1103
1006
  end
@@ -1106,11 +1009,11 @@ end
1106
1009
  #
1107
1010
  # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1108
1011
  #
1109
- # source://rbi//lib/rbi/model.rb#762
1012
+ # source://rbi//lib/rbi/model.rb#770
1110
1013
  class RBI::Mixin < ::RBI::NodeWithComments
1111
1014
  abstract!
1112
1015
 
1113
- # source://rbi//lib/rbi/model.rb#779
1016
+ # source://rbi//lib/rbi/model.rb#787
1114
1017
  sig do
1115
1018
  params(
1116
1019
  name: ::String,
@@ -1121,27 +1024,22 @@ class RBI::Mixin < ::RBI::NodeWithComments
1121
1024
  end
1122
1025
  def initialize(name, names, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
1123
1026
 
1124
- # source://rbi//lib/rbi/printer.rb#556
1027
+ # source://rbi//lib/rbi/printer.rb#558
1125
1028
  sig { override.params(v: ::RBI::Printer).void }
1126
1029
  def accept_printer(v); end
1127
1030
 
1128
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#474
1031
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#484
1129
1032
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
1130
1033
  def compatible_with?(other); end
1131
1034
 
1132
- # source://rbi//lib/rbi/model.rb#769
1035
+ # source://rbi//lib/rbi/model.rb#777
1133
1036
  sig { returns(T::Array[::String]) }
1134
1037
  def names; end
1135
-
1136
- # @return [Array<String>]
1137
- #
1138
- # source://rbi//lib/rbi/model.rb#769
1139
- def names=(_arg0); end
1140
1038
  end
1141
1039
 
1142
- # source://rbi//lib/rbi/model.rb#186
1040
+ # source://rbi//lib/rbi/model.rb#190
1143
1041
  class RBI::Module < ::RBI::Scope
1144
- # source://rbi//lib/rbi/model.rb#200
1042
+ # source://rbi//lib/rbi/model.rb#204
1145
1043
  sig do
1146
1044
  params(
1147
1045
  name: ::String,
@@ -1152,24 +1050,24 @@ class RBI::Module < ::RBI::Scope
1152
1050
  end
1153
1051
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1154
1052
 
1155
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#379
1053
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#385
1156
1054
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
1157
1055
  def compatible_with?(other); end
1158
1056
 
1159
- # source://rbi//lib/rbi/model.rb#207
1057
+ # source://rbi//lib/rbi/model.rb#211
1160
1058
  sig { override.returns(::String) }
1161
1059
  def fully_qualified_name; end
1162
1060
 
1163
- # source://rbi//lib/rbi/model.rb#190
1061
+ # source://rbi//lib/rbi/model.rb#194
1164
1062
  sig { returns(::String) }
1165
1063
  def name; end
1166
1064
 
1167
1065
  # @return [String]
1168
1066
  #
1169
- # source://rbi//lib/rbi/model.rb#190
1067
+ # source://rbi//lib/rbi/model.rb#194
1170
1068
  def name=(_arg0); end
1171
1069
 
1172
- # source://rbi//lib/rbi/printer.rb#268
1070
+ # source://rbi//lib/rbi/printer.rb#270
1173
1071
  sig { override.params(v: ::RBI::Printer).void }
1174
1072
  def print_header(v); end
1175
1073
  end
@@ -1186,13 +1084,13 @@ class RBI::Node
1186
1084
 
1187
1085
  # @abstract
1188
1086
  #
1189
- # source://rbi//lib/rbi/printer.rb#145
1087
+ # source://rbi//lib/rbi/printer.rb#146
1190
1088
  sig { abstract.params(v: ::RBI::Printer).void }
1191
1089
  def accept_printer(v); end
1192
1090
 
1193
1091
  # Can `self` and `_other` be merged into a single definition?
1194
1092
  #
1195
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#283
1093
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#287
1196
1094
  sig { params(_other: ::RBI::Node).returns(T::Boolean) }
1197
1095
  def compatible_with?(_other); end
1198
1096
 
@@ -1215,19 +1113,19 @@ class RBI::Node
1215
1113
 
1216
1114
  # Merge `self` and `other` into a single definition
1217
1115
  #
1218
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#289
1116
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#293
1219
1117
  sig { params(other: ::RBI::Node).void }
1220
1118
  def merge_with(other); end
1221
1119
 
1222
- # source://rbi//lib/rbi/printer.rb#177
1120
+ # source://rbi//lib/rbi/printer.rb#179
1223
1121
  sig { returns(T::Boolean) }
1224
1122
  def oneline?; end
1225
1123
 
1226
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#292
1124
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#296
1227
1125
  sig { returns(T.nilable(::RBI::ConflictTree)) }
1228
1126
  def parent_conflict_tree; end
1229
1127
 
1230
- # source://rbi//lib/rbi/model.rb#43
1128
+ # source://rbi//lib/rbi/model.rb#46
1231
1129
  sig { returns(T.nilable(::RBI::Scope)) }
1232
1130
  def parent_scope; end
1233
1131
 
@@ -1240,7 +1138,7 @@ class RBI::Node
1240
1138
  # source://rbi//lib/rbi/model.rb#12
1241
1139
  def parent_tree=(_arg0); end
1242
1140
 
1243
- # source://rbi//lib/rbi/printer.rb#155
1141
+ # source://rbi//lib/rbi/printer.rb#156
1244
1142
  sig do
1245
1143
  params(
1246
1144
  out: T.any(::IO, ::StringIO),
@@ -1251,54 +1149,62 @@ class RBI::Node
1251
1149
  end
1252
1150
  def print(out: T.unsafe(nil), indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
1253
1151
 
1254
- # source://rbi//lib/rbi/printer.rb#168
1152
+ # source://rbi//lib/rbi/printer.rb#169
1255
1153
  sig { params(v: ::RBI::Printer).void }
1256
1154
  def print_blank_line_before(v); end
1257
1155
 
1258
- # source://rbi//lib/rbi/model.rb#32
1156
+ # source://rbi//lib/rbi/model.rb#33
1259
1157
  sig { params(node: ::RBI::Node).void }
1260
1158
  def replace(node); end
1261
1159
 
1262
- # source://rbi//lib/rbi/printer.rb#161
1160
+ # source://rbi//lib/rbi/rewriters/filter_versions.rb#94
1161
+ sig { params(version: ::Gem::Version).returns(T::Boolean) }
1162
+ def satisfies_version?(version); end
1163
+
1164
+ # source://rbi//lib/rbi/printer.rb#162
1263
1165
  sig { params(indent: ::Integer, print_locs: T::Boolean, max_line_length: T.nilable(::Integer)).returns(::String) }
1264
1166
  def string(indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
1265
1167
  end
1266
1168
 
1267
1169
  # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1268
1170
  #
1269
- # source://rbi//lib/rbi/model.rb#79
1171
+ # source://rbi//lib/rbi/model.rb#83
1270
1172
  class RBI::NodeWithComments < ::RBI::Node
1271
1173
  abstract!
1272
1174
 
1273
- # source://rbi//lib/rbi/model.rb#89
1175
+ # source://rbi//lib/rbi/model.rb#93
1274
1176
  sig { params(loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void }
1275
1177
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil)); end
1276
1178
 
1277
- # source://rbi//lib/rbi/model.rb#95
1179
+ # source://rbi//lib/rbi/model.rb#99
1278
1180
  sig { returns(T::Array[::String]) }
1279
1181
  def annotations; end
1280
1182
 
1281
- # source://rbi//lib/rbi/model.rb#86
1183
+ # source://rbi//lib/rbi/model.rb#90
1282
1184
  sig { returns(T::Array[::RBI::Comment]) }
1283
1185
  def comments; end
1284
1186
 
1285
1187
  # @return [Array<Comment>]
1286
1188
  #
1287
- # source://rbi//lib/rbi/model.rb#86
1189
+ # source://rbi//lib/rbi/model.rb#90
1288
1190
  def comments=(_arg0); end
1289
1191
 
1290
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#306
1192
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#311
1291
1193
  sig { override.params(other: ::RBI::Node).void }
1292
1194
  def merge_with(other); end
1293
1195
 
1294
- # source://rbi//lib/rbi/printer.rb#186
1196
+ # source://rbi//lib/rbi/printer.rb#188
1295
1197
  sig { override.returns(T::Boolean) }
1296
1198
  def oneline?; end
1199
+
1200
+ # source://rbi//lib/rbi/rewriters/filter_versions.rb#104
1201
+ sig { returns(T::Array[::Gem::Requirement]) }
1202
+ def version_requirements; end
1297
1203
  end
1298
1204
 
1299
- # source://rbi//lib/rbi/model.rb#593
1205
+ # source://rbi//lib/rbi/model.rb#601
1300
1206
  class RBI::OptParam < ::RBI::Param
1301
- # source://rbi//lib/rbi/model.rb#608
1207
+ # source://rbi//lib/rbi/model.rb#616
1302
1208
  sig do
1303
1209
  params(
1304
1210
  name: ::String,
@@ -1310,50 +1216,50 @@ class RBI::OptParam < ::RBI::Param
1310
1216
  end
1311
1217
  def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1312
1218
 
1313
- # source://rbi//lib/rbi/model.rb#615
1219
+ # source://rbi//lib/rbi/model.rb#623
1314
1220
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
1315
1221
  def ==(other); end
1316
1222
 
1317
- # source://rbi//lib/rbi/printer.rb#466
1223
+ # source://rbi//lib/rbi/printer.rb#468
1318
1224
  sig { override.params(v: ::RBI::Printer).void }
1319
1225
  def accept_printer(v); end
1320
1226
 
1321
- # source://rbi//lib/rbi/printer.rb#471
1227
+ # source://rbi//lib/rbi/printer.rb#473
1322
1228
  sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
1323
1229
  def print_comment_leading_space(v, last:); end
1324
1230
 
1325
- # source://rbi//lib/rbi/model.rb#597
1231
+ # source://rbi//lib/rbi/model.rb#605
1326
1232
  sig { returns(::String) }
1327
1233
  def value; end
1328
1234
  end
1329
1235
 
1330
1236
  # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1331
1237
  #
1332
- # source://rbi//lib/rbi/model.rb#544
1238
+ # source://rbi//lib/rbi/model.rb#552
1333
1239
  class RBI::Param < ::RBI::NodeWithComments
1334
1240
  abstract!
1335
1241
 
1336
- # source://rbi//lib/rbi/model.rb#560
1242
+ # source://rbi//lib/rbi/model.rb#568
1337
1243
  sig { params(name: ::String, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void }
1338
1244
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
1339
1245
 
1340
- # source://rbi//lib/rbi/printer.rb#444
1246
+ # source://rbi//lib/rbi/printer.rb#446
1341
1247
  sig { override.params(v: ::RBI::Printer).void }
1342
1248
  def accept_printer(v); end
1343
1249
 
1344
- # source://rbi//lib/rbi/printer.rb#457
1250
+ # source://rbi//lib/rbi/printer.rb#459
1345
1251
  sig { returns(T::Array[::String]) }
1346
1252
  def comments_lines; end
1347
1253
 
1348
- # source://rbi//lib/rbi/model.rb#551
1254
+ # source://rbi//lib/rbi/model.rb#559
1349
1255
  sig { returns(::String) }
1350
1256
  def name; end
1351
1257
 
1352
- # source://rbi//lib/rbi/printer.rb#449
1258
+ # source://rbi//lib/rbi/printer.rb#451
1353
1259
  sig { params(v: ::RBI::Printer, last: T::Boolean).void }
1354
1260
  def print_comment_leading_space(v, last:); end
1355
1261
 
1356
- # source://rbi//lib/rbi/model.rb#566
1262
+ # source://rbi//lib/rbi/model.rb#574
1357
1263
  sig { override.returns(::String) }
1358
1264
  def to_s; end
1359
1265
  end
@@ -1371,43 +1277,204 @@ end
1371
1277
 
1372
1278
  # source://rbi//lib/rbi/parser.rb#53
1373
1279
  class RBI::Parser
1374
- # source://rbi//lib/rbi/parser.rb#64
1375
- sig { void }
1376
- def initialize; end
1377
-
1378
- # source://rbi//lib/rbi/parser.rb#97
1280
+ # source://rbi//lib/rbi/parser.rb#88
1379
1281
  sig { params(path: ::String).returns(::RBI::Tree) }
1380
1282
  def parse_file(path); end
1381
1283
 
1382
- # source://rbi//lib/rbi/parser.rb#86
1284
+ # source://rbi//lib/rbi/parser.rb#83
1383
1285
  sig { params(string: ::String).returns(::RBI::Tree) }
1384
1286
  def parse_string(string); end
1385
1287
 
1386
1288
  private
1387
1289
 
1388
- # source://rbi//lib/rbi/parser.rb#104
1389
- sig { params(content: ::String, file: ::String).returns(::RBI::Tree) }
1390
- def parse(content, file:); end
1290
+ # source://rbi//lib/rbi/parser.rb#95
1291
+ sig { params(source: ::String, file: ::String).returns(::RBI::Tree) }
1292
+ def parse(source, file:); end
1391
1293
 
1392
1294
  class << self
1393
- # source://rbi//lib/rbi/parser.rb#75
1295
+ # source://rbi//lib/rbi/parser.rb#65
1394
1296
  sig { params(path: ::String).returns(::RBI::Tree) }
1395
1297
  def parse_file(path); end
1396
1298
 
1397
- # source://rbi//lib/rbi/parser.rb#80
1299
+ # source://rbi//lib/rbi/parser.rb#70
1398
1300
  sig { params(paths: T::Array[::String]).returns(T::Array[::RBI::Tree]) }
1399
1301
  def parse_files(paths); end
1400
1302
 
1401
- # source://rbi//lib/rbi/parser.rb#70
1303
+ # source://rbi//lib/rbi/parser.rb#60
1402
1304
  sig { params(string: ::String).returns(::RBI::Tree) }
1403
1305
  def parse_string(string); end
1404
1306
 
1405
- # source://rbi//lib/rbi/parser.rb#91
1307
+ # source://rbi//lib/rbi/parser.rb#76
1406
1308
  sig { params(strings: T::Array[::String]).returns(T::Array[::RBI::Tree]) }
1407
1309
  def parse_strings(strings); end
1408
1310
  end
1409
1311
  end
1410
1312
 
1313
+ # source://rbi//lib/rbi/parser.rb#791
1314
+ class RBI::Parser::SigBuilder < ::RBI::Parser::Visitor
1315
+ # source://rbi//lib/rbi/parser.rb#798
1316
+ sig { params(content: ::String, file: ::String).void }
1317
+ def initialize(content, file:); end
1318
+
1319
+ # source://rbi//lib/rbi/parser.rb#795
1320
+ sig { returns(::RBI::Sig) }
1321
+ def current; end
1322
+
1323
+ # source://rbi//lib/rbi/parser.rb#850
1324
+ sig { override.params(node: ::Prism::AssocNode).void }
1325
+ def visit_assoc_node(node); end
1326
+
1327
+ # source://rbi//lib/rbi/parser.rb#805
1328
+ sig { override.params(node: ::Prism::CallNode).void }
1329
+ def visit_call_node(node); end
1330
+ end
1331
+
1332
+ # source://rbi//lib/rbi/parser.rb#153
1333
+ class RBI::Parser::TreeBuilder < ::RBI::Parser::Visitor
1334
+ # source://rbi//lib/rbi/parser.rb#163
1335
+ sig { params(source: ::String, comments: T::Array[::Prism::Comment], file: ::String).void }
1336
+ def initialize(source, comments:, file:); end
1337
+
1338
+ # source://rbi//lib/rbi/parser.rb#160
1339
+ sig { returns(T.nilable(::Prism::Node)) }
1340
+ def last_node; end
1341
+
1342
+ # source://rbi//lib/rbi/parser.rb#157
1343
+ sig { returns(::RBI::Tree) }
1344
+ def tree; end
1345
+
1346
+ # source://rbi//lib/rbi/parser.rb#299
1347
+ sig { params(node: ::Prism::CallNode).void }
1348
+ def visit_call_node(node); end
1349
+
1350
+ # source://rbi//lib/rbi/parser.rb#176
1351
+ sig { override.params(node: ::Prism::ClassNode).void }
1352
+ def visit_class_node(node); end
1353
+
1354
+ # source://rbi//lib/rbi/parser.rb#208
1355
+ sig { params(node: T.any(::Prism::ConstantPathWriteNode, ::Prism::ConstantWriteNode)).void }
1356
+ def visit_constant_assign(node); end
1357
+
1358
+ # source://rbi//lib/rbi/parser.rb#201
1359
+ sig { override.params(node: ::Prism::ConstantPathWriteNode).void }
1360
+ def visit_constant_path_write_node(node); end
1361
+
1362
+ # source://rbi//lib/rbi/parser.rb#194
1363
+ sig { override.params(node: ::Prism::ConstantWriteNode).void }
1364
+ def visit_constant_write_node(node); end
1365
+
1366
+ # source://rbi//lib/rbi/parser.rb#241
1367
+ sig { override.params(node: ::Prism::DefNode).void }
1368
+ def visit_def_node(node); end
1369
+
1370
+ # source://rbi//lib/rbi/parser.rb#255
1371
+ sig { override.params(node: ::Prism::ModuleNode).void }
1372
+ def visit_module_node(node); end
1373
+
1374
+ # source://rbi//lib/rbi/parser.rb#272
1375
+ sig { override.params(node: ::Prism::ProgramNode).void }
1376
+ def visit_program_node(node); end
1377
+
1378
+ # source://rbi//lib/rbi/parser.rb#283
1379
+ sig { override.params(node: ::Prism::SingletonClassNode).void }
1380
+ def visit_singleton_class_node(node); end
1381
+
1382
+ private
1383
+
1384
+ # Collect all the remaining comments within a node
1385
+ #
1386
+ # source://rbi//lib/rbi/parser.rb#467
1387
+ sig { params(node: ::Prism::Node).void }
1388
+ def collect_dangling_comments(node); end
1389
+
1390
+ # Collect all the remaining comments after visiting the tree
1391
+ #
1392
+ # source://rbi//lib/rbi/parser.rb#485
1393
+ sig { void }
1394
+ def collect_orphan_comments; end
1395
+
1396
+ # source://rbi//lib/rbi/parser.rb#508
1397
+ sig { returns(::RBI::Tree) }
1398
+ def current_scope; end
1399
+
1400
+ # source://rbi//lib/rbi/parser.rb#513
1401
+ sig { returns(T::Array[::RBI::Sig]) }
1402
+ def current_sigs; end
1403
+
1404
+ # source://rbi//lib/rbi/parser.rb#520
1405
+ sig { returns(T::Array[::RBI::Comment]) }
1406
+ def current_sigs_comments; end
1407
+
1408
+ # source://rbi//lib/rbi/parser.rb#527
1409
+ sig { params(node: ::Prism::Node).returns(T::Array[::RBI::Comment]) }
1410
+ def node_comments(node); end
1411
+
1412
+ # source://rbi//lib/rbi/parser.rb#545
1413
+ sig { params(node: ::Prism::Comment).returns(::RBI::Comment) }
1414
+ def parse_comment(node); end
1415
+
1416
+ # source://rbi//lib/rbi/parser.rb#574
1417
+ sig { params(node: T.nilable(::Prism::Node)).returns(T::Array[::RBI::Param]) }
1418
+ def parse_params(node); end
1419
+
1420
+ # source://rbi//lib/rbi/parser.rb#550
1421
+ sig { params(node: T.nilable(::Prism::Node)).returns(T::Array[::RBI::Arg]) }
1422
+ def parse_send_args(node); end
1423
+
1424
+ # source://rbi//lib/rbi/parser.rb#648
1425
+ sig { params(node: ::Prism::CallNode).returns(::RBI::Sig) }
1426
+ def parse_sig(node); end
1427
+
1428
+ # source://rbi//lib/rbi/parser.rb#658
1429
+ sig do
1430
+ params(
1431
+ node: T.any(::Prism::ConstantPathWriteNode, ::Prism::ConstantWriteNode)
1432
+ ).returns(T.nilable(::RBI::Struct))
1433
+ end
1434
+ def parse_struct(node); end
1435
+
1436
+ # source://rbi//lib/rbi/parser.rb#708
1437
+ sig { params(send: ::Prism::CallNode).void }
1438
+ def parse_tstruct_field(send); end
1439
+
1440
+ # source://rbi//lib/rbi/parser.rb#745
1441
+ sig { params(name: ::String, node: ::Prism::Node).returns(::RBI::Visibility) }
1442
+ def parse_visibility(name, node); end
1443
+
1444
+ # source://rbi//lib/rbi/parser.rb#759
1445
+ sig { void }
1446
+ def separate_header_comments; end
1447
+
1448
+ # source://rbi//lib/rbi/parser.rb#769
1449
+ sig { void }
1450
+ def set_root_tree_loc; end
1451
+
1452
+ # source://rbi//lib/rbi/parser.rb#783
1453
+ sig { params(node: T.nilable(::Prism::Node)).returns(T::Boolean) }
1454
+ def type_variable_definition?(node); end
1455
+ end
1456
+
1457
+ # source://rbi//lib/rbi/parser.rb#122
1458
+ class RBI::Parser::Visitor < ::Prism::Visitor
1459
+ # source://rbi//lib/rbi/parser.rb#126
1460
+ sig { params(source: ::String, file: ::String).void }
1461
+ def initialize(source, file:); end
1462
+
1463
+ private
1464
+
1465
+ # source://rbi//lib/rbi/parser.rb#136
1466
+ sig { params(node: ::Prism::Node).returns(::RBI::Loc) }
1467
+ def node_loc(node); end
1468
+
1469
+ # source://rbi//lib/rbi/parser.rb#141
1470
+ sig { params(node: T.nilable(::Prism::Node)).returns(T.nilable(::String)) }
1471
+ def node_string(node); end
1472
+
1473
+ # source://rbi//lib/rbi/parser.rb#148
1474
+ sig { params(node: ::Prism::Node).returns(::String) }
1475
+ def node_string!(node); end
1476
+ end
1477
+
1411
1478
  # source://rbi//lib/rbi/printer.rb#5
1412
1479
  class RBI::Printer < ::RBI::Visitor
1413
1480
  # source://rbi//lib/rbi/printer.rb#28
@@ -1490,7 +1557,7 @@ class RBI::Printer < ::RBI::Visitor
1490
1557
  sig { override.params(node: T.nilable(::RBI::Node)).void }
1491
1558
  def visit(node); end
1492
1559
 
1493
- # source://rbi//lib/rbi/printer.rb#89
1560
+ # source://rbi//lib/rbi/printer.rb#90
1494
1561
  sig { override.params(nodes: T::Array[::RBI::Node]).void }
1495
1562
  def visit_all(nodes); end
1496
1563
 
@@ -1499,9 +1566,9 @@ class RBI::Printer < ::RBI::Visitor
1499
1566
  def visit_file(file); end
1500
1567
  end
1501
1568
 
1502
- # source://rbi//lib/rbi/model.rb#901
1569
+ # source://rbi//lib/rbi/model.rb#909
1503
1570
  class RBI::Private < ::RBI::Visibility
1504
- # source://rbi//lib/rbi/model.rb#911
1571
+ # source://rbi//lib/rbi/model.rb#919
1505
1572
  sig do
1506
1573
  params(
1507
1574
  loc: T.nilable(::RBI::Loc),
@@ -1512,9 +1579,9 @@ class RBI::Private < ::RBI::Visibility
1512
1579
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1513
1580
  end
1514
1581
 
1515
- # source://rbi//lib/rbi/model.rb#885
1582
+ # source://rbi//lib/rbi/model.rb#893
1516
1583
  class RBI::Protected < ::RBI::Visibility
1517
- # source://rbi//lib/rbi/model.rb#895
1584
+ # source://rbi//lib/rbi/model.rb#903
1518
1585
  sig do
1519
1586
  params(
1520
1587
  loc: T.nilable(::RBI::Loc),
@@ -1525,9 +1592,9 @@ class RBI::Protected < ::RBI::Visibility
1525
1592
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1526
1593
  end
1527
1594
 
1528
- # source://rbi//lib/rbi/model.rb#869
1595
+ # source://rbi//lib/rbi/model.rb#877
1529
1596
  class RBI::Public < ::RBI::Visibility
1530
- # source://rbi//lib/rbi/model.rb#879
1597
+ # source://rbi//lib/rbi/model.rb#887
1531
1598
  sig do
1532
1599
  params(
1533
1600
  loc: T.nilable(::RBI::Loc),
@@ -1538,9 +1605,9 @@ class RBI::Public < ::RBI::Visibility
1538
1605
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1539
1606
  end
1540
1607
 
1541
- # source://rbi//lib/rbi/model.rb#571
1608
+ # source://rbi//lib/rbi/model.rb#579
1542
1609
  class RBI::ReqParam < ::RBI::Param
1543
- # source://rbi//lib/rbi/model.rb#582
1610
+ # source://rbi//lib/rbi/model.rb#590
1544
1611
  sig do
1545
1612
  params(
1546
1613
  name: ::String,
@@ -1551,39 +1618,39 @@ class RBI::ReqParam < ::RBI::Param
1551
1618
  end
1552
1619
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1553
1620
 
1554
- # source://rbi//lib/rbi/model.rb#588
1621
+ # source://rbi//lib/rbi/model.rb#596
1555
1622
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
1556
1623
  def ==(other); end
1557
1624
  end
1558
1625
 
1559
- # source://rbi//lib/rbi/model.rb#1368
1626
+ # source://rbi//lib/rbi/model.rb#1378
1560
1627
  class RBI::RequiresAncestor < ::RBI::NodeWithComments
1561
1628
  include ::RBI::Indexable
1562
1629
 
1563
- # source://rbi//lib/rbi/model.rb#1381
1630
+ # source://rbi//lib/rbi/model.rb#1391
1564
1631
  sig { params(name: ::String, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void }
1565
1632
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
1566
1633
 
1567
- # source://rbi//lib/rbi/printer.rb#868
1634
+ # source://rbi//lib/rbi/printer.rb#870
1568
1635
  sig { override.params(v: ::RBI::Printer).void }
1569
1636
  def accept_printer(v); end
1570
1637
 
1571
- # source://rbi//lib/rbi/index.rb#159
1638
+ # source://rbi//lib/rbi/index.rb#163
1572
1639
  sig { override.returns(T::Array[::String]) }
1573
1640
  def index_ids; end
1574
1641
 
1575
- # source://rbi//lib/rbi/model.rb#1372
1642
+ # source://rbi//lib/rbi/model.rb#1382
1576
1643
  sig { returns(::String) }
1577
1644
  def name; end
1578
1645
 
1579
- # source://rbi//lib/rbi/model.rb#1387
1646
+ # source://rbi//lib/rbi/model.rb#1397
1580
1647
  sig { override.returns(::String) }
1581
1648
  def to_s; end
1582
1649
  end
1583
1650
 
1584
- # source://rbi//lib/rbi/model.rb#620
1651
+ # source://rbi//lib/rbi/model.rb#628
1585
1652
  class RBI::RestParam < ::RBI::Param
1586
- # source://rbi//lib/rbi/model.rb#631
1653
+ # source://rbi//lib/rbi/model.rb#639
1587
1654
  sig do
1588
1655
  params(
1589
1656
  name: ::String,
@@ -1594,19 +1661,19 @@ class RBI::RestParam < ::RBI::Param
1594
1661
  end
1595
1662
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1596
1663
 
1597
- # source://rbi//lib/rbi/model.rb#642
1664
+ # source://rbi//lib/rbi/model.rb#650
1598
1665
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
1599
1666
  def ==(other); end
1600
1667
 
1601
- # source://rbi//lib/rbi/printer.rb#481
1668
+ # source://rbi//lib/rbi/printer.rb#483
1602
1669
  sig { override.params(v: ::RBI::Printer).void }
1603
1670
  def accept_printer(v); end
1604
1671
 
1605
- # source://rbi//lib/rbi/printer.rb#486
1672
+ # source://rbi//lib/rbi/printer.rb#488
1606
1673
  sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
1607
1674
  def print_comment_leading_space(v, last:); end
1608
1675
 
1609
- # source://rbi//lib/rbi/model.rb#637
1676
+ # source://rbi//lib/rbi/model.rb#645
1610
1677
  sig { override.returns(::String) }
1611
1678
  def to_s; end
1612
1679
  end
@@ -1655,7 +1722,7 @@ class RBI::Rewriters::Annotate < ::RBI::Visitor
1655
1722
  sig { params(node: ::RBI::NodeWithComments).void }
1656
1723
  def annotate_node(node); end
1657
1724
 
1658
- # source://rbi//lib/rbi/rewriters/annotate.rb#37
1725
+ # source://rbi//lib/rbi/rewriters/annotate.rb#38
1659
1726
  sig { params(node: ::RBI::Node).returns(T::Boolean) }
1660
1727
  def root?(node); end
1661
1728
  end
@@ -1677,6 +1744,78 @@ class RBI::Rewriters::Deannotate < ::RBI::Visitor
1677
1744
  def deannotate_node(node); end
1678
1745
  end
1679
1746
 
1747
+ # Take a gem version and filter out all RBI that is not relevant to that version based on @version annotations
1748
+ # in comments. As an example:
1749
+ #
1750
+ # ~~~rb
1751
+ # tree = Parser.parse_string(<<~RBI)
1752
+ # class Foo
1753
+ # # @version > 0.3.0
1754
+ # def bar
1755
+ # end
1756
+ #
1757
+ # # @version <= 0.3.0
1758
+ # def bar(arg1)
1759
+ # end
1760
+ # end
1761
+ # RBI
1762
+ #
1763
+ # Rewriters::FilterVersions.filter(tree, Gem::Version.new("0.3.1"))
1764
+ #
1765
+ # assert_equal(<<~RBI, tree.string)
1766
+ # class Foo
1767
+ # # @version > 0.3.0
1768
+ # def bar
1769
+ # end
1770
+ # end
1771
+ # RBI
1772
+ # ~~~
1773
+ #
1774
+ # Supported operators:
1775
+ # - equals `=`
1776
+ # - not equals `!=`
1777
+ # - greater than `>`
1778
+ # - greater than or equal to `>=`
1779
+ # - less than `<`
1780
+ # - less than or equal to `<=`
1781
+ # - pessimistic or twiddle-wakka`~>`
1782
+ #
1783
+ # And/or logic:
1784
+ # - "And" logic: put multiple versions on the same line
1785
+ # - e.g. `@version > 0.3.0, <1.0.0` means version must be greater than 0.3.0 AND less than 1.0.0
1786
+ # - "Or" logic: put multiple versions on subsequent lines
1787
+ # - e.g. the following means version must be less than 0.3.0 OR greater than 1.0.0
1788
+ # ```
1789
+ # # @version < 0.3.0
1790
+ # # @version > 1.0.0
1791
+ # ```
1792
+ # Prerelease versions:
1793
+ # - Prerelease versions are considered less than their non-prerelease counterparts
1794
+ # - e.g. `0.4.0-prerelease` is less than `0.4.0`
1795
+ #
1796
+ # RBI with no versions:
1797
+ # - RBI with no version annotations are automatically counted towards ALL versions
1798
+ #
1799
+ # source://rbi//lib/rbi/rewriters/filter_versions.rb#57
1800
+ class RBI::Rewriters::FilterVersions < ::RBI::Visitor
1801
+ # source://rbi//lib/rbi/rewriters/filter_versions.rb#73
1802
+ sig { params(version: ::Gem::Version).void }
1803
+ def initialize(version); end
1804
+
1805
+ # source://rbi//lib/rbi/rewriters/filter_versions.rb#79
1806
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1807
+ def visit(node); end
1808
+
1809
+ class << self
1810
+ # source://rbi//lib/rbi/rewriters/filter_versions.rb#66
1811
+ sig { params(tree: ::RBI::Tree, version: ::Gem::Version).void }
1812
+ def filter(tree, version); end
1813
+ end
1814
+ end
1815
+
1816
+ # source://rbi//lib/rbi/rewriters/filter_versions.rb#60
1817
+ RBI::Rewriters::FilterVersions::VERSION_PREFIX = T.let(T.unsafe(nil), String)
1818
+
1680
1819
  # source://rbi//lib/rbi/rewriters/group_nodes.rb#6
1681
1820
  class RBI::Rewriters::GroupNodes < ::RBI::Visitor
1682
1821
  # source://rbi//lib/rbi/rewriters/group_nodes.rb#10
@@ -1720,20 +1859,20 @@ end
1720
1859
  #
1721
1860
  # source://rbi//lib/rbi/rewriters/merge_trees.rb#39
1722
1861
  class RBI::Rewriters::Merge
1723
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#66
1862
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#70
1724
1863
  sig { params(left_name: ::String, right_name: ::String, keep: ::RBI::Rewriters::Merge::Keep).void }
1725
1864
  def initialize(left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
1726
1865
 
1727
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#75
1866
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#79
1728
1867
  sig { params(tree: ::RBI::Tree).void }
1729
1868
  def merge(tree); end
1730
1869
 
1731
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#63
1870
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#67
1732
1871
  sig { returns(::RBI::MergeTree) }
1733
1872
  def tree; end
1734
1873
 
1735
1874
  class << self
1736
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#51
1875
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#54
1737
1876
  sig do
1738
1877
  params(
1739
1878
  left: ::RBI::Tree,
@@ -1749,19 +1888,19 @@ end
1749
1888
 
1750
1889
  # Used for logging / error displaying purpose
1751
1890
  #
1752
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#82
1891
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#86
1753
1892
  class RBI::Rewriters::Merge::Conflict < ::T::Struct
1754
1893
  const :left, ::RBI::Node
1755
1894
  const :right, ::RBI::Node
1756
1895
  const :left_name, ::String
1757
1896
  const :right_name, ::String
1758
1897
 
1759
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#91
1898
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#95
1760
1899
  sig { returns(::String) }
1761
1900
  def to_s; end
1762
1901
 
1763
1902
  class << self
1764
- # source://sorbet-runtime/0.5.10792/lib/types/struct.rb#13
1903
+ # source://sorbet-runtime/0.5.11262/lib/types/struct.rb#13
1765
1904
  def inherited(s); end
1766
1905
  end
1767
1906
  end
@@ -1797,19 +1936,19 @@ end
1797
1936
  # end
1798
1937
  # ~~~
1799
1938
  #
1800
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#241
1939
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#245
1801
1940
  class RBI::Rewriters::Merge::ConflictTreeMerger < ::RBI::Visitor
1802
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#243
1941
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#247
1803
1942
  sig { override.params(node: T.nilable(::RBI::Node)).void }
1804
1943
  def visit(node); end
1805
1944
 
1806
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#248
1945
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#252
1807
1946
  sig { override.params(nodes: T::Array[::RBI::Node]).void }
1808
1947
  def visit_all(nodes); end
1809
1948
 
1810
1949
  private
1811
1950
 
1812
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#269
1951
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#273
1813
1952
  sig { params(left: ::RBI::Tree, right: ::RBI::Tree).void }
1814
1953
  def merge_conflict_trees(left, right); end
1815
1954
  end
@@ -1823,9 +1962,9 @@ class RBI::Rewriters::Merge::Keep < ::T::Enum
1823
1962
  end
1824
1963
  end
1825
1964
 
1826
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#96
1965
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#100
1827
1966
  class RBI::Rewriters::Merge::TreeMerger < ::RBI::Visitor
1828
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#103
1967
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#107
1829
1968
  sig do
1830
1969
  params(
1831
1970
  output: ::RBI::Tree,
@@ -1836,33 +1975,33 @@ class RBI::Rewriters::Merge::TreeMerger < ::RBI::Visitor
1836
1975
  end
1837
1976
  def initialize(output, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
1838
1977
 
1839
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#100
1978
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#104
1840
1979
  sig { returns(T::Array[::RBI::Rewriters::Merge::Conflict]) }
1841
1980
  def conflicts; end
1842
1981
 
1843
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#115
1982
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#119
1844
1983
  sig { override.params(node: T.nilable(::RBI::Node)).void }
1845
1984
  def visit(node); end
1846
1985
 
1847
1986
  private
1848
1987
 
1849
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#164
1988
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#168
1850
1989
  sig { returns(::RBI::Tree) }
1851
1990
  def current_scope; end
1852
1991
 
1853
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#181
1992
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#185
1854
1993
  sig { params(left: ::RBI::Scope, right: ::RBI::Scope).void }
1855
1994
  def make_conflict_scope(left, right); end
1856
1995
 
1857
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#188
1996
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#192
1858
1997
  sig { params(left: ::RBI::Node, right: ::RBI::Node).void }
1859
1998
  def make_conflict_tree(left, right); end
1860
1999
 
1861
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#169
2000
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#173
1862
2001
  sig { params(node: ::RBI::Node).returns(T.nilable(::RBI::Node)) }
1863
2002
  def previous_definition(node); end
1864
2003
 
1865
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#200
2004
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#204
1866
2005
  sig { params(left: ::RBI::Scope, right: ::RBI::Scope).returns(::RBI::Scope) }
1867
2006
  def replace_scope_header(left, right); end
1868
2007
  end
@@ -1926,38 +2065,38 @@ end
1926
2065
  #
1927
2066
  # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#48
1928
2067
  class RBI::Rewriters::RemoveKnownDefinitions < ::RBI::Visitor
1929
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#67
2068
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#55
1930
2069
  sig { params(index: ::RBI::Index).void }
1931
2070
  def initialize(index); end
1932
2071
 
1933
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#64
2072
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#52
1934
2073
  sig { returns(T::Array[::RBI::Rewriters::RemoveKnownDefinitions::Operation]) }
1935
2074
  def operations; end
1936
2075
 
1937
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#79
2076
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#83
1938
2077
  sig { override.params(node: T.nilable(::RBI::Node)).void }
1939
2078
  def visit(node); end
1940
2079
 
1941
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#74
2080
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#78
1942
2081
  sig { params(nodes: T::Array[::RBI::Node]).void }
1943
2082
  def visit_all(nodes); end
1944
2083
 
1945
2084
  private
1946
2085
 
1947
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#107
2086
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#111
1948
2087
  sig { params(node: ::RBI::Node, previous: ::RBI::Node).returns(T::Boolean) }
1949
2088
  def can_delete_node?(node, previous); end
1950
2089
 
1951
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#125
2090
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#129
1952
2091
  sig { params(node: ::RBI::Node, previous: ::RBI::Node).void }
1953
2092
  def delete_node(node, previous); end
1954
2093
 
1955
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#98
2094
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#102
1956
2095
  sig { params(node: ::RBI::Indexable).returns(T.nilable(::RBI::Node)) }
1957
2096
  def previous_definition_for(node); end
1958
2097
 
1959
2098
  class << self
1960
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#57
2099
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#70
1961
2100
  sig do
1962
2101
  params(
1963
2102
  tree: ::RBI::Tree,
@@ -1968,17 +2107,17 @@ class RBI::Rewriters::RemoveKnownDefinitions < ::RBI::Visitor
1968
2107
  end
1969
2108
  end
1970
2109
 
1971
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#130
2110
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#134
1972
2111
  class RBI::Rewriters::RemoveKnownDefinitions::Operation < ::T::Struct
1973
2112
  const :deleted_node, ::RBI::Node
1974
2113
  const :duplicate_of, ::RBI::Node
1975
2114
 
1976
- # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#137
2115
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#141
1977
2116
  sig { returns(::String) }
1978
2117
  def to_s; end
1979
2118
 
1980
2119
  class << self
1981
- # source://sorbet-runtime/0.5.10792/lib/types/struct.rb#13
2120
+ # source://sorbet-runtime/0.5.11262/lib/types/struct.rb#13
1982
2121
  def inherited(s); end
1983
2122
  end
1984
2123
  end
@@ -1991,19 +2130,19 @@ class RBI::Rewriters::SortNodes < ::RBI::Visitor
1991
2130
 
1992
2131
  private
1993
2132
 
1994
- # source://rbi//lib/rbi/rewriters/sort_nodes.rb#61
2133
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#73
1995
2134
  sig { params(kind: ::RBI::Group::Kind).returns(::Integer) }
1996
2135
  def group_rank(kind); end
1997
2136
 
1998
- # source://rbi//lib/rbi/rewriters/sort_nodes.rb#82
2137
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#94
1999
2138
  sig { params(node: ::RBI::Node).returns(T.nilable(::String)) }
2000
2139
  def node_name(node); end
2001
2140
 
2002
- # source://rbi//lib/rbi/rewriters/sort_nodes.rb#33
2141
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#45
2003
2142
  sig { params(node: ::RBI::Node).returns(::Integer) }
2004
2143
  def node_rank(node); end
2005
2144
 
2006
- # source://rbi//lib/rbi/rewriters/sort_nodes.rb#94
2145
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#106
2007
2146
  sig { params(node: ::RBI::Node).void }
2008
2147
  def sort_node_names!(node); end
2009
2148
  end
@@ -2012,46 +2151,43 @@ end
2012
2151
  #
2013
2152
  # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
2014
2153
  #
2015
- # source://rbi//lib/rbi/model.rb#172
2154
+ # source://rbi//lib/rbi/model.rb#176
2016
2155
  class RBI::Scope < ::RBI::Tree
2017
2156
  include ::RBI::Indexable
2018
2157
 
2019
2158
  abstract!
2020
2159
 
2021
- # source://sorbet-runtime/0.5.10792/lib/types/private/abstract/declare.rb#37
2022
- def initialize(*args, **_arg1, &blk); end
2023
-
2024
- # source://rbi//lib/rbi/printer.rb#240
2160
+ # source://rbi//lib/rbi/printer.rb#242
2025
2161
  sig { override.params(v: ::RBI::Printer).void }
2026
2162
  def accept_printer(v); end
2027
2163
 
2028
2164
  # Duplicate `self` scope without its body
2029
2165
  #
2030
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#350
2166
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#356
2031
2167
  sig { returns(T.self_type) }
2032
2168
  def dup_empty; end
2033
2169
 
2034
2170
  # @abstract
2035
2171
  #
2036
- # source://rbi//lib/rbi/model.rb#178
2172
+ # source://rbi//lib/rbi/model.rb#182
2037
2173
  sig { abstract.returns(::String) }
2038
2174
  def fully_qualified_name; end
2039
2175
 
2040
- # source://rbi//lib/rbi/index.rb#89
2176
+ # source://rbi//lib/rbi/index.rb#93
2041
2177
  sig { override.returns(T::Array[::String]) }
2042
2178
  def index_ids; end
2043
2179
 
2044
- # source://rbi//lib/rbi/printer.rb#254
2180
+ # source://rbi//lib/rbi/printer.rb#256
2045
2181
  sig { params(v: ::RBI::Printer).void }
2046
2182
  def print_body(v); end
2047
2183
 
2048
2184
  # @abstract
2049
2185
  #
2050
- # source://rbi//lib/rbi/printer.rb#251
2186
+ # source://rbi//lib/rbi/printer.rb#253
2051
2187
  sig { abstract.params(v: ::RBI::Printer).void }
2052
2188
  def print_header(v); end
2053
2189
 
2054
- # source://rbi//lib/rbi/model.rb#181
2190
+ # source://rbi//lib/rbi/model.rb#185
2055
2191
  sig { override.returns(::String) }
2056
2192
  def to_s; end
2057
2193
  end
@@ -2069,37 +2205,37 @@ end
2069
2205
  # end
2070
2206
  # ~~~
2071
2207
  #
2072
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#617
2208
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#628
2073
2209
  class RBI::ScopeConflict < ::RBI::Tree
2074
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#631
2210
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#642
2075
2211
  sig { params(left: ::RBI::Scope, right: ::RBI::Scope, left_name: ::String, right_name: ::String).void }
2076
2212
  def initialize(left:, right:, left_name: T.unsafe(nil), right_name: T.unsafe(nil)); end
2077
2213
 
2078
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#640
2214
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#651
2079
2215
  sig { override.params(v: ::RBI::Printer).void }
2080
2216
  def accept_printer(v); end
2081
2217
 
2082
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#621
2218
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#632
2083
2219
  sig { returns(::RBI::Scope) }
2084
2220
  def left; end
2085
2221
 
2086
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#656
2222
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#667
2087
2223
  sig { override.returns(T::Boolean) }
2088
2224
  def oneline?; end
2089
2225
 
2090
2226
  # @return [Scope]
2091
2227
  #
2092
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#621
2228
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#632
2093
2229
  def right; end
2094
2230
  end
2095
2231
 
2096
2232
  # Sends
2097
2233
  #
2098
- # source://rbi//lib/rbi/model.rb#919
2234
+ # source://rbi//lib/rbi/model.rb#927
2099
2235
  class RBI::Send < ::RBI::NodeWithComments
2100
2236
  include ::RBI::Indexable
2101
2237
 
2102
- # source://rbi//lib/rbi/model.rb#937
2238
+ # source://rbi//lib/rbi/model.rb#945
2103
2239
  sig do
2104
2240
  params(
2105
2241
  method: ::String,
@@ -2111,44 +2247,44 @@ class RBI::Send < ::RBI::NodeWithComments
2111
2247
  end
2112
2248
  def initialize(method, args = T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2113
2249
 
2114
- # source://rbi//lib/rbi/model.rb#945
2250
+ # source://rbi//lib/rbi/model.rb#953
2115
2251
  sig { params(arg: ::RBI::Arg).void }
2116
2252
  def <<(arg); end
2117
2253
 
2118
- # source://rbi//lib/rbi/model.rb#950
2254
+ # source://rbi//lib/rbi/model.rb#958
2119
2255
  sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
2120
2256
  def ==(other); end
2121
2257
 
2122
- # source://rbi//lib/rbi/printer.rb#590
2258
+ # source://rbi//lib/rbi/printer.rb#592
2123
2259
  sig { override.params(v: ::RBI::Printer).void }
2124
2260
  def accept_printer(v); end
2125
2261
 
2126
- # source://rbi//lib/rbi/model.rb#926
2262
+ # source://rbi//lib/rbi/model.rb#934
2127
2263
  sig { returns(T::Array[::RBI::Arg]) }
2128
2264
  def args; end
2129
2265
 
2130
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#519
2266
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#529
2131
2267
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2132
2268
  def compatible_with?(other); end
2133
2269
 
2134
- # source://rbi//lib/rbi/index.rb#179
2270
+ # source://rbi//lib/rbi/index.rb#193
2135
2271
  sig { override.returns(T::Array[::String]) }
2136
2272
  def index_ids; end
2137
2273
 
2138
- # source://rbi//lib/rbi/model.rb#923
2274
+ # source://rbi//lib/rbi/model.rb#931
2139
2275
  sig { returns(::String) }
2140
2276
  def method; end
2141
2277
 
2142
- # source://rbi//lib/rbi/model.rb#955
2278
+ # source://rbi//lib/rbi/model.rb#963
2143
2279
  sig { returns(::String) }
2144
2280
  def to_s; end
2145
2281
  end
2146
2282
 
2147
2283
  # Sorbet's sigs
2148
2284
  #
2149
- # source://rbi//lib/rbi/model.rb#1019
2285
+ # source://rbi//lib/rbi/model.rb#1027
2150
2286
  class RBI::Sig < ::RBI::Node
2151
- # source://rbi//lib/rbi/model.rb#1051
2287
+ # source://rbi//lib/rbi/model.rb#1059
2152
2288
  sig do
2153
2289
  params(
2154
2290
  params: T::Array[::RBI::SigParam],
@@ -2165,139 +2301,109 @@ class RBI::Sig < ::RBI::Node
2165
2301
  end
2166
2302
  def initialize(params: T.unsafe(nil), return_type: T.unsafe(nil), is_abstract: T.unsafe(nil), is_override: T.unsafe(nil), is_overridable: T.unsafe(nil), is_final: T.unsafe(nil), type_params: T.unsafe(nil), checked: T.unsafe(nil), loc: T.unsafe(nil), &block); end
2167
2303
 
2168
- # source://rbi//lib/rbi/model.rb#1076
2304
+ # source://rbi//lib/rbi/model.rb#1084
2169
2305
  sig { params(param: ::RBI::SigParam).void }
2170
2306
  def <<(param); end
2171
2307
 
2172
- # source://rbi//lib/rbi/model.rb#1081
2308
+ # source://rbi//lib/rbi/model.rb#1089
2173
2309
  sig { params(other: ::Object).returns(T::Boolean) }
2174
2310
  def ==(other); end
2175
2311
 
2176
- # source://rbi//lib/rbi/printer.rb#631
2312
+ # source://rbi//lib/rbi/printer.rb#633
2177
2313
  sig { override.params(v: ::RBI::Printer).void }
2178
2314
  def accept_printer(v); end
2179
2315
 
2180
- # source://rbi//lib/rbi/model.rb#1035
2316
+ # source://rbi//lib/rbi/model.rb#1043
2181
2317
  sig { returns(T.nilable(::Symbol)) }
2182
2318
  def checked; end
2183
2319
 
2184
2320
  # @return [Symbol, nil]
2185
2321
  #
2186
- # source://rbi//lib/rbi/model.rb#1035
2322
+ # source://rbi//lib/rbi/model.rb#1043
2187
2323
  def checked=(_arg0); end
2188
2324
 
2189
- # source://rbi//lib/rbi/printer.rb#654
2325
+ # source://rbi//lib/rbi/printer.rb#656
2190
2326
  sig { returns(T::Boolean) }
2191
2327
  def inline_params?; end
2192
2328
 
2193
- # source://rbi//lib/rbi/model.rb#1029
2329
+ # source://rbi//lib/rbi/model.rb#1037
2194
2330
  sig { returns(T::Boolean) }
2195
2331
  def is_abstract; end
2196
2332
 
2197
2333
  # @return [Boolean]
2198
2334
  #
2199
- # source://rbi//lib/rbi/model.rb#1029
2335
+ # source://rbi//lib/rbi/model.rb#1037
2200
2336
  def is_abstract=(_arg0); end
2201
2337
 
2202
2338
  # @return [Boolean]
2203
2339
  #
2204
- # source://rbi//lib/rbi/model.rb#1029
2340
+ # source://rbi//lib/rbi/model.rb#1037
2205
2341
  def is_final; end
2206
2342
 
2207
2343
  # @return [Boolean]
2208
2344
  #
2209
- # source://rbi//lib/rbi/model.rb#1029
2345
+ # source://rbi//lib/rbi/model.rb#1037
2210
2346
  def is_final=(_arg0); end
2211
2347
 
2212
2348
  # @return [Boolean]
2213
2349
  #
2214
- # source://rbi//lib/rbi/model.rb#1029
2350
+ # source://rbi//lib/rbi/model.rb#1037
2215
2351
  def is_overridable; end
2216
2352
 
2217
2353
  # @return [Boolean]
2218
2354
  #
2219
- # source://rbi//lib/rbi/model.rb#1029
2355
+ # source://rbi//lib/rbi/model.rb#1037
2220
2356
  def is_overridable=(_arg0); end
2221
2357
 
2222
2358
  # @return [Boolean]
2223
2359
  #
2224
- # source://rbi//lib/rbi/model.rb#1029
2360
+ # source://rbi//lib/rbi/model.rb#1037
2225
2361
  def is_override; end
2226
2362
 
2227
2363
  # @return [Boolean]
2228
2364
  #
2229
- # source://rbi//lib/rbi/model.rb#1029
2365
+ # source://rbi//lib/rbi/model.rb#1037
2230
2366
  def is_override=(_arg0); end
2231
2367
 
2232
- # source://rbi//lib/rbi/printer.rb#649
2368
+ # source://rbi//lib/rbi/printer.rb#651
2233
2369
  sig { override.returns(T::Boolean) }
2234
2370
  def oneline?; end
2235
2371
 
2236
- # source://rbi//lib/rbi/model.rb#1023
2372
+ # source://rbi//lib/rbi/model.rb#1031
2237
2373
  sig { returns(T::Array[::RBI::SigParam]) }
2238
2374
  def params; end
2239
2375
 
2240
- # source://rbi//lib/rbi/model.rb#1026
2376
+ # source://rbi//lib/rbi/model.rb#1034
2241
2377
  sig { returns(T.nilable(::String)) }
2242
2378
  def return_type; end
2243
2379
 
2244
2380
  # @return [String, nil]
2245
2381
  #
2246
- # source://rbi//lib/rbi/model.rb#1026
2382
+ # source://rbi//lib/rbi/model.rb#1034
2247
2383
  def return_type=(_arg0); end
2248
2384
 
2249
- # source://rbi//lib/rbi/model.rb#1032
2385
+ # source://rbi//lib/rbi/model.rb#1040
2250
2386
  sig { returns(T::Array[::String]) }
2251
2387
  def type_params; end
2252
2388
 
2253
2389
  private
2254
2390
 
2255
- # source://rbi//lib/rbi/printer.rb#696
2391
+ # source://rbi//lib/rbi/printer.rb#698
2256
2392
  sig { params(v: ::RBI::Printer).void }
2257
2393
  def print_as_block(v); end
2258
2394
 
2259
- # source://rbi//lib/rbi/printer.rb#672
2395
+ # source://rbi//lib/rbi/printer.rb#674
2260
2396
  sig { params(v: ::RBI::Printer).void }
2261
2397
  def print_as_line(v); end
2262
2398
 
2263
- # source://rbi//lib/rbi/printer.rb#661
2399
+ # source://rbi//lib/rbi/printer.rb#663
2264
2400
  sig { returns(T::Array[::String]) }
2265
2401
  def sig_modifiers; end
2266
2402
  end
2267
2403
 
2268
- # source://rbi//lib/rbi/parser.rb#635
2269
- class RBI::SigBuilder < ::RBI::ASTVisitor
2270
- # source://rbi//lib/rbi/parser.rb#649
2271
- sig { void }
2272
- def initialize; end
2273
-
2274
- # source://rbi//lib/rbi/parser.rb#646
2275
- sig { returns(::RBI::Sig) }
2276
- def current; end
2277
-
2278
- # @return [Sig]
2279
- #
2280
- # source://rbi//lib/rbi/parser.rb#646
2281
- def current=(_arg0); end
2282
-
2283
- # source://rbi//lib/rbi/parser.rb#655
2284
- sig { override.params(node: T.nilable(::AST::Node)).void }
2285
- def visit(node); end
2286
-
2287
- # source://rbi//lib/rbi/parser.rb#664
2288
- sig { params(node: ::AST::Node).void }
2289
- def visit_send(node); end
2290
-
2291
- class << self
2292
- # source://rbi//lib/rbi/parser.rb#639
2293
- sig { params(node: ::AST::Node).returns(::RBI::Sig) }
2294
- def build(node); end
2295
- end
2296
- end
2297
-
2298
- # source://rbi//lib/rbi/model.rb#1089
2404
+ # source://rbi//lib/rbi/model.rb#1098
2299
2405
  class RBI::SigParam < ::RBI::NodeWithComments
2300
- # source://rbi//lib/rbi/model.rb#1104
2406
+ # source://rbi//lib/rbi/model.rb#1113
2301
2407
  sig do
2302
2408
  params(
2303
2409
  name: ::String,
@@ -2309,35 +2415,35 @@ class RBI::SigParam < ::RBI::NodeWithComments
2309
2415
  end
2310
2416
  def initialize(name, type, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2311
2417
 
2312
- # source://rbi//lib/rbi/model.rb#1112
2418
+ # source://rbi//lib/rbi/model.rb#1121
2313
2419
  sig { params(other: ::Object).returns(T::Boolean) }
2314
2420
  def ==(other); end
2315
2421
 
2316
- # source://rbi//lib/rbi/printer.rb#749
2422
+ # source://rbi//lib/rbi/printer.rb#751
2317
2423
  sig { override.params(v: ::RBI::Printer).void }
2318
2424
  def accept_printer(v); end
2319
2425
 
2320
- # source://rbi//lib/rbi/printer.rb#762
2426
+ # source://rbi//lib/rbi/printer.rb#764
2321
2427
  sig { returns(T::Array[::String]) }
2322
2428
  def comments_lines; end
2323
2429
 
2324
- # source://rbi//lib/rbi/model.rb#1093
2430
+ # source://rbi//lib/rbi/model.rb#1102
2325
2431
  sig { returns(::String) }
2326
2432
  def name; end
2327
2433
 
2328
- # source://rbi//lib/rbi/printer.rb#754
2434
+ # source://rbi//lib/rbi/printer.rb#756
2329
2435
  sig { params(v: ::RBI::Printer, last: T::Boolean).void }
2330
2436
  def print_comment_leading_space(v, last:); end
2331
2437
 
2332
2438
  # @return [String]
2333
2439
  #
2334
- # source://rbi//lib/rbi/model.rb#1093
2440
+ # source://rbi//lib/rbi/model.rb#1102
2335
2441
  def type; end
2336
2442
  end
2337
2443
 
2338
- # source://rbi//lib/rbi/model.rb#245
2444
+ # source://rbi//lib/rbi/model.rb#251
2339
2445
  class RBI::SingletonClass < ::RBI::Scope
2340
- # source://rbi//lib/rbi/model.rb#255
2446
+ # source://rbi//lib/rbi/model.rb#261
2341
2447
  sig do
2342
2448
  params(
2343
2449
  loc: T.nilable(::RBI::Loc),
@@ -2347,18 +2453,18 @@ class RBI::SingletonClass < ::RBI::Scope
2347
2453
  end
2348
2454
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2349
2455
 
2350
- # source://rbi//lib/rbi/model.rb#261
2456
+ # source://rbi//lib/rbi/model.rb#267
2351
2457
  sig { override.returns(::String) }
2352
2458
  def fully_qualified_name; end
2353
2459
 
2354
- # source://rbi//lib/rbi/printer.rb#319
2460
+ # source://rbi//lib/rbi/printer.rb#321
2355
2461
  sig { override.params(v: ::RBI::Printer).void }
2356
2462
  def print_header(v); end
2357
2463
  end
2358
2464
 
2359
- # source://rbi//lib/rbi/model.rb#266
2465
+ # source://rbi//lib/rbi/model.rb#272
2360
2466
  class RBI::Struct < ::RBI::Scope
2361
- # source://rbi//lib/rbi/model.rb#288
2467
+ # source://rbi//lib/rbi/model.rb#294
2362
2468
  sig do
2363
2469
  params(
2364
2470
  name: ::String,
@@ -2371,51 +2477,51 @@ class RBI::Struct < ::RBI::Scope
2371
2477
  end
2372
2478
  def initialize(name, members: T.unsafe(nil), keyword_init: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2373
2479
 
2374
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#388
2480
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#394
2375
2481
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2376
2482
  def compatible_with?(other); end
2377
2483
 
2378
- # source://rbi//lib/rbi/model.rb#297
2484
+ # source://rbi//lib/rbi/model.rb#303
2379
2485
  sig { override.returns(::String) }
2380
2486
  def fully_qualified_name; end
2381
2487
 
2382
- # source://rbi//lib/rbi/model.rb#276
2488
+ # source://rbi//lib/rbi/model.rb#282
2383
2489
  sig { returns(T::Boolean) }
2384
2490
  def keyword_init; end
2385
2491
 
2386
2492
  # @return [Boolean]
2387
2493
  #
2388
- # source://rbi//lib/rbi/model.rb#276
2494
+ # source://rbi//lib/rbi/model.rb#282
2389
2495
  def keyword_init=(_arg0); end
2390
2496
 
2391
- # source://rbi//lib/rbi/model.rb#273
2497
+ # source://rbi//lib/rbi/model.rb#279
2392
2498
  sig { returns(T::Array[::Symbol]) }
2393
2499
  def members; end
2394
2500
 
2395
2501
  # @return [Array<Symbol>]
2396
2502
  #
2397
- # source://rbi//lib/rbi/model.rb#273
2503
+ # source://rbi//lib/rbi/model.rb#279
2398
2504
  def members=(_arg0); end
2399
2505
 
2400
- # source://rbi//lib/rbi/model.rb#270
2506
+ # source://rbi//lib/rbi/model.rb#276
2401
2507
  sig { returns(::String) }
2402
2508
  def name; end
2403
2509
 
2404
2510
  # @return [String]
2405
2511
  #
2406
- # source://rbi//lib/rbi/model.rb#270
2512
+ # source://rbi//lib/rbi/model.rb#276
2407
2513
  def name=(_arg0); end
2408
2514
 
2409
- # source://rbi//lib/rbi/printer.rb#298
2515
+ # source://rbi//lib/rbi/printer.rb#300
2410
2516
  sig { override.params(v: ::RBI::Printer).void }
2411
2517
  def print_header(v); end
2412
2518
  end
2413
2519
 
2414
2520
  # Sorbet's T::Enum
2415
2521
  #
2416
- # source://rbi//lib/rbi/model.rb#1230
2522
+ # source://rbi//lib/rbi/model.rb#1239
2417
2523
  class RBI::TEnum < ::RBI::Class
2418
- # source://rbi//lib/rbi/model.rb#1241
2524
+ # source://rbi//lib/rbi/model.rb#1250
2419
2525
  sig do
2420
2526
  params(
2421
2527
  name: ::String,
@@ -2427,11 +2533,11 @@ class RBI::TEnum < ::RBI::Class
2427
2533
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2428
2534
  end
2429
2535
 
2430
- # source://rbi//lib/rbi/model.rb#1247
2536
+ # source://rbi//lib/rbi/model.rb#1256
2431
2537
  class RBI::TEnumBlock < ::RBI::NodeWithComments
2432
2538
  include ::RBI::Indexable
2433
2539
 
2434
- # source://rbi//lib/rbi/model.rb#1261
2540
+ # source://rbi//lib/rbi/model.rb#1270
2435
2541
  sig do
2436
2542
  params(
2437
2543
  names: T::Array[::String],
@@ -2442,40 +2548,40 @@ class RBI::TEnumBlock < ::RBI::NodeWithComments
2442
2548
  end
2443
2549
  def initialize(names = T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2444
2550
 
2445
- # source://rbi//lib/rbi/model.rb#1273
2551
+ # source://rbi//lib/rbi/model.rb#1282
2446
2552
  sig { params(name: ::String).void }
2447
2553
  def <<(name); end
2448
2554
 
2449
- # source://rbi//lib/rbi/printer.rb#793
2555
+ # source://rbi//lib/rbi/printer.rb#795
2450
2556
  sig { override.params(v: ::RBI::Printer).void }
2451
2557
  def accept_printer(v); end
2452
2558
 
2453
- # source://rbi//lib/rbi/model.rb#1268
2559
+ # source://rbi//lib/rbi/model.rb#1277
2454
2560
  sig { returns(T::Boolean) }
2455
2561
  def empty?; end
2456
2562
 
2457
- # source://rbi//lib/rbi/index.rb#209
2563
+ # source://rbi//lib/rbi/index.rb#223
2458
2564
  sig { override.returns(T::Array[::String]) }
2459
2565
  def index_ids; end
2460
2566
 
2461
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#546
2567
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#556
2462
2568
  sig { override.params(other: ::RBI::Node).void }
2463
2569
  def merge_with(other); end
2464
2570
 
2465
- # source://rbi//lib/rbi/model.rb#1251
2571
+ # source://rbi//lib/rbi/model.rb#1260
2466
2572
  sig { returns(T::Array[::String]) }
2467
2573
  def names; end
2468
2574
 
2469
- # source://rbi//lib/rbi/model.rb#1278
2575
+ # source://rbi//lib/rbi/model.rb#1287
2470
2576
  sig { override.returns(::String) }
2471
2577
  def to_s; end
2472
2578
  end
2473
2579
 
2474
2580
  # Sorbet's T::Struct
2475
2581
  #
2476
- # source://rbi//lib/rbi/model.rb#1119
2582
+ # source://rbi//lib/rbi/model.rb#1128
2477
2583
  class RBI::TStruct < ::RBI::Class
2478
- # source://rbi//lib/rbi/model.rb#1130
2584
+ # source://rbi//lib/rbi/model.rb#1139
2479
2585
  sig do
2480
2586
  params(
2481
2587
  name: ::String,
@@ -2487,11 +2593,11 @@ class RBI::TStruct < ::RBI::Class
2487
2593
  def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2488
2594
  end
2489
2595
 
2490
- # source://rbi//lib/rbi/model.rb#1168
2596
+ # source://rbi//lib/rbi/model.rb#1177
2491
2597
  class RBI::TStructConst < ::RBI::TStructField
2492
2598
  include ::RBI::Indexable
2493
2599
 
2494
- # source://rbi//lib/rbi/model.rb#1181
2600
+ # source://rbi//lib/rbi/model.rb#1190
2495
2601
  sig do
2496
2602
  params(
2497
2603
  name: ::String,
@@ -2504,30 +2610,30 @@ class RBI::TStructConst < ::RBI::TStructField
2504
2610
  end
2505
2611
  def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2506
2612
 
2507
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#537
2613
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#547
2508
2614
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2509
2615
  def compatible_with?(other); end
2510
2616
 
2511
- # source://rbi//lib/rbi/model.rb#1187
2617
+ # source://rbi//lib/rbi/model.rb#1196
2512
2618
  sig { override.returns(T::Array[::String]) }
2513
2619
  def fully_qualified_names; end
2514
2620
 
2515
- # source://rbi//lib/rbi/index.rb#189
2621
+ # source://rbi//lib/rbi/index.rb#203
2516
2622
  sig { override.returns(T::Array[::String]) }
2517
2623
  def index_ids; end
2518
2624
 
2519
- # source://rbi//lib/rbi/model.rb#1193
2625
+ # source://rbi//lib/rbi/model.rb#1202
2520
2626
  sig { override.returns(::String) }
2521
2627
  def to_s; end
2522
2628
  end
2523
2629
 
2524
2630
  # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
2525
2631
  #
2526
- # source://rbi//lib/rbi/model.rb#1136
2632
+ # source://rbi//lib/rbi/model.rb#1145
2527
2633
  class RBI::TStructField < ::RBI::NodeWithComments
2528
2634
  abstract!
2529
2635
 
2530
- # source://rbi//lib/rbi/model.rb#1157
2636
+ # source://rbi//lib/rbi/model.rb#1166
2531
2637
  sig do
2532
2638
  params(
2533
2639
  name: ::String,
@@ -2539,54 +2645,54 @@ class RBI::TStructField < ::RBI::NodeWithComments
2539
2645
  end
2540
2646
  def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil)); end
2541
2647
 
2542
- # source://rbi//lib/rbi/printer.rb#771
2648
+ # source://rbi//lib/rbi/printer.rb#773
2543
2649
  sig { override.params(v: ::RBI::Printer).void }
2544
2650
  def accept_printer(v); end
2545
2651
 
2546
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#528
2652
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#538
2547
2653
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2548
2654
  def compatible_with?(other); end
2549
2655
 
2550
- # source://rbi//lib/rbi/model.rb#1146
2656
+ # source://rbi//lib/rbi/model.rb#1155
2551
2657
  sig { returns(T.nilable(::String)) }
2552
2658
  def default; end
2553
2659
 
2554
2660
  # @return [String, nil]
2555
2661
  #
2556
- # source://rbi//lib/rbi/model.rb#1146
2662
+ # source://rbi//lib/rbi/model.rb#1155
2557
2663
  def default=(_arg0); end
2558
2664
 
2559
2665
  # @abstract
2560
2666
  #
2561
- # source://rbi//lib/rbi/model.rb#1165
2667
+ # source://rbi//lib/rbi/model.rb#1174
2562
2668
  sig { abstract.returns(T::Array[::String]) }
2563
2669
  def fully_qualified_names; end
2564
2670
 
2565
- # source://rbi//lib/rbi/model.rb#1143
2671
+ # source://rbi//lib/rbi/model.rb#1152
2566
2672
  sig { returns(::String) }
2567
2673
  def name; end
2568
2674
 
2569
2675
  # @return [String]
2570
2676
  #
2571
- # source://rbi//lib/rbi/model.rb#1143
2677
+ # source://rbi//lib/rbi/model.rb#1152
2572
2678
  def name=(_arg0); end
2573
2679
 
2574
2680
  # @return [String]
2575
2681
  #
2576
- # source://rbi//lib/rbi/model.rb#1143
2682
+ # source://rbi//lib/rbi/model.rb#1152
2577
2683
  def type; end
2578
2684
 
2579
2685
  # @return [String]
2580
2686
  #
2581
- # source://rbi//lib/rbi/model.rb#1143
2687
+ # source://rbi//lib/rbi/model.rb#1152
2582
2688
  def type=(_arg0); end
2583
2689
  end
2584
2690
 
2585
- # source://rbi//lib/rbi/model.rb#1198
2691
+ # source://rbi//lib/rbi/model.rb#1207
2586
2692
  class RBI::TStructProp < ::RBI::TStructField
2587
2693
  include ::RBI::Indexable
2588
2694
 
2589
- # source://rbi//lib/rbi/model.rb#1211
2695
+ # source://rbi//lib/rbi/model.rb#1220
2590
2696
  sig do
2591
2697
  params(
2592
2698
  name: ::String,
@@ -2599,26 +2705,26 @@ class RBI::TStructProp < ::RBI::TStructField
2599
2705
  end
2600
2706
  def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2601
2707
 
2602
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#559
2708
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#570
2603
2709
  sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2604
2710
  def compatible_with?(other); end
2605
2711
 
2606
- # source://rbi//lib/rbi/model.rb#1217
2712
+ # source://rbi//lib/rbi/model.rb#1226
2607
2713
  sig { override.returns(T::Array[::String]) }
2608
2714
  def fully_qualified_names; end
2609
2715
 
2610
- # source://rbi//lib/rbi/index.rb#199
2716
+ # source://rbi//lib/rbi/index.rb#213
2611
2717
  sig { override.returns(T::Array[::String]) }
2612
2718
  def index_ids; end
2613
2719
 
2614
- # source://rbi//lib/rbi/model.rb#1223
2720
+ # source://rbi//lib/rbi/model.rb#1232
2615
2721
  sig { override.returns(::String) }
2616
2722
  def to_s; end
2617
2723
  end
2618
2724
 
2619
- # source://rbi//lib/rbi/model.rb#102
2725
+ # source://rbi//lib/rbi/model.rb#106
2620
2726
  class RBI::Tree < ::RBI::NodeWithComments
2621
- # source://rbi//lib/rbi/model.rb#115
2727
+ # source://rbi//lib/rbi/model.rb#119
2622
2728
  sig do
2623
2729
  params(
2624
2730
  loc: T.nilable(::RBI::Loc),
@@ -2628,11 +2734,11 @@ class RBI::Tree < ::RBI::NodeWithComments
2628
2734
  end
2629
2735
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2630
2736
 
2631
- # source://rbi//lib/rbi/model.rb#122
2737
+ # source://rbi//lib/rbi/model.rb#126
2632
2738
  sig { params(node: ::RBI::Node).void }
2633
2739
  def <<(node); end
2634
2740
 
2635
- # source://rbi//lib/rbi/printer.rb#224
2741
+ # source://rbi//lib/rbi/printer.rb#226
2636
2742
  sig { override.params(v: ::RBI::Printer).void }
2637
2743
  def accept_printer(v); end
2638
2744
 
@@ -2640,11 +2746,11 @@ class RBI::Tree < ::RBI::NodeWithComments
2640
2746
  sig { params(with_todo_comment: T::Boolean).void }
2641
2747
  def add_sig_templates!(with_todo_comment: T.unsafe(nil)); end
2642
2748
 
2643
- # source://rbi//lib/rbi/rewriters/annotate.rb#48
2749
+ # source://rbi//lib/rbi/rewriters/annotate.rb#49
2644
2750
  sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void }
2645
2751
  def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end
2646
2752
 
2647
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#38
2753
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#38
2648
2754
  sig do
2649
2755
  params(
2650
2756
  name: ::String,
@@ -2654,19 +2760,19 @@ class RBI::Tree < ::RBI::NodeWithComments
2654
2760
  end
2655
2761
  def create_class(name, superclass_name: T.unsafe(nil), &block); end
2656
2762
 
2657
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#45
2763
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#45
2658
2764
  sig { params(name: ::String, value: ::String).void }
2659
2765
  def create_constant(name, value:); end
2660
2766
 
2661
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#55
2767
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#55
2662
2768
  sig { params(name: ::String).void }
2663
2769
  def create_extend(name); end
2664
2770
 
2665
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#50
2771
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#50
2666
2772
  sig { params(name: ::String).void }
2667
2773
  def create_include(name); end
2668
2774
 
2669
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#89
2775
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#89
2670
2776
  sig do
2671
2777
  params(
2672
2778
  name: ::String,
@@ -2679,19 +2785,19 @@ class RBI::Tree < ::RBI::NodeWithComments
2679
2785
  end
2680
2786
  def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil), comments: T.unsafe(nil)); end
2681
2787
 
2682
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#60
2788
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#60
2683
2789
  sig { params(name: ::String).void }
2684
2790
  def create_mixes_in_class_methods(name); end
2685
2791
 
2686
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#25
2792
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#25
2687
2793
  sig { params(name: ::String, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
2688
2794
  def create_module(name, &block); end
2689
2795
 
2690
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#9
2796
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#9
2691
2797
  sig { params(constant: ::Module, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
2692
2798
  def create_path(constant, &block); end
2693
2799
 
2694
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#74
2800
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#74
2695
2801
  sig do
2696
2802
  params(
2697
2803
  name: ::String,
@@ -2704,23 +2810,27 @@ class RBI::Tree < ::RBI::NodeWithComments
2704
2810
  end
2705
2811
  def create_type_variable(name, type:, variance: T.unsafe(nil), fixed: T.unsafe(nil), upper: T.unsafe(nil), lower: T.unsafe(nil)); end
2706
2812
 
2707
- # source://rbi//lib/rbi/rewriters/deannotate.rb#40
2813
+ # source://rbi//lib/rbi/rewriters/deannotate.rb#41
2708
2814
  sig { params(annotation: ::String).void }
2709
2815
  def deannotate!(annotation); end
2710
2816
 
2711
- # source://rbi//lib/rbi/model.rb#128
2817
+ # source://rbi//lib/rbi/model.rb#132
2712
2818
  sig { returns(T::Boolean) }
2713
2819
  def empty?; end
2714
2820
 
2821
+ # source://rbi//lib/rbi/rewriters/filter_versions.rb#118
2822
+ sig { params(version: ::Gem::Version).void }
2823
+ def filter_versions!(version); end
2824
+
2715
2825
  # source://rbi//lib/rbi/rewriters/group_nodes.rb#38
2716
2826
  sig { void }
2717
2827
  def group_nodes!; end
2718
2828
 
2719
- # source://rbi//lib/rbi/index.rb#64
2829
+ # source://rbi//lib/rbi/index.rb#68
2720
2830
  sig { returns(::RBI::Index) }
2721
2831
  def index; end
2722
2832
 
2723
- # source://rbi//lib/rbi/rewriters/merge_trees.rb#318
2833
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#324
2724
2834
  sig do
2725
2835
  params(
2726
2836
  other: ::RBI::Tree,
@@ -2731,155 +2841,42 @@ class RBI::Tree < ::RBI::NodeWithComments
2731
2841
  end
2732
2842
  def merge(other, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
2733
2843
 
2734
- # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#45
2844
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#46
2735
2845
  sig { void }
2736
2846
  def nest_non_public_methods!; end
2737
2847
 
2738
- # source://rbi//lib/rbi/rewriters/nest_singleton_methods.rb#35
2848
+ # source://rbi//lib/rbi/rewriters/nest_singleton_methods.rb#36
2739
2849
  sig { void }
2740
2850
  def nest_singleton_methods!; end
2741
2851
 
2742
- # source://rbi//lib/rbi/model.rb#106
2852
+ # source://rbi//lib/rbi/model.rb#110
2743
2853
  sig { returns(T::Array[::RBI::Node]) }
2744
2854
  def nodes; end
2745
2855
 
2746
- # source://rbi//lib/rbi/printer.rb#231
2856
+ # source://rbi//lib/rbi/printer.rb#233
2747
2857
  sig { override.returns(T::Boolean) }
2748
2858
  def oneline?; end
2749
2859
 
2750
- # source://rbi//lib/rbi/rewriters/sort_nodes.rb#107
2860
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#119
2751
2861
  sig { void }
2752
2862
  def sort_nodes!; end
2753
2863
 
2754
2864
  private
2755
2865
 
2756
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#116
2866
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#116
2757
2867
  sig { params(node: ::RBI::Node).returns(::RBI::Node) }
2758
2868
  def create_node(node); end
2759
2869
 
2760
- # source://tapioca/0.11.5/lib/tapioca/rbi_ext/model.rb#111
2870
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#111
2761
2871
  sig { returns(T::Hash[::String, ::RBI::Node]) }
2762
2872
  def nodes_cache; end
2763
2873
  end
2764
2874
 
2765
- # source://rbi//lib/rbi/parser.rb#156
2766
- class RBI::TreeBuilder < ::RBI::ASTVisitor
2767
- # source://rbi//lib/rbi/parser.rb#172
2768
- sig do
2769
- params(
2770
- file: ::String,
2771
- comments: T::Array[::Parser::Source::Comment],
2772
- nodes_comments_assoc: T::Hash[::Parser::Source::Map, T::Array[::Parser::Source::Comment]]
2773
- ).void
2774
- end
2775
- def initialize(file:, comments: T.unsafe(nil), nodes_comments_assoc: T.unsafe(nil)); end
2776
-
2777
- # source://rbi//lib/rbi/parser.rb#163
2778
- sig { returns(T.nilable(::AST::Node)) }
2779
- def last_node; end
2780
-
2781
- # source://rbi//lib/rbi/parser.rb#187
2782
- sig { void }
2783
- def post_process; end
2784
-
2785
- # source://rbi//lib/rbi/parser.rb#160
2786
- sig { returns(::RBI::Tree) }
2787
- def tree; end
2788
-
2789
- # source://rbi//lib/rbi/parser.rb#193
2790
- sig { override.params(node: T.nilable(::Object)).void }
2791
- def visit(node); end
2792
-
2793
- private
2794
-
2795
- # source://rbi//lib/rbi/parser.rb#546
2796
- sig { void }
2797
- def assoc_dangling_comments; end
2798
-
2799
- # source://rbi//lib/rbi/parser.rb#527
2800
- sig { returns(::RBI::Tree) }
2801
- def current_scope; end
2802
-
2803
- # source://rbi//lib/rbi/parser.rb#532
2804
- sig { returns(T::Array[::RBI::Sig]) }
2805
- def current_sigs; end
2806
-
2807
- # source://rbi//lib/rbi/parser.rb#539
2808
- sig { returns(T::Array[::RBI::Comment]) }
2809
- def current_sigs_comments; end
2810
-
2811
- # source://rbi//lib/rbi/parser.rb#516
2812
- sig { params(node: ::AST::Node).returns(T::Array[::RBI::Comment]) }
2813
- def node_comments(node); end
2814
-
2815
- # source://rbi//lib/rbi/parser.rb#511
2816
- sig { params(node: ::AST::Node).returns(::RBI::Loc) }
2817
- def node_loc(node); end
2818
-
2819
- # source://rbi//lib/rbi/parser.rb#402
2820
- sig { params(node: ::AST::Node).returns(T.nilable(::RBI::Node)) }
2821
- def parse_block(node); end
2822
-
2823
- # source://rbi//lib/rbi/parser.rb#249
2824
- sig { params(node: ::AST::Node).returns(::RBI::Node) }
2825
- def parse_const_assign(node); end
2826
-
2827
- # source://rbi//lib/rbi/parser.rb#263
2828
- sig { params(node: ::AST::Node).returns(::RBI::Method) }
2829
- def parse_def(node); end
2830
-
2831
- # source://rbi//lib/rbi/parser.rb#486
2832
- sig { params(node: ::AST::Node).returns(::RBI::TEnumBlock) }
2833
- def parse_enum(node); end
2834
-
2835
- # source://rbi//lib/rbi/parser.rb#290
2836
- sig { params(node: ::AST::Node).returns(::RBI::Param) }
2837
- def parse_param(node); end
2838
-
2839
- # source://rbi//lib/rbi/parser.rb#503
2840
- sig { params(node: ::AST::Node).returns(::RBI::RequiresAncestor) }
2841
- def parse_requires_ancestor(node); end
2842
-
2843
- # source://rbi//lib/rbi/parser.rb#229
2844
- sig { params(node: ::AST::Node).returns(::RBI::Scope) }
2845
- def parse_scope(node); end
2846
-
2847
- # source://rbi//lib/rbi/parser.rb#318
2848
- sig { params(node: ::AST::Node).returns(T.nilable(::RBI::Node)) }
2849
- def parse_send(node); end
2850
-
2851
- # source://rbi//lib/rbi/parser.rb#385
2852
- sig { params(node: ::AST::Node).returns(T::Array[::RBI::Arg]) }
2853
- def parse_send_args(node); end
2854
-
2855
- # source://rbi//lib/rbi/parser.rb#479
2856
- sig { params(node: ::AST::Node).returns(::RBI::Sig) }
2857
- def parse_sig(node); end
2858
-
2859
- # source://rbi//lib/rbi/parser.rb#424
2860
- sig { params(node: ::AST::Node).returns(::RBI::Struct) }
2861
- def parse_struct(node); end
2862
-
2863
- # source://rbi//lib/rbi/parser.rb#463
2864
- sig { params(node: ::AST::Node).returns([::String, ::String, T.nilable(::String)]) }
2865
- def parse_tstruct_prop(node); end
2866
-
2867
- # source://rbi//lib/rbi/parser.rb#564
2868
- sig { void }
2869
- def separate_header_comments; end
2870
-
2871
- # source://rbi//lib/rbi/parser.rb#586
2872
- sig { void }
2873
- def set_root_tree_loc; end
2874
-
2875
- # source://rbi//lib/rbi/parser.rb#418
2876
- sig { params(node: ::AST::Node).returns(T::Boolean) }
2877
- def struct_definition?(node); end
2878
- end
2879
-
2880
- # source://rbi//lib/rbi/model.rb#1311
2875
+ # source://rbi//lib/rbi/model.rb#1320
2881
2876
  class RBI::TypeMember < ::RBI::NodeWithComments
2882
- # source://rbi//lib/rbi/model.rb#1326
2877
+ include ::RBI::Indexable
2878
+
2879
+ # source://rbi//lib/rbi/model.rb#1335
2883
2880
  sig do
2884
2881
  params(
2885
2882
  name: ::String,
@@ -2891,25 +2888,29 @@ class RBI::TypeMember < ::RBI::NodeWithComments
2891
2888
  end
2892
2889
  def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2893
2890
 
2894
- # source://rbi//lib/rbi/printer.rb#810
2891
+ # source://rbi//lib/rbi/printer.rb#812
2895
2892
  sig { override.params(v: ::RBI::Printer).void }
2896
2893
  def accept_printer(v); end
2897
2894
 
2898
- # source://rbi//lib/rbi/model.rb#1334
2895
+ # source://rbi//lib/rbi/model.rb#1343
2899
2896
  sig { returns(::String) }
2900
2897
  def fully_qualified_name; end
2901
2898
 
2902
- # source://rbi//lib/rbi/model.rb#1315
2899
+ # source://rbi//lib/rbi/index.rb#183
2900
+ sig { override.returns(T::Array[::String]) }
2901
+ def index_ids; end
2902
+
2903
+ # source://rbi//lib/rbi/model.rb#1324
2903
2904
  sig { returns(::String) }
2904
2905
  def name; end
2905
2906
 
2906
- # source://rbi//lib/rbi/model.rb#1340
2907
+ # source://rbi//lib/rbi/model.rb#1350
2907
2908
  sig { override.returns(::String) }
2908
2909
  def to_s; end
2909
2910
 
2910
2911
  # @return [String]
2911
2912
  #
2912
- # source://rbi//lib/rbi/model.rb#1315
2913
+ # source://rbi//lib/rbi/model.rb#1324
2913
2914
  def value; end
2914
2915
  end
2915
2916
 
@@ -2935,54 +2936,54 @@ RBI::VERSION = T.let(T.unsafe(nil), String)
2935
2936
  #
2936
2937
  # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
2937
2938
  #
2938
- # source://rbi//lib/rbi/model.rb#833
2939
+ # source://rbi//lib/rbi/model.rb#841
2939
2940
  class RBI::Visibility < ::RBI::NodeWithComments
2940
2941
  abstract!
2941
2942
 
2942
- # source://rbi//lib/rbi/model.rb#843
2943
+ # source://rbi//lib/rbi/model.rb#851
2943
2944
  sig { params(visibility: ::Symbol, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void }
2944
2945
  def initialize(visibility, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
2945
2946
 
2946
- # source://rbi//lib/rbi/model.rb#849
2947
+ # source://rbi//lib/rbi/model.rb#857
2947
2948
  sig { params(other: ::RBI::Visibility).returns(T::Boolean) }
2948
2949
  def ==(other); end
2949
2950
 
2950
- # source://rbi//lib/rbi/printer.rb#577
2951
+ # source://rbi//lib/rbi/printer.rb#579
2951
2952
  sig { override.params(v: ::RBI::Printer).void }
2952
2953
  def accept_printer(v); end
2953
2954
 
2954
- # source://rbi//lib/rbi/model.rb#864
2955
+ # source://rbi//lib/rbi/model.rb#872
2955
2956
  sig { returns(T::Boolean) }
2956
2957
  def private?; end
2957
2958
 
2958
- # source://rbi//lib/rbi/model.rb#859
2959
+ # source://rbi//lib/rbi/model.rb#867
2959
2960
  sig { returns(T::Boolean) }
2960
2961
  def protected?; end
2961
2962
 
2962
- # source://rbi//lib/rbi/model.rb#854
2963
+ # source://rbi//lib/rbi/model.rb#862
2963
2964
  sig { returns(T::Boolean) }
2964
2965
  def public?; end
2965
2966
 
2966
- # source://rbi//lib/rbi/model.rb#840
2967
+ # source://rbi//lib/rbi/model.rb#848
2967
2968
  sig { returns(::Symbol) }
2968
2969
  def visibility; end
2969
2970
  end
2970
2971
 
2971
- # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#51
2972
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#52
2972
2973
  class RBI::VisibilityGroup < ::RBI::Tree
2973
- # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#58
2974
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#59
2974
2975
  sig { params(visibility: ::RBI::Visibility).void }
2975
2976
  def initialize(visibility); end
2976
2977
 
2977
- # source://rbi//lib/rbi/printer.rb#846
2978
+ # source://rbi//lib/rbi/printer.rb#848
2978
2979
  sig { override.params(v: ::RBI::Printer).void }
2979
2980
  def accept_printer(v); end
2980
2981
 
2981
- # source://rbi//lib/rbi/printer.rb#859
2982
+ # source://rbi//lib/rbi/printer.rb#861
2982
2983
  sig { override.returns(T::Boolean) }
2983
2984
  def oneline?; end
2984
2985
 
2985
- # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#55
2986
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#56
2986
2987
  sig { returns(::RBI::Visibility) }
2987
2988
  def visibility; end
2988
2989
  end
@@ -2993,9 +2994,6 @@ end
2993
2994
  class RBI::Visitor
2994
2995
  abstract!
2995
2996
 
2996
- # source://sorbet-runtime/0.5.10792/lib/types/private/abstract/declare.rb#37
2997
- def initialize(*args, **_arg1, &blk); end
2998
-
2999
2997
  # @abstract
3000
2998
  #
3001
2999
  # source://rbi//lib/rbi/visitor.rb#12