openfeature-sdk-sorbet 0.1.0

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