packwerk 3.2.3 → 3.3.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 (124) hide show
  1. checksums.yaml +4 -4
  2. data/exe/packwerk +0 -4
  3. data/lib/packwerk/application_validator.rb +11 -10
  4. data/lib/packwerk/association_inspector.rb +21 -32
  5. data/lib/packwerk/cache.rb +43 -36
  6. data/lib/packwerk/checker.rb +24 -26
  7. data/lib/packwerk/cli.rb +13 -20
  8. data/lib/packwerk/commands/base_command.rb +20 -26
  9. data/lib/packwerk/commands/check_command.rb +8 -8
  10. data/lib/packwerk/commands/help_command.rb +3 -4
  11. data/lib/packwerk/commands/init_command.rb +2 -3
  12. data/lib/packwerk/commands/lazy_loaded_entry.rb +5 -7
  13. data/lib/packwerk/commands/update_todo_command.rb +3 -3
  14. data/lib/packwerk/commands/uses_parse_run.rb +20 -26
  15. data/lib/packwerk/commands/validate_command.rb +6 -7
  16. data/lib/packwerk/commands/version_command.rb +2 -3
  17. data/lib/packwerk/commands.rb +5 -8
  18. data/lib/packwerk/configuration.rb +29 -43
  19. data/lib/packwerk/const_node_inspector.rb +11 -15
  20. data/lib/packwerk/constant_context.rb +0 -2
  21. data/lib/packwerk/constant_discovery.rb +3 -16
  22. data/lib/packwerk/constant_name_inspector.rb +4 -11
  23. data/lib/packwerk/extension_loader.rb +1 -2
  24. data/lib/packwerk/file_processor.rb +20 -25
  25. data/lib/packwerk/files_for_processing.rb +13 -29
  26. data/lib/packwerk/formatters/default_offenses_formatter.rb +14 -12
  27. data/lib/packwerk/formatters/progress_formatter.rb +10 -12
  28. data/lib/packwerk/generators/configuration_file.rb +5 -9
  29. data/lib/packwerk/generators/root_package.rb +3 -7
  30. data/lib/packwerk/graph.rb +1 -7
  31. data/lib/packwerk/node_helpers.rb +32 -38
  32. data/lib/packwerk/node_processor.rb +2 -14
  33. data/lib/packwerk/node_processor_factory.rb +13 -7
  34. data/lib/packwerk/node_visitor.rb +2 -10
  35. data/lib/packwerk/offense.rb +6 -12
  36. data/lib/packwerk/offense_collection.rb +22 -35
  37. data/lib/packwerk/offenses_formatter.rb +27 -34
  38. data/lib/packwerk/output_style.rb +10 -11
  39. data/lib/packwerk/output_styles/coloured.rb +6 -4
  40. data/lib/packwerk/output_styles/plain.rb +6 -4
  41. data/lib/packwerk/package.rb +15 -16
  42. data/lib/packwerk/package_set.rb +15 -25
  43. data/lib/packwerk/package_todo.rb +21 -30
  44. data/lib/packwerk/parse_run.rb +10 -37
  45. data/lib/packwerk/parsed_constant_definitions.rb +10 -24
  46. data/lib/packwerk/parsers/erb.rb +11 -22
  47. data/lib/packwerk/parsers/factory.rb +9 -9
  48. data/lib/packwerk/parsers/parser_interface.rb +5 -10
  49. data/lib/packwerk/parsers/ruby.rb +9 -14
  50. data/lib/packwerk/parsers.rb +2 -4
  51. data/lib/packwerk/rails_load_paths.rb +6 -11
  52. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +10 -15
  53. data/lib/packwerk/reference_checking/reference_checker.rb +2 -8
  54. data/lib/packwerk/reference_extractor.rb +22 -55
  55. data/lib/packwerk/reference_offense.rb +5 -15
  56. data/lib/packwerk/run_context.rb +28 -39
  57. data/lib/packwerk/spring_command.rb +4 -7
  58. data/lib/packwerk/validator/result.rb +12 -5
  59. data/lib/packwerk/validator.rb +23 -33
  60. data/lib/packwerk/validators/dependency_validator.rb +9 -10
  61. data/lib/packwerk/version.rb +1 -1
  62. data/lib/packwerk.rb +0 -1
  63. metadata +15 -76
  64. data/lib/packwerk/disable_sorbet.rb +0 -41
  65. data/sorbet/config +0 -4
  66. data/sorbet/rbi/gems/actionpack@7.0.8.7.rbi +0 -19338
  67. data/sorbet/rbi/gems/actionview@7.0.8.7.rbi +0 -15492
  68. data/sorbet/rbi/gems/activesupport@7.0.8.7.rbi +0 -18283
  69. data/sorbet/rbi/gems/ast@2.4.2.rbi +0 -584
  70. data/sorbet/rbi/gems/better_html@2.1.1.rbi +0 -529
  71. data/sorbet/rbi/gems/builder@3.3.0.rbi +0 -8
  72. data/sorbet/rbi/gems/byebug@11.1.3.rbi +0 -36
  73. data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +0 -11656
  74. data/sorbet/rbi/gems/constant_resolver@0.3.0.rbi +0 -99
  75. data/sorbet/rbi/gems/crass@1.0.6.rbi +0 -622
  76. data/sorbet/rbi/gems/erubi@1.13.1.rbi +0 -154
  77. data/sorbet/rbi/gems/i18n@1.14.7.rbi +0 -2358
  78. data/sorbet/rbi/gems/json@2.7.2.rbi +0 -1561
  79. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +0 -14237
  80. data/sorbet/rbi/gems/loofah@2.24.0.rbi +0 -1104
  81. data/sorbet/rbi/gems/m@1.6.0.rbi +0 -257
  82. data/sorbet/rbi/gems/method_source@1.1.0.rbi +0 -303
  83. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +0 -98
  84. data/sorbet/rbi/gems/minitest@5.25.4.rbi +0 -2229
  85. data/sorbet/rbi/gems/mocha@2.5.0.rbi +0 -3961
  86. data/sorbet/rbi/gems/netrc@0.11.0.rbi +0 -158
  87. data/sorbet/rbi/gems/nokogiri@1.18.4.rbi +0 -8204
  88. data/sorbet/rbi/gems/parallel@1.25.1.rbi +0 -286
  89. data/sorbet/rbi/gems/parser@3.3.3.0.rbi +0 -7320
  90. data/sorbet/rbi/gems/prism@0.27.0.rbi +0 -36983
  91. data/sorbet/rbi/gems/racc@1.8.1.rbi +0 -161
  92. data/sorbet/rbi/gems/rack-test@2.2.0.rbi +0 -736
  93. data/sorbet/rbi/gems/rack@2.2.13.rbi +0 -5633
  94. data/sorbet/rbi/gems/rails-dom-testing@2.2.0.rbi +0 -754
  95. data/sorbet/rbi/gems/rails-html-sanitizer@1.6.2.rbi +0 -764
  96. data/sorbet/rbi/gems/railties@7.0.8.7.rbi +0 -3517
  97. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +0 -402
  98. data/sorbet/rbi/gems/rake@13.0.6.rbi +0 -3039
  99. data/sorbet/rbi/gems/rbi@0.1.12.rbi +0 -3071
  100. data/sorbet/rbi/gems/regexp_parser@2.9.2.rbi +0 -3771
  101. data/sorbet/rbi/gems/rexml@3.3.9.rbi +0 -4857
  102. data/sorbet/rbi/gems/rubocop-ast@1.31.3.rbi +0 -7089
  103. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +0 -2967
  104. data/sorbet/rbi/gems/rubocop-shopify@2.9.0.rbi +0 -8
  105. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +0 -975
  106. data/sorbet/rbi/gems/rubocop@1.64.1.rbi +0 -58089
  107. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +0 -1317
  108. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +0 -8
  109. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +0 -474
  110. data/sorbet/rbi/gems/spoom@1.3.2.rbi +0 -4420
  111. data/sorbet/rbi/gems/spring@4.0.0.rbi +0 -411
  112. data/sorbet/rbi/gems/tapioca@0.13.3.rbi +0 -3524
  113. data/sorbet/rbi/gems/thor@1.3.1.rbi +0 -4351
  114. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +0 -5917
  115. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -65
  116. data/sorbet/rbi/gems/yard-sorbet@0.8.1.rbi +0 -428
  117. data/sorbet/rbi/gems/yard@0.9.36.rbi +0 -18333
  118. data/sorbet/rbi/gems/zeitwerk@2.6.4.rbi +0 -934
  119. data/sorbet/rbi/shims/minitest/test.rb +0 -8
  120. data/sorbet/rbi/shims/packwerk/reference.rbi +0 -33
  121. data/sorbet/rbi/shims/packwerk/unresolved_reference.rbi +0 -33
  122. data/sorbet/rbi/shims/parser.rbi +0 -13
  123. data/sorbet/rbi/shims/psych.rbi +0 -5
  124. data/sorbet/tapioca/require.rb +0 -25
