workos 2.10.0 → 2.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +32 -3
  3. data/bin/tapioca +29 -0
  4. data/lib/workos/version.rb +1 -1
  5. data/sorbet/rbi/gems/addressable@2.8.0.rbi +290 -0
  6. data/sorbet/rbi/gems/{ast.rbi → ast@2.4.2.rbi} +27 -22
  7. data/sorbet/rbi/gems/codecov@0.2.12.rbi +55 -0
  8. data/sorbet/rbi/gems/coderay@1.1.3.rbi +8 -0
  9. data/sorbet/rbi/gems/crack@0.4.5.rbi +57 -0
  10. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +185 -0
  11. data/sorbet/rbi/gems/docile@1.3.5.rbi +54 -0
  12. data/sorbet/rbi/gems/hashdiff@1.0.1.rbi +82 -0
  13. data/sorbet/rbi/gems/json@2.5.1.rbi +109 -0
  14. data/sorbet/rbi/gems/method_source@1.0.0.rbi +8 -0
  15. data/sorbet/rbi/gems/parallel@1.20.1.rbi +113 -0
  16. data/sorbet/rbi/gems/parser@3.0.1.0.rbi +1187 -0
  17. data/sorbet/rbi/gems/pry@0.14.2.rbi +8 -0
  18. data/sorbet/rbi/gems/public_suffix@4.0.6.rbi +146 -0
  19. data/sorbet/rbi/gems/{rainbow.rbi → rainbow@3.0.0.rbi} +90 -55
  20. data/sorbet/rbi/gems/{rake.rbi → rake@13.0.3.rbi} +587 -424
  21. data/sorbet/rbi/gems/rbi@0.0.16.rbi +2118 -0
  22. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +1117 -0
  23. data/sorbet/rbi/gems/{rexml.rbi → rexml@3.2.5.rbi} +587 -506
  24. data/sorbet/rbi/gems/{rspec-core.rbi → rspec-core@3.9.3.rbi} +2321 -1752
  25. data/sorbet/rbi/gems/{rspec-expectations.rbi → rspec-expectations@3.9.4.rbi} +1119 -677
  26. data/sorbet/rbi/gems/{rspec-mocks.rbi → rspec-mocks@3.9.1.rbi} +1327 -933
  27. data/sorbet/rbi/gems/rspec-support@3.9.4.rbi +511 -0
  28. data/sorbet/rbi/gems/rspec@3.9.0.rbi +38 -0
  29. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +1881 -0
  30. data/sorbet/rbi/gems/rubocop@0.93.1.rbi +11497 -0
  31. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +405 -0
  32. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +89 -0
  33. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +577 -0
  34. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.2.rbi +8 -0
  35. data/sorbet/rbi/gems/spoom@1.1.15.rbi +1549 -0
  36. data/sorbet/rbi/gems/tapioca@0.7.3.rbi +1718 -0
  37. data/sorbet/rbi/gems/thor@1.2.1.rbi +844 -0
  38. data/sorbet/rbi/gems/unicode-display_width@1.7.0.rbi +22 -0
  39. data/sorbet/rbi/gems/unparser@0.6.2.rbi +8 -0
  40. data/sorbet/rbi/gems/{vcr.rbi → vcr@5.0.0.rbi} +528 -401
  41. data/sorbet/rbi/gems/webmock@3.12.2.rbi +662 -0
  42. data/sorbet/rbi/gems/yard-sorbet@0.8.0.rbi +268 -0
  43. data/sorbet/rbi/gems/yard@0.9.26.rbi +4048 -0
  44. data/sorbet/tapioca/config.yml +13 -0
  45. data/sorbet/tapioca/require.rb +4 -0
  46. data/workos.gemspec +1 -1
  47. metadata +60 -50
  48. data/sorbet/rbi/gems/addressable.rbi +0 -199
  49. data/sorbet/rbi/gems/codecov.rbi +0 -37
  50. data/sorbet/rbi/gems/crack.rbi +0 -62
  51. data/sorbet/rbi/gems/docile.rbi +0 -36
  52. data/sorbet/rbi/gems/hashdiff.rbi +0 -66
  53. data/sorbet/rbi/gems/parallel.rbi +0 -83
  54. data/sorbet/rbi/gems/parser.rbi +0 -1429
  55. data/sorbet/rbi/gems/public_suffix.rbi +0 -104
  56. data/sorbet/rbi/gems/regexp_parser.rbi +0 -926
  57. data/sorbet/rbi/gems/rspec-support.rbi +0 -280
  58. data/sorbet/rbi/gems/rspec.rbi +0 -15
  59. data/sorbet/rbi/gems/rubocop-ast.rbi +0 -1355
  60. data/sorbet/rbi/gems/rubocop.rbi +0 -7253
  61. data/sorbet/rbi/gems/ruby-progressbar.rbi +0 -304
  62. data/sorbet/rbi/gems/simplecov-html.rbi +0 -35
  63. data/sorbet/rbi/gems/simplecov.rbi +0 -406
  64. data/sorbet/rbi/gems/unicode-display_width.rbi +0 -17
  65. data/sorbet/rbi/gems/webmock.rbi +0 -556
  66. data/sorbet/rbi/gems/yard.rbi +0 -1165
  67. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +0 -276
  68. data/sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi +0 -645
  69. data/sorbet/rbi/sorbet-typed/lib/rspec-core/all/rspec-core.rbi +0 -1891
  70. data/sorbet/rbi/sorbet-typed/lib/rubocop/~>0.85/rubocop.rbi +0 -2072
  71. data/sorbet/rbi/sorbet-typed/lib/yard/all/yard.rbi +0 -1214
  72. data/sorbet/rbi/todo.rbi +0 -5
