bungie_sdk 0.1.1

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