tsumanne 0.0.3 → 0.0.4

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