@@ -0,0 +1,1718 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `tapioca` gem.
5
+ # Please instead update this file by running `bin/tapioca gem tapioca`.
6
+
7
+ class Module
8
+ def autoload(const_name, path); end
9
+ end
10
+
11
+ module RBI; end
12
+
13
+ class RBI::Tree < ::RBI::NodeWithComments
14
+ sig do
15
+ params(
16
+ loc: T.nilable(::RBI::Loc),
17
+ comments: T::Array[::RBI::Comment],
18
+ block: T.nilable(T.proc.params(node: ::RBI::Tree).void)
19
+ ).void
20
+ end
21
+ def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
22
+
23
+ sig { params(node: ::RBI::Node).void }
24
+ def <<(node); end
25
+
26
+ sig { override.params(v: ::RBI::Printer).void }
27
+ def accept_printer(v); end
28
+
29
+ sig { params(with_todo_comment: T::Boolean).void }
30
+ def add_sig_templates!(with_todo_comment: T.unsafe(nil)); end
31
+
32
+ sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void }
33
+ def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end
34
+
35
+ sig do
36
+ params(
37
+ name: ::String,
38
+ superclass_name: T.nilable(::String),
39
+ block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)
40
+ ).returns(::RBI::Scope)
41
+ end
42
+ def create_class(name, superclass_name: T.unsafe(nil), &block); end
43
+
44
+ sig { params(name: ::String, value: ::String).void }
45
+ def create_constant(name, value:); end
46
+
47
+ sig { params(name: ::String).void }
48
+ def create_extend(name); end
49
+
50
+ sig { params(name: ::String).void }
51
+ def create_include(name); end
52
+
53
+ sig do
54
+ params(
55
+ name: ::String,
56
+ parameters: T::Array[::RBI::TypedParam],
57
+ return_type: ::String,
58
+ class_method: T::Boolean,
59
+ visibility: ::RBI::Visibility
60
+ ).void
61
+ end
62
+ def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil)); end
63
+
64
+ sig { params(name: ::String).void }
65
+ def create_mixes_in_class_methods(name); end
66
+
67
+ sig { params(name: ::String, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
68
+ def create_module(name, &block); end
69
+
70
+ sig { params(constant: ::Module, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).void }
71
+ def create_path(constant, &block); end
72
+
73
+ sig do
74
+ params(
75
+ name: ::String,
76
+ type: ::String,
77
+ variance: ::Symbol,
78
+ fixed: T.nilable(::String),
79
+ upper: T.nilable(::String),
80
+ lower: T.nilable(::String)
81
+ ).void
82
+ end
83
+ def create_type_variable(name, type:, variance: T.unsafe(nil), fixed: T.unsafe(nil), upper: T.unsafe(nil), lower: T.unsafe(nil)); end
84
+
85
+ sig { params(annotation: ::String).void }
86
+ def deannotate!(annotation); end
87
+
88
+ sig { returns(T::Boolean) }
89
+ def empty?; end
90
+
91
+ sig { void }
92
+ def group_nodes!; end
93
+
94
+ sig { returns(::RBI::Index) }
95
+ def index; end
96
+
97
+ sig do
98
+ params(
99
+ other: ::RBI::Tree,
100
+ left_name: ::String,
101
+ right_name: ::String,
102
+ keep: ::RBI::Rewriters::Merge::Keep
103
+ ).returns(::RBI::MergeTree)
104
+ end
105
+ def merge(other, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
106
+
107
+ sig { void }
108
+ def nest_non_public_methods!; end
109
+
110
+ sig { void }
111
+ def nest_singleton_methods!; end
112
+
113
+ sig { returns(T::Array[::RBI::Node]) }
114
+ def nodes; end
115
+
116
+ sig { override.returns(T::Boolean) }
117
+ def oneline?; end
118
+
119
+ sig { void }
120
+ def sort_nodes!; end
121
+
122
+ private
123
+
124
+ sig { params(node: ::RBI::Node).returns(::RBI::Node) }
125
+ def create_node(node); end
126
+
127
+ sig { returns(T::Hash[::String, ::RBI::Node]) }
128
+ def nodes_cache; end
129
+
130
+ sig { params(name: ::String).returns(T::Boolean) }
131
+ def valid_method_name?(name); end
132
+ end
133
+
134
+ RBI::Tree::SPECIAL_METHOD_NAMES = T.let(T.unsafe(nil), Array)
135
+
136
+ class RBI::TypedParam < ::T::Struct
137
+ const :param, ::RBI::Param
138
+ const :type, ::String
139
+
140
+ class << self
141
+ def inherited(s); end
142
+ end
143
+ end
144
+
145
+ RBI::VERSION = T.let(T.unsafe(nil), String)
146
+
147
+ module T::Generic::TypeStoragePatch
148
+ def [](*types); end
149
+ def type_member(variance = T.unsafe(nil), fixed: T.unsafe(nil), lower: T.unsafe(nil), upper: T.unsafe(nil), &bounds_proc); end
150
+ def type_template(variance = T.unsafe(nil), fixed: T.unsafe(nil), lower: T.unsafe(nil), upper: T.unsafe(nil), &bounds_proc); end
151
+ end
152
+
153
+ module T::Types::Simple::GenericPatch
154
+ def name; end
155
+ end
156
+
157
+ module T::Types::Simple::NamePatch
158
+ def name; end
159
+ end
160
+
161
+ module T::Utils::CoercePatch
162
+ def coerce(val); end
163
+ end
164
+
165
+ module Tapioca
166
+ class << self
167
+ sig do
168
+ type_parameters(:Result)
169
+ .params(
170
+ blk: T.proc.returns(T.type_parameter(:Result))
171
+ ).returns(T.type_parameter(:Result))
172
+ end
173
+ def silence_warnings(&blk); end
174
+ end
175
+ end
176
+
177
+ Tapioca::BINARY_FILE = T.let(T.unsafe(nil), String)
178
+
179
+ class Tapioca::Cli < ::Thor
180
+ include ::Tapioca::CliHelper
181
+ include ::Tapioca::ConfigHelper
182
+ include ::Tapioca::ShimsHelper
183
+
184
+ def __print_version; end
185
+ def check_shims; end
186
+ def dsl(*constants); end
187
+ def gem(*gems); end
188
+ def init; end
189
+ def require; end
190
+ def todo; end
191
+
192
+ class << self
193
+ def exit_on_failure?; end
194
+ end
195
+ end
196
+
197
+ Tapioca::Cli::FILE_HEADER_OPTION_DESC = T.let(T.unsafe(nil), String)
198
+
199
+ module Tapioca::CliHelper
200
+ requires_ancestor { Thor::Shell }
201
+
202
+ sig { params(options: T::Hash[::Symbol, T.untyped]).returns(::Tapioca::RBIFormatter) }
203
+ def rbi_formatter(options); end
204
+
205
+ sig { params(message: ::String, color: T.any(::Symbol, T::Array[::Symbol])).void }
206
+ def say_error(message = T.unsafe(nil), *color); end
207
+ end
208
+
209
+ module Tapioca::Commands; end
210
+
211
+ class Tapioca::Commands::Command
212
+ include ::Thor::Base
213
+ include ::Thor::Invocation
214
+ include ::Thor::Shell
215
+ include ::Tapioca::CliHelper
216
+ extend ::Thor::Base::ClassMethods
217
+ extend ::Thor::Invocation::ClassMethods
218
+
219
+ abstract!
220
+
221
+ sig { void }
222
+ def initialize; end
223
+
224
+ sig { abstract.void }
225
+ def execute; end
226
+
227
+ sig { returns(::Thor::Actions) }
228
+ def file_writer; end
229
+
230
+ private
231
+
232
+ sig do
233
+ params(
234
+ path: T.any(::Pathname, ::String),
235
+ content: ::String,
236
+ force: T::Boolean,
237
+ skip: T::Boolean,
238
+ verbose: T::Boolean
239
+ ).void
240
+ end
241
+ def create_file(path, content, force: T.unsafe(nil), skip: T.unsafe(nil), verbose: T.unsafe(nil)); end
242
+
243
+ sig { params(command: ::Symbol, args: ::String).returns(::String) }
244
+ def default_command(command, *args); end
245
+
246
+ sig { params(path: T.any(::Pathname, ::String), verbose: T::Boolean).void }
247
+ def remove_file(path, verbose: T.unsafe(nil)); end
248
+ end
249
+
250
+ class Tapioca::Commands::Command::FileWriter < ::Thor
251
+ include ::Thor::Actions
252
+ extend ::Thor::Actions::ClassMethods
253
+ end
254
+
255
+ class Tapioca::Commands::Dsl < ::Tapioca::Commands::Command
256
+ sig do
257
+ params(
258
+ requested_constants: T::Array[::String],
259
+ outpath: ::Pathname,
260
+ only: T::Array[::String],
261
+ exclude: T::Array[::String],
262
+ file_header: T::Boolean,
263
+ compiler_path: ::String,
264
+ tapioca_path: ::String,
265
+ should_verify: T::Boolean,
266
+ quiet: T::Boolean,
267
+ verbose: T::Boolean,
268
+ number_of_workers: T.nilable(::Integer),
269
+ rbi_formatter: ::Tapioca::RBIFormatter
270
+ ).void
271
+ end
272
+ def initialize(requested_constants:, outpath:, only:, exclude:, file_header:, compiler_path:, tapioca_path:, should_verify: T.unsafe(nil), quiet: T.unsafe(nil), verbose: T.unsafe(nil), number_of_workers: T.unsafe(nil), rbi_formatter: T.unsafe(nil)); end
273
+
274
+ sig { override.void }
275
+ def execute; end
276
+
277
+ private
278
+
279
+ sig { void }
280
+ def abort_if_pending_migrations!; end
281
+
282
+ sig { params(cause: ::Symbol, files: T::Array[::String]).returns(::String) }
283
+ def build_error_for_files(cause, files); end
284
+
285
+ sig do
286
+ params(
287
+ constant_name: ::String,
288
+ rbi: ::RBI::File,
289
+ outpath: ::Pathname,
290
+ quiet: T::Boolean
291
+ ).returns(T.nilable(::Pathname))
292
+ end
293
+ def compile_dsl_rbi(constant_name, rbi, outpath: T.unsafe(nil), quiet: T.unsafe(nil)); end
294
+
295
+ sig { params(constant_names: T::Array[::String]).returns(T::Array[::Module]) }
296
+ def constantize(constant_names); end
297
+
298
+ sig { params(compiler_names: T::Array[::String]).returns(T::Array[T.class_of(Tapioca::Dsl::Compiler)]) }
299
+ def constantize_compilers(compiler_names); end
300
+
301
+ sig { params(constant_name: ::String).returns(::Pathname) }
302
+ def dsl_rbi_filename(constant_name); end
303
+
304
+ sig { params(requested_constants: T::Array[::String], path: ::Pathname).returns(T::Set[::Pathname]) }
305
+ def existing_rbi_filenames(requested_constants, path: T.unsafe(nil)); end
306
+
307
+ sig { params(constant: ::String).returns(::String) }
308
+ def generate_command_for(constant); end
309
+
310
+ sig { params(eager_load: T::Boolean).void }
311
+ def load_application(eager_load:); end
312
+
313
+ sig { void }
314
+ def load_dsl_compilers; end
315
+
316
+ sig { void }
317
+ def load_dsl_extensions; end
318
+
319
+ sig { returns(::Tapioca::Runtime::Loader) }
320
+ def loader; end
321
+
322
+ sig { params(dir: ::Pathname).void }
323
+ def perform_dsl_verification(dir); end
324
+
325
+ sig { params(files: T::Set[::Pathname]).void }
326
+ def purge_stale_dsl_rbi_files(files); end
327
+
328
+ sig { params(constant: ::String).returns(::String) }
329
+ def rbi_filename_for(constant); end
330
+
331
+ sig { params(path: ::Pathname).returns(T::Array[::Pathname]) }
332
+ def rbi_files_in(path); end
333
+
334
+ sig { params(diff: T::Hash[::String, ::Symbol], command: ::Symbol).void }
335
+ def report_diff_and_exit_if_out_of_date(diff, command); end
336
+
337
+ sig { params(name: ::String).returns(T.nilable(T.class_of(Tapioca::Dsl::Compiler))) }
338
+ def resolve(name); end
339
+
340
+ sig { params(class_name: ::String).returns(::String) }
341
+ def underscore(class_name); end
342
+
343
+ sig { params(tmp_dir: ::Pathname).returns(T::Hash[::String, ::Symbol]) }
344
+ def verify_dsl_rbi(tmp_dir:); end
345
+ end
346
+
347
+ class Tapioca::Commands::Gem < ::Tapioca::Commands::Command
348
+ include ::Tapioca::SorbetHelper
349
+
350
+ sig do
351
+ params(
352
+ gem_names: T::Array[::String],
353
+ exclude: T::Array[::String],
354
+ prerequire: T.nilable(::String),
355
+ postrequire: ::String,
356
+ typed_overrides: T::Hash[::String, ::String],
357
+ outpath: ::Pathname,
358
+ file_header: T::Boolean,
359
+ doc: T::Boolean,
360
+ include_exported_rbis: T::Boolean,
361
+ number_of_workers: T.nilable(::Integer),
362
+ auto_strictness: T::Boolean,
363
+ dsl_dir: ::String,
364
+ rbi_formatter: ::Tapioca::RBIFormatter
365
+ ).void
366
+ end
367
+ def initialize(gem_names:, exclude:, prerequire:, postrequire:, typed_overrides:, outpath:, file_header:, doc:, include_exported_rbis:, number_of_workers: T.unsafe(nil), auto_strictness: T.unsafe(nil), dsl_dir: T.unsafe(nil), rbi_formatter: T.unsafe(nil)); end
368
+
369
+ sig { override.void }
370
+ def execute; end
371
+
372
+ sig { params(should_verify: T::Boolean).void }
373
+ def sync(should_verify: T.unsafe(nil)); end
374
+
375
+ private
376
+
377
+ sig { returns(T::Array[::String]) }
378
+ def added_rbis; end
379
+
380
+ sig { params(cause: ::Symbol, files: T::Array[::String]).returns(::String) }
381
+ def build_error_for_files(cause, files); end
382
+
383
+ sig { returns(::Tapioca::Gemfile) }
384
+ def bundle; end
385
+
386
+ sig { params(gem: ::Tapioca::Gemfile::GemSpec).void }
387
+ def compile_gem_rbi(gem); end
388
+
389
+ sig { params(gem_name: ::String).returns(::Pathname) }
390
+ def existing_rbi(gem_name); end
391
+
392
+ sig { returns(T::Hash[::String, ::String]) }
393
+ def existing_rbis; end
394
+
395
+ sig { params(gem_name: ::String).returns(::Pathname) }
396
+ def expected_rbi(gem_name); end
397
+
398
+ sig { returns(T::Hash[::String, ::String]) }
399
+ def expected_rbis; end
400
+
401
+ sig { params(file: ::String, error: ::LoadError).void }
402
+ def explain_failed_require(file, error); end
403
+
404
+ sig { params(path: ::String).returns(::String) }
405
+ def gem_name_from_rbi_path(path); end
406
+
407
+ sig { params(gem_name: ::String).returns(T::Boolean) }
408
+ def gem_rbi_exists?(gem_name); end
409
+
410
+ sig { params(gem_name: ::String, version: ::String).returns(::Pathname) }
411
+ def gem_rbi_filename(gem_name, version); end
412
+
413
+ sig { params(gem_names: T::Array[::String]).returns(T::Array[::Tapioca::Gemfile::GemSpec]) }
414
+ def gems_to_generate(gem_names); end
415
+
416
+ sig { returns(::Tapioca::Runtime::Loader) }
417
+ def loader; end
418
+
419
+ sig { params(gem: ::Tapioca::Gemfile::GemSpec, file: ::RBI::File).void }
420
+ def merge_with_exported_rbi(gem, file); end
421
+
422
+ sig { params(old_filename: ::Pathname, new_filename: ::Pathname).void }
423
+ def move(old_filename, new_filename); end
424
+
425
+ sig { void }
426
+ def perform_additions; end
427
+
428
+ sig { void }
429
+ def perform_removals; end
430
+
431
+ sig { void }
432
+ def perform_sync_verification; end
433
+
434
+ sig { returns(T::Array[::String]) }
435
+ def removed_rbis; end
436
+
437
+ sig { params(diff: T::Hash[::String, ::Symbol], command: ::Symbol).void }
438
+ def report_diff_and_exit_if_out_of_date(diff, command); end
439
+
440
+ sig { void }
441
+ def require_gem_file; end
442
+
443
+ sig { params(gem_names: T::Array[::String], gem_dir: ::String, dsl_dir: ::String).void }
444
+ def update_strictnesses(gem_names, gem_dir: T.unsafe(nil), dsl_dir: T.unsafe(nil)); end
445
+ end
446
+
447
+ class Tapioca::Commands::Init < ::Tapioca::Commands::Command
448
+ sig { params(sorbet_config: ::String, tapioca_config: ::String, default_postrequire: ::String).void }
449
+ def initialize(sorbet_config:, tapioca_config:, default_postrequire:); end
450
+
451
+ sig { override.void }
452
+ def execute; end
453
+
454
+ private
455
+
456
+ sig { void }
457
+ def create_binstub; end
458
+
459
+ sig { void }
460
+ def create_post_require; end
461
+
462
+ sig { void }
463
+ def create_sorbet_config; end
464
+
465
+ sig { void }
466
+ def create_tapioca_config; end
467
+
468
+ sig { returns(::Bundler::Installer) }
469
+ def installer; end
470
+
471
+ sig { returns(::Bundler::StubSpecification) }
472
+ def spec; end
473
+ end
474
+
475
+ class Tapioca::Commands::Require < ::Tapioca::Commands::Command
476
+ sig { params(requires_path: ::String, sorbet_config_path: ::String).void }
477
+ def initialize(requires_path:, sorbet_config_path:); end
478
+
479
+ sig { override.void }
480
+ def execute; end
481
+ end
482
+
483
+ class Tapioca::Commands::Todo < ::Tapioca::Commands::Command
484
+ include ::Tapioca::SorbetHelper
485
+
486
+ sig { params(todo_file: ::String, file_header: T::Boolean).void }
487
+ def initialize(todo_file:, file_header:); end
488
+
489
+ sig { override.void }
490
+ def execute; end
491
+
492
+ private
493
+
494
+ sig { params(constants: T::Array[::String], command: ::String).returns(::RBI::File) }
495
+ def rbi(constants, command:); end
496
+
497
+ sig { returns(T::Array[::String]) }
498
+ def unresolved_constants; end
499
+ end
500
+
501
+ module Tapioca::ConfigHelper
502
+ requires_ancestor { Thor }
503
+
504
+ sig { params(args: T.untyped, local_options: T.untyped, config: T.untyped).void }
505
+ def initialize(args = T.unsafe(nil), local_options = T.unsafe(nil), config = T.unsafe(nil)); end
506
+
507
+ sig { returns(::String) }
508
+ def command_name; end
509
+
510
+ sig { returns(::Thor::CoreExt::HashWithIndifferentAccess) }
511
+ def defaults; end
512
+
513
+ sig { returns(::Thor::CoreExt::HashWithIndifferentAccess) }
514
+ def options; end
515
+
516
+ private
517
+
518
+ sig { params(msg: ::String).returns(::Tapioca::ConfigHelper::ConfigError) }
519
+ def build_error(msg); end
520
+
521
+ sig do
522
+ params(
523
+ options: ::Thor::CoreExt::HashWithIndifferentAccess
524
+ ).returns(::Thor::CoreExt::HashWithIndifferentAccess)
525
+ end
526
+ def config_options(options); end
527
+
528
+ sig { params(options: T::Hash[::Symbol, ::Thor::Option]).void }
529
+ def filter_defaults(options); end
530
+
531
+ sig do
532
+ params(
533
+ options: T.nilable(::Thor::CoreExt::HashWithIndifferentAccess)
534
+ ).returns(::Thor::CoreExt::HashWithIndifferentAccess)
535
+ end
536
+ def merge_options(*options); end
537
+
538
+ sig { params(config_file: ::String, errors: T::Array[::Tapioca::ConfigHelper::ConfigError]).void }
539
+ def print_errors(config_file, errors); end
540
+
541
+ sig { params(config_file: ::String, config: T::Hash[T.untyped, T.untyped]).void }
542
+ def validate_config!(config_file, config); end
543
+
544
+ sig do
545
+ params(
546
+ command_options: T::Hash[::Symbol, ::Thor::Option],
547
+ config_key: ::String,
548
+ config_options: T::Hash[T.untyped, T.untyped]
549
+ ).returns(T::Array[::Tapioca::ConfigHelper::ConfigError])
550
+ end
551
+ def validate_config_options(command_options, config_key, config_options); end
552
+ end
553
+
554
+ class Tapioca::ConfigHelper::ConfigError < ::T::Struct
555
+ const :message_parts, T::Array[::Tapioca::ConfigHelper::ConfigErrorMessagePart]
556
+
557
+ class << self
558
+ def inherited(s); end
559
+ end
560
+ end
561
+
562
+ class Tapioca::ConfigHelper::ConfigErrorMessagePart < ::T::Struct
563
+ const :message, ::String
564
+ const :colors, T::Array[::Symbol]
565
+
566
+ class << self
567
+ def inherited(s); end
568
+ end
569
+ end
570
+
571
+ Tapioca::DEFAULT_DSL_DIR = T.let(T.unsafe(nil), String)
572
+ Tapioca::DEFAULT_GEM_DIR = T.let(T.unsafe(nil), String)
573
+ Tapioca::DEFAULT_OVERRIDES = T.let(T.unsafe(nil), Hash)
574
+ Tapioca::DEFAULT_POSTREQUIRE_FILE = T.let(T.unsafe(nil), String)
575
+ Tapioca::DEFAULT_RBI_DIR = T.let(T.unsafe(nil), String)
576
+ Tapioca::DEFAULT_RBI_FORMATTER = T.let(T.unsafe(nil), Tapioca::RBIFormatter)
577
+ Tapioca::DEFAULT_SHIM_DIR = T.let(T.unsafe(nil), String)
578
+ Tapioca::DEFAULT_TODO_FILE = T.let(T.unsafe(nil), String)
579
+ module Tapioca::Dsl; end
580
+
581
+ class Tapioca::Dsl::Compiler
582
+ extend T::Generic
583
+ include ::Tapioca::Runtime::Reflection
584
+ include ::Tapioca::SignaturesHelper
585
+ include ::Tapioca::Dsl::Helpers::ParamHelper
586
+ extend ::Tapioca::Runtime::Reflection
587
+
588
+ abstract!
589
+
590
+ ConstantType = type_member { { upper: Module } }
591
+
592
+ sig { params(pipeline: ::Tapioca::Dsl::Pipeline, root: ::RBI::Tree, constant: ConstantType).void }
593
+ def initialize(pipeline, root, constant); end
594
+
595
+ sig { params(error: ::String).void }
596
+ def add_error(error); end
597
+
598
+ sig { params(compiler_name: ::String).returns(T::Boolean) }
599
+ def compiler_enabled?(compiler_name); end
600
+
601
+ sig { returns(ConstantType) }
602
+ def constant; end
603
+
604
+ sig { abstract.void }
605
+ def decorate; end
606
+
607
+ sig { returns(::RBI::Tree) }
608
+ def root; end
609
+
610
+ private
611
+
612
+ sig { params(type: ::String).returns(::String) }
613
+ def as_nilable_type(type); end
614
+
615
+ sig { params(method_def: T.any(::Method, ::UnboundMethod)).returns(T::Array[::RBI::TypedParam]) }
616
+ def compile_method_parameters_to_rbi(method_def); end
617
+
618
+ sig { params(method_def: T.any(::Method, ::UnboundMethod)).returns(::String) }
619
+ def compile_method_return_type_to_rbi(method_def); end
620
+
621
+ sig { params(scope: ::RBI::Scope, method_def: T.any(::Method, ::UnboundMethod), class_method: T::Boolean).void }
622
+ def create_method_from_def(scope, method_def, class_method: T.unsafe(nil)); end
623
+
624
+ sig { params(method_def: T.any(::Method, ::UnboundMethod), signature: T.untyped).returns(T::Array[::String]) }
625
+ def parameters_types_from_signature(method_def, signature); end
626
+
627
+ sig { params(name: ::String).returns(T::Boolean) }
628
+ def valid_parameter_name?(name); end
629
+
630
+ class << self
631
+ sig { abstract.returns(T::Enumerable[::Module]) }
632
+ def gather_constants; end
633
+
634
+ sig { params(constant: ::Module).returns(T::Boolean) }
635
+ def handles?(constant); end
636
+
637
+ sig { returns(T::Set[::Module]) }
638
+ def processable_constants; end
639
+
640
+ private
641
+
642
+ sig { returns(T::Enumerable[::Class]) }
643
+ def all_classes; end
644
+
645
+ sig { returns(T::Enumerable[::Module]) }
646
+ def all_modules; end
647
+ end
648
+ end
649
+
650
+ module Tapioca::Dsl::Compilers; end
651
+ Tapioca::Dsl::Compilers::DIRECTORY = T.let(T.unsafe(nil), String)
652
+ Tapioca::Dsl::Compilers::NAMESPACES = T.let(T.unsafe(nil), Array)
653
+ module Tapioca::Dsl::Helpers; end
654
+
655
+ module Tapioca::Dsl::Helpers::ParamHelper
656
+ include ::Tapioca::SignaturesHelper
657
+
658
+ sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
659
+ def create_block_param(name, type:); end
660
+
661
+ sig { params(name: ::String, type: ::String, default: ::String).returns(::RBI::TypedParam) }
662
+ def create_kw_opt_param(name, type:, default:); end
663
+
664
+ sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
665
+ def create_kw_param(name, type:); end
666
+
667
+ sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
668
+ def create_kw_rest_param(name, type:); end
669
+
670
+ sig { params(name: ::String, type: ::String, default: ::String).returns(::RBI::TypedParam) }
671
+ def create_opt_param(name, type:, default:); end
672
+
673
+ sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
674
+ def create_param(name, type:); end
675
+
676
+ sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
677
+ def create_rest_param(name, type:); end
678
+
679
+ sig { params(param: ::RBI::Param, type: ::String).returns(::RBI::TypedParam) }
680
+ def create_typed_param(param, type); end
681
+ end
682
+
683
+ class Tapioca::Dsl::Pipeline
684
+ sig do
685
+ params(
686
+ requested_constants: T::Array[::Module],
687
+ requested_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)],
688
+ excluded_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)],
689
+ error_handler: T.proc.params(error: ::String).void,
690
+ number_of_workers: T.nilable(::Integer)
691
+ ).void
692
+ end
693
+ def initialize(requested_constants:, requested_compilers: T.unsafe(nil), excluded_compilers: T.unsafe(nil), error_handler: T.unsafe(nil), number_of_workers: T.unsafe(nil)); end
694
+
695
+ sig { params(error: ::String).void }
696
+ def add_error(error); end
697
+
698
+ sig { params(compiler_name: ::String).returns(T::Boolean) }
699
+ def compiler_enabled?(compiler_name); end
700
+
701
+ sig { returns(T::Enumerable[T.class_of(Tapioca::Dsl::Compiler)]) }
702
+ def compilers; end
703
+
704
+ sig { returns(T.proc.params(error: ::String).void) }
705
+ def error_handler; end
706
+
707
+ sig { returns(T::Array[::String]) }
708
+ def errors; end
709
+
710
+ sig { returns(T::Array[::Module]) }
711
+ def requested_constants; end
712
+
713
+ sig do
714
+ type_parameters(:T)
715
+ .params(
716
+ blk: T.proc.params(constant: ::Module, rbi: ::RBI::File).returns(T.type_parameter(:T))
717
+ ).returns(T::Array[T.type_parameter(:T)])
718
+ end
719
+ def run(&blk); end
720
+
721
+ private
722
+
723
+ sig { params(constants: T::Set[::Module]).returns(T::Set[::Module]) }
724
+ def filter_anonymous_and_reloaded_constants(constants); end
725
+
726
+ sig do
727
+ params(
728
+ requested_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)],
729
+ excluded_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)]
730
+ ).returns(T::Enumerable[T.class_of(Tapioca::Dsl::Compiler)])
731
+ end
732
+ def gather_compilers(requested_compilers, excluded_compilers); end
733
+
734
+ sig { params(requested_constants: T::Array[::Module]).returns(T::Set[::Module]) }
735
+ def gather_constants(requested_constants); end
736
+
737
+ sig { params(constant: ::Module).returns(T.nilable(::RBI::File)) }
738
+ def rbi_for_constant(constant); end
739
+
740
+ sig { params(error: ::String).returns(T.noreturn) }
741
+ def report_error(error); end
742
+ end
743
+
744
+ class Tapioca::Error < ::StandardError; end
745
+
746
+ class Tapioca::Executor
747
+ sig { params(queue: T::Array[T.untyped], number_of_workers: T.nilable(::Integer)).void }
748
+ def initialize(queue, number_of_workers: T.unsafe(nil)); end
749
+
750
+ sig do
751
+ type_parameters(:T)
752
+ .params(
753
+ block: T.proc.params(item: T.untyped).returns(T.type_parameter(:T))
754
+ ).returns(T::Array[T.type_parameter(:T)])
755
+ end
756
+ def run_in_parallel(&block); end
757
+ end
758
+
759
+ Tapioca::Executor::MINIMUM_ITEMS_PER_WORKER = T.let(T.unsafe(nil), Integer)
760
+ module Tapioca::Gem; end
761
+
762
+ class Tapioca::Gem::ConstNodeAdded < ::Tapioca::Gem::NodeAdded
763
+ sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Const).void }
764
+ def initialize(symbol, constant, node); end
765
+
766
+ sig { returns(::RBI::Const) }
767
+ def node; end
768
+ end
769
+
770
+ class Tapioca::Gem::ConstantFound < ::Tapioca::Gem::Event
771
+ sig { params(symbol: ::String, constant: ::BasicObject).void }
772
+ def initialize(symbol, constant); end
773
+
774
+ sig { returns(::BasicObject) }
775
+ def constant; end
776
+
777
+ sig { returns(::String) }
778
+ def symbol; end
779
+ end
780
+
781
+ class Tapioca::Gem::Event
782
+ abstract!
783
+
784
+ def initialize(*args, **_arg1, &blk); end
785
+ end
786
+
787
+ module Tapioca::Gem::Listeners; end
788
+
789
+ class Tapioca::Gem::Listeners::Base
790
+ abstract!
791
+
792
+ sig { params(pipeline: ::Tapioca::Gem::Pipeline).void }
793
+ def initialize(pipeline); end
794
+
795
+ sig { params(event: ::Tapioca::Gem::NodeAdded).void }
796
+ def dispatch(event); end
797
+
798
+ private
799
+
800
+ sig { params(event: ::Tapioca::Gem::ConstNodeAdded).void }
801
+ def on_const(event); end
802
+
803
+ sig { params(event: ::Tapioca::Gem::MethodNodeAdded).void }
804
+ def on_method(event); end
805
+
806
+ sig { params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
807
+ def on_scope(event); end
808
+ end
809
+
810
+ class Tapioca::Gem::Listeners::DynamicMixins < ::Tapioca::Gem::Listeners::Base
811
+ include ::Tapioca::Runtime::Reflection
812
+
813
+ private
814
+
815
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
816
+ def on_scope(event); end
817
+ end
818
+
819
+ class Tapioca::Gem::Listeners::Methods < ::Tapioca::Gem::Listeners::Base
820
+ include ::Tapioca::Runtime::Reflection
821
+
822
+ private
823
+
824
+ sig { params(tree: ::RBI::Tree, module_name: ::String, mod: ::Module, for_visibility: T::Array[::Symbol]).void }
825
+ def compile_directly_owned_methods(tree, module_name, mod, for_visibility = T.unsafe(nil)); end
826
+
827
+ sig do
828
+ params(
829
+ tree: ::RBI::Tree,
830
+ symbol_name: ::String,
831
+ constant: ::Module,
832
+ method: T.nilable(::UnboundMethod),
833
+ visibility: ::RBI::Visibility
834
+ ).void
835
+ end
836
+ def compile_method(tree, symbol_name, constant, method, visibility = T.unsafe(nil)); end
837
+
838
+ sig { params(constant: ::Module).returns(T.nilable(::UnboundMethod)) }
839
+ def initialize_method_for(constant); end
840
+
841
+ sig { params(mod: ::Module).returns(T::Hash[::Symbol, T::Array[::Symbol]]) }
842
+ def method_names_by_visibility(mod); end
843
+
844
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
845
+ def on_scope(event); end
846
+
847
+ sig { params(constant: ::Module, method_name: ::String).returns(T::Boolean) }
848
+ def struct_method?(constant, method_name); end
849
+
850
+ sig { params(name: ::String).returns(T::Boolean) }
851
+ def valid_method_name?(name); end
852
+
853
+ sig { params(name: ::String).returns(T::Boolean) }
854
+ def valid_parameter_name?(name); end
855
+ end
856
+
857
+ Tapioca::Gem::Listeners::Methods::SPECIAL_METHOD_NAMES = T.let(T.unsafe(nil), Array)
858
+
859
+ class Tapioca::Gem::Listeners::Mixins < ::Tapioca::Gem::Listeners::Base
860
+ include ::Tapioca::Runtime::Reflection
861
+
862
+ private
863
+
864
+ sig do
865
+ params(
866
+ tree: ::RBI::Tree,
867
+ mods: T::Array[::Module],
868
+ mixin_type: ::Tapioca::Runtime::Trackers::Mixin::Type
869
+ ).void
870
+ end
871
+ def add_mixins(tree, mods, mixin_type); end
872
+
873
+ sig { params(mixin_name: ::String).returns(T::Boolean) }
874
+ def filtered_mixin?(mixin_name); end
875
+
876
+ sig { params(constant: ::Module).returns(T::Array[::Module]) }
877
+ def interesting_ancestors_of(constant); end
878
+
879
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
880
+ def on_scope(event); end
881
+ end
882
+
883
+ class Tapioca::Gem::Listeners::RemoveEmptyPayloadScopes < ::Tapioca::Gem::Listeners::Base
884
+ include ::Tapioca::Runtime::Reflection
885
+
886
+ private
887
+
888
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
889
+ def on_scope(event); end
890
+ end
891
+
892
+ class Tapioca::Gem::Listeners::SorbetEnums < ::Tapioca::Gem::Listeners::Base
893
+ private
894
+
895
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
896
+ def on_scope(event); end
897
+ end
898
+
899
+ class Tapioca::Gem::Listeners::SorbetHelpers < ::Tapioca::Gem::Listeners::Base
900
+ include ::Tapioca::Runtime::Reflection
901
+
902
+ private
903
+
904
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
905
+ def on_scope(event); end
906
+ end
907
+
908
+ class Tapioca::Gem::Listeners::SorbetProps < ::Tapioca::Gem::Listeners::Base
909
+ private
910
+
911
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
912
+ def on_scope(event); end
913
+ end
914
+
915
+ class Tapioca::Gem::Listeners::SorbetRequiredAncestors < ::Tapioca::Gem::Listeners::Base
916
+ private
917
+
918
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
919
+ def on_scope(event); end
920
+ end
921
+
922
+ class Tapioca::Gem::Listeners::SorbetSignatures < ::Tapioca::Gem::Listeners::Base
923
+ include ::Tapioca::Runtime::Reflection
924
+ include ::Tapioca::SignaturesHelper
925
+
926
+ private
927
+
928
+ sig { params(signature: T.untyped, parameters: T::Array[[::Symbol, ::String]]).returns(::RBI::Sig) }
929
+ def compile_signature(signature, parameters); end
930
+
931
+ sig { override.params(event: ::Tapioca::Gem::MethodNodeAdded).void }
932
+ def on_method(event); end
933
+
934
+ sig { params(signature: T.untyped).returns(T::Boolean) }
935
+ def signature_final?(signature); end
936
+ end
937
+
938
+ Tapioca::Gem::Listeners::SorbetSignatures::TYPE_PARAMETER_MATCHER = T.let(T.unsafe(nil), Regexp)
939
+
940
+ class Tapioca::Gem::Listeners::SorbetTypeVariables < ::Tapioca::Gem::Listeners::Base
941
+ include ::Tapioca::Runtime::Reflection
942
+
943
+ private
944
+
945
+ sig { params(tree: ::RBI::Tree, constant: ::Module).void }
946
+ def compile_type_variable_declarations(tree, constant); end
947
+
948
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
949
+ def on_scope(event); end
950
+ end
951
+
952
+ class Tapioca::Gem::Listeners::Subconstants < ::Tapioca::Gem::Listeners::Base
953
+ include ::Tapioca::Runtime::Reflection
954
+
955
+ private
956
+
957
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
958
+ def on_scope(event); end
959
+ end
960
+
961
+ class Tapioca::Gem::Listeners::YardDoc < ::Tapioca::Gem::Listeners::Base
962
+ sig { params(pipeline: ::Tapioca::Gem::Pipeline).void }
963
+ def initialize(pipeline); end
964
+
965
+ private
966
+
967
+ sig { params(name: ::String, sigs: T::Array[::RBI::Sig]).returns(T::Array[::RBI::Comment]) }
968
+ def documentation_comments(name, sigs: T.unsafe(nil)); end
969
+
970
+ sig { override.params(event: ::Tapioca::Gem::ConstNodeAdded).void }
971
+ def on_const(event); end
972
+
973
+ sig { override.params(event: ::Tapioca::Gem::MethodNodeAdded).void }
974
+ def on_method(event); end
975
+
976
+ sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
977
+ def on_scope(event); end
978
+ end
979
+
980
+ Tapioca::Gem::Listeners::YardDoc::IGNORED_COMMENTS = T.let(T.unsafe(nil), Array)
981
+ Tapioca::Gem::Listeners::YardDoc::IGNORED_SIG_TAGS = T.let(T.unsafe(nil), Array)
982
+
983
+ class Tapioca::Gem::MethodNodeAdded < ::Tapioca::Gem::NodeAdded
984
+ sig do
985
+ params(
986
+ symbol: ::String,
987
+ constant: ::Module,
988
+ node: ::RBI::Method,
989
+ signature: T.untyped,
990
+ parameters: T::Array[[::Symbol, ::String]]
991
+ ).void
992
+ end
993
+ def initialize(symbol, constant, node, signature, parameters); end
994
+
995
+ sig { returns(::RBI::Method) }
996
+ def node; end
997
+
998
+ sig { returns(T::Array[[::Symbol, ::String]]) }
999
+ def parameters; end
1000
+
1001
+ sig { returns(T.untyped) }
1002
+ def signature; end
1003
+ end
1004
+
1005
+ class Tapioca::Gem::NodeAdded < ::Tapioca::Gem::Event
1006
+ abstract!
1007
+
1008
+ sig { params(symbol: ::String, constant: ::Module).void }
1009
+ def initialize(symbol, constant); end
1010
+
1011
+ sig { returns(::Module) }
1012
+ def constant; end
1013
+
1014
+ sig { returns(::String) }
1015
+ def symbol; end
1016
+ end
1017
+
1018
+ class Tapioca::Gem::Pipeline
1019
+ include ::Tapioca::Runtime::Reflection
1020
+ include ::Tapioca::SignaturesHelper
1021
+
1022
+ sig { params(gem: ::Tapioca::Gemfile::GemSpec, include_doc: T::Boolean).void }
1023
+ def initialize(gem, include_doc: T.unsafe(nil)); end
1024
+
1025
+ sig { returns(::RBI::Tree) }
1026
+ def compile; end
1027
+
1028
+ sig { returns(::Tapioca::Gemfile::GemSpec) }
1029
+ def gem; end
1030
+
1031
+ sig { params(method: ::UnboundMethod).returns(T::Boolean) }
1032
+ def method_in_gem?(method); end
1033
+
1034
+ sig { params(constant: ::Module).returns(T.nilable(::String)) }
1035
+ def name_of(constant); end
1036
+
1037
+ sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Const).void }
1038
+ def push_const(symbol, constant, node); end
1039
+
1040
+ sig { params(symbol: ::String, constant: ::BasicObject).void }
1041
+ def push_constant(symbol, constant); end
1042
+
1043
+ sig do
1044
+ params(
1045
+ symbol: ::String,
1046
+ constant: ::Module,
1047
+ node: ::RBI::Method,
1048
+ signature: T.untyped,
1049
+ parameters: T::Array[[::Symbol, ::String]]
1050
+ ).void
1051
+ end
1052
+ def push_method(symbol, constant, node, signature, parameters); end
1053
+
1054
+ sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Scope).void }
1055
+ def push_scope(symbol, constant, node); end
1056
+
1057
+ sig { params(symbol: ::String).void }
1058
+ def push_symbol(symbol); end
1059
+
1060
+ sig { params(symbol_name: ::String).returns(T::Boolean) }
1061
+ def symbol_in_payload?(symbol_name); end
1062
+
1063
+ private
1064
+
1065
+ sig { params(name: ::String).void }
1066
+ def add_to_alias_namespace(name); end
1067
+
1068
+ sig { params(name: ::String).returns(T::Boolean) }
1069
+ def alias_namespaced?(name); end
1070
+
1071
+ sig { params(name: ::String, constant: ::Module).void }
1072
+ def compile_alias(name, constant); end
1073
+
1074
+ sig { params(symbol: ::String, constant: ::BasicObject).void }
1075
+ def compile_constant(symbol, constant); end
1076
+
1077
+ sig { params(name: ::String, constant: ::Module).void }
1078
+ def compile_module(name, constant); end
1079
+
1080
+ sig { params(name: ::String, value: ::BasicObject).void }
1081
+ def compile_object(name, value); end
1082
+
1083
+ sig { params(constant: ::Class).returns(T.nilable(::String)) }
1084
+ def compile_superclass(constant); end
1085
+
1086
+ sig { params(constant: ::Module, strict: T::Boolean).returns(T::Boolean) }
1087
+ def defined_in_gem?(constant, strict: T.unsafe(nil)); end
1088
+
1089
+ sig { params(event: ::Tapioca::Gem::Event).void }
1090
+ def dispatch(event); end
1091
+
1092
+ sig { params(constant: T.all(::Module, ::T::Generic)).returns(::String) }
1093
+ def generic_name_of(constant); end
1094
+
1095
+ sig { params(constant: ::Module).returns(T::Array[::String]) }
1096
+ def get_file_candidates(constant); end
1097
+
1098
+ sig { params(name: ::String).void }
1099
+ def mark_seen(name); end
1100
+
1101
+ sig { params(constant: ::Module, class_name: T.nilable(::String)).returns(T.nilable(::String)) }
1102
+ def name_of_proxy_target(constant, class_name); end
1103
+
1104
+ sig { returns(::Tapioca::Gem::Event) }
1105
+ def next_event; end
1106
+
1107
+ sig { params(event: ::Tapioca::Gem::ConstantFound).void }
1108
+ def on_constant(event); end
1109
+
1110
+ sig { params(event: ::Tapioca::Gem::NodeAdded).void }
1111
+ def on_node(event); end
1112
+
1113
+ sig { params(event: ::Tapioca::Gem::SymbolFound).void }
1114
+ def on_symbol(event); end
1115
+
1116
+ sig { params(name: ::String).returns(T::Boolean) }
1117
+ def seen?(name); end
1118
+ end
1119
+
1120
+ Tapioca::Gem::Pipeline::IGNORED_SYMBOLS = T.let(T.unsafe(nil), Array)
1121
+
1122
+ class Tapioca::Gem::ScopeNodeAdded < ::Tapioca::Gem::NodeAdded
1123
+ sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Scope).void }
1124
+ def initialize(symbol, constant, node); end
1125
+
1126
+ sig { returns(::RBI::Scope) }
1127
+ def node; end
1128
+ end
1129
+
1130
+ class Tapioca::Gem::SymbolFound < ::Tapioca::Gem::Event
1131
+ sig { params(symbol: ::String).void }
1132
+ def initialize(symbol); end
1133
+
1134
+ sig { returns(::String) }
1135
+ def symbol; end
1136
+ end
1137
+
1138
+ class Tapioca::Gemfile
1139
+ sig { void }
1140
+ def initialize; end
1141
+
1142
+ sig { returns(::Bundler::Definition) }
1143
+ def definition; end
1144
+
1145
+ sig { returns(T::Array[::Tapioca::Gemfile::GemSpec]) }
1146
+ def dependencies; end
1147
+
1148
+ sig { params(gem_name: ::String).returns(T.nilable(::Tapioca::Gemfile::GemSpec)) }
1149
+ def gem(gem_name); end
1150
+
1151
+ sig { returns(T::Array[::String]) }
1152
+ def missing_specs; end
1153
+
1154
+ sig { void }
1155
+ def require_bundle; end
1156
+
1157
+ private
1158
+
1159
+ sig { returns(::String) }
1160
+ def dir; end
1161
+
1162
+ sig { returns(::File) }
1163
+ def gemfile; end
1164
+
1165
+ sig { returns(T::Array[::Symbol]) }
1166
+ def groups; end
1167
+
1168
+ sig { returns([T::Array[::Tapioca::Gemfile::GemSpec], T::Array[::String]]) }
1169
+ def load_dependencies; end
1170
+
1171
+ def lockfile; end
1172
+
1173
+ sig { returns([T::Enumerable[T.any(::Bundler::StubSpecification, ::Gem::Specification)], T::Array[::String]]) }
1174
+ def materialize_deps; end
1175
+
1176
+ sig { returns(::Bundler::Runtime) }
1177
+ def runtime; end
1178
+ end
1179
+
1180
+ class Tapioca::Gemfile::GemSpec
1181
+ sig { params(spec: T.any(::Bundler::StubSpecification, ::Gem::Specification)).void }
1182
+ def initialize(spec); end
1183
+
1184
+ sig { params(path: ::String).returns(T::Boolean) }
1185
+ def contains_path?(path); end
1186
+
1187
+ sig { returns(T::Boolean) }
1188
+ def export_rbi_files?; end
1189
+
1190
+ sig { returns(T::Array[::String]) }
1191
+ def exported_rbi_files; end
1192
+
1193
+ sig { returns(::RBI::MergeTree) }
1194
+ def exported_rbi_tree; end
1195
+
1196
+ sig { returns(T::Array[::Pathname]) }
1197
+ def files; end
1198
+
1199
+ sig { returns(::String) }
1200
+ def full_gem_path; end
1201
+
1202
+ sig { params(gemfile_dir: ::String).returns(T::Boolean) }
1203
+ def ignore?(gemfile_dir); end
1204
+
1205
+ sig { returns(::String) }
1206
+ def name; end
1207
+
1208
+ sig { void }
1209
+ def parse_yard_docs; end
1210
+
1211
+ sig { returns(::String) }
1212
+ def rbi_file_name; end
1213
+
1214
+ def version; end
1215
+
1216
+ private
1217
+
1218
+ sig { returns(T::Array[::Pathname]) }
1219
+ def collect_files; end
1220
+
1221
+ sig { returns(T.nilable(T::Boolean)) }
1222
+ def default_gem?; end
1223
+
1224
+ sig { returns(T::Boolean) }
1225
+ def gem_ignored?; end
1226
+
1227
+ sig { params(gemfile_dir: ::String).returns(T::Boolean) }
1228
+ def gem_in_app_dir?(gemfile_dir); end
1229
+
1230
+ sig { returns(T::Boolean) }
1231
+ def gem_in_bundle_path?; end
1232
+
1233
+ sig { params(path: ::String).returns(T::Boolean) }
1234
+ def has_parent_gemspec?(path); end
1235
+
1236
+ sig { returns(::Regexp) }
1237
+ def require_paths_prefix_matcher; end
1238
+
1239
+ sig { params(file: ::String).returns(::Pathname) }
1240
+ def resolve_to_ruby_lib_dir(file); end
1241
+
1242
+ sig { params(path: T.any(::Pathname, ::String)).returns(::String) }
1243
+ def to_realpath(path); end
1244
+
1245
+ sig { returns(::String) }
1246
+ def version_string; end
1247
+ end
1248
+
1249
+ Tapioca::Gemfile::GemSpec::IGNORED_GEMS = T.let(T.unsafe(nil), Array)
1250
+ Tapioca::Gemfile::Spec = T.type_alias { T.any(::Bundler::StubSpecification, ::Gem::Specification) }
1251
+
1252
+ class Tapioca::RBIFormatter < ::RBI::Formatter
1253
+ sig { params(file: ::RBI::File).void }
1254
+ def write_empty_body_comment!(file); end
1255
+
1256
+ sig { params(file: ::RBI::File, command: ::String, reason: T.nilable(::String)).void }
1257
+ def write_header!(file, command, reason: T.unsafe(nil)); end
1258
+ end
1259
+
1260
+ module Tapioca::Runtime; end
1261
+
1262
+ class Tapioca::Runtime::DynamicMixinCompiler
1263
+ include ::Tapioca::Runtime::Reflection
1264
+
1265
+ sig { params(constant: ::Module).void }
1266
+ def initialize(constant); end
1267
+
1268
+ def class_attribute_predicates; end
1269
+
1270
+ sig { returns(T::Array[::Symbol]) }
1271
+ def class_attribute_readers; end
1272
+
1273
+ def class_attribute_writers; end
1274
+
1275
+ sig { params(tree: ::RBI::Tree).void }
1276
+ def compile_class_attributes(tree); end
1277
+
1278
+ sig { params(tree: ::RBI::Tree).returns([T::Array[::Module], T::Array[::Module]]) }
1279
+ def compile_mixes_in_class_methods(tree); end
1280
+
1281
+ sig { returns(T::Array[::Module]) }
1282
+ def dynamic_extends; end
1283
+
1284
+ def dynamic_includes; end
1285
+
1286
+ sig { returns(T::Boolean) }
1287
+ def empty_attributes?; end
1288
+
1289
+ sig { params(qualified_mixin_name: ::String).returns(T::Boolean) }
1290
+ def filtered_mixin?(qualified_mixin_name); end
1291
+
1292
+ def instance_attribute_predicates; end
1293
+
1294
+ sig { returns(T::Array[::Symbol]) }
1295
+ def instance_attribute_readers; end
1296
+
1297
+ def instance_attribute_writers; end
1298
+
1299
+ sig { params(mod: ::Module, dynamic_extends: T::Array[::Module]).returns(T::Boolean) }
1300
+ def module_included_by_another_dynamic_extend?(mod, dynamic_extends); end
1301
+ end
1302
+
1303
+ module Tapioca::Runtime::GenericTypeRegistry
1304
+ class << self
1305
+ sig { params(instance: ::Object).returns(T::Boolean) }
1306
+ def generic_type_instance?(instance); end
1307
+
1308
+ sig { params(constant: ::Module).returns(T.nilable(T::Array[::Tapioca::TypeVariableModule])) }
1309
+ def lookup_type_variables(constant); end
1310
+
1311
+ sig { params(constant: T.untyped, types: T.untyped).returns(::Module) }
1312
+ def register_type(constant, types); end
1313
+
1314
+ sig { params(constant: T.untyped, type_variable: ::Tapioca::TypeVariableModule).void }
1315
+ def register_type_variable(constant, type_variable); end
1316
+
1317
+ private
1318
+
1319
+ sig { params(constant: ::Module, name: ::String).returns(::Module) }
1320
+ def create_generic_type(constant, name); end
1321
+
1322
+ sig { params(constant: ::Class).returns(::Class) }
1323
+ def create_safe_subclass(constant); end
1324
+
1325
+ sig { params(constant: ::Module).returns(T::Array[::Tapioca::TypeVariableModule]) }
1326
+ def lookup_or_initialize_type_variables(constant); end
1327
+ end
1328
+ end
1329
+
1330
+ class Tapioca::Runtime::Loader
1331
+ sig do
1332
+ params(
1333
+ gemfile: ::Tapioca::Gemfile,
1334
+ initialize_file: T.nilable(::String),
1335
+ require_file: T.nilable(::String)
1336
+ ).void
1337
+ end
1338
+ def load_bundle(gemfile, initialize_file, require_file); end
1339
+
1340
+ sig { params(environment_load: T::Boolean, eager_load: T::Boolean).void }
1341
+ def load_rails_application(environment_load: T.unsafe(nil), eager_load: T.unsafe(nil)); end
1342
+
1343
+ private
1344
+
1345
+ sig { void }
1346
+ def eager_load_rails_app; end
1347
+
1348
+ sig { void }
1349
+ def load_rails_engines; end
1350
+
1351
+ sig { returns(T::Array[T.untyped]) }
1352
+ def rails_engines; end
1353
+
1354
+ sig { params(file: T.nilable(::String)).void }
1355
+ def require_helper(file); end
1356
+
1357
+ sig { params(path: ::String).void }
1358
+ def safe_require(path); end
1359
+
1360
+ sig { void }
1361
+ def silence_deprecations; end
1362
+ end
1363
+
1364
+ module Tapioca::Runtime::Reflection
1365
+ extend ::Tapioca::Runtime::Reflection
1366
+
1367
+ sig { params(constant: ::Module).returns(T::Array[::Module]) }
1368
+ def ancestors_of(constant); end
1369
+
1370
+ sig { params(object: ::BasicObject, other: ::BasicObject).returns(T::Boolean) }
1371
+ def are_equal?(object, other); end
1372
+
1373
+ sig { params(object: ::BasicObject).returns(::Class) }
1374
+ def class_of(object); end
1375
+
1376
+ sig { params(symbol: ::String, inherit: T::Boolean, namespace: ::Module).returns(::BasicObject) }
1377
+ def constantize(symbol, inherit: T.unsafe(nil), namespace: T.unsafe(nil)); end
1378
+
1379
+ sig { params(constant: ::Module).returns(T::Array[::Symbol]) }
1380
+ def constants_of(constant); end
1381
+
1382
+ sig do
1383
+ type_parameters(:U)
1384
+ .params(
1385
+ klass: T.all(::Class, T.type_parameter(:U))
1386
+ ).returns(T::Array[T.type_parameter(:U)])
1387
+ end
1388
+ def descendants_of(klass); end
1389
+
1390
+ sig { params(constant: ::Module).returns(T::Array[::Module]) }
1391
+ def inherited_ancestors_of(constant); end
1392
+
1393
+ sig { params(constant: ::Module, method: ::Symbol).returns(::Method) }
1394
+ def method_of(constant, method); end
1395
+
1396
+ sig { params(constant: ::Module).returns(T.nilable(::String)) }
1397
+ def name_of(constant); end
1398
+
1399
+ sig { params(type: ::T::Types::Base).returns(::String) }
1400
+ def name_of_type(type); end
1401
+
1402
+ sig { params(object: ::BasicObject).returns(::Integer) }
1403
+ def object_id_of(object); end
1404
+
1405
+ sig { params(constant: ::Module).returns(T::Array[::Symbol]) }
1406
+ def private_instance_methods_of(constant); end
1407
+
1408
+ sig { params(constant: ::Module).returns(T::Array[::Symbol]) }
1409
+ def protected_instance_methods_of(constant); end
1410
+
1411
+ sig { params(constant: ::Module).returns(T::Array[::Symbol]) }
1412
+ def public_instance_methods_of(constant); end
1413
+
1414
+ sig { params(constant: ::Module).returns(T.nilable(::String)) }
1415
+ def qualified_name_of(constant); end
1416
+
1417
+ sig { params(method: T.any(::Method, ::UnboundMethod)).returns(T.untyped) }
1418
+ def signature_of(method); end
1419
+
1420
+ sig { params(constant: ::Module).returns(::Class) }
1421
+ def singleton_class_of(constant); end
1422
+
1423
+ sig { params(constant: ::Class).returns(T.nilable(::Class)) }
1424
+ def superclass_of(constant); end
1425
+ end
1426
+
1427
+ Tapioca::Runtime::Reflection::ANCESTORS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1428
+ Tapioca::Runtime::Reflection::CLASS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1429
+ Tapioca::Runtime::Reflection::CONSTANTS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1430
+ Tapioca::Runtime::Reflection::EQUAL_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1431
+ Tapioca::Runtime::Reflection::METHOD_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1432
+ Tapioca::Runtime::Reflection::NAME_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1433
+ Tapioca::Runtime::Reflection::OBJECT_ID_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1434
+ Tapioca::Runtime::Reflection::PRIVATE_INSTANCE_METHODS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1435
+ Tapioca::Runtime::Reflection::PROTECTED_INSTANCE_METHODS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1436
+ Tapioca::Runtime::Reflection::PUBLIC_INSTANCE_METHODS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1437
+ Tapioca::Runtime::Reflection::SINGLETON_CLASS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1438
+ Tapioca::Runtime::Reflection::SUPERCLASS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
1439
+ module Tapioca::Runtime::Trackers; end
1440
+
1441
+ module Tapioca::Runtime::Trackers::Autoload
1442
+ class << self
1443
+ sig { void }
1444
+ def eager_load_all!; end
1445
+
1446
+ sig { params(constant_name: ::String).void }
1447
+ def register(constant_name); end
1448
+
1449
+ sig do
1450
+ type_parameters(:Result)
1451
+ .params(
1452
+ block: T.proc.returns(T.type_parameter(:Result))
1453
+ ).returns(T.type_parameter(:Result))
1454
+ end
1455
+ def with_disabled_exits(&block); end
1456
+ end
1457
+ end
1458
+
1459
+ Tapioca::Runtime::Trackers::Autoload::NOOP_METHOD = T.let(T.unsafe(nil), Proc)
1460
+
1461
+ module Tapioca::Runtime::Trackers::ConstantDefinition
1462
+ extend ::Tapioca::Runtime::Reflection
1463
+
1464
+ class << self
1465
+ def files_for(klass); end
1466
+ end
1467
+ end
1468
+
1469
+ module Tapioca::Runtime::Trackers::Mixin
1470
+ class << self
1471
+ sig do
1472
+ params(
1473
+ constant: ::Module
1474
+ ).returns(T::Hash[::Tapioca::Runtime::Trackers::Mixin::Type, T::Hash[::Module, T::Array[::String]]])
1475
+ end
1476
+ def mixin_locations_for(constant); end
1477
+
1478
+ sig do
1479
+ params(
1480
+ constant: ::Module,
1481
+ mod: ::Module,
1482
+ mixin_type: ::Tapioca::Runtime::Trackers::Mixin::Type,
1483
+ locations: T.nilable(T::Array[::Thread::Backtrace::Location])
1484
+ ).void
1485
+ end
1486
+ def register(constant, mod, mixin_type, locations); end
1487
+ end
1488
+ end
1489
+
1490
+ class Tapioca::Runtime::Trackers::Mixin::Type < ::T::Enum
1491
+ enums do
1492
+ Prepend = new
1493
+ Include = new
1494
+ Extend = new
1495
+ end
1496
+ end
1497
+
1498
+ module Tapioca::Runtime::Trackers::RequiredAncestor
1499
+ class << self
1500
+ sig { params(requiring: ::T::Helpers, block: T.proc.returns(::Module)).void }
1501
+ def register(requiring, block); end
1502
+
1503
+ sig { params(mod: ::Module).returns(T::Array[T.proc.returns(::Module)]) }
1504
+ def required_ancestors_blocks_by(mod); end
1505
+
1506
+ sig { params(mod: ::Module).returns(T::Array[T.nilable(::Module)]) }
1507
+ def required_ancestors_by(mod); end
1508
+ end
1509
+ end
1510
+
1511
+ Tapioca::SORBET_CONFIG_FILE = T.let(T.unsafe(nil), String)
1512
+ Tapioca::SORBET_DIR = T.let(T.unsafe(nil), String)
1513
+
1514
+ module Tapioca::ShimsHelper
1515
+ requires_ancestor { Thor::Shell }
1516
+
1517
+ sig { params(index: ::RBI::Index, shim_rbi_dir: ::String).returns(T::Hash[::String, T::Array[::RBI::Node]]) }
1518
+ def duplicated_nodes_from_index(index, shim_rbi_dir); end
1519
+
1520
+ sig { params(index: ::RBI::Index, kind: ::String, dir: ::String).void }
1521
+ def index_rbis(index, kind, dir); end
1522
+
1523
+ private
1524
+
1525
+ sig { params(nodes: T::Array[::RBI::Node]).returns(T::Array[T.any(::RBI::Attr, ::RBI::Method)]) }
1526
+ def extract_methods_and_attrs(nodes); end
1527
+
1528
+ sig do
1529
+ params(
1530
+ nodes: T::Array[T.any(::RBI::Attr, ::RBI::Method)]
1531
+ ).returns(T::Array[T.any(::RBI::Attr, ::RBI::Method)])
1532
+ end
1533
+ def extract_nodes_with_sigs(nodes); end
1534
+
1535
+ sig { params(nodes: T::Array[::RBI::Node], shim_rbi_dir: ::String).returns(T::Array[::RBI::Node]) }
1536
+ def extract_shims(nodes, shim_rbi_dir); end
1537
+
1538
+ sig { params(nodes: T::Array[::RBI::Node], shim_rbi_dir: ::String).returns(T::Boolean) }
1539
+ def shims_have_duplicates?(nodes, shim_rbi_dir); end
1540
+ end
1541
+
1542
+ module Tapioca::SignaturesHelper
1543
+ sig { params(sig_string: ::String).returns(::String) }
1544
+ def sanitize_signature_types(sig_string); end
1545
+ end
1546
+
1547
+ module Tapioca::SorbetHelper
1548
+ sig { params(sorbet_args: ::String).returns(::Tapioca::SorbetHelper::CmdResult) }
1549
+ def sorbet(*sorbet_args); end
1550
+
1551
+ sig { returns(::String) }
1552
+ def sorbet_path; end
1553
+
1554
+ sig { params(feature: ::Symbol, version: T.nilable(::Gem::Version)).returns(T::Boolean) }
1555
+ def sorbet_supports?(feature, version: T.unsafe(nil)); end
1556
+ end
1557
+
1558
+ class Tapioca::SorbetHelper::CmdResult < ::T::Struct
1559
+ const :out, ::String
1560
+ const :err, ::String
1561
+ const :status, T::Boolean
1562
+
1563
+ class << self
1564
+ def inherited(s); end
1565
+ end
1566
+ end
1567
+
1568
+ Tapioca::SorbetHelper::FEATURE_REQUIREMENTS = T.let(T.unsafe(nil), Hash)
1569
+ Tapioca::SorbetHelper::SORBET_BIN = T.let(T.unsafe(nil), Pathname)
1570
+ Tapioca::SorbetHelper::SORBET_EXE_PATH_ENV_VAR = T.let(T.unsafe(nil), String)
1571
+ Tapioca::SorbetHelper::SORBET_GEM_SPEC = T.let(T.unsafe(nil), Gem::Specification)
1572
+ module Tapioca::Static; end
1573
+
1574
+ class Tapioca::Static::RequiresCompiler
1575
+ sig { params(sorbet_path: ::String).void }
1576
+ def initialize(sorbet_path); end
1577
+
1578
+ sig { returns(::String) }
1579
+ def compile; end
1580
+
1581
+ private
1582
+
1583
+ sig { params(config: ::Spoom::Sorbet::Config).returns(T::Array[::String]) }
1584
+ def collect_files(config); end
1585
+
1586
+ sig { params(file_path: ::String).returns(T::Enumerable[::String]) }
1587
+ def collect_requires(file_path); end
1588
+
1589
+ sig { params(config: ::Spoom::Sorbet::Config, file_path: ::Pathname).returns(T::Boolean) }
1590
+ def file_ignored_by_sorbet?(config, file_path); end
1591
+
1592
+ sig { params(path: ::Pathname).returns(T::Array[::String]) }
1593
+ def path_parts(path); end
1594
+ end
1595
+
1596
+ module Tapioca::Static::SymbolLoader
1597
+ extend ::Tapioca::SorbetHelper
1598
+ extend ::Tapioca::Runtime::Reflection
1599
+
1600
+ class << self
1601
+ sig { returns(T::Set[::String]) }
1602
+ def engine_symbols; end
1603
+
1604
+ sig { params(gem: ::Tapioca::Gemfile::GemSpec).returns(T::Set[::String]) }
1605
+ def gem_symbols(gem); end
1606
+
1607
+ sig { returns(T::Set[::String]) }
1608
+ def payload_symbols; end
1609
+
1610
+ private
1611
+
1612
+ sig { returns(T::Set[::String]) }
1613
+ def load_engine_symbols; end
1614
+
1615
+ sig { params(input: ::String, table_type: ::String).returns(::String) }
1616
+ def symbol_table_json_from(input, table_type: T.unsafe(nil)); end
1617
+
1618
+ sig { params(paths: T::Array[::Pathname]).returns(T::Set[::String]) }
1619
+ def symbols_from_paths(paths); end
1620
+ end
1621
+ end
1622
+
1623
+ class Tapioca::Static::SymbolTableParser
1624
+ sig { void }
1625
+ def initialize; end
1626
+
1627
+ sig { params(name: ::String).returns(::String) }
1628
+ def fully_qualified_name(name); end
1629
+
1630
+ sig { params(object: T::Hash[::String, T.untyped]).void }
1631
+ def parse_object(object); end
1632
+
1633
+ sig { returns(T::Set[::String]) }
1634
+ def symbols; end
1635
+
1636
+ class << self
1637
+ sig { params(json_string: ::String).returns(T::Set[::String]) }
1638
+ def parse_json(json_string); end
1639
+ end
1640
+ end
1641
+
1642
+ Tapioca::TAPIOCA_CONFIG_FILE = T.let(T.unsafe(nil), String)
1643
+ Tapioca::TAPIOCA_DIR = T.let(T.unsafe(nil), String)
1644
+
1645
+ class Tapioca::TypeVariable < ::T::Types::TypeVariable
1646
+ def initialize(name, variance); end
1647
+
1648
+ def name; end
1649
+ end
1650
+
1651
+ module Tapioca::TypeVariableHelper
1652
+ extend ::Tapioca::SorbetHelper
1653
+
1654
+ class << self
1655
+ sig do
1656
+ params(
1657
+ type: ::String,
1658
+ variance: ::Symbol,
1659
+ fixed: T.nilable(::String),
1660
+ upper: T.nilable(::String),
1661
+ lower: T.nilable(::String)
1662
+ ).returns(::String)
1663
+ end
1664
+ def serialize_type_variable(type, variance, fixed, upper, lower); end
1665
+ end
1666
+ end
1667
+
1668
+ class Tapioca::TypeVariableModule < ::Module
1669
+ sig do
1670
+ params(
1671
+ context: ::Module,
1672
+ type: ::Tapioca::TypeVariableModule::Type,
1673
+ variance: ::Symbol,
1674
+ fixed: T.untyped,
1675
+ lower: T.untyped,
1676
+ upper: T.untyped,
1677
+ bounds_proc: T.nilable(T.proc.returns(T::Hash[::Symbol, T.untyped]))
1678
+ ).void
1679
+ end
1680
+ def initialize(context, type, variance, fixed, lower, upper, bounds_proc); end
1681
+
1682
+ sig { returns(::Tapioca::TypeVariable) }
1683
+ def coerce_to_type_variable; end
1684
+
1685
+ sig { returns(T.nilable(::String)) }
1686
+ def name; end
1687
+
1688
+ sig { returns(::String) }
1689
+ def serialize; end
1690
+
1691
+ private
1692
+
1693
+ sig do
1694
+ params(
1695
+ fixed: T.untyped,
1696
+ lower: T.untyped,
1697
+ upper: T.untyped
1698
+ ).returns(T.proc.returns(T::Hash[::Symbol, T.untyped]))
1699
+ end
1700
+ def build_bounds_proc(fixed, lower, upper); end
1701
+
1702
+ sig do
1703
+ type_parameters(:Result)
1704
+ .params(
1705
+ block: T.proc.returns(T.type_parameter(:Result))
1706
+ ).returns(T.type_parameter(:Result))
1707
+ end
1708
+ def with_bound_name_pre_3_0(&block); end
1709
+ end
1710
+
1711
+ class Tapioca::TypeVariableModule::Type < ::T::Enum
1712
+ enums do
1713
+ Member = new
1714
+ Template = new
1715
+ end
1716
+ end
1717
+
1718
+ Tapioca::VERSION = T.let(T.unsafe(nil), String)