@@ -1,3524 +0,0 @@
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 Bundler::Dependency < ::Gem::Dependency
8
- include ::Tapioca::BundlerExt::AutoRequireHook
9
- end
10
-
11
- # source://tapioca//lib/tapioca/helpers/git_attributes.rb#4
12
- class GitAttributes
13
- class << self
14
- # source://tapioca//lib/tapioca/helpers/git_attributes.rb#9
15
- sig { params(path: ::Pathname).void }
16
- def create_generated_attribute_file(path); end
17
-
18
- # source://tapioca//lib/tapioca/helpers/git_attributes.rb#16
19
- sig { params(path: ::Pathname).void }
20
- def create_vendored_attribute_file(path); end
21
-
22
- private
23
-
24
- # source://tapioca//lib/tapioca/helpers/git_attributes.rb#25
25
- sig { params(path: ::Pathname, content: ::String).void }
26
- def create_gitattributes_file(path, content); end
27
- end
28
- end
29
-
30
- # We need to do the alias-method-chain dance since Bootsnap does the same,
31
- # and prepended modules and alias-method-chain don't play well together.
32
- #
33
- # So, why does Bootsnap do alias-method-chain and not prepend? Glad you asked!
34
- # That's because RubyGems does alias-method-chain for Kernel#require and such,
35
- # so, if Bootsnap were to do prepend, it might end up breaking RubyGems.
36
- #
37
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#68
38
- class Module
39
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#101
40
- def append_features(constant); end
41
-
42
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#71
43
- def autoload(const_name, path); end
44
-
45
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#111
46
- def extend_object(obj); end
47
-
48
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#91
49
- def prepend_features(constant); end
50
- end
51
-
52
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#4
53
- module RBI; end
54
-
55
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#5
56
- class RBI::Tree < ::RBI::NodeWithComments
57
- # source://rbi/0.1.12/lib/rbi/model.rb#119
58
- sig do
59
- params(
60
- loc: T.nilable(::RBI::Loc),
61
- comments: T::Array[::RBI::Comment],
62
- block: T.nilable(T.proc.params(node: ::RBI::Tree).void)
63
- ).void
64
- end
65
- def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
66
-
67
- # source://rbi/0.1.12/lib/rbi/model.rb#126
68
- sig { params(node: ::RBI::Node).void }
69
- def <<(node); end
70
-
71
- # source://rbi/0.1.12/lib/rbi/printer.rb#226
72
- sig { override.params(v: ::RBI::Printer).void }
73
- def accept_printer(v); end
74
-
75
- # source://rbi/0.1.12/lib/rbi/rewriters/add_sig_templates.rb#66
76
- sig { params(with_todo_comment: T::Boolean).void }
77
- def add_sig_templates!(with_todo_comment: T.unsafe(nil)); end
78
-
79
- # source://rbi/0.1.12/lib/rbi/rewriters/annotate.rb#49
80
- sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void }
81
- def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end
82
-
83
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#38
84
- sig do
85
- params(
86
- name: ::String,
87
- superclass_name: T.nilable(::String),
88
- block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)
89
- ).returns(::RBI::Scope)
90
- end
91
- def create_class(name, superclass_name: T.unsafe(nil), &block); end
92
-
93
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#45
94
- sig { params(name: ::String, value: ::String).void }
95
- def create_constant(name, value:); end
96
-
97
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#55
98
- sig { params(name: ::String).void }
99
- def create_extend(name); end
100
-
101
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#50
102
- sig { params(name: ::String).void }
103
- def create_include(name); end
104
-
105
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#89
106
- sig do
107
- params(
108
- name: ::String,
109
- parameters: T::Array[::RBI::TypedParam],
110
- return_type: ::String,
111
- class_method: T::Boolean,
112
- visibility: ::RBI::Visibility,
113
- comments: T::Array[::RBI::Comment]
114
- ).void
115
- end
116
- def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil), comments: T.unsafe(nil)); end
117
-
118
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#113
119
- sig do
120
- params(
121
- name: ::String,
122
- sigs: T::Array[::RBI::Sig],
123
- parameters: T::Array[::RBI::Param],
124
- class_method: T::Boolean,
125
- visibility: ::RBI::Visibility,
126
- comments: T::Array[::RBI::Comment]
127
- ).void
128
- end
129
- def create_method_with_sigs(name, sigs:, parameters: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil), comments: T.unsafe(nil)); end
130
-
131
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#60
132
- sig { params(name: ::String).void }
133
- def create_mixes_in_class_methods(name); end
134
-
135
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#25
136
- sig { params(name: ::String, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
137
- def create_module(name, &block); end
138
-
139
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#9
140
- sig { params(constant: ::Module, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
141
- def create_path(constant, &block); end
142
-
143
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#134
144
- sig { params(parameters: T::Hash[T.any(::String, ::Symbol), ::String], return_type: ::String).returns(::RBI::Sig) }
145
- def create_sig(parameters:, return_type: T.unsafe(nil)); end
146
-
147
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#74
148
- sig do
149
- params(
150
- name: ::String,
151
- type: ::String,
152
- variance: ::Symbol,
153
- fixed: T.nilable(::String),
154
- upper: T.nilable(::String),
155
- lower: T.nilable(::String)
156
- ).void
157
- end
158
- def create_type_variable(name, type:, variance: T.unsafe(nil), fixed: T.unsafe(nil), upper: T.unsafe(nil), lower: T.unsafe(nil)); end
159
-
160
- # source://rbi/0.1.12/lib/rbi/rewriters/deannotate.rb#41
161
- sig { params(annotation: ::String).void }
162
- def deannotate!(annotation); end
163
-
164
- # source://rbi/0.1.12/lib/rbi/model.rb#132
165
- sig { returns(T::Boolean) }
166
- def empty?; end
167
-
168
- # source://rbi/0.1.12/lib/rbi/rewriters/filter_versions.rb#118
169
- sig { params(version: ::Gem::Version).void }
170
- def filter_versions!(version); end
171
-
172
- # source://rbi/0.1.12/lib/rbi/rewriters/group_nodes.rb#38
173
- sig { void }
174
- def group_nodes!; end
175
-
176
- # source://rbi/0.1.12/lib/rbi/index.rb#68
177
- sig { returns(::RBI::Index) }
178
- def index; end
179
-
180
- # source://rbi/0.1.12/lib/rbi/rewriters/merge_trees.rb#324
181
- sig do
182
- params(
183
- other: ::RBI::Tree,
184
- left_name: ::String,
185
- right_name: ::String,
186
- keep: ::RBI::Rewriters::Merge::Keep
187
- ).returns(::RBI::MergeTree)
188
- end
189
- def merge(other, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
190
-
191
- # source://rbi/0.1.12/lib/rbi/rewriters/nest_non_public_methods.rb#46
192
- sig { void }
193
- def nest_non_public_methods!; end
194
-
195
- # source://rbi/0.1.12/lib/rbi/rewriters/nest_singleton_methods.rb#36
196
- sig { void }
197
- def nest_singleton_methods!; end
198
-
199
- # source://rbi/0.1.12/lib/rbi/model.rb#110
200
- sig { returns(T::Array[::RBI::Node]) }
201
- def nodes; end
202
-
203
- # source://rbi/0.1.12/lib/rbi/printer.rb#233
204
- sig { override.returns(T::Boolean) }
205
- def oneline?; end
206
-
207
- # source://rbi/0.1.12/lib/rbi/rewriters/sort_nodes.rb#119
208
- sig { void }
209
- def sort_nodes!; end
210
-
211
- private
212
-
213
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#149
214
- sig { params(node: ::RBI::Node).returns(::RBI::Node) }
215
- def create_node(node); end
216
-
217
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#144
218
- sig { returns(T::Hash[::String, ::RBI::Node]) }
219
- def nodes_cache; end
220
- end
221
-
222
- # source://tapioca//lib/tapioca/rbi_ext/model.rb#159
223
- class RBI::TypedParam < ::T::Struct
224
- const :param, ::RBI::Param
225
- const :type, ::String
226
-
227
- class << self
228
- # source://sorbet-runtime/0.5.11367/lib/types/struct.rb#13
229
- def inherited(s); end
230
- end
231
- end
232
-
233
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#5
234
- module T::Generic
235
- include ::Kernel
236
-
237
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#13
238
- def [](*types); end
239
-
240
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#47
241
- def has_attached_class!(variance = T.unsafe(nil), &bounds_proc); end
242
-
243
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#21
244
- def type_member(variance = T.unsafe(nil), &bounds_proc); end
245
-
246
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#34
247
- def type_template(variance = T.unsafe(nil), &bounds_proc); end
248
- end
249
-
250
- # This module intercepts calls to generic type instantiations and type variable definitions.
251
- # Tapioca stores the data from those calls in a `GenericTypeRegistry` which can then be used
252
- # to look up the original call details when we are trying to do code generation.
253
- #
254
- # We are interested in the data of the `[]`, `type_member` and `type_template` calls which
255
- # are all needed to generate good generic information at runtime.
256
- #
257
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#12
258
- module T::Generic::TypeStoragePatch
259
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#13
260
- def [](*types); end
261
-
262
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#47
263
- def has_attached_class!(variance = T.unsafe(nil), &bounds_proc); end
264
-
265
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#21
266
- def type_member(variance = T.unsafe(nil), &bounds_proc); end
267
-
268
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#34
269
- def type_template(variance = T.unsafe(nil), &bounds_proc); end
270
- end
271
-
272
- # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#28
273
- module T::Private::Methods
274
- class << self
275
- # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#30
276
- def finalize_proc(decl); end
277
- end
278
- end
279
-
280
- class T::Private::Methods::Declaration < ::Struct
281
- def bind; end
282
- def bind=(_); end
283
- def checked; end
284
- def checked=(_); end
285
- def finalized; end
286
- def finalized=(_); end
287
- def mod; end
288
- def mod=(_); end
289
- def mode; end
290
- def mode=(_); end
291
- def on_failure; end
292
- def on_failure=(_); end
293
- def override_allow_incompatible; end
294
- def override_allow_incompatible=(_); end
295
- def params; end
296
- def params=(_); end
297
- def raw; end
298
- def raw=(_); end
299
- def returns; end
300
- def returns=(_); end
301
- def type_parameters; end
302
- def type_parameters=(_); end
303
-
304
- class << self
305
- def [](*_arg0); end
306
- def inspect; end
307
- def keyword_init?; end
308
- def members; end
309
- def new(*_arg0); end
310
- end
311
- end
312
-
313
- class T::Private::Methods::DeclarationBlock < ::Struct
314
- def blk; end
315
- def blk=(_); end
316
- def final; end
317
- def final=(_); end
318
- def loc; end
319
- def loc=(_); end
320
- def mod; end
321
- def mod=(_); end
322
- def raw; end
323
- def raw=(_); end
324
-
325
- class << self
326
- def [](*_arg0); end
327
- def inspect; end
328
- def keyword_init?; end
329
- def members; end
330
- def new(*_arg0); end
331
- end
332
- end
333
-
334
- # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#29
335
- module T::Private::Methods::ProcBindPatch
336
- # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#30
337
- def finalize_proc(decl); end
338
- end
339
-
340
- class T::Types::Proc < ::T::Types::Base; end
341
-
342
- # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#6
343
- module T::Types::ProcBindPatch
344
- # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#7
345
- def initialize(arg_types, returns, bind = T.unsafe(nil)); end
346
-
347
- # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#15
348
- def name; end
349
- end
350
-
351
- # source://tapioca//lib/tapioca/sorbet_ext/name_patch.rb#6
352
- class T::Types::Simple < ::T::Types::Base
353
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#70
354
- def name; end
355
- end
356
-
357
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#65
358
- module T::Types::Simple::GenericPatch
359
- # This method intercepts calls to the `name` method for simple types, so that
360
- # it can ask the name to the type if the type is generic, since, by this point,
361
- # we've created a clone of that type with the `name` method returning the
362
- # appropriate name for that specific concrete type.
363
- #
364
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#70
365
- def name; end
366
- end
367
-
368
- # source://tapioca//lib/tapioca/sorbet_ext/name_patch.rb#7
369
- module T::Types::Simple::NamePatch
370
- # source://tapioca//lib/tapioca/sorbet_ext/name_patch.rb#10
371
- def name; end
372
-
373
- # source://tapioca//lib/tapioca/sorbet_ext/name_patch.rb#16
374
- def qualified_name_of(constant); end
375
- end
376
-
377
- # source://tapioca//lib/tapioca/sorbet_ext/name_patch.rb#8
378
- T::Types::Simple::NamePatch::NAME_METHOD = T.let(T.unsafe(nil), UnboundMethod)
379
-
380
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#87
381
- module T::Utils::Private
382
- class << self
383
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#89
384
- def coerce_and_check_module_types(val, check_val, check_module_type); end
385
- end
386
- end
387
-
388
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#88
389
- module T::Utils::Private::PrivateCoercePatch
390
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#89
391
- def coerce_and_check_module_types(val, check_val, check_module_type); end
392
- end
393
-
394
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#4
395
- module Tapioca
396
- class << self
397
- # source://tapioca//lib/tapioca.rb#19
398
- sig do
399
- type_parameters(:Result)
400
- .params(
401
- blk: T.proc.returns(T.type_parameter(:Result))
402
- ).returns(T.type_parameter(:Result))
403
- end
404
- def silence_warnings(&blk); end
405
- end
406
- end
407
-
408
- # source://tapioca//lib/tapioca.rb#37
409
- Tapioca::BINARY_FILE = T.let(T.unsafe(nil), String)
410
-
411
- # source://tapioca//lib/tapioca/bundler_ext/auto_require_hook.rb#5
412
- module Tapioca::BundlerExt; end
413
-
414
- # This is a module that gets prepended to `Bundler::Dependency` and
415
- # makes sure even gems marked as `require: false` are required during
416
- # `Bundler.require`.
417
- #
418
- # source://tapioca//lib/tapioca/bundler_ext/auto_require_hook.rb#9
419
- module Tapioca::BundlerExt::AutoRequireHook
420
- requires_ancestor { Bundler::Dependency }
421
-
422
- # source://tapioca//lib/tapioca/bundler_ext/auto_require_hook.rb#46
423
- sig { returns(T.untyped) }
424
- def autorequire; end
425
-
426
- class << self
427
- # @return [Boolean]
428
- #
429
- # source://tapioca//lib/tapioca/bundler_ext/auto_require_hook.rb#26
430
- def enabled?; end
431
-
432
- # source://tapioca//lib/tapioca/bundler_ext/auto_require_hook.rb#22
433
- sig { params(name: T.untyped).returns(T::Boolean) }
434
- def excluded?(name); end
435
-
436
- # source://tapioca//lib/tapioca/bundler_ext/auto_require_hook.rb#36
437
- sig do
438
- type_parameters(:Result)
439
- .params(
440
- exclude: T::Array[::String],
441
- blk: T.proc.returns(T.type_parameter(:Result))
442
- ).returns(T.type_parameter(:Result))
443
- end
444
- def override_require_false(exclude:, &blk); end
445
- end
446
- end
447
-
448
- # source://tapioca//lib/tapioca.rb#60
449
- Tapioca::CENTRAL_REPO_ANNOTATIONS_DIR = T.let(T.unsafe(nil), String)
450
-
451
- # source://tapioca//lib/tapioca.rb#59
452
- Tapioca::CENTRAL_REPO_INDEX_PATH = T.let(T.unsafe(nil), String)
453
-
454
- # source://tapioca//lib/tapioca.rb#58
455
- Tapioca::CENTRAL_REPO_ROOT_URI = T.let(T.unsafe(nil), String)
456
-
457
- # source://tapioca//lib/tapioca/cli.rb#5
458
- class Tapioca::Cli < ::Thor
459
- include ::Tapioca::CliHelper
460
- include ::Tapioca::ConfigHelper
461
- include ::Tapioca::EnvHelper
462
-
463
- # source://tapioca//lib/tapioca/cli.rb#355
464
- def __print_version; end
465
-
466
- # source://tapioca//lib/tapioca/cli.rb#337
467
- def annotations; end
468
-
469
- # source://tapioca//lib/tapioca/cli.rb#309
470
- def check_shims; end
471
-
472
- # source://tapioca//lib/tapioca/cli.rb#46
473
- def configure; end
474
-
475
- # source://tapioca//lib/tapioca/cli.rb#138
476
- def dsl(*constant_or_paths); end
477
-
478
- # @raise [MalformattedArgumentError]
479
- #
480
- # source://tapioca//lib/tapioca/cli.rb#253
481
- def gem(*gems); end
482
-
483
- # source://tapioca//lib/tapioca/cli.rb#27
484
- def init; end
485
-
486
- # source://tapioca//lib/tapioca/cli.rb#57
487
- def require; end
488
-
489
- # source://tapioca//lib/tapioca/cli.rb#74
490
- def todo; end
491
-
492
- private
493
-
494
- # source://tapioca//lib/tapioca/cli.rb#369
495
- def print_init_next_steps; end
496
-
497
- class << self
498
- # source://tapioca//lib/tapioca/cli.rb#361
499
- def exit_on_failure?; end
500
- end
501
- end
502
-
503
- # source://tapioca//lib/tapioca/cli.rb#10
504
- Tapioca::Cli::FILE_HEADER_OPTION_DESC = T.let(T.unsafe(nil), String)
505
-
506
- # source://tapioca//lib/tapioca/helpers/cli_helper.rb#5
507
- module Tapioca::CliHelper
508
- requires_ancestor { Thor::Shell }
509
-
510
- # source://tapioca//lib/tapioca/helpers/cli_helper.rb#33
511
- sig { params(options: T::Hash[::Symbol, T.untyped]).returns(T.nilable(::String)) }
512
- def netrc_file(options); end
513
-
514
- # source://tapioca//lib/tapioca/helpers/cli_helper.rb#26
515
- sig { params(options: T::Hash[::Symbol, T.untyped]).returns(::Tapioca::RBIFormatter) }
516
- def rbi_formatter(options); end
517
-
518
- # source://tapioca//lib/tapioca/helpers/cli_helper.rb#12
519
- sig { params(message: ::String, color: T.any(::Symbol, T::Array[::Symbol])).void }
520
- def say_error(message = T.unsafe(nil), *color); end
521
- end
522
-
523
- # source://tapioca//lib/tapioca/commands.rb#5
524
- module Tapioca::Commands; end
525
-
526
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
527
- #
528
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#6
529
- class Tapioca::Commands::AbstractDsl < ::Tapioca::Commands::CommandWithoutTracker
530
- include ::Tapioca::SorbetHelper
531
- include ::Tapioca::RBIFilesHelper
532
-
533
- abstract!
534
-
535
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#31
536
- sig do
537
- params(
538
- requested_constants: T::Array[::String],
539
- requested_paths: T::Array[::Pathname],
540
- outpath: ::Pathname,
541
- only: T::Array[::String],
542
- exclude: T::Array[::String],
543
- file_header: T::Boolean,
544
- tapioca_path: ::String,
545
- quiet: T::Boolean,
546
- verbose: T::Boolean,
547
- number_of_workers: T.nilable(::Integer),
548
- auto_strictness: T::Boolean,
549
- gem_dir: ::String,
550
- rbi_formatter: ::Tapioca::RBIFormatter,
551
- app_root: ::String,
552
- halt_upon_load_error: T::Boolean
553
- ).void
554
- end
555
- def initialize(requested_constants:, requested_paths:, outpath:, only:, exclude:, file_header:, tapioca_path:, quiet: T.unsafe(nil), verbose: T.unsafe(nil), number_of_workers: T.unsafe(nil), auto_strictness: T.unsafe(nil), gem_dir: T.unsafe(nil), rbi_formatter: T.unsafe(nil), app_root: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
556
-
557
- private
558
-
559
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#94
560
- sig { returns(T::Array[::String]) }
561
- def all_requested_constants; end
562
-
563
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#285
564
- sig { params(cause: ::Symbol, files: T::Array[::String]).returns(::String) }
565
- def build_error_for_files(cause, files); end
566
-
567
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#209
568
- sig do
569
- params(
570
- constant_name: ::String,
571
- rbi: ::RBI::File,
572
- outpath: ::Pathname,
573
- quiet: T::Boolean
574
- ).returns(T.nilable(::Pathname))
575
- end
576
- def compile_dsl_rbi(constant_name, rbi, outpath: T.unsafe(nil), quiet: T.unsafe(nil)); end
577
-
578
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#146
579
- sig { params(constant_names: T::Array[::String], ignore_missing: T::Boolean).returns(T::Array[::Module]) }
580
- def constantize(constant_names, ignore_missing: T.unsafe(nil)); end
581
-
582
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#169
583
- sig { params(compiler_names: T::Array[::String]).returns(T::Array[T.class_of(Tapioca::Dsl::Compiler)]) }
584
- def constantize_compilers(compiler_names); end
585
-
586
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#345
587
- sig { returns(T::Array[::String]) }
588
- def constants_from_requested_paths; end
589
-
590
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#117
591
- sig { returns(::Tapioca::Dsl::Pipeline) }
592
- def create_pipeline; end
593
-
594
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#248
595
- sig { params(constant_name: ::String).returns(::Pathname) }
596
- def dsl_rbi_filename(constant_name); end
597
-
598
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#132
599
- sig { params(requested_constants: T::Array[::String], path: ::Pathname).returns(T::Set[::Pathname]) }
600
- def existing_rbi_filenames(requested_constants, path: T.unsafe(nil)); end
601
-
602
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#340
603
- sig { params(constant: ::String).returns(::String) }
604
- def generate_command_for(constant); end
605
-
606
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#70
607
- sig { params(outpath: ::Pathname, quiet: T::Boolean).returns(T::Set[::Pathname]) }
608
- def generate_dsl_rbi_files(outpath, quiet:); end
609
-
610
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#107
611
- sig { void }
612
- def load_application; end
613
-
614
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#227
615
- sig { params(dir: ::Pathname).void }
616
- def perform_dsl_verification(dir); end
617
-
618
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#102
619
- sig { returns(::Tapioca::Dsl::Pipeline) }
620
- def pipeline; end
621
-
622
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#236
623
- sig { params(files: T::Set[::Pathname]).void }
624
- def purge_stale_dsl_rbi_files(files); end
625
-
626
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#335
627
- sig { params(constant: ::String).returns(::String) }
628
- def rbi_filename_for(constant); end
629
-
630
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#316
631
- sig { params(path: ::Pathname).returns(T::Array[::Pathname]) }
632
- def rbi_files_in(path); end
633
-
634
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#294
635
- sig { params(diff: T::Hash[::String, ::Symbol], command: ::Symbol).void }
636
- def report_diff_and_exit_if_out_of_date(diff, command); end
637
-
638
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#189
639
- sig { params(name: ::String).returns(T.nilable(T.class_of(Tapioca::Dsl::Compiler))) }
640
- def resolve(name); end
641
-
642
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#323
643
- sig { params(class_name: ::String).returns(::String) }
644
- def underscore(class_name); end
645
-
646
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#253
647
- sig { params(tmp_dir: ::Pathname).returns(T::Hash[::String, ::Symbol]) }
648
- def verify_dsl_rbi(tmp_dir:); end
649
- end
650
-
651
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
652
- #
653
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#6
654
- class Tapioca::Commands::AbstractGem < ::Tapioca::Commands::Command
655
- include ::Tapioca::SorbetHelper
656
- include ::Tapioca::RBIFilesHelper
657
-
658
- abstract!
659
-
660
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#32
661
- sig do
662
- params(
663
- gem_names: T::Array[::String],
664
- exclude: T::Array[::String],
665
- include_dependencies: T::Boolean,
666
- prerequire: T.nilable(::String),
667
- postrequire: ::String,
668
- typed_overrides: T::Hash[::String, ::String],
669
- outpath: ::Pathname,
670
- file_header: T::Boolean,
671
- include_doc: T::Boolean,
672
- include_loc: T::Boolean,
673
- include_exported_rbis: T::Boolean,
674
- number_of_workers: T.nilable(::Integer),
675
- auto_strictness: T::Boolean,
676
- dsl_dir: ::String,
677
- rbi_formatter: ::Tapioca::RBIFormatter,
678
- halt_upon_load_error: T::Boolean
679
- ).void
680
- end
681
- def initialize(gem_names:, exclude:, include_dependencies:, prerequire:, postrequire:, typed_overrides:, outpath:, file_header:, include_doc:, include_loc:, include_exported_rbis:, number_of_workers: T.unsafe(nil), auto_strictness: T.unsafe(nil), dsl_dir: T.unsafe(nil), rbi_formatter: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
682
-
683
- private
684
-
685
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#223
686
- sig { returns(T::Array[::String]) }
687
- def added_rbis; end
688
-
689
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#284
690
- sig { params(cause: ::Symbol, files: T::Array[::String]).returns(::String) }
691
- def build_error_for_files(cause, files); end
692
-
693
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#110
694
- sig { params(gem: ::Tapioca::Gemfile::GemSpec).void }
695
- def compile_gem_rbi(gem); end
696
-
697
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#218
698
- sig { params(gem_name: ::String).returns(::Pathname) }
699
- def existing_rbi(gem_name); end
700
-
701
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#266
702
- sig { returns(T::Hash[::String, ::String]) }
703
- def existing_rbis; end
704
-
705
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#230
706
- sig { params(gem_name: ::String).returns(::Pathname) }
707
- def expected_rbi(gem_name); end
708
-
709
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#272
710
- sig { returns(T::Hash[::String, ::String]) }
711
- def expected_rbis; end
712
-
713
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#98
714
- sig do
715
- params(
716
- gem: ::Tapioca::Gemfile::GemSpec,
717
- dependencies: T::Array[::Tapioca::Gemfile::GemSpec]
718
- ).returns(T::Array[::Tapioca::Gemfile::GemSpec])
719
- end
720
- def gem_dependencies(gem, dependencies = T.unsafe(nil)); end
721
-
722
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#235
723
- sig { params(gem_name: ::String).returns(T::Boolean) }
724
- def gem_rbi_exists?(gem_name); end
725
-
726
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#279
727
- sig { params(gem_name: ::String, version: ::String).returns(::Pathname) }
728
- def gem_rbi_filename(gem_name, version); end
729
-
730
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#77
731
- sig { params(gem_names: T::Array[::String]).returns(T::Array[::Tapioca::Gemfile::GemSpec]) }
732
- def gems_to_generate(gem_names); end
733
-
734
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#289
735
- sig { params(gem: ::Tapioca::Gemfile::GemSpec, file: ::RBI::File).void }
736
- def merge_with_exported_rbi(gem, file); end
737
-
738
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#260
739
- sig { params(old_filename: ::Pathname, new_filename: ::Pathname).void }
740
- def move(old_filename, new_filename); end
741
-
742
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#170
743
- sig { void }
744
- def perform_additions; end
745
-
746
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#143
747
- sig { void }
748
- def perform_removals; end
749
-
750
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#213
751
- sig { returns(T::Array[::String]) }
752
- def removed_rbis; end
753
-
754
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#240
755
- sig { params(diff: T::Hash[::String, ::Symbol], command: ::Symbol).void }
756
- def report_diff_and_exit_if_out_of_date(diff, command); end
757
- end
758
-
759
- # source://tapioca//lib/tapioca/commands/annotations.rb#6
760
- class Tapioca::Commands::Annotations < ::Tapioca::Commands::CommandWithoutTracker
761
- # source://tapioca//lib/tapioca/commands/annotations.rb#18
762
- sig do
763
- params(
764
- central_repo_root_uris: T::Array[::String],
765
- auth: T.nilable(::String),
766
- netrc_file: T.nilable(::String),
767
- central_repo_index_path: ::String,
768
- typed_overrides: T::Hash[::String, ::String]
769
- ).void
770
- end
771
- def initialize(central_repo_root_uris:, auth: T.unsafe(nil), netrc_file: T.unsafe(nil), central_repo_index_path: T.unsafe(nil), typed_overrides: T.unsafe(nil)); end
772
-
773
- private
774
-
775
- # source://tapioca//lib/tapioca/commands/annotations.rb#193
776
- sig { params(name: ::String, content: ::String).returns(::String) }
777
- def add_header(name, content); end
778
-
779
- # source://tapioca//lib/tapioca/commands/annotations.rb#213
780
- sig { params(name: ::String, content: ::String).returns(::String) }
781
- def apply_typed_override(name, content); end
782
-
783
- # source://tapioca//lib/tapioca/commands/annotations.rb#39
784
- sig { override.void }
785
- def execute; end
786
-
787
- # source://tapioca//lib/tapioca/commands/annotations.rb#136
788
- sig { params(repo_uris: T::Array[::String], gem_name: ::String).void }
789
- def fetch_annotation(repo_uris, gem_name); end
790
-
791
- # source://tapioca//lib/tapioca/commands/annotations.rb#113
792
- sig { params(gem_names: T::Array[::String]).returns(T::Array[::String]) }
793
- def fetch_annotations(gem_names); end
794
-
795
- # source://tapioca//lib/tapioca/commands/annotations.rb#152
796
- sig { params(repo_uri: ::String, path: ::String).returns(T.nilable(::String)) }
797
- def fetch_file(repo_uri, path); end
798
-
799
- # source://tapioca//lib/tapioca/commands/annotations.rb#169
800
- sig { params(repo_uri: ::String, path: ::String).returns(T.nilable(::String)) }
801
- def fetch_http_file(repo_uri, path); end
802
-
803
- # source://tapioca//lib/tapioca/commands/annotations.rb#102
804
- sig { params(repo_uri: ::String, repo_number: T.nilable(::Integer)).returns(T.nilable(Tapioca::RepoIndex)) }
805
- def fetch_index(repo_uri, repo_number:); end
806
-
807
- # source://tapioca//lib/tapioca/commands/annotations.rb#81
808
- sig { returns(T::Hash[::String, Tapioca::RepoIndex]) }
809
- def fetch_indexes; end
810
-
811
- # source://tapioca//lib/tapioca/commands/annotations.rb#161
812
- sig { params(repo_uri: ::String, path: ::String).returns(T.nilable(::String)) }
813
- def fetch_local_file(repo_uri, path); end
814
-
815
- # source://tapioca//lib/tapioca/commands/annotations.rb#50
816
- sig { returns(T::Array[::String]) }
817
- def list_gemfile_gems; end
818
-
819
- # source://tapioca//lib/tapioca/commands/annotations.rb#225
820
- sig { params(gem_name: ::String, contents: T::Array[::String]).returns(T.nilable(::String)) }
821
- def merge_files(gem_name, contents); end
822
-
823
- # source://tapioca//lib/tapioca/commands/annotations.rb#60
824
- sig { params(project_gems: T::Array[::String]).void }
825
- def remove_expired_annotations(project_gems); end
826
-
827
- # source://tapioca//lib/tapioca/commands/annotations.rb#252
828
- sig { returns(T::Hash[::String, T.nilable(::String)]) }
829
- def repo_tokens; end
830
-
831
- # source://tapioca//lib/tapioca/commands/annotations.rb#280
832
- sig { params(path: ::String, repo_uri: ::String, message: ::String).void }
833
- def say_http_error(path, repo_uri, message:); end
834
-
835
- # source://tapioca//lib/tapioca/commands/annotations.rb#264
836
- sig { params(repo_uri: ::String).returns(T.nilable(::String)) }
837
- def token_for(repo_uri); end
838
- end
839
-
840
- # source://tapioca//lib/tapioca/commands/check_shims.rb#6
841
- class Tapioca::Commands::CheckShims < ::Tapioca::Commands::CommandWithoutTracker
842
- include ::Tapioca::SorbetHelper
843
- include ::Tapioca::RBIFilesHelper
844
-
845
- # source://tapioca//lib/tapioca/commands/check_shims.rb#22
846
- sig do
847
- params(
848
- gem_rbi_dir: ::String,
849
- dsl_rbi_dir: ::String,
850
- annotations_rbi_dir: ::String,
851
- shim_rbi_dir: ::String,
852
- todo_rbi_file: ::String,
853
- payload: T::Boolean,
854
- number_of_workers: T.nilable(::Integer)
855
- ).void
856
- end
857
- def initialize(gem_rbi_dir:, dsl_rbi_dir:, annotations_rbi_dir:, shim_rbi_dir:, todo_rbi_file:, payload:, number_of_workers:); end
858
-
859
- private
860
-
861
- # source://tapioca//lib/tapioca/commands/check_shims.rb#44
862
- sig { override.void }
863
- def execute; end
864
- end
865
-
866
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
867
- #
868
- # source://tapioca//lib/tapioca/commands/command.rb#6
869
- class Tapioca::Commands::Command
870
- include ::Thor::Base
871
- include ::Thor::Invocation
872
- include ::Thor::Shell
873
- include ::Tapioca::CliHelper
874
- extend ::Thor::Base::ClassMethods
875
- extend ::Thor::Invocation::ClassMethods
876
-
877
- abstract!
878
-
879
- # source://tapioca//lib/tapioca/commands/command.rb#20
880
- sig { void }
881
- def initialize; end
882
-
883
- # source://thor/1.3.1/lib/thor/base.rb#155
884
- sig { returns(::Thor::Actions) }
885
- def file_writer; end
886
-
887
- # source://tapioca//lib/tapioca/commands/command.rb#25
888
- sig(:final) { void }
889
- def run; end
890
-
891
- private
892
-
893
- # source://tapioca//lib/tapioca/commands/command.rb#53
894
- sig do
895
- params(
896
- path: T.any(::Pathname, ::String),
897
- content: ::String,
898
- force: T::Boolean,
899
- skip: T::Boolean,
900
- verbose: T::Boolean
901
- ).void
902
- end
903
- def create_file(path, content, force: T.unsafe(nil), skip: T.unsafe(nil), verbose: T.unsafe(nil)); end
904
-
905
- # source://tapioca//lib/tapioca/commands/command.rb#37
906
- sig { params(command: ::Symbol, args: ::String).returns(::String) }
907
- def default_command(command, *args); end
908
-
909
- # @abstract
910
- #
911
- # source://tapioca//lib/tapioca/commands/command.rb#34
912
- sig { abstract.void }
913
- def execute; end
914
-
915
- # source://tapioca//lib/tapioca/commands/command.rb#63
916
- sig { params(path: T.any(::Pathname, ::String), verbose: T::Boolean).void }
917
- def remove_file(path, verbose: T.unsafe(nil)); end
918
- end
919
-
920
- # source://tapioca//lib/tapioca/commands/command.rb#10
921
- class Tapioca::Commands::Command::FileWriter < ::Thor
922
- include ::Thor::Actions
923
- extend ::Thor::Actions::ClassMethods
924
- end
925
-
926
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
927
- #
928
- # source://tapioca//lib/tapioca/commands/command_without_tracker.rb#6
929
- class Tapioca::Commands::CommandWithoutTracker < ::Tapioca::Commands::Command
930
- abstract!
931
-
932
- # source://tapioca//lib/tapioca/commands/command_without_tracker.rb#12
933
- sig { void }
934
- def initialize; end
935
- end
936
-
937
- # source://tapioca//lib/tapioca/commands/configure.rb#6
938
- class Tapioca::Commands::Configure < ::Tapioca::Commands::CommandWithoutTracker
939
- # source://tapioca//lib/tapioca/commands/configure.rb#14
940
- sig { params(sorbet_config: ::String, tapioca_config: ::String, default_postrequire: ::String).void }
941
- def initialize(sorbet_config:, tapioca_config:, default_postrequire:); end
942
-
943
- private
944
-
945
- # source://tapioca//lib/tapioca/commands/configure.rb#79
946
- sig { void }
947
- def create_binstub; end
948
-
949
- # source://tapioca//lib/tapioca/commands/configure.rb#69
950
- sig { void }
951
- def create_post_require; end
952
-
953
- # source://tapioca//lib/tapioca/commands/configure.rb#40
954
- sig { void }
955
- def create_sorbet_config; end
956
-
957
- # source://tapioca//lib/tapioca/commands/configure.rb#50
958
- sig { void }
959
- def create_tapioca_config; end
960
-
961
- # source://tapioca//lib/tapioca/commands/configure.rb#32
962
- sig { override.void }
963
- def execute; end
964
-
965
- # source://tapioca//lib/tapioca/commands/configure.rb#92
966
- sig { returns(::Bundler::Installer) }
967
- def installer; end
968
-
969
- # source://tapioca//lib/tapioca/commands/configure.rb#97
970
- sig { returns(T.any(::Bundler::StubSpecification, ::Gem::Specification)) }
971
- def spec; end
972
- end
973
-
974
- # source://tapioca//lib/tapioca/commands/dsl_compiler_list.rb#6
975
- class Tapioca::Commands::DslCompilerList < ::Tapioca::Commands::AbstractDsl
976
- private
977
-
978
- # source://tapioca//lib/tapioca/commands/dsl_compiler_list.rb#10
979
- sig { override.void }
980
- def execute; end
981
- end
982
-
983
- # source://tapioca//lib/tapioca/commands/dsl_generate.rb#6
984
- class Tapioca::Commands::DslGenerate < ::Tapioca::Commands::AbstractDsl
985
- private
986
-
987
- # source://tapioca//lib/tapioca/commands/dsl_generate.rb#10
988
- sig { override.void }
989
- def execute; end
990
- end
991
-
992
- # source://tapioca//lib/tapioca/commands/dsl_verify.rb#6
993
- class Tapioca::Commands::DslVerify < ::Tapioca::Commands::AbstractDsl
994
- private
995
-
996
- # source://tapioca//lib/tapioca/commands/dsl_verify.rb#10
997
- sig { override.void }
998
- def execute; end
999
- end
1000
-
1001
- # source://tapioca//lib/tapioca/commands/gem_generate.rb#6
1002
- class Tapioca::Commands::GemGenerate < ::Tapioca::Commands::AbstractGem
1003
- private
1004
-
1005
- # source://tapioca//lib/tapioca/commands/gem_generate.rb#10
1006
- sig { override.void }
1007
- def execute; end
1008
- end
1009
-
1010
- # source://tapioca//lib/tapioca/commands/gem_sync.rb#6
1011
- class Tapioca::Commands::GemSync < ::Tapioca::Commands::AbstractGem
1012
- private
1013
-
1014
- # source://tapioca//lib/tapioca/commands/gem_sync.rb#10
1015
- sig { override.void }
1016
- def execute; end
1017
- end
1018
-
1019
- # source://tapioca//lib/tapioca/commands/gem_verify.rb#6
1020
- class Tapioca::Commands::GemVerify < ::Tapioca::Commands::AbstractGem
1021
- private
1022
-
1023
- # source://tapioca//lib/tapioca/commands/gem_verify.rb#10
1024
- sig { override.void }
1025
- def execute; end
1026
-
1027
- # source://tapioca//lib/tapioca/commands/gem_verify.rb#17
1028
- sig { void }
1029
- def perform_sync_verification; end
1030
- end
1031
-
1032
- # source://tapioca//lib/tapioca/commands/require.rb#6
1033
- class Tapioca::Commands::Require < ::Tapioca::Commands::CommandWithoutTracker
1034
- # source://tapioca//lib/tapioca/commands/require.rb#13
1035
- sig { params(requires_path: ::String, sorbet_config_path: ::String).void }
1036
- def initialize(requires_path:, sorbet_config_path:); end
1037
-
1038
- private
1039
-
1040
- # source://tapioca//lib/tapioca/commands/require.rb#23
1041
- sig { override.void }
1042
- def execute; end
1043
- end
1044
-
1045
- # source://tapioca//lib/tapioca/commands/todo.rb#6
1046
- class Tapioca::Commands::Todo < ::Tapioca::Commands::CommandWithoutTracker
1047
- include ::Tapioca::SorbetHelper
1048
-
1049
- # source://tapioca//lib/tapioca/commands/todo.rb#26
1050
- sig { params(todo_file: ::String, file_header: T::Boolean).void }
1051
- def initialize(todo_file:, file_header:); end
1052
-
1053
- # source://tapioca//lib/tapioca/commands/todo.rb#34
1054
- sig { void }
1055
- def run_with_deprecation; end
1056
-
1057
- private
1058
-
1059
- # source://tapioca//lib/tapioca/commands/todo.rb#44
1060
- sig { override.void }
1061
- def execute; end
1062
-
1063
- # source://tapioca//lib/tapioca/commands/todo.rb#68
1064
- sig { params(constants: T::Array[::String], command: ::String).returns(::RBI::File) }
1065
- def rbi(constants, command:); end
1066
-
1067
- # source://tapioca//lib/tapioca/commands/todo.rb#88
1068
- sig { returns(T::Array[::String]) }
1069
- def unresolved_constants; end
1070
- end
1071
-
1072
- # source://tapioca//lib/tapioca/commands/todo.rb#9
1073
- Tapioca::Commands::Todo::DEPRECATION_MESSAGE = T.let(T.unsafe(nil), String)
1074
-
1075
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#5
1076
- module Tapioca::ConfigHelper
1077
- requires_ancestor { Thor }
1078
-
1079
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#18
1080
- sig { params(args: T.untyped, local_options: T.untyped, config: T.untyped).void }
1081
- def initialize(args = T.unsafe(nil), local_options = T.unsafe(nil), config = T.unsafe(nil)); end
1082
-
1083
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#12
1084
- sig { returns(::String) }
1085
- def command_name; end
1086
-
1087
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#15
1088
- sig { returns(::Thor::CoreExt::HashWithIndifferentAccess) }
1089
- def defaults; end
1090
-
1091
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#34
1092
- sig { returns(::Thor::CoreExt::HashWithIndifferentAccess) }
1093
- def options; end
1094
-
1095
- private
1096
-
1097
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#151
1098
- sig { params(msg: ::String).returns(::Tapioca::ConfigHelper::ConfigError) }
1099
- def build_error(msg); end
1100
-
1101
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#176
1102
- sig { params(config_file: ::String, errors: T::Array[::Tapioca::ConfigHelper::ConfigError]).returns(::String) }
1103
- def build_error_message(config_file, errors); end
1104
-
1105
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#56
1106
- sig do
1107
- params(
1108
- options: ::Thor::CoreExt::HashWithIndifferentAccess
1109
- ).returns(::Thor::CoreExt::HashWithIndifferentAccess)
1110
- end
1111
- def config_options(options); end
1112
-
1113
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#46
1114
- sig { params(options: T::Hash[::Symbol, ::Thor::Option]).void }
1115
- def filter_defaults(options); end
1116
-
1117
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#194
1118
- sig do
1119
- params(
1120
- options: T.nilable(::Thor::CoreExt::HashWithIndifferentAccess)
1121
- ).returns(::Thor::CoreExt::HashWithIndifferentAccess)
1122
- end
1123
- def merge_options(*options); end
1124
-
1125
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#70
1126
- sig { params(config_file: ::String, config: T::Hash[T.untyped, T.untyped]).void }
1127
- def validate_config!(config_file, config); end
1128
-
1129
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#102
1130
- sig do
1131
- params(
1132
- command_options: T::Hash[::Symbol, ::Thor::Option],
1133
- config_key: ::String,
1134
- config_options: T::Hash[T.untyped, T.untyped]
1135
- ).returns(T::Array[::Tapioca::ConfigHelper::ConfigError])
1136
- end
1137
- def validate_config_options(command_options, config_key, config_options); end
1138
- end
1139
-
1140
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#146
1141
- class Tapioca::ConfigHelper::ConfigError < ::T::Struct
1142
- const :message_parts, T::Array[::Tapioca::ConfigHelper::ConfigErrorMessagePart]
1143
-
1144
- class << self
1145
- # source://sorbet-runtime/0.5.11367/lib/types/struct.rb#13
1146
- def inherited(s); end
1147
- end
1148
- end
1149
-
1150
- # source://tapioca//lib/tapioca/helpers/config_helper.rb#141
1151
- class Tapioca::ConfigHelper::ConfigErrorMessagePart < ::T::Struct
1152
- const :message, ::String
1153
- const :colors, T::Array[::Symbol]
1154
-
1155
- class << self
1156
- # source://sorbet-runtime/0.5.11367/lib/types/struct.rb#13
1157
- def inherited(s); end
1158
- end
1159
- end
1160
-
1161
- # source://tapioca//lib/tapioca.rb#44
1162
- Tapioca::DEFAULT_ANNOTATIONS_DIR = T.let(T.unsafe(nil), String)
1163
-
1164
- # source://tapioca//lib/tapioca.rb#40
1165
- Tapioca::DEFAULT_DSL_DIR = T.let(T.unsafe(nil), String)
1166
-
1167
- # source://tapioca//lib/tapioca.rb#56
1168
- Tapioca::DEFAULT_ENVIRONMENT = T.let(T.unsafe(nil), String)
1169
-
1170
- # source://tapioca//lib/tapioca.rb#41
1171
- Tapioca::DEFAULT_GEM_DIR = T.let(T.unsafe(nil), String)
1172
-
1173
- # source://tapioca//lib/tapioca.rb#46
1174
- Tapioca::DEFAULT_OVERRIDES = T.let(T.unsafe(nil), Hash)
1175
-
1176
- # source://tapioca//lib/tapioca.rb#38
1177
- Tapioca::DEFAULT_POSTREQUIRE_FILE = T.let(T.unsafe(nil), String)
1178
-
1179
- # source://tapioca//lib/tapioca.rb#39
1180
- Tapioca::DEFAULT_RBI_DIR = T.let(T.unsafe(nil), String)
1181
-
1182
- # source://tapioca//lib/tapioca/rbi_formatter.rb#29
1183
- Tapioca::DEFAULT_RBI_FORMATTER = T.let(T.unsafe(nil), Tapioca::RBIFormatter)
1184
-
1185
- # source://tapioca//lib/tapioca.rb#55
1186
- Tapioca::DEFAULT_RBI_MAX_LINE_LENGTH = T.let(T.unsafe(nil), Integer)
1187
-
1188
- # source://tapioca//lib/tapioca.rb#42
1189
- Tapioca::DEFAULT_SHIM_DIR = T.let(T.unsafe(nil), String)
1190
-
1191
- # source://tapioca//lib/tapioca.rb#43
1192
- Tapioca::DEFAULT_TODO_FILE = T.let(T.unsafe(nil), String)
1193
-
1194
- # source://tapioca//lib/tapioca/dsl/compilers.rb#5
1195
- module Tapioca::Dsl; end
1196
-
1197
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1198
- #
1199
- # source://tapioca//lib/tapioca/dsl/compiler.rb#6
1200
- class Tapioca::Dsl::Compiler
1201
- extend T::Generic
1202
- include ::Tapioca::SorbetHelper
1203
- include ::Tapioca::RBIHelper
1204
- include ::Tapioca::Runtime::AttachedClassOf
1205
- include ::Tapioca::Runtime::Reflection
1206
- extend ::Tapioca::Runtime::AttachedClassOf
1207
- extend ::Tapioca::Runtime::Reflection
1208
-
1209
- abstract!
1210
-
1211
- ConstantType = type_member { { upper: Module } }
1212
-
1213
- # source://tapioca//lib/tapioca/dsl/compiler.rb#64
1214
- sig { params(pipeline: ::Tapioca::Dsl::Pipeline, root: ::RBI::Tree, constant: ConstantType).void }
1215
- def initialize(pipeline, root, constant); end
1216
-
1217
- # NOTE: This should eventually accept an `Error` object or `Exception` rather than simply a `String`.
1218
- #
1219
- # source://tapioca//lib/tapioca/dsl/compiler.rb#81
1220
- sig { params(error: ::String).void }
1221
- def add_error(error); end
1222
-
1223
- # source://tapioca//lib/tapioca/dsl/compiler.rb#72
1224
- sig { params(compiler_name: ::String).returns(T::Boolean) }
1225
- def compiler_enabled?(compiler_name); end
1226
-
1227
- # source://tapioca//lib/tapioca/dsl/compiler.rb#20
1228
- sig { returns(ConstantType) }
1229
- def constant; end
1230
-
1231
- # @abstract
1232
- #
1233
- # source://tapioca//lib/tapioca/dsl/compiler.rb#77
1234
- sig { abstract.void }
1235
- def decorate; end
1236
-
1237
- # source://tapioca//lib/tapioca/dsl/compiler.rb#23
1238
- sig { returns(::RBI::Tree) }
1239
- def root; end
1240
-
1241
- private
1242
-
1243
- # source://tapioca//lib/tapioca/dsl/compiler.rb#130
1244
- sig { params(method_def: T.any(::Method, ::UnboundMethod)).returns(T::Array[::RBI::TypedParam]) }
1245
- def compile_method_parameters_to_rbi(method_def); end
1246
-
1247
- # source://tapioca//lib/tapioca/dsl/compiler.rb#166
1248
- sig { params(method_def: T.any(::Method, ::UnboundMethod)).returns(::String) }
1249
- def compile_method_return_type_to_rbi(method_def); end
1250
-
1251
- # source://tapioca//lib/tapioca/dsl/compiler.rb#120
1252
- sig { params(scope: ::RBI::Scope, method_def: T.any(::Method, ::UnboundMethod), class_method: T::Boolean).void }
1253
- def create_method_from_def(scope, method_def, class_method: T.unsafe(nil)); end
1254
-
1255
- # Get the types of each parameter from a method signature
1256
- #
1257
- # source://tapioca//lib/tapioca/dsl/compiler.rb#94
1258
- sig { params(method_def: T.any(::Method, ::UnboundMethod), signature: T.untyped).returns(T::Array[::String]) }
1259
- def parameters_types_from_signature(method_def, signature); end
1260
-
1261
- class << self
1262
- # @abstract
1263
- #
1264
- # source://tapioca//lib/tapioca/dsl/compiler.rb#34
1265
- sig { abstract.returns(T::Enumerable[::Module]) }
1266
- def gather_constants; end
1267
-
1268
- # source://tapioca//lib/tapioca/dsl/compiler.rb#29
1269
- sig { params(constant: ::Module).returns(T::Boolean) }
1270
- def handles?(constant); end
1271
-
1272
- # source://tapioca//lib/tapioca/dsl/compiler.rb#37
1273
- sig { returns(T::Set[::Module]) }
1274
- def processable_constants; end
1275
-
1276
- private
1277
-
1278
- # source://tapioca//lib/tapioca/dsl/compiler.rb#47
1279
- sig { returns(T::Enumerable[T::Class[T.anything]]) }
1280
- def all_classes; end
1281
-
1282
- # source://tapioca//lib/tapioca/dsl/compiler.rb#55
1283
- sig { returns(T::Enumerable[::Module]) }
1284
- def all_modules; end
1285
- end
1286
- end
1287
-
1288
- # source://tapioca//lib/tapioca/dsl/compilers.rb#6
1289
- module Tapioca::Dsl::Compilers; end
1290
-
1291
- # DSL compilers are either built-in to Tapioca and live under the
1292
- # `Tapioca::Dsl::Compilers` namespace (i.e. this namespace), and
1293
- # can be referred to by just using the class name, or they live in
1294
- # a different namespace and can only be referred to using their fully
1295
- # qualified name. This constant encapsulates that dual lookup when
1296
- # a compiler needs to be resolved by name.
1297
- #
1298
- # source://tapioca//lib/tapioca/dsl/compilers.rb#13
1299
- Tapioca::Dsl::Compilers::NAMESPACES = T.let(T.unsafe(nil), Array)
1300
-
1301
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#6
1302
- class Tapioca::Dsl::Pipeline
1303
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#34
1304
- sig do
1305
- params(
1306
- requested_constants: T::Array[::Module],
1307
- requested_paths: T::Array[::Pathname],
1308
- requested_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)],
1309
- excluded_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)],
1310
- error_handler: T.proc.params(error: ::String).void,
1311
- number_of_workers: T.nilable(::Integer)
1312
- ).void
1313
- end
1314
- def initialize(requested_constants:, requested_paths: T.unsafe(nil), requested_compilers: T.unsafe(nil), excluded_compilers: T.unsafe(nil), error_handler: T.unsafe(nil), number_of_workers: T.unsafe(nil)); end
1315
-
1316
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#10
1317
- sig { returns(T::Enumerable[T.class_of(Tapioca::Dsl::Compiler)]) }
1318
- def active_compilers; end
1319
-
1320
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#93
1321
- sig { params(error: ::String).void }
1322
- def add_error(error); end
1323
-
1324
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#98
1325
- sig { params(compiler_name: ::String).returns(T::Boolean) }
1326
- def compiler_enabled?(compiler_name); end
1327
-
1328
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#107
1329
- sig { returns(T::Array[T.class_of(Tapioca::Dsl::Compiler)]) }
1330
- def compilers; end
1331
-
1332
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#19
1333
- sig { returns(T.proc.params(error: ::String).void) }
1334
- def error_handler; end
1335
-
1336
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#22
1337
- sig { returns(T::Array[::String]) }
1338
- def errors; end
1339
-
1340
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#13
1341
- sig { returns(T::Array[::Module]) }
1342
- def requested_constants; end
1343
-
1344
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#16
1345
- sig { returns(T::Array[::Pathname]) }
1346
- def requested_paths; end
1347
-
1348
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#58
1349
- sig do
1350
- type_parameters(:T)
1351
- .params(
1352
- blk: T.proc.params(constant: ::Module, rbi: ::RBI::File).returns(T.type_parameter(:T))
1353
- ).returns(T::Array[T.type_parameter(:T)])
1354
- end
1355
- def run(&blk); end
1356
-
1357
- private
1358
-
1359
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#199
1360
- sig { void }
1361
- def abort_if_pending_migrations!; end
1362
-
1363
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#144
1364
- sig { params(constants: T::Set[::Module]).returns(T::Set[::Module]) }
1365
- def filter_anonymous_and_reloaded_constants(constants); end
1366
-
1367
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#124
1368
- sig do
1369
- params(
1370
- requested_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)],
1371
- excluded_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)]
1372
- ).returns(T::Enumerable[T.class_of(Tapioca::Dsl::Compiler)])
1373
- end
1374
- def gather_active_compilers(requested_compilers, excluded_compilers); end
1375
-
1376
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#132
1377
- sig do
1378
- params(
1379
- requested_constants: T::Array[::Module],
1380
- requested_paths: T::Array[::Pathname]
1381
- ).returns(T::Set[::Module])
1382
- end
1383
- def gather_constants(requested_constants, requested_paths); end
1384
-
1385
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#173
1386
- sig { params(constant: ::Module).returns(T.nilable(::RBI::File)) }
1387
- def rbi_for_constant(constant); end
1388
-
1389
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#192
1390
- sig { params(error: ::String).returns(T.noreturn) }
1391
- def report_error(error); end
1392
- end
1393
-
1394
- # source://tapioca//lib/tapioca/helpers/env_helper.rb#5
1395
- module Tapioca::EnvHelper
1396
- requires_ancestor { Thor }
1397
-
1398
- # source://tapioca//lib/tapioca/helpers/env_helper.rb#12
1399
- sig { params(options: T::Hash[::Symbol, T.untyped]).void }
1400
- def set_environment(options); end
1401
- end
1402
-
1403
- class Tapioca::Error < ::StandardError; end
1404
-
1405
- # source://tapioca//lib/tapioca/executor.rb#5
1406
- class Tapioca::Executor
1407
- # source://tapioca//lib/tapioca/executor.rb#11
1408
- sig { params(queue: T::Array[T.untyped], number_of_workers: T.nilable(::Integer)).void }
1409
- def initialize(queue, number_of_workers: T.unsafe(nil)); end
1410
-
1411
- # source://tapioca//lib/tapioca/executor.rb#28
1412
- sig do
1413
- type_parameters(:T)
1414
- .params(
1415
- block: T.proc.params(item: T.untyped).returns(T.type_parameter(:T))
1416
- ).returns(T::Array[T.type_parameter(:T)])
1417
- end
1418
- def run_in_parallel(&block); end
1419
-
1420
- private
1421
-
1422
- # source://tapioca//lib/tapioca/executor.rb#37
1423
- sig { returns(::Integer) }
1424
- def max_processors; end
1425
- end
1426
-
1427
- # source://tapioca//lib/tapioca/executor.rb#8
1428
- Tapioca::Executor::MINIMUM_ITEMS_PER_WORKER = T.let(T.unsafe(nil), Integer)
1429
-
1430
- # source://tapioca//lib/tapioca/gem/events.rb#5
1431
- module Tapioca::Gem; end
1432
-
1433
- # source://tapioca//lib/tapioca/gem/events.rb#77
1434
- class Tapioca::Gem::ConstNodeAdded < ::Tapioca::Gem::NodeAdded
1435
- # source://tapioca//lib/tapioca/gem/events.rb#84
1436
- sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Const).void }
1437
- def initialize(symbol, constant, node); end
1438
-
1439
- # source://tapioca//lib/tapioca/gem/events.rb#81
1440
- sig { returns(::RBI::Const) }
1441
- def node; end
1442
- end
1443
-
1444
- # source://tapioca//lib/tapioca/gem/events.rb#26
1445
- class Tapioca::Gem::ConstantFound < ::Tapioca::Gem::Event
1446
- # source://tapioca//lib/tapioca/gem/events.rb#36
1447
- sig { params(symbol: ::String, constant: ::BasicObject).void }
1448
- def initialize(symbol, constant); end
1449
-
1450
- # source://tapioca//lib/tapioca/gem/events.rb#33
1451
- sig { returns(::BasicObject) }
1452
- def constant; end
1453
-
1454
- # source://tapioca//lib/tapioca/gem/events.rb#30
1455
- sig { returns(::String) }
1456
- def symbol; end
1457
- end
1458
-
1459
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1460
- #
1461
- # source://tapioca//lib/tapioca/gem/events.rb#6
1462
- class Tapioca::Gem::Event
1463
- abstract!
1464
- end
1465
-
1466
- # source://tapioca//lib/tapioca/gem/events.rb#43
1467
- class Tapioca::Gem::ForeignConstantFound < ::Tapioca::Gem::ConstantFound
1468
- # source://tapioca//lib/tapioca/gem/events.rb#52
1469
- sig { params(symbol: ::String, constant: ::Module).void }
1470
- def initialize(symbol, constant); end
1471
-
1472
- # source://tapioca//lib/tapioca/gem/events.rb#47
1473
- sig { override.returns(::Module) }
1474
- def constant; end
1475
- end
1476
-
1477
- # source://tapioca//lib/tapioca/gem/events.rb#103
1478
- class Tapioca::Gem::ForeignScopeNodeAdded < ::Tapioca::Gem::ScopeNodeAdded; end
1479
-
1480
- # source://tapioca//lib/tapioca/gem/listeners/base.rb#6
1481
- module Tapioca::Gem::Listeners; end
1482
-
1483
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1484
- #
1485
- # source://tapioca//lib/tapioca/gem/listeners/base.rb#7
1486
- class Tapioca::Gem::Listeners::Base
1487
- abstract!
1488
-
1489
- # source://tapioca//lib/tapioca/gem/listeners/base.rb#14
1490
- sig { params(pipeline: ::Tapioca::Gem::Pipeline).void }
1491
- def initialize(pipeline); end
1492
-
1493
- # source://tapioca//lib/tapioca/gem/listeners/base.rb#19
1494
- sig { params(event: ::Tapioca::Gem::NodeAdded).void }
1495
- def dispatch(event); end
1496
-
1497
- private
1498
-
1499
- # source://tapioca//lib/tapioca/gem/listeners/base.rb#49
1500
- sig { params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1501
- def ignore?(event); end
1502
-
1503
- # source://tapioca//lib/tapioca/gem/listeners/base.rb#37
1504
- sig { params(event: ::Tapioca::Gem::ConstNodeAdded).void }
1505
- def on_const(event); end
1506
-
1507
- # source://tapioca//lib/tapioca/gem/listeners/base.rb#45
1508
- sig { params(event: ::Tapioca::Gem::MethodNodeAdded).void }
1509
- def on_method(event); end
1510
-
1511
- # source://tapioca//lib/tapioca/gem/listeners/base.rb#41
1512
- sig { params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1513
- def on_scope(event); end
1514
- end
1515
-
1516
- # source://tapioca//lib/tapioca/gem/listeners/dynamic_mixins.rb#7
1517
- class Tapioca::Gem::Listeners::DynamicMixins < ::Tapioca::Gem::Listeners::Base
1518
- include ::Tapioca::Runtime::AttachedClassOf
1519
- include ::Tapioca::Runtime::Reflection
1520
-
1521
- private
1522
-
1523
- # source://tapioca//lib/tapioca/gem/listeners/dynamic_mixins.rb#31
1524
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1525
- def ignore?(event); end
1526
-
1527
- # source://tapioca//lib/tapioca/gem/listeners/dynamic_mixins.rb#15
1528
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1529
- def on_scope(event); end
1530
- end
1531
-
1532
- # source://tapioca//lib/tapioca/gem/listeners/foreign_constants.rb#7
1533
- class Tapioca::Gem::Listeners::ForeignConstants < ::Tapioca::Gem::Listeners::Base
1534
- include ::Tapioca::Runtime::AttachedClassOf
1535
- include ::Tapioca::Runtime::Reflection
1536
-
1537
- private
1538
-
1539
- # source://tapioca//lib/tapioca/gem/listeners/foreign_constants.rb#60
1540
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1541
- def ignore?(event); end
1542
-
1543
- # source://tapioca//lib/tapioca/gem/listeners/foreign_constants.rb#55
1544
- sig { params(location: ::String).returns(T::Boolean) }
1545
- def mixed_in_by_gem?(location); end
1546
-
1547
- # source://tapioca//lib/tapioca/gem/listeners/foreign_constants.rb#15
1548
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1549
- def on_scope(event); end
1550
- end
1551
-
1552
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#7
1553
- class Tapioca::Gem::Listeners::Methods < ::Tapioca::Gem::Listeners::Base
1554
- include ::Tapioca::SorbetHelper
1555
- include ::Tapioca::RBIHelper
1556
- include ::Tapioca::Runtime::AttachedClassOf
1557
- include ::Tapioca::Runtime::Reflection
1558
-
1559
- private
1560
-
1561
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#35
1562
- sig do
1563
- params(
1564
- tree: ::RBI::Tree,
1565
- module_name: ::String,
1566
- mod: ::Module,
1567
- for_visibility: T::Array[::Symbol],
1568
- attached_class: T.nilable(::Module)
1569
- ).void
1570
- end
1571
- def compile_directly_owned_methods(tree, module_name, mod, for_visibility = T.unsafe(nil), attached_class: T.unsafe(nil)); end
1572
-
1573
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#71
1574
- sig do
1575
- params(
1576
- tree: ::RBI::Tree,
1577
- symbol_name: ::String,
1578
- constant: ::Module,
1579
- method: T.nilable(::UnboundMethod),
1580
- visibility: ::RBI::Visibility
1581
- ).void
1582
- end
1583
- def compile_method(tree, symbol_name, constant, method, visibility = T.unsafe(nil)); end
1584
-
1585
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#211
1586
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1587
- def ignore?(event); end
1588
-
1589
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#204
1590
- sig { params(constant: ::Module).returns(T.nilable(::UnboundMethod)) }
1591
- def initialize_method_for(constant); end
1592
-
1593
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#172
1594
- sig { params(mod: ::Module).returns(T::Hash[::Symbol, T::Array[::Symbol]]) }
1595
- def method_names_by_visibility(mod); end
1596
-
1597
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#196
1598
- sig { params(attached_class: T.nilable(::Module), method_name: ::Symbol).returns(T.nilable(T::Boolean)) }
1599
- def method_new_in_abstract_class?(attached_class, method_name); end
1600
-
1601
- # Check whether the method is defined by the constant.
1602
- #
1603
- # In most cases, it works to check that the constant is the method owner. However,
1604
- # in the case that a method is also defined in a module prepended to the constant, it
1605
- # will be owned by the prepended module, not the constant.
1606
- #
1607
- # This method implements a better way of checking whether a constant defines a method.
1608
- # It walks up the ancestor tree via the `super_method` method; if any of the super
1609
- # methods are owned by the constant, it means that the constant declares the method.
1610
- #
1611
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#158
1612
- sig { params(method: ::UnboundMethod, constant: ::Module).returns(T::Boolean) }
1613
- def method_owned_by_constant?(method, constant); end
1614
-
1615
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#16
1616
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1617
- def on_scope(event); end
1618
-
1619
- # source://tapioca//lib/tapioca/gem/listeners/methods.rb#181
1620
- sig { params(constant: ::Module, method_name: ::String).returns(T::Boolean) }
1621
- def struct_method?(constant, method_name); end
1622
- end
1623
-
1624
- # source://tapioca//lib/tapioca/gem/listeners/mixins.rb#7
1625
- class Tapioca::Gem::Listeners::Mixins < ::Tapioca::Gem::Listeners::Base
1626
- include ::Tapioca::Runtime::AttachedClassOf
1627
- include ::Tapioca::Runtime::Reflection
1628
-
1629
- private
1630
-
1631
- # source://tapioca//lib/tapioca/gem/listeners/mixins.rb#42
1632
- sig do
1633
- params(
1634
- tree: ::RBI::Tree,
1635
- constant: ::Module,
1636
- mods: T::Array[::Module],
1637
- mixin_type: ::Tapioca::Runtime::Trackers::Mixin::Type
1638
- ).void
1639
- end
1640
- def add_mixins(tree, constant, mods, mixin_type); end
1641
-
1642
- # source://tapioca//lib/tapioca/gem/listeners/mixins.rb#84
1643
- sig { params(mixin_name: ::String).returns(T::Boolean) }
1644
- def filtered_mixin?(mixin_name); end
1645
-
1646
- # source://tapioca//lib/tapioca/gem/listeners/mixins.rb#91
1647
- sig { params(constant: ::Module).returns(T::Array[::Module]) }
1648
- def interesting_ancestors_of(constant); end
1649
-
1650
- # source://tapioca//lib/tapioca/gem/listeners/mixins.rb#75
1651
- sig do
1652
- params(
1653
- constant: ::Module,
1654
- mixin: ::Module,
1655
- mixin_type: ::Tapioca::Runtime::Trackers::Mixin::Type
1656
- ).returns(T::Boolean)
1657
- end
1658
- def mixed_in_by_gem?(constant, mixin, mixin_type); end
1659
-
1660
- # source://tapioca//lib/tapioca/gem/listeners/mixins.rb#15
1661
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1662
- def on_scope(event); end
1663
- end
1664
-
1665
- # source://tapioca//lib/tapioca/gem/listeners/remove_empty_payload_scopes.rb#7
1666
- class Tapioca::Gem::Listeners::RemoveEmptyPayloadScopes < ::Tapioca::Gem::Listeners::Base
1667
- include ::Tapioca::Runtime::AttachedClassOf
1668
- include ::Tapioca::Runtime::Reflection
1669
-
1670
- private
1671
-
1672
- # source://tapioca//lib/tapioca/gem/listeners/remove_empty_payload_scopes.rb#20
1673
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1674
- def ignore?(event); end
1675
-
1676
- # source://tapioca//lib/tapioca/gem/listeners/remove_empty_payload_scopes.rb#15
1677
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1678
- def on_scope(event); end
1679
- end
1680
-
1681
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_enums.rb#7
1682
- class Tapioca::Gem::Listeners::SorbetEnums < ::Tapioca::Gem::Listeners::Base
1683
- private
1684
-
1685
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_enums.rb#25
1686
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1687
- def ignore?(event); end
1688
-
1689
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_enums.rb#13
1690
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1691
- def on_scope(event); end
1692
- end
1693
-
1694
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_helpers.rb#7
1695
- class Tapioca::Gem::Listeners::SorbetHelpers < ::Tapioca::Gem::Listeners::Base
1696
- include ::Tapioca::Runtime::AttachedClassOf
1697
- include ::Tapioca::Runtime::Reflection
1698
-
1699
- private
1700
-
1701
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_helpers.rb#27
1702
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1703
- def ignore?(event); end
1704
-
1705
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_helpers.rb#15
1706
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1707
- def on_scope(event); end
1708
- end
1709
-
1710
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_props.rb#7
1711
- class Tapioca::Gem::Listeners::SorbetProps < ::Tapioca::Gem::Listeners::Base
1712
- include ::Tapioca::SorbetHelper
1713
- include ::Tapioca::RBIHelper
1714
-
1715
- private
1716
-
1717
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_props.rb#33
1718
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1719
- def ignore?(event); end
1720
-
1721
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_props.rb#14
1722
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1723
- def on_scope(event); end
1724
- end
1725
-
1726
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_required_ancestors.rb#7
1727
- class Tapioca::Gem::Listeners::SorbetRequiredAncestors < ::Tapioca::Gem::Listeners::Base
1728
- private
1729
-
1730
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_required_ancestors.rb#23
1731
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1732
- def ignore?(event); end
1733
-
1734
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_required_ancestors.rb#13
1735
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1736
- def on_scope(event); end
1737
- end
1738
-
1739
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_signatures.rb#7
1740
- class Tapioca::Gem::Listeners::SorbetSignatures < ::Tapioca::Gem::Listeners::Base
1741
- include ::Tapioca::Runtime::AttachedClassOf
1742
- include ::Tapioca::Runtime::Reflection
1743
- include ::Tapioca::SorbetHelper
1744
- include ::Tapioca::RBIHelper
1745
-
1746
- private
1747
-
1748
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_signatures.rb#26
1749
- sig { params(signature: T.untyped, parameters: T::Array[[::Symbol, ::String]]).returns(::RBI::Sig) }
1750
- def compile_signature(signature, parameters); end
1751
-
1752
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_signatures.rb#79
1753
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1754
- def ignore?(event); end
1755
-
1756
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_signatures.rb#18
1757
- sig { override.params(event: ::Tapioca::Gem::MethodNodeAdded).void }
1758
- def on_method(event); end
1759
-
1760
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_signatures.rb#68
1761
- sig { params(signature: T.untyped).returns(T::Boolean) }
1762
- def signature_final?(signature); end
1763
- end
1764
-
1765
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_signatures.rb#13
1766
- Tapioca::Gem::Listeners::SorbetSignatures::TYPE_PARAMETER_MATCHER = T.let(T.unsafe(nil), Regexp)
1767
-
1768
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_type_variables.rb#7
1769
- class Tapioca::Gem::Listeners::SorbetTypeVariables < ::Tapioca::Gem::Listeners::Base
1770
- include ::Tapioca::Runtime::AttachedClassOf
1771
- include ::Tapioca::Runtime::Reflection
1772
-
1773
- private
1774
-
1775
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_type_variables.rb#27
1776
- sig { params(tree: ::RBI::Tree, constant: ::Module).void }
1777
- def compile_type_variable_declarations(tree, constant); end
1778
-
1779
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_type_variables.rb#63
1780
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1781
- def ignore?(event); end
1782
-
1783
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_type_variables.rb#50
1784
- sig { params(type_variable: ::Tapioca::TypeVariableModule).returns(T.nilable(::RBI::Node)) }
1785
- def node_from_type_variable(type_variable); end
1786
-
1787
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_type_variables.rb#15
1788
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1789
- def on_scope(event); end
1790
- end
1791
-
1792
- # source://tapioca//lib/tapioca/gem/listeners/source_location.rb#7
1793
- class Tapioca::Gem::Listeners::SourceLocation < ::Tapioca::Gem::Listeners::Base
1794
- private
1795
-
1796
- # source://tapioca//lib/tapioca/gem/listeners/source_location.rb#41
1797
- sig { params(node: ::RBI::NodeWithComments, file: T.nilable(::String), line: T.nilable(::Integer)).void }
1798
- def add_source_location_comment(node, file, line); end
1799
-
1800
- # source://tapioca//lib/tapioca/gem/listeners/source_location.rb#13
1801
- sig { override.params(event: ::Tapioca::Gem::ConstNodeAdded).void }
1802
- def on_const(event); end
1803
-
1804
- # source://tapioca//lib/tapioca/gem/listeners/source_location.rb#35
1805
- sig { override.params(event: ::Tapioca::Gem::MethodNodeAdded).void }
1806
- def on_method(event); end
1807
-
1808
- # source://tapioca//lib/tapioca/gem/listeners/source_location.rb#19
1809
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1810
- def on_scope(event); end
1811
- end
1812
-
1813
- # source://tapioca//lib/tapioca/gem/listeners/subconstants.rb#7
1814
- class Tapioca::Gem::Listeners::Subconstants < ::Tapioca::Gem::Listeners::Base
1815
- include ::Tapioca::Runtime::AttachedClassOf
1816
- include ::Tapioca::Runtime::Reflection
1817
-
1818
- private
1819
-
1820
- # source://tapioca//lib/tapioca/gem/listeners/subconstants.rb#36
1821
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1822
- def ignore?(event); end
1823
-
1824
- # source://tapioca//lib/tapioca/gem/listeners/subconstants.rb#15
1825
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1826
- def on_scope(event); end
1827
- end
1828
-
1829
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#7
1830
- class Tapioca::Gem::Listeners::YardDoc < ::Tapioca::Gem::Listeners::Base
1831
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#27
1832
- sig { params(pipeline: ::Tapioca::Gem::Pipeline).void }
1833
- def initialize(pipeline); end
1834
-
1835
- private
1836
-
1837
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#55
1838
- sig { params(name: ::String, sigs: T::Array[::RBI::Sig]).returns(T::Array[::RBI::Comment]) }
1839
- def documentation_comments(name, sigs: T.unsafe(nil)); end
1840
-
1841
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#99
1842
- sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1843
- def ignore?(event); end
1844
-
1845
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#36
1846
- sig { override.params(event: ::Tapioca::Gem::ConstNodeAdded).void }
1847
- def on_const(event); end
1848
-
1849
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#46
1850
- sig { override.params(event: ::Tapioca::Gem::MethodNodeAdded).void }
1851
- def on_method(event); end
1852
-
1853
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#41
1854
- sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1855
- def on_scope(event); end
1856
- end
1857
-
1858
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#10
1859
- Tapioca::Gem::Listeners::YardDoc::IGNORED_COMMENTS = T.let(T.unsafe(nil), Array)
1860
-
1861
- # source://tapioca//lib/tapioca/gem/listeners/yard_doc.rb#24
1862
- Tapioca::Gem::Listeners::YardDoc::IGNORED_SIG_TAGS = T.let(T.unsafe(nil), Array)
1863
-
1864
- # source://tapioca//lib/tapioca/gem/events.rb#105
1865
- class Tapioca::Gem::MethodNodeAdded < ::Tapioca::Gem::NodeAdded
1866
- # source://tapioca//lib/tapioca/gem/events.rb#130
1867
- sig do
1868
- params(
1869
- symbol: ::String,
1870
- constant: ::Module,
1871
- method: ::UnboundMethod,
1872
- node: ::RBI::Method,
1873
- signature: T.untyped,
1874
- parameters: T::Array[[::Symbol, ::String]]
1875
- ).void
1876
- end
1877
- def initialize(symbol, constant, method, node, signature, parameters); end
1878
-
1879
- # source://tapioca//lib/tapioca/gem/events.rb#109
1880
- sig { returns(::UnboundMethod) }
1881
- def method; end
1882
-
1883
- # source://tapioca//lib/tapioca/gem/events.rb#112
1884
- sig { returns(::RBI::Method) }
1885
- def node; end
1886
-
1887
- # source://tapioca//lib/tapioca/gem/events.rb#118
1888
- sig { returns(T::Array[[::Symbol, ::String]]) }
1889
- def parameters; end
1890
-
1891
- # source://tapioca//lib/tapioca/gem/events.rb#115
1892
- sig { returns(T.untyped) }
1893
- def signature; end
1894
- end
1895
-
1896
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1897
- #
1898
- # source://tapioca//lib/tapioca/gem/events.rb#57
1899
- class Tapioca::Gem::NodeAdded < ::Tapioca::Gem::Event
1900
- abstract!
1901
-
1902
- # source://tapioca//lib/tapioca/gem/events.rb#70
1903
- sig { params(symbol: ::String, constant: ::Module).void }
1904
- def initialize(symbol, constant); end
1905
-
1906
- # source://tapioca//lib/tapioca/gem/events.rb#67
1907
- sig { returns(::Module) }
1908
- def constant; end
1909
-
1910
- # source://tapioca//lib/tapioca/gem/events.rb#64
1911
- sig { returns(::String) }
1912
- def symbol; end
1913
- end
1914
-
1915
- # source://tapioca//lib/tapioca/gem/pipeline.rb#6
1916
- class Tapioca::Gem::Pipeline
1917
- include ::Tapioca::Runtime::AttachedClassOf
1918
- include ::Tapioca::Runtime::Reflection
1919
- include ::Tapioca::SorbetHelper
1920
- include ::Tapioca::RBIHelper
1921
-
1922
- # source://tapioca//lib/tapioca/gem/pipeline.rb#17
1923
- sig { params(gem: ::Tapioca::Gemfile::GemSpec, include_doc: T::Boolean, include_loc: T::Boolean).void }
1924
- def initialize(gem, include_doc: T.unsafe(nil), include_loc: T.unsafe(nil)); end
1925
-
1926
- # source://tapioca//lib/tapioca/gem/pipeline.rb#48
1927
- sig { returns(::RBI::Tree) }
1928
- def compile; end
1929
-
1930
- # source://tapioca//lib/tapioca/gem/pipeline.rb#119
1931
- sig { params(name: T.any(::String, ::Symbol)).returns(T::Boolean) }
1932
- def constant_in_gem?(name); end
1933
-
1934
- # source://tapioca//lib/tapioca/gem/pipeline.rb#14
1935
- sig { returns(::Tapioca::Gemfile::GemSpec) }
1936
- def gem; end
1937
-
1938
- # source://tapioca//lib/tapioca/gem/pipeline.rb#137
1939
- sig { params(method: ::UnboundMethod).returns(T::Boolean) }
1940
- def method_in_gem?(method); end
1941
-
1942
- # Helpers
1943
- #
1944
- # source://tapioca//lib/tapioca/gem/pipeline.rb#147
1945
- sig { params(constant: ::Module).returns(T.nilable(::String)) }
1946
- def name_of(constant); end
1947
-
1948
- # source://tapioca//lib/tapioca/gem/pipeline.rb#71
1949
- sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Const).void }
1950
- def push_const(symbol, constant, node); end
1951
-
1952
- # source://tapioca//lib/tapioca/gem/pipeline.rb#61
1953
- sig { params(symbol: ::String, constant: ::BasicObject).void }
1954
- def push_constant(symbol, constant); end
1955
-
1956
- # source://tapioca//lib/tapioca/gem/pipeline.rb#66
1957
- sig { params(symbol: ::String, constant: ::Module).void }
1958
- def push_foreign_constant(symbol, constant); end
1959
-
1960
- # source://tapioca//lib/tapioca/gem/pipeline.rb#85
1961
- sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Scope).void }
1962
- def push_foreign_scope(symbol, constant, node); end
1963
-
1964
- # source://tapioca//lib/tapioca/gem/pipeline.rb#99
1965
- sig do
1966
- params(
1967
- symbol: ::String,
1968
- constant: ::Module,
1969
- method: ::UnboundMethod,
1970
- node: ::RBI::Method,
1971
- signature: T.untyped,
1972
- parameters: T::Array[[::Symbol, ::String]]
1973
- ).void
1974
- end
1975
- def push_method(symbol, constant, method, node, signature, parameters); end
1976
-
1977
- # source://tapioca//lib/tapioca/gem/pipeline.rb#78
1978
- sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Scope).void }
1979
- def push_scope(symbol, constant, node); end
1980
-
1981
- # Events handling
1982
- #
1983
- # source://tapioca//lib/tapioca/gem/pipeline.rb#56
1984
- sig { params(symbol: ::String).void }
1985
- def push_symbol(symbol); end
1986
-
1987
- # Constants and properties filtering
1988
- #
1989
- # source://tapioca//lib/tapioca/gem/pipeline.rb#106
1990
- sig { params(symbol_name: ::String).returns(T::Boolean) }
1991
- def symbol_in_payload?(symbol_name); end
1992
-
1993
- private
1994
-
1995
- # source://tapioca//lib/tapioca/gem/pipeline.rb#440
1996
- sig { params(name: ::String).void }
1997
- def add_to_alias_namespace(name); end
1998
-
1999
- # source://tapioca//lib/tapioca/gem/pipeline.rb#445
2000
- sig { params(name: ::String).returns(T::Boolean) }
2001
- def alias_namespaced?(name); end
2002
-
2003
- # source://tapioca//lib/tapioca/gem/pipeline.rb#244
2004
- sig { params(name: ::String, constant: ::Module).void }
2005
- def compile_alias(name, constant); end
2006
-
2007
- # source://tapioca//lib/tapioca/gem/pipeline.rb#230
2008
- sig { params(symbol: ::String, constant: ::BasicObject).void }
2009
- def compile_constant(symbol, constant); end
2010
-
2011
- # Compiling
2012
- #
2013
- # source://tapioca//lib/tapioca/gem/pipeline.rb#219
2014
- sig { params(symbol: ::String, constant: ::Module).void }
2015
- def compile_foreign_constant(symbol, constant); end
2016
-
2017
- # source://tapioca//lib/tapioca/gem/pipeline.rb#298
2018
- sig { params(name: ::String, constant: ::Module).void }
2019
- def compile_module(name, constant); end
2020
-
2021
- # source://tapioca//lib/tapioca/gem/pipeline.rb#265
2022
- sig { params(name: ::String, value: ::BasicObject).void }
2023
- def compile_object(name, value); end
2024
-
2025
- # source://tapioca//lib/tapioca/gem/pipeline.rb#309
2026
- sig { params(name: ::String, constant: ::Module).returns(::RBI::Scope) }
2027
- def compile_scope(name, constant); end
2028
-
2029
- # source://tapioca//lib/tapioca/gem/pipeline.rb#323
2030
- sig { params(constant: T::Class[T.anything]).returns(T.nilable(::String)) }
2031
- def compile_superclass(constant); end
2032
-
2033
- # source://tapioca//lib/tapioca/gem/pipeline.rb#421
2034
- sig { params(constant: ::Module, strict: T::Boolean).returns(T::Boolean) }
2035
- def defined_in_gem?(constant, strict: T.unsafe(nil)); end
2036
-
2037
- # source://tapioca//lib/tapioca/gem/pipeline.rb#177
2038
- sig { params(event: ::Tapioca::Gem::Event).void }
2039
- def dispatch(event); end
2040
-
2041
- # Helpers
2042
- #
2043
- # source://tapioca//lib/tapioca/gem/pipeline.rb#464
2044
- sig { params(constant: T.all(::Module, ::T::Generic)).returns(::String) }
2045
- def generic_name_of(constant); end
2046
-
2047
- # source://tapioca//lib/tapioca/gem/pipeline.rb#433
2048
- sig { params(constant: ::Module).returns(T::Set[::String]) }
2049
- def get_file_candidates(constant); end
2050
-
2051
- # source://tapioca//lib/tapioca/gem/pipeline.rb#162
2052
- sig { params(gem: ::Tapioca::Gemfile::GemSpec).returns(T::Set[::String]) }
2053
- def load_bootstrap_symbols(gem); end
2054
-
2055
- # source://tapioca//lib/tapioca/gem/pipeline.rb#480
2056
- sig { params(constant: ::Module, class_name: T.nilable(::String)).returns(T.nilable(::String)) }
2057
- def name_of_proxy_target(constant, class_name); end
2058
-
2059
- # Events handling
2060
- #
2061
- # source://tapioca//lib/tapioca/gem/pipeline.rb#172
2062
- sig { returns(::Tapioca::Gem::Event) }
2063
- def next_event; end
2064
-
2065
- # source://tapioca//lib/tapioca/gem/pipeline.rb#200
2066
- sig { params(event: ::Tapioca::Gem::ConstantFound).void }
2067
- def on_constant(event); end
2068
-
2069
- # source://tapioca//lib/tapioca/gem/pipeline.rb#212
2070
- sig { params(event: ::Tapioca::Gem::NodeAdded).void }
2071
- def on_node(event); end
2072
-
2073
- # source://tapioca//lib/tapioca/gem/pipeline.rb#191
2074
- sig { params(event: ::Tapioca::Gem::SymbolFound).void }
2075
- def on_symbol(event); end
2076
-
2077
- # source://tapioca//lib/tapioca/gem/pipeline.rb#452
2078
- sig { params(name: ::String).void }
2079
- def seen!(name); end
2080
-
2081
- # source://tapioca//lib/tapioca/gem/pipeline.rb#457
2082
- sig { params(name: ::String).returns(T::Boolean) }
2083
- def seen?(name); end
2084
-
2085
- # source://tapioca//lib/tapioca/gem/pipeline.rb#391
2086
- sig { params(name: ::String, constant: ::Module).returns(T::Boolean) }
2087
- def skip_alias?(name, constant); end
2088
-
2089
- # source://tapioca//lib/tapioca/gem/pipeline.rb#379
2090
- sig { params(name: ::String, constant: T.anything).returns(T::Boolean) }
2091
- def skip_constant?(name, constant); end
2092
-
2093
- # source://tapioca//lib/tapioca/gem/pipeline.rb#408
2094
- sig { params(name: ::String, constant: ::Module).returns(T::Boolean) }
2095
- def skip_foreign_constant?(name, constant); end
2096
-
2097
- # source://tapioca//lib/tapioca/gem/pipeline.rb#413
2098
- sig { params(name: ::String, constant: ::Module).returns(T::Boolean) }
2099
- def skip_module?(name, constant); end
2100
-
2101
- # source://tapioca//lib/tapioca/gem/pipeline.rb#400
2102
- sig { params(name: ::String, constant: ::BasicObject).returns(T::Boolean) }
2103
- def skip_object?(name, constant); end
2104
-
2105
- # Constants and properties filtering
2106
- #
2107
- # source://tapioca//lib/tapioca/gem/pipeline.rb#374
2108
- sig { params(name: ::String).returns(T::Boolean) }
2109
- def skip_symbol?(name); end
2110
- end
2111
-
2112
- # this looks something like:
2113
- # "(eval at /path/to/file.rb:123)"
2114
- # and we are just interested in the "/path/to/file.rb" part
2115
- #
2116
- # source://tapioca//lib/tapioca/gem/pipeline.rb#116
2117
- Tapioca::Gem::Pipeline::EVAL_SOURCE_FILE_PATTERN = T.let(T.unsafe(nil), Regexp)
2118
-
2119
- # source://tapioca//lib/tapioca/gem/pipeline.rb#11
2120
- Tapioca::Gem::Pipeline::IGNORED_SYMBOLS = T.let(T.unsafe(nil), Array)
2121
-
2122
- # source://tapioca//lib/tapioca/gem/events.rb#90
2123
- class Tapioca::Gem::ScopeNodeAdded < ::Tapioca::Gem::NodeAdded
2124
- # source://tapioca//lib/tapioca/gem/events.rb#97
2125
- sig { params(symbol: ::String, constant: ::Module, node: ::RBI::Scope).void }
2126
- def initialize(symbol, constant, node); end
2127
-
2128
- # source://tapioca//lib/tapioca/gem/events.rb#94
2129
- sig { returns(::RBI::Scope) }
2130
- def node; end
2131
- end
2132
-
2133
- # source://tapioca//lib/tapioca/gem/events.rb#13
2134
- class Tapioca::Gem::SymbolFound < ::Tapioca::Gem::Event
2135
- # source://tapioca//lib/tapioca/gem/events.rb#20
2136
- sig { params(symbol: ::String).void }
2137
- def initialize(symbol); end
2138
-
2139
- # source://tapioca//lib/tapioca/gem/events.rb#17
2140
- sig { returns(::String) }
2141
- def symbol; end
2142
- end
2143
-
2144
- # source://tapioca//lib/tapioca/helpers/gem_helper.rb#5
2145
- module Tapioca::GemHelper
2146
- # source://tapioca//lib/tapioca/helpers/gem_helper.rb#9
2147
- sig { params(app_dir: T.any(::Pathname, ::String), full_gem_path: ::String).returns(T::Boolean) }
2148
- def gem_in_app_dir?(app_dir, full_gem_path); end
2149
-
2150
- # source://tapioca//lib/tapioca/helpers/gem_helper.rb#17
2151
- sig { params(full_gem_path: ::String).returns(T::Boolean) }
2152
- def gem_in_bundle_path?(full_gem_path); end
2153
-
2154
- # source://tapioca//lib/tapioca/helpers/gem_helper.rb#22
2155
- sig { params(full_gem_path: ::String).returns(T::Boolean) }
2156
- def gem_in_ruby_path?(full_gem_path); end
2157
-
2158
- # source://tapioca//lib/tapioca/helpers/gem_helper.rb#27
2159
- sig { params(path: T.any(::Pathname, ::String)).returns(::String) }
2160
- def to_realpath(path); end
2161
-
2162
- private
2163
-
2164
- # source://tapioca//lib/tapioca/helpers/gem_helper.rb#36
2165
- sig { params(path: T.any(::Pathname, ::String), dir: T.any(::Pathname, ::String)).returns(T::Boolean) }
2166
- def path_in_dir?(path, dir); end
2167
- end
2168
-
2169
- # source://tapioca//lib/tapioca/gemfile.rb#7
2170
- class Tapioca::Gemfile
2171
- # source://tapioca//lib/tapioca/gemfile.rb#27
2172
- sig { params(excluded_gems: T::Array[::String]).void }
2173
- def initialize(excluded_gems); end
2174
-
2175
- # source://tapioca//lib/tapioca/gemfile.rb#18
2176
- sig { returns(::Bundler::Definition) }
2177
- def definition; end
2178
-
2179
- # source://tapioca//lib/tapioca/gemfile.rb#21
2180
- sig { returns(T::Array[::Tapioca::Gemfile::GemSpec]) }
2181
- def dependencies; end
2182
-
2183
- # source://tapioca//lib/tapioca/gemfile.rb#40
2184
- sig { params(gem_name: ::String).returns(T.nilable(::Tapioca::Gemfile::GemSpec)) }
2185
- def gem(gem_name); end
2186
-
2187
- # source://tapioca//lib/tapioca/gemfile.rb#24
2188
- sig { returns(T::Array[::String]) }
2189
- def missing_specs; end
2190
-
2191
- # source://tapioca//lib/tapioca/gemfile.rb#45
2192
- sig { void }
2193
- def require_bundle; end
2194
-
2195
- private
2196
-
2197
- # source://tapioca//lib/tapioca/gemfile.rb#92
2198
- sig { returns(::String) }
2199
- def dir; end
2200
-
2201
- # source://tapioca//lib/tapioca/gemfile.rb#54
2202
- sig { returns(::File) }
2203
- def gemfile; end
2204
-
2205
- # source://tapioca//lib/tapioca/gemfile.rb#87
2206
- sig { returns(T::Array[::Symbol]) }
2207
- def groups; end
2208
-
2209
- # source://tapioca//lib/tapioca/gemfile.rb#57
2210
- sig { returns([T::Array[::Tapioca::Gemfile::GemSpec], T::Array[::String]]) }
2211
- def load_dependencies; end
2212
-
2213
- # @return [File]
2214
- #
2215
- # source://tapioca//lib/tapioca/gemfile.rb#54
2216
- def lockfile; end
2217
-
2218
- # source://tapioca//lib/tapioca/gemfile.rb#68
2219
- sig { returns([T::Enumerable[T.any(::Bundler::StubSpecification, ::Gem::Specification)], T::Array[::String]]) }
2220
- def materialize_deps; end
2221
-
2222
- # source://tapioca//lib/tapioca/gemfile.rb#82
2223
- sig { returns(::Bundler::Runtime) }
2224
- def runtime; end
2225
- end
2226
-
2227
- # source://tapioca//lib/tapioca/gemfile.rb#96
2228
- class Tapioca::Gemfile::GemSpec
2229
- include ::Tapioca::GemHelper
2230
-
2231
- # source://tapioca//lib/tapioca/gemfile.rb#136
2232
- sig { params(spec: T.any(::Bundler::StubSpecification, ::Gem::Specification)).void }
2233
- def initialize(spec); end
2234
-
2235
- # source://tapioca//lib/tapioca/gemfile.rb#146
2236
- sig { params(other: ::BasicObject).returns(T::Boolean) }
2237
- def ==(other); end
2238
-
2239
- # source://tapioca//lib/tapioca/gemfile.rb#171
2240
- sig { params(path: ::String).returns(T::Boolean) }
2241
- def contains_path?(path); end
2242
-
2243
- # source://tapioca//lib/tapioca/gemfile.rb#161
2244
- sig { returns(T::Array[::Gem::Dependency]) }
2245
- def dependencies; end
2246
-
2247
- # source://tapioca//lib/tapioca/gemfile.rb#201
2248
- sig { returns(T::Boolean) }
2249
- def export_rbi_files?; end
2250
-
2251
- # source://tapioca//lib/tapioca/gemfile.rb#196
2252
- sig { returns(T::Array[::String]) }
2253
- def exported_rbi_files; end
2254
-
2255
- # source://tapioca//lib/tapioca/gemfile.rb#206
2256
- sig { returns(::RBI::MergeTree) }
2257
- def exported_rbi_tree; end
2258
-
2259
- # source://tapioca//lib/tapioca/gemfile.rb#133
2260
- sig { returns(T::Array[::Pathname]) }
2261
- def files; end
2262
-
2263
- # source://tapioca//lib/tapioca/gemfile.rb#130
2264
- sig { returns(::String) }
2265
- def full_gem_path; end
2266
-
2267
- # source://tapioca//lib/tapioca/gemfile.rb#151
2268
- sig { params(gemfile_dir: ::String).returns(T::Boolean) }
2269
- def ignore?(gemfile_dir); end
2270
-
2271
- # source://tapioca//lib/tapioca/gemfile.rb#156
2272
- sig { returns(::String) }
2273
- def name; end
2274
-
2275
- # source://tapioca//lib/tapioca/gemfile.rb#180
2276
- sig { void }
2277
- def parse_yard_docs; end
2278
-
2279
- # source://tapioca//lib/tapioca/gemfile.rb#166
2280
- sig { returns(::String) }
2281
- def rbi_file_name; end
2282
-
2283
- # source://tapioca//lib/tapioca/gemfile.rb#218
2284
- sig { params(file: ::Pathname).returns(::Pathname) }
2285
- def relative_path_for(file); end
2286
-
2287
- # @return [String]
2288
- #
2289
- # source://tapioca//lib/tapioca/gemfile.rb#130
2290
- def version; end
2291
-
2292
- private
2293
-
2294
- # source://tapioca//lib/tapioca/gemfile.rb#229
2295
- sig { returns(T::Array[::Pathname]) }
2296
- def collect_files; end
2297
-
2298
- # source://tapioca//lib/tapioca/gemfile.rb#244
2299
- sig { returns(T.nilable(T::Boolean)) }
2300
- def default_gem?; end
2301
-
2302
- # source://tapioca//lib/tapioca/gemfile.rb#303
2303
- sig { returns(T::Boolean) }
2304
- def gem_ignored?; end
2305
-
2306
- # source://tapioca//lib/tapioca/gemfile.rb#282
2307
- sig { params(path: ::String).returns(T::Boolean) }
2308
- def has_parent_gemspec?(path); end
2309
-
2310
- # source://tapioca//lib/tapioca/gemfile.rb#249
2311
- sig { returns(::Regexp) }
2312
- def require_paths_prefix_matcher; end
2313
-
2314
- # source://tapioca//lib/tapioca/gemfile.rb#261
2315
- sig { params(file: ::String).returns(::Pathname) }
2316
- def resolve_to_ruby_lib_dir(file); end
2317
-
2318
- # source://tapioca//lib/tapioca/gemfile.rb#275
2319
- sig { returns(::String) }
2320
- def version_string; end
2321
-
2322
- class << self
2323
- # source://tapioca//lib/tapioca/gemfile.rb#104
2324
- sig { returns(T::Hash[::String, ::Tapioca::Gemfile::GemSpec]) }
2325
- def spec_lookup_by_file_path; end
2326
- end
2327
- end
2328
-
2329
- # source://tapioca//lib/tapioca/gemfile.rb#116
2330
- Tapioca::Gemfile::GemSpec::IGNORED_GEMS = T.let(T.unsafe(nil), Array)
2331
-
2332
- # source://tapioca//lib/tapioca/gemfile.rb#10
2333
- Tapioca::Gemfile::Spec = T.type_alias { T.any(::Bundler::StubSpecification, ::Gem::Specification) }
2334
-
2335
- # source://tapioca//lib/tapioca/loaders/loader.rb#5
2336
- module Tapioca::Loaders; end
2337
-
2338
- # source://tapioca//lib/tapioca/loaders/dsl.rb#6
2339
- class Tapioca::Loaders::Dsl < ::Tapioca::Loaders::Loader
2340
- # source://tapioca//lib/tapioca/loaders/dsl.rb#38
2341
- sig do
2342
- params(
2343
- tapioca_path: ::String,
2344
- eager_load: T::Boolean,
2345
- app_root: ::String,
2346
- halt_upon_load_error: T::Boolean
2347
- ).void
2348
- end
2349
- def initialize(tapioca_path:, eager_load: T.unsafe(nil), app_root: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
2350
-
2351
- # source://tapioca//lib/tapioca/loaders/dsl.rb#27
2352
- sig { override.void }
2353
- def load; end
2354
-
2355
- protected
2356
-
2357
- # source://tapioca//lib/tapioca/loaders/dsl.rb#81
2358
- sig { void }
2359
- def load_application; end
2360
-
2361
- # source://tapioca//lib/tapioca/loaders/dsl.rb#63
2362
- sig { void }
2363
- def load_dsl_compilers; end
2364
-
2365
- # source://tapioca//lib/tapioca/loaders/dsl.rb#48
2366
- sig { void }
2367
- def load_dsl_extensions; end
2368
-
2369
- class << self
2370
- # source://tapioca//lib/tapioca/loaders/dsl.rb#15
2371
- sig do
2372
- params(
2373
- tapioca_path: ::String,
2374
- eager_load: T::Boolean,
2375
- app_root: ::String,
2376
- halt_upon_load_error: T::Boolean
2377
- ).void
2378
- end
2379
- def load_application(tapioca_path:, eager_load: T.unsafe(nil), app_root: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
2380
- end
2381
- end
2382
-
2383
- # source://tapioca//lib/tapioca/loaders/gem.rb#6
2384
- class Tapioca::Loaders::Gem < ::Tapioca::Loaders::Loader
2385
- # source://tapioca//lib/tapioca/loaders/gem.rb#49
2386
- sig do
2387
- params(
2388
- bundle: ::Tapioca::Gemfile,
2389
- prerequire: T.nilable(::String),
2390
- postrequire: ::String,
2391
- default_command: ::String,
2392
- halt_upon_load_error: T::Boolean
2393
- ).void
2394
- end
2395
- def initialize(bundle:, prerequire:, postrequire:, default_command:, halt_upon_load_error:); end
2396
-
2397
- # source://tapioca//lib/tapioca/loaders/gem.rb#34
2398
- sig { override.void }
2399
- def load; end
2400
-
2401
- protected
2402
-
2403
- # source://tapioca//lib/tapioca/loaders/gem.rb#80
2404
- sig { params(file: ::String, error: ::LoadError).void }
2405
- def explain_failed_require(file, error); end
2406
-
2407
- # source://tapioca//lib/tapioca/loaders/gem.rb#60
2408
- sig { void }
2409
- def require_gem_file; end
2410
-
2411
- class << self
2412
- # source://tapioca//lib/tapioca/loaders/gem.rb#21
2413
- sig do
2414
- params(
2415
- bundle: ::Tapioca::Gemfile,
2416
- prerequire: T.nilable(::String),
2417
- postrequire: ::String,
2418
- default_command: ::String,
2419
- halt_upon_load_error: T::Boolean
2420
- ).void
2421
- end
2422
- def load_application(bundle:, prerequire:, postrequire:, default_command:, halt_upon_load_error:); end
2423
- end
2424
- end
2425
-
2426
- # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
2427
- #
2428
- # source://tapioca//lib/tapioca/loaders/loader.rb#6
2429
- class Tapioca::Loaders::Loader
2430
- include ::Thor::Base
2431
- include ::Thor::Invocation
2432
- include ::Thor::Shell
2433
- include ::Tapioca::CliHelper
2434
- include ::Tapioca::GemHelper
2435
- extend ::Thor::Base::ClassMethods
2436
- extend ::Thor::Invocation::ClassMethods
2437
-
2438
- abstract!
2439
-
2440
- # @abstract
2441
- #
2442
- # source://tapioca//lib/tapioca/loaders/loader.rb#17
2443
- sig { abstract.void }
2444
- def load; end
2445
-
2446
- private
2447
-
2448
- # Rails 7.2 renamed `eager_load_paths` to `all_eager_load_paths`, which maintains the same original functionality.
2449
- # The `eager_load_paths` method still exists, but doesn't return all paths anymore and causes Tapioca to miss some
2450
- # engine paths. The following commit is the change:
2451
- # https://github.com/rails/rails/commit/ebfca905db14020589c22e6937382e6f8f687664
2452
- #
2453
- # source://tapioca//lib/tapioca/loaders/loader.rb#233
2454
- sig { params(engine: T.class_of(Rails::Engine)).returns(T::Array[::String]) }
2455
- def eager_load_paths(engine); end
2456
-
2457
- # source://tapioca//lib/tapioca/loaders/loader.rb#198
2458
- sig { void }
2459
- def eager_load_rails_app; end
2460
-
2461
- # @return [Array<T.class_of(Rails::Engine)>]
2462
- #
2463
- # source://tapioca//lib/tapioca/loaders/loader.rb#169
2464
- def engines; end
2465
-
2466
- # source://tapioca//lib/tapioca/loaders/loader.rb#29
2467
- sig do
2468
- params(
2469
- gemfile: ::Tapioca::Gemfile,
2470
- initialize_file: T.nilable(::String),
2471
- require_file: T.nilable(::String),
2472
- halt_upon_load_error: T::Boolean
2473
- ).void
2474
- end
2475
- def load_bundle(gemfile, initialize_file, require_file, halt_upon_load_error); end
2476
-
2477
- # source://tapioca//lib/tapioca/loaders/loader.rb#127
2478
- sig { void }
2479
- def load_engines_in_classic_mode; end
2480
-
2481
- # source://tapioca//lib/tapioca/loaders/loader.rb#105
2482
- sig { void }
2483
- def load_engines_in_zeitwerk_mode; end
2484
-
2485
- # source://tapioca//lib/tapioca/loaders/loader.rb#49
2486
- sig do
2487
- params(
2488
- environment_load: T::Boolean,
2489
- eager_load: T::Boolean,
2490
- app_root: ::String,
2491
- halt_upon_load_error: T::Boolean
2492
- ).void
2493
- end
2494
- def load_rails_application(environment_load: T.unsafe(nil), eager_load: T.unsafe(nil), app_root: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
2495
-
2496
- # source://tapioca//lib/tapioca/loaders/loader.rb#80
2497
- sig { void }
2498
- def load_rails_engines; end
2499
-
2500
- # source://tapioca//lib/tapioca/loaders/loader.rb#219
2501
- sig { params(file: T.nilable(::String)).void }
2502
- def require_helper(file); end
2503
-
2504
- # source://tapioca//lib/tapioca/loaders/loader.rb#94
2505
- def run_initializers; end
2506
-
2507
- # source://tapioca//lib/tapioca/loaders/loader.rb#183
2508
- sig { params(path: ::String).void }
2509
- def safe_require(path); end
2510
-
2511
- # source://tapioca//lib/tapioca/loaders/loader.rb#190
2512
- sig { void }
2513
- def silence_deprecations; end
2514
-
2515
- # source://tapioca//lib/tapioca/loaders/loader.rb#152
2516
- sig { params(blk: T.proc.void).void }
2517
- def with_rails_application(&blk); end
2518
-
2519
- # source://tapioca//lib/tapioca/loaders/loader.rb#145
2520
- sig { returns(T::Boolean) }
2521
- def zeitwerk_mode?; end
2522
- end
2523
-
2524
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#5
2525
- module Tapioca::RBIFilesHelper
2526
- requires_ancestor { Tapioca::SorbetHelper }
2527
- requires_ancestor { Thor::Shell }
2528
-
2529
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#48
2530
- sig do
2531
- params(
2532
- index: ::RBI::Index,
2533
- shim_rbi_dir: ::String,
2534
- todo_rbi_file: ::String
2535
- ).returns(T::Hash[::String, T::Array[::RBI::Node]])
2536
- end
2537
- def duplicated_nodes_from_index(index, shim_rbi_dir:, todo_rbi_file:); end
2538
-
2539
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#13
2540
- sig { params(index: ::RBI::Index, kind: ::String, file: ::String).void }
2541
- def index_rbi(index, kind, file); end
2542
-
2543
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#25
2544
- sig { params(index: ::RBI::Index, kind: ::String, dir: ::String, number_of_workers: T.nilable(::Integer)).void }
2545
- def index_rbis(index, kind, dir, number_of_workers:); end
2546
-
2547
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#65
2548
- sig { params(loc: ::RBI::Loc, path_prefix: T.nilable(::String)).returns(::String) }
2549
- def location_to_payload_url(loc, path_prefix:); end
2550
-
2551
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#86
2552
- sig do
2553
- params(
2554
- command: ::String,
2555
- gem_dir: ::String,
2556
- dsl_dir: ::String,
2557
- auto_strictness: T::Boolean,
2558
- gems: T::Array[::Tapioca::Gemfile::GemSpec],
2559
- compilers: T::Enumerable[T.class_of(Tapioca::Dsl::Compiler)]
2560
- ).void
2561
- end
2562
- def validate_rbi_files(command:, gem_dir:, dsl_dir:, auto_strictness:, gems: T.unsafe(nil), compilers: T.unsafe(nil)); end
2563
-
2564
- private
2565
-
2566
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#209
2567
- sig { params(nodes: T::Array[::RBI::Node]).returns(T::Array[::RBI::Scope]) }
2568
- def extract_empty_scopes(nodes); end
2569
-
2570
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#214
2571
- sig { params(nodes: T::Array[::RBI::Node]).returns(T::Array[T.any(::RBI::Attr, ::RBI::Method)]) }
2572
- def extract_methods_and_attrs(nodes); end
2573
-
2574
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#224
2575
- sig { params(nodes: T::Array[::RBI::Node]).returns(T::Array[T.any(::RBI::Mixin, ::RBI::RequiresAncestor)]) }
2576
- def extract_mixins(nodes); end
2577
-
2578
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#234
2579
- sig do
2580
- params(
2581
- nodes: T::Array[T.any(::RBI::Attr, ::RBI::Method)]
2582
- ).returns(T::Array[T.any(::RBI::Attr, ::RBI::Method)])
2583
- end
2584
- def extract_nodes_with_sigs(nodes); end
2585
-
2586
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#202
2587
- sig do
2588
- params(
2589
- nodes: T::Array[::RBI::Node],
2590
- shim_rbi_dir: ::String,
2591
- todo_rbi_file: ::String
2592
- ).returns(T::Array[::RBI::Node])
2593
- end
2594
- def extract_shims_and_todos(nodes, shim_rbi_dir:, todo_rbi_file:); end
2595
-
2596
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#266
2597
- sig { params(path: ::String).returns(::String) }
2598
- def gem_name_from_rbi_path(path); end
2599
-
2600
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#155
2601
- sig { params(index: ::RBI::Index, files: T::Array[::String], number_of_workers: T.nilable(::Integer)).void }
2602
- def parse_and_index_files(index, files, number_of_workers:); end
2603
-
2604
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#171
2605
- sig { params(nodes: T::Array[::RBI::Node], shim_rbi_dir: ::String, todo_rbi_file: ::String).returns(T::Boolean) }
2606
- def shims_or_todos_have_duplicates?(nodes, shim_rbi_dir:, todo_rbi_file:); end
2607
-
2608
- # source://tapioca//lib/tapioca/helpers/rbi_files_helper.rb#239
2609
- sig { params(errors: T::Array[::Spoom::Sorbet::Errors::Error], gem_dir: ::String).void }
2610
- def update_gem_rbis_strictnesses(errors, gem_dir); end
2611
- end
2612
-
2613
- # source://tapioca//lib/tapioca/rbi_formatter.rb#5
2614
- class Tapioca::RBIFormatter < ::RBI::Formatter
2615
- # source://tapioca//lib/tapioca/rbi_formatter.rb#22
2616
- sig { params(file: ::RBI::File).void }
2617
- def write_empty_body_comment!(file); end
2618
-
2619
- # source://tapioca//lib/tapioca/rbi_formatter.rb#15
2620
- sig { params(file: ::RBI::File, command: ::String, reason: T.nilable(::String)).void }
2621
- def write_header!(file, command, reason: T.unsafe(nil)); end
2622
- end
2623
-
2624
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#5
2625
- module Tapioca::RBIHelper
2626
- include ::Tapioca::SorbetHelper
2627
- extend ::Tapioca::SorbetHelper
2628
- extend ::Tapioca::RBIHelper
2629
-
2630
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#91
2631
- sig { params(type: ::String).returns(::String) }
2632
- def as_nilable_type(type); end
2633
-
2634
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#72
2635
- sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
2636
- def create_block_param(name, type:); end
2637
-
2638
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#62
2639
- sig { params(name: ::String, type: ::String, default: ::String).returns(::RBI::TypedParam) }
2640
- def create_kw_opt_param(name, type:, default:); end
2641
-
2642
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#57
2643
- sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
2644
- def create_kw_param(name, type:); end
2645
-
2646
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#67
2647
- sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
2648
- def create_kw_rest_param(name, type:); end
2649
-
2650
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#47
2651
- sig { params(name: ::String, type: ::String, default: ::String).returns(::RBI::TypedParam) }
2652
- def create_opt_param(name, type:, default:); end
2653
-
2654
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#42
2655
- sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
2656
- def create_param(name, type:); end
2657
-
2658
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#52
2659
- sig { params(name: ::String, type: ::String).returns(::RBI::TypedParam) }
2660
- def create_rest_param(name, type:); end
2661
-
2662
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#77
2663
- sig { params(param: ::RBI::Param, type: ::String).returns(::RBI::TypedParam) }
2664
- def create_typed_param(param, type); end
2665
-
2666
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#82
2667
- sig { params(sig_string: ::String).returns(::String) }
2668
- def sanitize_signature_types(sig_string); end
2669
-
2670
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#100
2671
- sig { params(name: ::String).returns(T::Boolean) }
2672
- def valid_method_name?(name); end
2673
-
2674
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#114
2675
- sig { params(name: ::String).returns(T::Boolean) }
2676
- def valid_parameter_name?(name); end
2677
-
2678
- class << self
2679
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#23
2680
- sig do
2681
- params(
2682
- type: ::String,
2683
- variance: ::Symbol,
2684
- fixed: T.nilable(::String),
2685
- upper: T.nilable(::String),
2686
- lower: T.nilable(::String)
2687
- ).returns(::String)
2688
- end
2689
- def serialize_type_variable(type, variance, fixed, upper, lower); end
2690
- end
2691
- end
2692
-
2693
- # source://tapioca//lib/tapioca/repo_index.rb#5
2694
- class Tapioca::RepoIndex
2695
- # source://tapioca//lib/tapioca/repo_index.rb#26
2696
- sig { void }
2697
- def initialize; end
2698
-
2699
- # source://tapioca//lib/tapioca/repo_index.rb#31
2700
- sig { params(gem_name: ::String).void }
2701
- def <<(gem_name); end
2702
-
2703
- # source://tapioca//lib/tapioca/repo_index.rb#36
2704
- sig { returns(T::Enumerable[::String]) }
2705
- def gems; end
2706
-
2707
- # source://tapioca//lib/tapioca/repo_index.rb#41
2708
- sig { params(gem_name: ::String).returns(T::Boolean) }
2709
- def has_gem?(gem_name); end
2710
-
2711
- class << self
2712
- # source://tapioca//lib/tapioca/repo_index.rb#18
2713
- sig { params(hash: T::Hash[::String, T::Hash[T.untyped, T.untyped]]).returns(Tapioca::RepoIndex) }
2714
- def from_hash(hash); end
2715
-
2716
- # source://tapioca//lib/tapioca/repo_index.rb#13
2717
- sig { params(json: ::String).returns(Tapioca::RepoIndex) }
2718
- def from_json(json); end
2719
- end
2720
- end
2721
-
2722
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#5
2723
- module Tapioca::Runtime; end
2724
-
2725
- # This module should only be included when running versions of Ruby
2726
- # older than 3.2. Because the Class#attached_object method is not
2727
- # available, it implements finding the attached class of a singleton
2728
- # class by iterating through ObjectSpace.
2729
- module Tapioca::Runtime::AttachedClassOf
2730
- # source://tapioca//lib/tapioca/runtime/attached_class_of_32.rb#14
2731
- sig { params(singleton_class: ::Class).returns(T.nilable(::Module)) }
2732
- def attached_class_of(singleton_class); end
2733
- end
2734
-
2735
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#6
2736
- class Tapioca::Runtime::DynamicMixinCompiler
2737
- include ::Tapioca::Runtime::AttachedClassOf
2738
- include ::Tapioca::Runtime::Reflection
2739
-
2740
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#20
2741
- sig { params(constant: ::Module).void }
2742
- def initialize(constant); end
2743
-
2744
- # @return [Array<Symbol>]
2745
- #
2746
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#14
2747
- def class_attribute_predicates; end
2748
-
2749
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#14
2750
- sig { returns(T::Array[::Symbol]) }
2751
- def class_attribute_readers; end
2752
-
2753
- # @return [Array<Symbol>]
2754
- #
2755
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#14
2756
- def class_attribute_writers; end
2757
-
2758
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#137
2759
- sig { params(tree: ::RBI::Tree).void }
2760
- def compile_class_attributes(tree); end
2761
-
2762
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#180
2763
- sig { params(tree: ::RBI::Tree).returns([T::Array[::Module], T::Array[::Module]]) }
2764
- def compile_mixes_in_class_methods(tree); end
2765
-
2766
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#11
2767
- sig { returns(T::Array[::Module]) }
2768
- def dynamic_extends; end
2769
-
2770
- # @return [Array<Module>]
2771
- #
2772
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#11
2773
- def dynamic_includes; end
2774
-
2775
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#132
2776
- sig { returns(T::Boolean) }
2777
- def empty_attributes?; end
2778
-
2779
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#222
2780
- sig { params(qualified_mixin_name: ::String).returns(T::Boolean) }
2781
- def filtered_mixin?(qualified_mixin_name); end
2782
-
2783
- # @return [Array<Symbol>]
2784
- #
2785
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#17
2786
- def instance_attribute_predicates; end
2787
-
2788
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#17
2789
- sig { returns(T::Array[::Symbol]) }
2790
- def instance_attribute_readers; end
2791
-
2792
- # @return [Array<Symbol>]
2793
- #
2794
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#17
2795
- def instance_attribute_writers; end
2796
-
2797
- # source://tapioca//lib/tapioca/runtime/dynamic_mixin_compiler.rb#215
2798
- sig { params(mod: ::Module, dynamic_extends: T::Array[::Module]).returns(T::Boolean) }
2799
- def module_included_by_another_dynamic_extend?(mod, dynamic_extends); end
2800
- end
2801
-
2802
- # This class is responsible for storing and looking up information related to generic types.
2803
- #
2804
- # The class stores 2 different kinds of data, in two separate lookup tables:
2805
- # 1. a lookup of generic type instances by name: `@generic_instances`
2806
- # 2. a lookup of type variable serializer by constant and type variable
2807
- # instance: `@type_variables`
2808
- #
2809
- # By storing the above data, we can cheaply query each constant against this registry
2810
- # to see if it declares any generic type variables. This becomes a simple lookup in the
2811
- # `@type_variables` hash table with the given constant.
2812
- #
2813
- # If there is no entry, then we can cheaply know that we can skip generic type
2814
- # information generation for this type.
2815
- #
2816
- # On the other hand, if we get a result, then the result will be a hash of type
2817
- # variable to type variable serializers. This allows us to associate type variables
2818
- # to the constant names that represent them, easily.
2819
- #
2820
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#23
2821
- module Tapioca::Runtime::GenericTypeRegistry
2822
- class << self
2823
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#80
2824
- sig { params(instance: ::Object).returns(T::Boolean) }
2825
- def generic_type_instance?(instance); end
2826
-
2827
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#85
2828
- sig { params(constant: ::Module).returns(T.nilable(T::Array[::Tapioca::TypeVariableModule])) }
2829
- def lookup_type_variables(constant); end
2830
-
2831
- # This method is responsible for building the name of the instantiated concrete type
2832
- # and cloning the given constant so that we can return a type that is the same
2833
- # as the current type but is a different instance and has a different name method.
2834
- #
2835
- # We cache those cloned instances by their name in `@generic_instances`, so that
2836
- # we don't keep instantiating a new type every single time it is referenced.
2837
- # For example, `[Foo[Integer], Foo[Integer], Foo[Integer], Foo[String]]` will only
2838
- # result in 2 clones (1 for `Foo[Integer]` and another for `Foo[String]`) and
2839
- # 2 hash lookups (for the other two `Foo[Integer]`s).
2840
- #
2841
- # This method returns the created or cached clone of the constant.
2842
- #
2843
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#65
2844
- sig { params(constant: T.untyped, types: T.untyped).returns(::Module) }
2845
- def register_type(constant, types); end
2846
-
2847
- # This method is called from intercepted calls to `type_member` and `type_template`.
2848
- # We get passed all the arguments to those methods, as well as the `T::Types::TypeVariable`
2849
- # instance generated by the Sorbet defined `type_member`/`type_template` call on `T::Generic`.
2850
- #
2851
- # This method creates a `String` with that data and stores it in the
2852
- # `@type_variables` lookup table, keyed by the `constant` and `type_variable`.
2853
- #
2854
- # Finally, the original `type_variable` is returned from this method, so that the caller
2855
- # can return it from the original methods as well.
2856
- #
2857
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#104
2858
- sig { params(constant: T.untyped, type_variable: ::Tapioca::TypeVariableModule).void }
2859
- def register_type_variable(constant, type_variable); end
2860
-
2861
- private
2862
-
2863
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#113
2864
- sig { params(constant: ::Module, name: ::String).returns(::Module) }
2865
- def create_generic_type(constant, name); end
2866
-
2867
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#155
2868
- sig { params(constant: T::Class[T.anything]).returns(T::Class[T.anything]) }
2869
- def create_safe_subclass(constant); end
2870
-
2871
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#182
2872
- sig { params(constant: ::Module).returns(T::Array[::Tapioca::TypeVariableModule]) }
2873
- def lookup_or_initialize_type_variables(constant); end
2874
- end
2875
- end
2876
-
2877
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#34
2878
- class Tapioca::Runtime::GenericTypeRegistry::GenericType < ::T::Types::Simple
2879
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#38
2880
- sig { params(raw_type: ::Module, underlying_type: ::Module).void }
2881
- def initialize(raw_type, underlying_type); end
2882
-
2883
- # source://tapioca//lib/tapioca/runtime/generic_type_registry.rb#45
2884
- sig { params(obj: T.untyped).returns(T::Boolean) }
2885
- def valid?(obj); end
2886
- end
2887
-
2888
- module Tapioca::Runtime::Reflection
2889
- include ::Tapioca::Runtime::AttachedClassOf
2890
- extend ::Tapioca::Runtime::AttachedClassOf
2891
- extend ::Tapioca::Runtime::Reflection
2892
-
2893
- # source://tapioca//lib/tapioca/runtime/reflection.rb#196
2894
- sig { params(constant: ::Module).returns(T.untyped) }
2895
- def abstract_type_of(constant); end
2896
-
2897
- # source://tapioca//lib/tapioca/runtime/reflection.rb#77
2898
- sig { params(constant: ::Module).returns(T::Array[::Module]) }
2899
- def ancestors_of(constant); end
2900
-
2901
- # source://tapioca//lib/tapioca/runtime/reflection.rb#92
2902
- sig { params(object: ::BasicObject, other: ::BasicObject).returns(T::Boolean) }
2903
- def are_equal?(object, other); end
2904
-
2905
- # source://tapioca//lib/tapioca/runtime/reflection.rb#56
2906
- sig { params(object: ::BasicObject).returns(T::Class[T.anything]) }
2907
- def class_of(object); end
2908
-
2909
- # @param constant [BasicObject]
2910
- # @return [Boolean]
2911
- #
2912
- # source://tapioca//lib/tapioca/runtime/reflection.rb#38
2913
- def constant_defined?(constant); end
2914
-
2915
- # source://tapioca//lib/tapioca/runtime/reflection.rb#49
2916
- sig { params(symbol: ::String, inherit: T::Boolean, namespace: ::Module).returns(::BasicObject) }
2917
- def constantize(symbol, inherit: T.unsafe(nil), namespace: T.unsafe(nil)); end
2918
-
2919
- # source://tapioca//lib/tapioca/runtime/reflection.rb#61
2920
- sig { params(constant: ::Module).returns(T::Array[::Symbol]) }
2921
- def constants_of(constant); end
2922
-
2923
- # Returns an array with all classes that are < than the supplied class.
2924
- #
2925
- # class C; end
2926
- # descendants_of(C) # => []
2927
- #
2928
- # class B < C; end
2929
- # descendants_of(C) # => [B]
2930
- #
2931
- # class A < B; end
2932
- # descendants_of(C) # => [B, A]
2933
- #
2934
- # class D < C; end
2935
- # descendants_of(C) # => [B, A, D]
2936
- #
2937
- # source://tapioca//lib/tapioca/runtime/reflection.rb#167
2938
- sig do
2939
- type_parameters(:U)
2940
- .params(
2941
- klass: T.all(T.type_parameter(:U), T::Class[T.anything])
2942
- ).returns(T::Array[T.type_parameter(:U)])
2943
- end
2944
- def descendants_of(klass); end
2945
-
2946
- # source://tapioca//lib/tapioca/runtime/reflection.rb#189
2947
- sig { params(constant: ::Module).returns(T::Set[::String]) }
2948
- def file_candidates_for(constant); end
2949
-
2950
- # source://tapioca//lib/tapioca/runtime/reflection.rb#202
2951
- sig { params(constant: ::Module).returns(T::Boolean) }
2952
- def final_module?(constant); end
2953
-
2954
- # source://tapioca//lib/tapioca/runtime/reflection.rb#112
2955
- sig { params(constant: ::Module).returns(T::Array[::Module]) }
2956
- def inherited_ancestors_of(constant); end
2957
-
2958
- # source://tapioca//lib/tapioca/runtime/reflection.rb#145
2959
- sig { params(constant: ::Module, method: ::Symbol).returns(::Method) }
2960
- def method_of(constant, method); end
2961
-
2962
- # source://tapioca//lib/tapioca/runtime/reflection.rb#66
2963
- sig { params(constant: ::Module).returns(T.nilable(::String)) }
2964
- def name_of(constant); end
2965
-
2966
- # source://tapioca//lib/tapioca/runtime/reflection.rb#140
2967
- sig { params(type: ::T::Types::Base).returns(::String) }
2968
- def name_of_type(type); end
2969
-
2970
- # source://tapioca//lib/tapioca/runtime/reflection.rb#87
2971
- sig { params(object: ::BasicObject).returns(::Integer) }
2972
- def object_id_of(object); end
2973
-
2974
- # source://tapioca//lib/tapioca/runtime/reflection.rb#107
2975
- sig { params(constant: ::Module).returns(T::Array[::Symbol]) }
2976
- def private_instance_methods_of(constant); end
2977
-
2978
- # source://tapioca//lib/tapioca/runtime/reflection.rb#102
2979
- sig { params(constant: ::Module).returns(T::Array[::Symbol]) }
2980
- def protected_instance_methods_of(constant); end
2981
-
2982
- # source://tapioca//lib/tapioca/runtime/reflection.rb#97
2983
- sig { params(constant: ::Module).returns(T::Array[::Symbol]) }
2984
- def public_instance_methods_of(constant); end
2985
-
2986
- # source://tapioca//lib/tapioca/runtime/reflection.rb#121
2987
- sig { params(constant: ::Module).returns(T.nilable(::String)) }
2988
- def qualified_name_of(constant); end
2989
-
2990
- # Examines the call stack to identify the closest location where a "require" is performed
2991
- # by searching for the label "<top (required)>". If none is found, it returns the location
2992
- # labeled "<main>", which is the original call site.
2993
- #
2994
- # source://tapioca//lib/tapioca/runtime/reflection.rb#179
2995
- sig { params(locations: T.nilable(T::Array[::Thread::Backtrace::Location])).returns(::String) }
2996
- def resolve_loc(locations); end
2997
-
2998
- # source://tapioca//lib/tapioca/runtime/reflection.rb#207
2999
- sig { params(constant: ::Module).returns(T::Boolean) }
3000
- def sealed_module?(constant); end
3001
-
3002
- # source://tapioca//lib/tapioca/runtime/reflection.rb#133
3003
- sig { params(method: T.any(::Method, ::UnboundMethod)).returns(T.untyped) }
3004
- def signature_of(method); end
3005
-
3006
- # source://tapioca//lib/tapioca/runtime/reflection.rb#72
3007
- sig { params(constant: ::Module).returns(T::Class[T.anything]) }
3008
- def singleton_class_of(constant); end
3009
-
3010
- # source://tapioca//lib/tapioca/runtime/reflection.rb#82
3011
- sig { params(constant: T::Class[T.anything]).returns(T.nilable(T::Class[T.anything])) }
3012
- def superclass_of(constant); end
3013
-
3014
- private
3015
-
3016
- # source://tapioca//lib/tapioca/runtime/reflection.rb#244
3017
- sig { params(parent: ::Module, name: ::String).returns(T.nilable(::Module)) }
3018
- def child_module_for_parent_with_name(parent, name); end
3019
-
3020
- # source://tapioca//lib/tapioca/runtime/reflection.rb#260
3021
- sig { params(name: ::String).returns(T::Boolean) }
3022
- def has_aliased_namespace?(name); end
3023
-
3024
- # source://tapioca//lib/tapioca/runtime/reflection.rb#255
3025
- sig { params(method: ::UnboundMethod).returns(T::Boolean) }
3026
- def method_defined_by_forwardable_module?(method); end
3027
-
3028
- # source://tapioca//lib/tapioca/runtime/reflection.rb#230
3029
- sig { params(constant: ::Module).returns(T::Array[::UnboundMethod]) }
3030
- def methods_for(constant); end
3031
-
3032
- # source://tapioca//lib/tapioca/runtime/reflection.rb#214
3033
- sig { params(constant: ::Module).returns(T::Array[::UnboundMethod]) }
3034
- def relevant_methods_for(constant); end
3035
- end
3036
-
3037
- # source://tapioca//lib/tapioca/runtime/reflection.rb#25
3038
- Tapioca::Runtime::Reflection::ANCESTORS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3039
-
3040
- # source://tapioca//lib/tapioca/runtime/reflection.rb#21
3041
- Tapioca::Runtime::Reflection::CLASS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3042
-
3043
- # source://tapioca//lib/tapioca/runtime/reflection.rb#22
3044
- Tapioca::Runtime::Reflection::CONSTANTS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3045
-
3046
- # source://tapioca//lib/tapioca/runtime/reflection.rb#28
3047
- Tapioca::Runtime::Reflection::EQUAL_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3048
-
3049
- # source://tapioca//lib/tapioca/runtime/reflection.rb#32
3050
- Tapioca::Runtime::Reflection::METHOD_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3051
-
3052
- # source://tapioca//lib/tapioca/runtime/reflection.rb#23
3053
- Tapioca::Runtime::Reflection::NAME_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3054
-
3055
- # source://tapioca//lib/tapioca/runtime/reflection.rb#27
3056
- Tapioca::Runtime::Reflection::OBJECT_ID_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3057
-
3058
- # source://tapioca//lib/tapioca/runtime/reflection.rb#31
3059
- Tapioca::Runtime::Reflection::PRIVATE_INSTANCE_METHODS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3060
-
3061
- # source://tapioca//lib/tapioca/runtime/reflection.rb#30
3062
- Tapioca::Runtime::Reflection::PROTECTED_INSTANCE_METHODS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3063
-
3064
- # source://tapioca//lib/tapioca/runtime/reflection.rb#29
3065
- Tapioca::Runtime::Reflection::PUBLIC_INSTANCE_METHODS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3066
-
3067
- # source://tapioca//lib/tapioca/runtime/reflection.rb#35
3068
- Tapioca::Runtime::Reflection::REQUIRED_FROM_LABELS = T.let(T.unsafe(nil), Array)
3069
-
3070
- # source://tapioca//lib/tapioca/runtime/reflection.rb#24
3071
- Tapioca::Runtime::Reflection::SINGLETON_CLASS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3072
-
3073
- # source://tapioca//lib/tapioca/runtime/reflection.rb#26
3074
- Tapioca::Runtime::Reflection::SUPERCLASS_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3075
-
3076
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#6
3077
- module Tapioca::Runtime::Trackers
3078
- class << self
3079
- # source://tapioca//lib/tapioca/runtime/trackers.rb#34
3080
- sig { void }
3081
- def disable_all!; end
3082
-
3083
- # source://tapioca//lib/tapioca/runtime/trackers.rb#39
3084
- sig { params(tracker: ::Tapioca::Runtime::Trackers::Tracker).void }
3085
- def register_tracker(tracker); end
3086
-
3087
- # source://tapioca//lib/tapioca/runtime/trackers.rb#21
3088
- sig do
3089
- type_parameters(:Return)
3090
- .params(
3091
- blk: T.proc.returns(T.type_parameter(:Return))
3092
- ).returns(T.type_parameter(:Return))
3093
- end
3094
- def with_trackers_enabled(&blk); end
3095
- end
3096
- end
3097
-
3098
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#7
3099
- module Tapioca::Runtime::Trackers::Autoload
3100
- extend ::Tapioca::Runtime::Trackers::Tracker
3101
-
3102
- class << self
3103
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#19
3104
- sig { void }
3105
- def eager_load_all!; end
3106
-
3107
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#31
3108
- sig { params(constant_name: ::String).void }
3109
- def register(constant_name); end
3110
-
3111
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#42
3112
- sig do
3113
- type_parameters(:Result)
3114
- .params(
3115
- block: T.proc.returns(T.type_parameter(:Result))
3116
- ).returns(T.type_parameter(:Result))
3117
- end
3118
- def with_disabled_exits(&block); end
3119
- end
3120
- end
3121
-
3122
- # source://tapioca//lib/tapioca/runtime/trackers/autoload.rb#11
3123
- Tapioca::Runtime::Trackers::Autoload::NOOP_METHOD = T.let(T.unsafe(nil), Proc)
3124
-
3125
- # Registers a TracePoint immediately upon load to track points at which
3126
- # classes and modules are opened for definition. This is used to track
3127
- # correspondence between classes/modules and files, as this information isn't
3128
- # available in the ruby runtime without extra accounting.
3129
- module Tapioca::Runtime::Trackers::ConstantDefinition
3130
- extend ::Tapioca::Runtime::Trackers::Tracker
3131
- extend ::Tapioca::Runtime::AttachedClassOf
3132
- extend ::Tapioca::Runtime::Reflection
3133
-
3134
- class << self
3135
- # source://tapioca//lib/tapioca/runtime/trackers/constant_definition.rb#61
3136
- def build_constant_location(tp, locations); end
3137
-
3138
- # source://tapioca//lib/tapioca/runtime/trackers/constant_definition.rb#55
3139
- def disable!; end
3140
-
3141
- # Returns the files in which this class or module was opened. Doesn't know
3142
- # about situations where the class was opened prior to +require+ing,
3143
- # or where metaprogramming was used via +eval+, etc.
3144
- #
3145
- # source://tapioca//lib/tapioca/runtime/trackers/constant_definition.rb#71
3146
- def files_for(klass); end
3147
-
3148
- # source://tapioca//lib/tapioca/runtime/trackers/constant_definition.rb#75
3149
- def locations_for(klass); end
3150
- end
3151
- end
3152
-
3153
- module Tapioca::Runtime::Trackers::Mixin
3154
- extend ::Tapioca::Runtime::Trackers::Tracker
3155
-
3156
- class << self
3157
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#56
3158
- sig do
3159
- params(
3160
- mixin: ::Module
3161
- ).returns(T::Hash[::Tapioca::Runtime::Trackers::Mixin::Type, T::Hash[::Module, ::String]])
3162
- end
3163
- def constants_with_mixin(mixin); end
3164
-
3165
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#61
3166
- sig do
3167
- params(
3168
- mixin: ::Module,
3169
- mixin_type: ::Tapioca::Runtime::Trackers::Mixin::Type,
3170
- constant: ::Module
3171
- ).returns(T.nilable(::String))
3172
- end
3173
- def mixin_location(mixin, mixin_type, constant); end
3174
-
3175
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#35
3176
- sig { params(constant: ::Module, mixin: ::Module, mixin_type: ::Tapioca::Runtime::Trackers::Mixin::Type).void }
3177
- def register(constant, mixin, mixin_type); end
3178
-
3179
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#43
3180
- def resolve_to_attached_class(constant, mixin, mixin_type); end
3181
-
3182
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#30
3183
- sig do
3184
- type_parameters(:Result)
3185
- .params(
3186
- block: T.proc.returns(T.type_parameter(:Result))
3187
- ).returns(T.type_parameter(:Result))
3188
- end
3189
- def with_disabled_registration(&block); end
3190
-
3191
- private
3192
-
3193
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#76
3194
- sig do
3195
- params(
3196
- mixin: ::Module
3197
- ).returns(T::Hash[::Tapioca::Runtime::Trackers::Mixin::Type, T::Hash[::Module, ::String]])
3198
- end
3199
- def find_or_initialize_mixin_lookup(mixin); end
3200
-
3201
- # source://tapioca//lib/tapioca/runtime/trackers/mixin.rb#68
3202
- sig do
3203
- params(
3204
- constant: ::Module,
3205
- mixin: ::Module,
3206
- mixin_type: ::Tapioca::Runtime::Trackers::Mixin::Type,
3207
- location: ::String
3208
- ).void
3209
- end
3210
- def register_with_location(constant, mixin, mixin_type, location); end
3211
- end
3212
- end
3213
-
3214
- class Tapioca::Runtime::Trackers::Mixin::Type < ::T::Enum
3215
- enums do
3216
- Prepend = new
3217
- Include = new
3218
- Extend = new
3219
- end
3220
- end
3221
-
3222
- # source://tapioca//lib/tapioca/runtime/trackers/required_ancestor.rb#7
3223
- module Tapioca::Runtime::Trackers::RequiredAncestor
3224
- extend ::Tapioca::Runtime::Trackers::Tracker
3225
-
3226
- class << self
3227
- # source://tapioca//lib/tapioca/runtime/trackers/required_ancestor.rb#15
3228
- sig { params(requiring: ::T::Helpers, block: T.proc.void).void }
3229
- def register(requiring, block); end
3230
-
3231
- # source://tapioca//lib/tapioca/runtime/trackers/required_ancestor.rb#23
3232
- sig { params(mod: ::Module).returns(T::Array[T.proc.void]) }
3233
- def required_ancestors_blocks_by(mod); end
3234
-
3235
- # source://tapioca//lib/tapioca/runtime/trackers/required_ancestor.rb#28
3236
- sig { params(mod: ::Module).returns(T::Array[T.untyped]) }
3237
- def required_ancestors_by(mod); end
3238
- end
3239
- end
3240
-
3241
- # @abstract Subclasses must implement the `abstract` methods below.
3242
- module Tapioca::Runtime::Trackers::Tracker
3243
- abstract!
3244
-
3245
- # source://tapioca//lib/tapioca/runtime/trackers/tracker.rb#26
3246
- sig { void }
3247
- def disable!; end
3248
-
3249
- # @return [Boolean]
3250
- #
3251
- # source://tapioca//lib/tapioca/runtime/trackers/tracker.rb#30
3252
- def enabled?; end
3253
-
3254
- # source://tapioca//lib/tapioca/runtime/trackers/tracker.rb#34
3255
- def with_disabled_tracker(&block); end
3256
-
3257
- class << self
3258
- # source://tapioca//lib/tapioca/runtime/trackers/tracker.rb#17
3259
- sig { params(base: T.all(::Module, ::Tapioca::Runtime::Trackers::Tracker)).void }
3260
- def extended(base); end
3261
- end
3262
- end
3263
-
3264
- # source://tapioca//lib/tapioca.rb#33
3265
- Tapioca::SORBET_CONFIG_FILE = T.let(T.unsafe(nil), String)
3266
-
3267
- # source://tapioca//lib/tapioca.rb#32
3268
- Tapioca::SORBET_DIR = T.let(T.unsafe(nil), String)
3269
-
3270
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#5
3271
- module Tapioca::SorbetHelper
3272
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#32
3273
- sig { params(sorbet_args: ::String).returns(::Spoom::ExecResult) }
3274
- def sorbet(*sorbet_args); end
3275
-
3276
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#37
3277
- sig { returns(::String) }
3278
- def sorbet_path; end
3279
-
3280
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#44
3281
- sig { params(feature: ::Symbol, version: T.nilable(::Gem::Version)).returns(T::Boolean) }
3282
- def sorbet_supports?(feature, version: T.unsafe(nil)); end
3283
- end
3284
-
3285
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#24
3286
- Tapioca::SorbetHelper::FEATURE_REQUIREMENTS = T.let(T.unsafe(nil), Hash)
3287
-
3288
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#13
3289
- Tapioca::SorbetHelper::SORBET_BIN = T.let(T.unsafe(nil), Pathname)
3290
-
3291
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#18
3292
- Tapioca::SorbetHelper::SORBET_EXE_PATH_ENV_VAR = T.let(T.unsafe(nil), String)
3293
-
3294
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#8
3295
- Tapioca::SorbetHelper::SORBET_GEM_SPEC = T.let(T.unsafe(nil), Gem::Specification)
3296
-
3297
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#20
3298
- Tapioca::SorbetHelper::SORBET_PAYLOAD_URL = T.let(T.unsafe(nil), String)
3299
-
3300
- # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#22
3301
- Tapioca::SorbetHelper::SPOOM_CONTEXT = T.let(T.unsafe(nil), Spoom::Context)
3302
-
3303
- # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#5
3304
- module Tapioca::Static; end
3305
-
3306
- # source://tapioca//lib/tapioca/static/requires_compiler.rb#6
3307
- class Tapioca::Static::RequiresCompiler
3308
- # source://tapioca//lib/tapioca/static/requires_compiler.rb#10
3309
- sig { params(sorbet_path: ::String).void }
3310
- def initialize(sorbet_path); end
3311
-
3312
- # source://tapioca//lib/tapioca/static/requires_compiler.rb#15
3313
- sig { returns(::String) }
3314
- def compile; end
3315
-
3316
- private
3317
-
3318
- # source://tapioca//lib/tapioca/static/requires_compiler.rb#29
3319
- sig { params(config: ::Spoom::Sorbet::Config).returns(T::Array[::String]) }
3320
- def collect_files(config); end
3321
-
3322
- # source://tapioca//lib/tapioca/static/requires_compiler.rb#44
3323
- sig { params(file_path: ::String).returns(T::Enumerable[::String]) }
3324
- def collect_requires(file_path); end
3325
-
3326
- # source://tapioca//lib/tapioca/static/requires_compiler.rb#51
3327
- sig { params(config: ::Spoom::Sorbet::Config, file_path: ::Pathname).returns(T::Boolean) }
3328
- def file_ignored_by_sorbet?(config, file_path); end
3329
-
3330
- # source://tapioca//lib/tapioca/static/requires_compiler.rb#80
3331
- sig { params(path: ::Pathname).returns(T::Array[::String]) }
3332
- def path_parts(path); end
3333
- end
3334
-
3335
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#6
3336
- module Tapioca::Static::SymbolLoader
3337
- extend ::Tapioca::SorbetHelper
3338
- extend ::Tapioca::Runtime::AttachedClassOf
3339
- extend ::Tapioca::Runtime::Reflection
3340
-
3341
- class << self
3342
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#23
3343
- sig { params(gem: ::Tapioca::Gemfile::GemSpec).returns(T::Set[::String]) }
3344
- def engine_symbols(gem); end
3345
-
3346
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#48
3347
- sig { params(gem: ::Tapioca::Gemfile::GemSpec).returns(T::Set[::String]) }
3348
- def gem_symbols(gem); end
3349
-
3350
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#13
3351
- sig { returns(T::Set[::String]) }
3352
- def payload_symbols; end
3353
-
3354
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#53
3355
- sig { params(paths: T::Array[::Pathname]).returns(T::Set[::String]) }
3356
- def symbols_from_paths(paths); end
3357
-
3358
- private
3359
-
3360
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#69
3361
- sig { returns(T::Array[T.class_of(Rails::Engine)]) }
3362
- def engines; end
3363
-
3364
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#82
3365
- sig { params(input: ::String, table_type: ::String).returns(::String) }
3366
- def symbol_table_json_from(input, table_type: T.unsafe(nil)); end
3367
- end
3368
- end
3369
-
3370
- # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#6
3371
- class Tapioca::Static::SymbolTableParser
3372
- # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#30
3373
- sig { void }
3374
- def initialize; end
3375
-
3376
- # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#65
3377
- sig { params(name: ::String).returns(::String) }
3378
- def fully_qualified_name(name); end
3379
-
3380
- # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#36
3381
- sig { params(object: T::Hash[::String, T.untyped]).void }
3382
- def parse_object(object); end
3383
-
3384
- # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#27
3385
- sig { returns(T::Set[::String]) }
3386
- def symbols; end
3387
-
3388
- class << self
3389
- # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#15
3390
- sig { params(json_string: ::String).returns(T::Set[::String]) }
3391
- def parse_json(json_string); end
3392
- end
3393
- end
3394
-
3395
- # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#9
3396
- Tapioca::Static::SymbolTableParser::SKIP_PARSE_KINDS = T.let(T.unsafe(nil), Array)
3397
-
3398
- # source://tapioca//lib/tapioca.rb#35
3399
- Tapioca::TAPIOCA_CONFIG_FILE = T.let(T.unsafe(nil), String)
3400
-
3401
- # source://tapioca//lib/tapioca.rb#34
3402
- Tapioca::TAPIOCA_DIR = T.let(T.unsafe(nil), String)
3403
-
3404
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#108
3405
- class Tapioca::TypeVariable < ::T::Types::TypeVariable
3406
- # @return [TypeVariable] a new instance of TypeVariable
3407
- #
3408
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#109
3409
- def initialize(name, variance); end
3410
-
3411
- # Returns the value of attribute name.
3412
- #
3413
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#114
3414
- def name; end
3415
- end
3416
-
3417
- # This is subclassing from `Module` so that instances of this type will be modules.
3418
- # The reason why we want that is because that means those instances will automatically
3419
- # get bound to the constant names they are assigned to by Ruby. As a result, we don't
3420
- # need to do any matching of constants to type variables to bind their names, Ruby will
3421
- # do that automatically for us and we get the `name` method for free from `Module`.
3422
- #
3423
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#122
3424
- class Tapioca::TypeVariableModule < ::Module
3425
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#146
3426
- sig do
3427
- params(
3428
- context: ::Module,
3429
- type: ::Tapioca::TypeVariableModule::Type,
3430
- variance: ::Symbol,
3431
- bounds_proc: T.nilable(T.proc.returns(T::Hash[::Symbol, T.untyped]))
3432
- ).void
3433
- end
3434
- def initialize(context, type, variance, bounds_proc); end
3435
-
3436
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#181
3437
- sig { returns(::Tapioca::TypeVariable) }
3438
- def coerce_to_type_variable; end
3439
-
3440
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#161
3441
- sig { returns(T::Boolean) }
3442
- def fixed?; end
3443
-
3444
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#155
3445
- sig { returns(T.nilable(::String)) }
3446
- def name; end
3447
-
3448
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#166
3449
- sig { returns(::String) }
3450
- def serialize; end
3451
-
3452
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#136
3453
- sig { returns(::Tapioca::TypeVariableModule::Type) }
3454
- def type; end
3455
-
3456
- private
3457
-
3458
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#188
3459
- sig { returns(T::Hash[::Symbol, T.untyped]) }
3460
- def bounds; end
3461
- end
3462
-
3463
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#133
3464
- Tapioca::TypeVariableModule::DEFAULT_BOUNDS_PROC = T.let(T.unsafe(nil), Proc)
3465
-
3466
- # source://tapioca//lib/tapioca/sorbet_ext/generic_name_patch.rb#125
3467
- class Tapioca::TypeVariableModule::Type < ::T::Enum
3468
- enums do
3469
- Member = new
3470
- Template = new
3471
- HasAttachedClass = new
3472
- end
3473
- end
3474
-
3475
- # source://tapioca//lib/tapioca/version.rb#5
3476
- Tapioca::VERSION = T.let(T.unsafe(nil), String)
3477
-
3478
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#6
3479
- module URI
3480
- include ::URI::RFC2396_REGEXP
3481
- end
3482
-
3483
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#7
3484
- class URI::Source < ::URI::File
3485
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#58
3486
- sig { params(v: T.nilable(::String)).returns(T::Boolean) }
3487
- def check_host(v); end
3488
-
3489
- # source://uri/0.12.1/uri/generic.rb#243
3490
- def gem_name; end
3491
-
3492
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#25
3493
- sig { returns(T.nilable(::String)) }
3494
- def gem_version; end
3495
-
3496
- # source://uri/0.12.1/uri/generic.rb#283
3497
- def line_number; end
3498
-
3499
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#51
3500
- sig { params(v: T.nilable(::String)).void }
3501
- def set_path(v); end
3502
-
3503
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#70
3504
- sig { returns(::String) }
3505
- def to_s; end
3506
-
3507
- class << self
3508
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#38
3509
- sig do
3510
- params(
3511
- gem_name: ::String,
3512
- gem_version: T.nilable(::String),
3513
- path: ::String,
3514
- line_number: T.nilable(::String)
3515
- ).returns(::URI::Source)
3516
- end
3517
- def build(gem_name:, gem_version:, path:, line_number:); end
3518
- end
3519
- end
3520
-
3521
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#10
3522
- URI::Source::COMPONENT = T.let(T.unsafe(nil), Array)
3523
-
3524
- class URI::WSS < ::URI::WS; end