sorbet-result 1.2.0 → 1.4.0

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 (44) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/CHANGELOG.md +12 -0
  4. data/Gemfile.lock +74 -51
  5. data/README.md +1 -1
  6. data/lib/typed/no_payload_on_failure_error.rb +8 -3
  7. data/lib/typed/result.rb +1 -1
  8. data/sorbet/rbi/gems/{ast@2.4.2.rbi → ast@2.4.3.rbi} +3 -3
  9. data/sorbet/rbi/gems/benchmark@0.4.1.rbi +619 -0
  10. data/sorbet/rbi/gems/date@3.4.1.rbi +75 -0
  11. data/sorbet/rbi/gems/erb@5.0.1.rbi +878 -0
  12. data/sorbet/rbi/gems/{erubi@1.13.0.rbi → erubi@1.13.1.rbi} +14 -9
  13. data/sorbet/rbi/gems/{json@2.7.5.rbi → json@2.12.2.rbi} +654 -232
  14. data/sorbet/rbi/gems/{language_server-protocol@3.17.0.3.rbi → language_server-protocol@3.17.0.5.rbi} +11 -5
  15. data/sorbet/rbi/gems/logger@1.7.0.rbi +963 -0
  16. data/sorbet/rbi/gems/{minitest@5.25.1.rbi → minitest@5.25.5.rbi} +227 -220
  17. data/sorbet/rbi/gems/{parser@3.3.5.1.rbi → parser@3.3.8.0.rbi} +215 -199
  18. data/sorbet/rbi/gems/pp@0.6.2.rbi +368 -0
  19. data/sorbet/rbi/gems/prettyprint@0.2.0.rbi +477 -0
  20. data/sorbet/rbi/gems/{prism@1.2.0.rbi → prism@1.4.0.rbi} +6569 -3922
  21. data/sorbet/rbi/gems/{psych@5.1.2.rbi → psych@5.2.6.rbi} +973 -236
  22. data/sorbet/rbi/gems/{rake@13.2.1.rbi → rake@13.3.0.rbi} +15 -12
  23. data/sorbet/rbi/gems/{rbi@0.2.1.rbi → rbi@0.3.6.rbi} +3340 -982
  24. data/sorbet/rbi/gems/rbs@3.9.4.rbi +6976 -0
  25. data/sorbet/rbi/gems/{regexp_parser@2.9.2.rbi → regexp_parser@2.10.0.rbi} +193 -170
  26. data/sorbet/rbi/gems/rexml@3.4.1.rbi +5243 -0
  27. data/sorbet/rbi/gems/{rubocop-ast@1.33.1.rbi → rubocop-ast@1.45.1.rbi} +1069 -826
  28. data/sorbet/rbi/gems/{rubocop@1.66.1.rbi → rubocop@1.75.8.rbi} +7880 -4054
  29. data/sorbet/rbi/gems/{spoom@1.5.0.rbi → spoom@1.6.3.rbi} +3013 -960
  30. data/sorbet/rbi/gems/{standard@1.41.1.rbi → standard@1.50.0.rbi} +68 -59
  31. data/sorbet/rbi/gems/{tapioca@0.16.3.rbi → tapioca@0.16.11.rbi} +273 -248
  32. data/sorbet/rbi/gems/unicode-display_width@3.1.4.rbi +132 -0
  33. data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +251 -0
  34. metadata +38 -34
  35. data/.tool-versions +0 -1
  36. data/sorbet/rbi/gems/unicode-display_width@2.6.0.rbi +0 -66
  37. /data/sorbet/rbi/gems/{io-console@0.7.2.rbi → io-console@0.8.0.rbi} +0 -0
  38. /data/sorbet/rbi/gems/{parallel@1.26.3.rbi → parallel@1.27.0.rbi} +0 -0
  39. /data/sorbet/rbi/gems/{reline@0.5.10.rbi → reline@0.6.1.rbi} +0 -0
  40. /data/sorbet/rbi/gems/{rubocop-performance@1.22.1.rbi → rubocop-performance@1.25.0.rbi} +0 -0
  41. /data/sorbet/rbi/gems/{rubocop-sorbet@0.7.8.rbi → rubocop-sorbet@0.9.0.rbi} +0 -0
  42. /data/sorbet/rbi/gems/{standard-performance@1.5.0.rbi → standard-performance@1.8.0.rbi} +0 -0
  43. /data/sorbet/rbi/gems/{standard-sorbet@0.0.2.rbi → standard-sorbet@0.0.3.rbi} +0 -0
  44. /data/sorbet/rbi/gems/{stringio@3.1.1.rbi → stringio@3.1.7.rbi} +0 -0
@@ -1,4 +1,4 @@
1
- # typed: true
1
+ # typed: false
2
2
 
3
3
  # DO NOT EDIT MANUALLY
4
4
  # This is an autogenerated file for types exported from the `tapioca` gem.
@@ -55,26 +55,16 @@ module RBI; end
55
55
 
56
56
  # source://tapioca//lib/tapioca/rbi_ext/model.rb#5
57
57
  class RBI::Tree < ::RBI::NodeWithComments
58
- # source://rbi/0.2.1/lib/rbi/model.rb#121
59
- sig do
60
- params(
61
- loc: T.nilable(::RBI::Loc),
62
- comments: T::Array[::RBI::Comment],
63
- block: T.nilable(T.proc.params(node: ::RBI::Tree).void)
64
- ).void
65
- end
58
+ # source://rbi/0.3.6/lib/rbi/model.rb#113
66
59
  def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
67
60
 
68
- # source://rbi/0.2.1/lib/rbi/model.rb#128
69
- sig { params(node: ::RBI::Node).void }
61
+ # source://rbi/0.3.6/lib/rbi/model.rb#120
70
62
  def <<(node); end
71
63
 
72
- # source://rbi/0.2.1/lib/rbi/rewriters/add_sig_templates.rb#66
73
- sig { params(with_todo_comment: T::Boolean).void }
64
+ # source://rbi/0.3.6/lib/rbi/rewriters/add_sig_templates.rb#63
74
65
  def add_sig_templates!(with_todo_comment: T.unsafe(nil)); end
75
66
 
76
- # source://rbi/0.2.1/lib/rbi/rewriters/annotate.rb#49
77
- sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void }
67
+ # source://rbi/0.3.6/lib/rbi/rewriters/annotate.rb#46
78
68
  def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end
79
69
 
80
70
  # source://tapioca//lib/tapioca/rbi_ext/model.rb#38
@@ -138,69 +128,51 @@ class RBI::Tree < ::RBI::NodeWithComments
138
128
  end
139
129
  def create_type_variable(name, type:, variance: T.unsafe(nil), fixed: T.unsafe(nil), upper: T.unsafe(nil), lower: T.unsafe(nil)); end
140
130
 
141
- # source://rbi/0.2.1/lib/rbi/rewriters/deannotate.rb#41
142
- sig { params(annotation: ::String).void }
131
+ # source://rbi/0.3.6/lib/rbi/rewriters/deannotate.rb#38
143
132
  def deannotate!(annotation); end
144
133
 
145
- # source://rbi/0.2.1/lib/rbi/model.rb#134
146
- sig { returns(T::Boolean) }
134
+ # source://rbi/0.3.6/lib/rbi/model.rb#126
147
135
  def empty?; end
148
136
 
149
- # source://rbi/0.2.1/lib/rbi/rewriters/filter_versions.rb#118
150
- sig { params(version: ::Gem::Version).void }
137
+ # source://rbi/0.3.6/lib/rbi/rewriters/filter_versions.rb#113
151
138
  def filter_versions!(version); end
152
139
 
153
- # source://rbi/0.2.1/lib/rbi/rewriters/flatten_singleton_methods.rb#60
154
- sig { void }
140
+ # source://rbi/0.3.6/lib/rbi/rewriters/flatten_singleton_methods.rb#58
155
141
  def flatten_singleton_methods!; end
156
142
 
157
- # source://rbi/0.2.1/lib/rbi/rewriters/flatten_visibilities.rb#60
158
- sig { void }
143
+ # source://rbi/0.3.6/lib/rbi/rewriters/flatten_visibilities.rb#57
159
144
  def flatten_visibilities!; end
160
145
 
161
- # source://rbi/0.2.1/lib/rbi/rewriters/group_nodes.rb#81
162
- sig { void }
146
+ # source://rbi/0.3.6/lib/rbi/rewriters/group_nodes.rb#78
163
147
  def group_nodes!; end
164
148
 
165
- # source://rbi/0.2.1/lib/rbi/index.rb#68
166
- sig { returns(::RBI::Index) }
149
+ # source://rbi/0.3.6/lib/rbi/index.rb#62
167
150
  def index; end
168
151
 
169
- # source://rbi/0.2.1/lib/rbi/rewriters/merge_trees.rb#324
170
- sig do
171
- params(
172
- other: ::RBI::Tree,
173
- left_name: ::String,
174
- right_name: ::String,
175
- keep: ::RBI::Rewriters::Merge::Keep
176
- ).returns(::RBI::MergeTree)
177
- end
152
+ # source://rbi/0.3.6/lib/rbi/rewriters/merge_trees.rb#323
178
153
  def merge(other, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
179
154
 
180
- # source://rbi/0.2.1/lib/rbi/rewriters/nest_non_public_members.rb#46
181
- sig { void }
155
+ # source://rbi/0.3.6/lib/rbi/rewriters/nest_non_public_members.rb#43
182
156
  def nest_non_public_members!; end
183
157
 
184
- # source://rbi/0.2.1/lib/rbi/rewriters/nest_singleton_methods.rb#36
185
- sig { void }
158
+ # source://rbi/0.3.6/lib/rbi/rewriters/nest_singleton_methods.rb#33
186
159
  def nest_singleton_methods!; end
187
160
 
188
- # source://rbi/0.2.1/lib/rbi/rewriters/nest_top_level_members.rb#63
189
- sig { void }
161
+ # source://rbi/0.3.6/lib/rbi/rewriters/nest_top_level_members.rb#60
190
162
  def nest_top_level_members!; end
191
163
 
192
- # source://rbi/0.2.1/lib/rbi/model.rb#112
193
- sig { returns(T::Array[::RBI::Node]) }
164
+ # source://rbi/0.3.6/lib/rbi/model.rb#110
194
165
  def nodes; end
195
166
 
196
- # source://rbi/0.2.1/lib/rbi/rewriters/attr_to_methods.rb#53
197
- sig { void }
167
+ # source://rbi/0.3.6/lib/rbi/rewriters/attr_to_methods.rb#50
198
168
  def replace_attributes_with_methods!; end
199
169
 
200
- # source://rbi/0.2.1/lib/rbi/rewriters/sort_nodes.rb#119
201
- sig { void }
170
+ # source://rbi/0.3.6/lib/rbi/rewriters/sort_nodes.rb#118
202
171
  def sort_nodes!; end
203
172
 
173
+ # source://rbi/0.3.6/lib/rbi/rewriters/translate_rbs_sigs.rb#82
174
+ def translate_rbs_sigs!; end
175
+
204
176
  private
205
177
 
206
178
  # source://tapioca//lib/tapioca/rbi_ext/model.rb#123
@@ -218,7 +190,7 @@ class RBI::TypedParam < ::T::Struct
218
190
  const :type, ::String
219
191
 
220
192
  class << self
221
- # source://sorbet-runtime/0.5.11633/lib/types/struct.rb#13
193
+ # source://sorbet-runtime/0.5.12210/lib/types/struct.rb#13
222
194
  def inherited(s); end
223
195
  end
224
196
  end
@@ -262,6 +234,25 @@ module T::Generic::TypeStoragePatch
262
234
  def type_template(variance = T.unsafe(nil), &bounds_proc); end
263
235
  end
264
236
 
237
+ # source://tapioca//lib/tapioca/runtime/trackers/required_ancestor.rb#54
238
+ module T::Helpers
239
+ # source://tapioca//lib/tapioca/runtime/trackers/required_ancestor.rb#56
240
+ def requires_ancestor(&block); end
241
+ end
242
+
243
+ class T::InexactStruct
244
+ include ::T::Props
245
+ include ::T::Props::Plugin
246
+ include ::T::Props::Optional
247
+ include ::T::Props::PrettyPrintable
248
+ include ::T::Props::Serializable
249
+ include ::T::Props::WeakConstructor
250
+ include ::T::Props::Constructor
251
+ extend ::T::Props::ClassMethods
252
+ extend ::T::Props::Plugin::ClassMethods
253
+ extend ::T::Props::Serializable::ClassMethods
254
+ end
255
+
265
256
  # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#28
266
257
  module T::Private::Methods
267
258
  class << self
@@ -330,7 +321,16 @@ module T::Private::Methods::ProcBindPatch
330
321
  def finalize_proc(decl); end
331
322
  end
332
323
 
333
- class T::Types::Proc < ::T::Types::Base; end
324
+ module T::Private::Retry; end
325
+ module T::Private::Retry::RETRY; end
326
+
327
+ class T::Types::Proc < ::T::Types::Base
328
+ # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#7
329
+ def initialize(arg_types, returns, bind = T.unsafe(nil)); end
330
+
331
+ # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#15
332
+ def name; end
333
+ end
334
334
 
335
335
  # source://tapioca//lib/tapioca/sorbet_ext/proc_bind_patch.rb#6
336
336
  module T::Types::ProcBindPatch
@@ -453,24 +453,24 @@ class Tapioca::Cli < ::Thor
453
453
  include ::Tapioca::ConfigHelper
454
454
  include ::Tapioca::EnvHelper
455
455
 
456
- # source://tapioca//lib/tapioca/cli.rb#366
456
+ # source://tapioca//lib/tapioca/cli.rb#372
457
457
  def __print_version; end
458
458
 
459
- # source://tapioca//lib/tapioca/cli.rb#348
459
+ # source://tapioca//lib/tapioca/cli.rb#354
460
460
  def annotations; end
461
461
 
462
- # source://tapioca//lib/tapioca/cli.rb#320
462
+ # source://tapioca//lib/tapioca/cli.rb#326
463
463
  def check_shims; end
464
464
 
465
465
  # source://tapioca//lib/tapioca/cli.rb#46
466
466
  def configure; end
467
467
 
468
- # source://tapioca//lib/tapioca/cli.rb#147
468
+ # source://tapioca//lib/tapioca/cli.rb#146
469
469
  def dsl(*constant_or_paths); end
470
470
 
471
471
  # @raise [MalformattedArgumentError]
472
472
  #
473
- # source://tapioca//lib/tapioca/cli.rb#264
473
+ # source://tapioca//lib/tapioca/cli.rb#269
474
474
  def gem(*gems); end
475
475
 
476
476
  # source://tapioca//lib/tapioca/cli.rb#27
@@ -484,11 +484,19 @@ class Tapioca::Cli < ::Thor
484
484
 
485
485
  private
486
486
 
487
- # source://tapioca//lib/tapioca/cli.rb#380
487
+ # source://tapioca//lib/tapioca/cli.rb#399
488
488
  def print_init_next_steps; end
489
489
 
490
490
  class << self
491
- # source://tapioca//lib/tapioca/cli.rb#372
491
+ # source://tapioca//lib/tapioca/cli.rb#383
492
+ def addon_mode; end
493
+
494
+ # source://tapioca//lib/tapioca/cli.rb#386
495
+ sig { void }
496
+ def addon_mode!; end
497
+
498
+ # source://tapioca//lib/tapioca/cli.rb#391
499
+ sig { returns(T::Boolean) }
492
500
  def exit_on_failure?; end
493
501
  end
494
502
  end
@@ -525,7 +533,7 @@ class Tapioca::Commands::AbstractDsl < ::Tapioca::Commands::CommandWithoutTracke
525
533
 
526
534
  abstract!
527
535
 
528
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#33
536
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#34
529
537
  sig do
530
538
  params(
531
539
  requested_constants: T::Array[::String],
@@ -544,22 +552,23 @@ class Tapioca::Commands::AbstractDsl < ::Tapioca::Commands::CommandWithoutTracke
544
552
  rbi_formatter: ::Tapioca::RBIFormatter,
545
553
  app_root: ::String,
546
554
  halt_upon_load_error: T::Boolean,
547
- compiler_options: T::Hash[::String, T.untyped]
555
+ compiler_options: T::Hash[::String, T.untyped],
556
+ lsp_addon: T::Boolean
548
557
  ).void
549
558
  end
550
- 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)); end
559
+ 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
551
560
 
552
561
  private
553
562
 
554
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#100
563
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#107
555
564
  sig { returns(T::Array[::String]) }
556
565
  def all_requested_constants; end
557
566
 
558
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#293
567
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#313
559
568
  sig { params(cause: ::Symbol, files: T::Array[::String]).returns(::String) }
560
569
  def build_error_for_files(cause, files); end
561
570
 
562
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#217
571
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#237
563
572
  sig do
564
573
  params(
565
574
  constant_name: ::String,
@@ -570,75 +579,75 @@ class Tapioca::Commands::AbstractDsl < ::Tapioca::Commands::CommandWithoutTracke
570
579
  end
571
580
  def compile_dsl_rbi(constant_name, rbi, outpath: T.unsafe(nil), quiet: T.unsafe(nil)); end
572
581
 
573
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#154
582
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#172
574
583
  sig { params(constant_names: T::Array[::String], ignore_missing: T::Boolean).returns(T::Array[::Module]) }
575
584
  def constantize(constant_names, ignore_missing: T.unsafe(nil)); end
576
585
 
577
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#177
586
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#197
578
587
  sig { params(compiler_names: T::Array[::String]).returns(T::Array[T.class_of(Tapioca::Dsl::Compiler)]) }
579
588
  def constantize_compilers(compiler_names); end
580
589
 
581
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#353
590
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#373
582
591
  sig { returns(T::Array[::String]) }
583
592
  def constants_from_requested_paths; end
584
593
 
585
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#123
594
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#133
586
595
  sig { returns(::Tapioca::Dsl::Pipeline) }
587
596
  def create_pipeline; end
588
597
 
589
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#256
598
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#276
590
599
  sig { params(constant_name: ::String).returns(::Pathname) }
591
600
  def dsl_rbi_filename(constant_name); end
592
601
 
593
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#140
602
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#158
594
603
  sig { params(requested_constants: T::Array[::String], path: ::Pathname).returns(T::Set[::Pathname]) }
595
604
  def existing_rbi_filenames(requested_constants, path: T.unsafe(nil)); end
596
605
 
597
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#348
606
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#368
598
607
  sig { params(constant: ::String).returns(::String) }
599
608
  def generate_command_for(constant); end
600
609
 
601
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#76
610
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#79
602
611
  sig { params(outpath: ::Pathname, quiet: T::Boolean).returns(T::Set[::Pathname]) }
603
612
  def generate_dsl_rbi_files(outpath, quiet:); end
604
613
 
605
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#113
614
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#120
606
615
  sig { void }
607
616
  def load_application; end
608
617
 
609
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#235
618
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#255
610
619
  sig { params(dir: ::Pathname).void }
611
620
  def perform_dsl_verification(dir); end
612
621
 
613
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#108
622
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#115
614
623
  sig { returns(::Tapioca::Dsl::Pipeline) }
615
624
  def pipeline; end
616
625
 
617
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#244
626
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#264
618
627
  sig { params(files: T::Set[::Pathname]).void }
619
628
  def purge_stale_dsl_rbi_files(files); end
620
629
 
621
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#343
630
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#363
622
631
  sig { params(constant: ::String).returns(::String) }
623
632
  def rbi_filename_for(constant); end
624
633
 
625
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#324
634
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#344
626
635
  sig { params(path: ::Pathname).returns(T::Array[::Pathname]) }
627
636
  def rbi_files_in(path); end
628
637
 
629
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#302
638
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#322
630
639
  sig { params(diff: T::Hash[::String, ::Symbol], command: ::Symbol).void }
631
640
  def report_diff_and_exit_if_out_of_date(diff, command); end
632
641
 
633
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#197
642
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#217
634
643
  sig { params(name: ::String).returns(T.nilable(T.class_of(Tapioca::Dsl::Compiler))) }
635
644
  def resolve(name); end
636
645
 
637
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#331
646
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#351
638
647
  sig { params(class_name: ::String).returns(::String) }
639
648
  def underscore(class_name); end
640
649
 
641
- # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#261
650
+ # source://tapioca//lib/tapioca/commands/abstract_dsl.rb#281
642
651
  sig { params(tmp_dir: ::Pathname).returns(T::Hash[::String, ::Symbol]) }
643
652
  def verify_dsl_rbi(tmp_dir:); end
644
653
  end
@@ -652,7 +661,7 @@ class Tapioca::Commands::AbstractGem < ::Tapioca::Commands::Command
652
661
 
653
662
  abstract!
654
663
 
655
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#32
664
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#33
656
665
  sig do
657
666
  params(
658
667
  gem_names: T::Array[::String],
@@ -670,83 +679,71 @@ class Tapioca::Commands::AbstractGem < ::Tapioca::Commands::Command
670
679
  auto_strictness: T::Boolean,
671
680
  dsl_dir: ::String,
672
681
  rbi_formatter: ::Tapioca::RBIFormatter,
673
- halt_upon_load_error: T::Boolean
682
+ halt_upon_load_error: T::Boolean,
683
+ lsp_addon: T.nilable(T::Boolean)
674
684
  ).void
675
685
  end
676
- def initialize(gem_names:, exclude:, include_dependencies:, prerequire:, postrequire:, typed_overrides:, outpath:, file_header:, include_doc:, include_loc:, include_exported_rbis:, number_of_workers: T.unsafe(nil), auto_strictness: T.unsafe(nil), dsl_dir: T.unsafe(nil), rbi_formatter: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
686
+ 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)); end
677
687
 
678
688
  private
679
689
 
680
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#230
690
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#200
681
691
  sig { returns(T::Array[::String]) }
682
692
  def added_rbis; end
683
693
 
684
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#291
694
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#261
685
695
  sig { params(cause: ::Symbol, files: T::Array[::String]).returns(::String) }
686
696
  def build_error_for_files(cause, files); end
687
697
 
688
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#110
698
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#80
689
699
  sig { params(gem: ::Tapioca::Gemfile::GemSpec).void }
690
700
  def compile_gem_rbi(gem); end
691
701
 
692
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#225
702
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#195
693
703
  sig { params(gem_name: ::String).returns(::Pathname) }
694
704
  def existing_rbi(gem_name); end
695
705
 
696
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#273
706
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#243
697
707
  sig { returns(T::Hash[::String, ::String]) }
698
708
  def existing_rbis; end
699
709
 
700
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#237
710
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#207
701
711
  sig { params(gem_name: ::String).returns(::Pathname) }
702
712
  def expected_rbi(gem_name); end
703
713
 
704
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#279
714
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#249
705
715
  sig { returns(T::Hash[::String, ::String]) }
706
716
  def expected_rbis; end
707
717
 
708
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#98
709
- sig do
710
- params(
711
- gem: ::Tapioca::Gemfile::GemSpec,
712
- dependencies: T::Array[::Tapioca::Gemfile::GemSpec]
713
- ).returns(T::Array[::Tapioca::Gemfile::GemSpec])
714
- end
715
- def gem_dependencies(gem, dependencies = T.unsafe(nil)); end
716
-
717
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#242
718
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#212
718
719
  sig { params(gem_name: ::String).returns(T::Boolean) }
719
720
  def gem_rbi_exists?(gem_name); end
720
721
 
721
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#286
722
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#256
722
723
  sig { params(gem_name: ::String, version: ::String).returns(::Pathname) }
723
724
  def gem_rbi_filename(gem_name, version); end
724
725
 
725
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#77
726
- sig { params(gem_names: T::Array[::String]).returns(T::Array[::Tapioca::Gemfile::GemSpec]) }
727
- def gems_to_generate(gem_names); end
728
-
729
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#296
726
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#266
730
727
  sig { params(gem: ::Tapioca::Gemfile::GemSpec, file: ::RBI::File).void }
731
728
  def merge_with_exported_rbi(gem, file); end
732
729
 
733
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#267
730
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#237
734
731
  sig { params(old_filename: ::Pathname, new_filename: ::Pathname).void }
735
732
  def move(old_filename, new_filename); end
736
733
 
737
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#177
734
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#147
738
735
  sig { void }
739
736
  def perform_additions; end
740
737
 
741
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#150
738
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#120
742
739
  sig { void }
743
740
  def perform_removals; end
744
741
 
745
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#220
742
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#190
746
743
  sig { returns(T::Array[::String]) }
747
744
  def removed_rbis; end
748
745
 
749
- # source://tapioca//lib/tapioca/commands/abstract_gem.rb#247
746
+ # source://tapioca//lib/tapioca/commands/abstract_gem.rb#217
750
747
  sig { params(diff: T::Hash[::String, ::Symbol], command: ::Symbol).void }
751
748
  def report_diff_and_exit_if_out_of_date(diff, command); end
752
749
  end
@@ -1004,6 +1001,19 @@ class Tapioca::Commands::GemGenerate < ::Tapioca::Commands::AbstractGem
1004
1001
  # source://tapioca//lib/tapioca/commands/gem_generate.rb#10
1005
1002
  sig { override.void }
1006
1003
  def execute; end
1004
+
1005
+ # source://tapioca//lib/tapioca/commands/gem_generate.rb#74
1006
+ sig do
1007
+ params(
1008
+ gem: ::Tapioca::Gemfile::GemSpec,
1009
+ dependencies: T::Array[::Tapioca::Gemfile::GemSpec]
1010
+ ).returns(T::Array[::Tapioca::Gemfile::GemSpec])
1011
+ end
1012
+ def gem_dependencies(gem, dependencies = T.unsafe(nil)); end
1013
+
1014
+ # source://tapioca//lib/tapioca/commands/gem_generate.rb#51
1015
+ sig { params(gem_names: T::Array[::String]).returns(T::Array[::Tapioca::Gemfile::GemSpec]) }
1016
+ def gems_to_generate(gem_names); end
1007
1017
  end
1008
1018
 
1009
1019
  # source://tapioca//lib/tapioca/commands/gem_sync.rb#6
@@ -1141,7 +1151,7 @@ class Tapioca::ConfigHelper::ConfigError < ::T::Struct
1141
1151
  const :message_parts, T::Array[::Tapioca::ConfigHelper::ConfigErrorMessagePart]
1142
1152
 
1143
1153
  class << self
1144
- # source://sorbet-runtime/0.5.11633/lib/types/struct.rb#13
1154
+ # source://sorbet-runtime/0.5.12210/lib/types/struct.rb#13
1145
1155
  def inherited(s); end
1146
1156
  end
1147
1157
  end
@@ -1152,7 +1162,7 @@ class Tapioca::ConfigHelper::ConfigErrorMessagePart < ::T::Struct
1152
1162
  const :colors, T::Array[::Symbol]
1153
1163
 
1154
1164
  class << self
1155
- # source://sorbet-runtime/0.5.11633/lib/types/struct.rb#13
1165
+ # source://sorbet-runtime/0.5.12210/lib/types/struct.rb#13
1156
1166
  def inherited(s); end
1157
1167
  end
1158
1168
  end
@@ -1209,7 +1219,7 @@ class Tapioca::Dsl::Compiler
1209
1219
 
1210
1220
  ConstantType = type_member { { upper: Module } }
1211
1221
 
1212
- # source://tapioca//lib/tapioca/dsl/compiler.rb#107
1222
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#110
1213
1223
  sig do
1214
1224
  params(
1215
1225
  pipeline: ::Tapioca::Dsl::Pipeline,
@@ -1222,11 +1232,11 @@ class Tapioca::Dsl::Compiler
1222
1232
 
1223
1233
  # NOTE: This should eventually accept an `Error` object or `Exception` rather than simply a `String`.
1224
1234
  #
1225
- # source://tapioca//lib/tapioca/dsl/compiler.rb#125
1235
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#128
1226
1236
  sig { params(error: ::String).void }
1227
1237
  def add_error(error); end
1228
1238
 
1229
- # source://tapioca//lib/tapioca/dsl/compiler.rb#116
1239
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#119
1230
1240
  sig { params(compiler_name: ::String).returns(T::Boolean) }
1231
1241
  def compiler_enabled?(compiler_name); end
1232
1242
 
@@ -1236,7 +1246,7 @@ class Tapioca::Dsl::Compiler
1236
1246
 
1237
1247
  # @abstract
1238
1248
  #
1239
- # source://tapioca//lib/tapioca/dsl/compiler.rb#121
1249
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#124
1240
1250
  sig { abstract.void }
1241
1251
  def decorate; end
1242
1252
 
@@ -1250,21 +1260,21 @@ class Tapioca::Dsl::Compiler
1250
1260
 
1251
1261
  private
1252
1262
 
1253
- # source://tapioca//lib/tapioca/dsl/compiler.rb#174
1263
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#177
1254
1264
  sig { params(method_def: T.any(::Method, ::UnboundMethod)).returns(T::Array[::RBI::TypedParam]) }
1255
1265
  def compile_method_parameters_to_rbi(method_def); end
1256
1266
 
1257
- # source://tapioca//lib/tapioca/dsl/compiler.rb#210
1267
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#213
1258
1268
  sig { params(method_def: T.any(::Method, ::UnboundMethod)).returns(::String) }
1259
1269
  def compile_method_return_type_to_rbi(method_def); end
1260
1270
 
1261
- # source://tapioca//lib/tapioca/dsl/compiler.rb#164
1271
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#167
1262
1272
  sig { params(scope: ::RBI::Scope, method_def: T.any(::Method, ::UnboundMethod), class_method: T::Boolean).void }
1263
1273
  def create_method_from_def(scope, method_def, class_method: T.unsafe(nil)); end
1264
1274
 
1265
1275
  # Get the types of each parameter from a method signature
1266
1276
  #
1267
- # source://tapioca//lib/tapioca/dsl/compiler.rb#138
1277
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#141
1268
1278
  sig { params(method_def: T.any(::Method, ::UnboundMethod), signature: T.untyped).returns(T::Array[::String]) }
1269
1279
  def parameters_types_from_signature(method_def, signature); end
1270
1280
 
@@ -1287,17 +1297,21 @@ class Tapioca::Dsl::Compiler
1287
1297
  sig { params(constants: T::Array[::Module]).void }
1288
1298
  def requested_constants=(constants); end
1289
1299
 
1300
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#55
1301
+ sig { void }
1302
+ def reset_state; end
1303
+
1290
1304
  private
1291
1305
 
1292
- # source://tapioca//lib/tapioca/dsl/compiler.rb#75
1306
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#82
1293
1307
  sig { returns(T::Enumerable[T::Class[T.anything]]) }
1294
1308
  def all_classes; end
1295
1309
 
1296
- # source://tapioca//lib/tapioca/dsl/compiler.rb#87
1310
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#90
1297
1311
  sig { returns(T::Enumerable[::Module]) }
1298
1312
  def all_modules; end
1299
1313
 
1300
- # source://tapioca//lib/tapioca/dsl/compiler.rb#61
1314
+ # source://tapioca//lib/tapioca/dsl/compiler.rb#68
1301
1315
  sig do
1302
1316
  type_parameters(:U)
1303
1317
  .params(
@@ -1323,7 +1337,7 @@ Tapioca::Dsl::Compilers::NAMESPACES = T.let(T.unsafe(nil), Array)
1323
1337
 
1324
1338
  # source://tapioca//lib/tapioca/dsl/pipeline.rb#6
1325
1339
  class Tapioca::Dsl::Pipeline
1326
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#39
1340
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#40
1327
1341
  sig do
1328
1342
  params(
1329
1343
  requested_constants: T::Array[::Module],
@@ -1333,24 +1347,25 @@ class Tapioca::Dsl::Pipeline
1333
1347
  error_handler: T.proc.params(error: ::String).void,
1334
1348
  skipped_constants: T::Array[::Module],
1335
1349
  number_of_workers: T.nilable(::Integer),
1336
- compiler_options: T::Hash[::String, T.untyped]
1350
+ compiler_options: T::Hash[::String, T.untyped],
1351
+ lsp_addon: T::Boolean
1337
1352
  ).void
1338
1353
  end
1339
- 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)); end
1354
+ 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
1340
1355
 
1341
1356
  # source://tapioca//lib/tapioca/dsl/pipeline.rb#10
1342
1357
  sig { returns(T::Enumerable[T.class_of(Tapioca::Dsl::Compiler)]) }
1343
1358
  def active_compilers; end
1344
1359
 
1345
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#102
1360
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#110
1346
1361
  sig { params(error: ::String).void }
1347
1362
  def add_error(error); end
1348
1363
 
1349
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#107
1364
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#115
1350
1365
  sig { params(compiler_name: ::String).returns(T::Boolean) }
1351
1366
  def compiler_enabled?(compiler_name); end
1352
1367
 
1353
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#116
1368
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#124
1354
1369
  sig { returns(T::Array[T.class_of(Tapioca::Dsl::Compiler)]) }
1355
1370
  def compilers; end
1356
1371
 
@@ -1370,7 +1385,7 @@ class Tapioca::Dsl::Pipeline
1370
1385
  sig { returns(T::Array[::Pathname]) }
1371
1386
  def requested_paths; end
1372
1387
 
1373
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#67
1388
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#70
1374
1389
  sig do
1375
1390
  type_parameters(:T)
1376
1391
  .params(
@@ -1385,15 +1400,15 @@ class Tapioca::Dsl::Pipeline
1385
1400
 
1386
1401
  private
1387
1402
 
1388
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#224
1403
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#231
1389
1404
  sig { void }
1390
1405
  def abort_if_pending_migrations!; end
1391
1406
 
1392
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#169
1407
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#177
1393
1408
  sig { params(constants: T::Set[::Module]).returns(T::Set[::Module]) }
1394
1409
  def filter_anonymous_and_reloaded_constants(constants); end
1395
1410
 
1396
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#133
1411
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#141
1397
1412
  sig do
1398
1413
  params(
1399
1414
  requested_compilers: T::Array[T.class_of(Tapioca::Dsl::Compiler)],
@@ -1402,7 +1417,7 @@ class Tapioca::Dsl::Pipeline
1402
1417
  end
1403
1418
  def gather_active_compilers(requested_compilers, excluded_compilers); end
1404
1419
 
1405
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#147
1420
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#155
1406
1421
  sig do
1407
1422
  params(
1408
1423
  requested_constants: T::Array[::Module],
@@ -1412,12 +1427,12 @@ class Tapioca::Dsl::Pipeline
1412
1427
  end
1413
1428
  def gather_constants(requested_constants, requested_paths, skipped_constants); end
1414
1429
 
1415
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#198
1430
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#206
1416
1431
  sig { params(constant: ::Module).returns(T.nilable(::RBI::File)) }
1417
1432
  def rbi_for_constant(constant); end
1418
1433
 
1419
- # source://tapioca//lib/tapioca/dsl/pipeline.rb#217
1420
- sig { params(error: ::String).returns(T.noreturn) }
1434
+ # source://tapioca//lib/tapioca/dsl/pipeline.rb#225
1435
+ sig { params(error: ::String).void }
1421
1436
  def report_error(error); end
1422
1437
  end
1423
1438
 
@@ -1851,7 +1866,7 @@ class Tapioca::Gem::Listeners::Subconstants < ::Tapioca::Gem::Listeners::Base
1851
1866
 
1852
1867
  private
1853
1868
 
1854
- # source://tapioca//lib/tapioca/gem/listeners/subconstants.rb#36
1869
+ # source://tapioca//lib/tapioca/gem/listeners/subconstants.rb#35
1855
1870
  sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1856
1871
  def ignore?(event); end
1857
1872
 
@@ -2221,7 +2236,7 @@ class Tapioca::GemInfo < ::T::Struct
2221
2236
  sig { params(spec: ::Bundler::LazySpecification).returns(::Tapioca::GemInfo) }
2222
2237
  def from_spec(spec); end
2223
2238
 
2224
- # source://sorbet-runtime/0.5.11633/lib/types/struct.rb#13
2239
+ # source://sorbet-runtime/0.5.12210/lib/types/struct.rb#13
2225
2240
  def inherited(s); end
2226
2241
  end
2227
2242
  end
@@ -2254,7 +2269,7 @@ class Tapioca::Gemfile
2254
2269
 
2255
2270
  private
2256
2271
 
2257
- # source://tapioca//lib/tapioca/gemfile.rb#92
2272
+ # source://tapioca//lib/tapioca/gemfile.rb#101
2258
2273
  sig { returns(::String) }
2259
2274
  def dir; end
2260
2275
 
@@ -2262,7 +2277,7 @@ class Tapioca::Gemfile
2262
2277
  sig { returns(::File) }
2263
2278
  def gemfile; end
2264
2279
 
2265
- # source://tapioca//lib/tapioca/gemfile.rb#87
2280
+ # source://tapioca//lib/tapioca/gemfile.rb#96
2266
2281
  sig { returns(T::Array[::Symbol]) }
2267
2282
  def groups; end
2268
2283
 
@@ -2279,114 +2294,114 @@ class Tapioca::Gemfile
2279
2294
  sig { returns([T::Enumerable[T.any(::Bundler::StubSpecification, ::Gem::Specification)], T::Array[::String]]) }
2280
2295
  def materialize_deps; end
2281
2296
 
2282
- # source://tapioca//lib/tapioca/gemfile.rb#82
2297
+ # source://tapioca//lib/tapioca/gemfile.rb#91
2283
2298
  sig { returns(::Bundler::Runtime) }
2284
2299
  def runtime; end
2285
2300
  end
2286
2301
 
2287
- # source://tapioca//lib/tapioca/gemfile.rb#96
2302
+ # source://tapioca//lib/tapioca/gemfile.rb#105
2288
2303
  class Tapioca::Gemfile::GemSpec
2289
2304
  include ::Tapioca::GemHelper
2290
2305
 
2291
- # source://tapioca//lib/tapioca/gemfile.rb#136
2306
+ # source://tapioca//lib/tapioca/gemfile.rb#145
2292
2307
  sig { params(spec: T.any(::Bundler::StubSpecification, ::Gem::Specification)).void }
2293
2308
  def initialize(spec); end
2294
2309
 
2295
- # source://tapioca//lib/tapioca/gemfile.rb#146
2310
+ # source://tapioca//lib/tapioca/gemfile.rb#155
2296
2311
  sig { params(other: ::BasicObject).returns(T::Boolean) }
2297
2312
  def ==(other); end
2298
2313
 
2299
- # source://tapioca//lib/tapioca/gemfile.rb#171
2314
+ # source://tapioca//lib/tapioca/gemfile.rb#180
2300
2315
  sig { params(path: ::String).returns(T::Boolean) }
2301
2316
  def contains_path?(path); end
2302
2317
 
2303
- # source://tapioca//lib/tapioca/gemfile.rb#161
2318
+ # source://tapioca//lib/tapioca/gemfile.rb#170
2304
2319
  sig { returns(T::Array[::Gem::Dependency]) }
2305
2320
  def dependencies; end
2306
2321
 
2307
- # source://tapioca//lib/tapioca/gemfile.rb#201
2322
+ # source://tapioca//lib/tapioca/gemfile.rb#210
2308
2323
  sig { returns(T::Boolean) }
2309
2324
  def export_rbi_files?; end
2310
2325
 
2311
- # source://tapioca//lib/tapioca/gemfile.rb#196
2326
+ # source://tapioca//lib/tapioca/gemfile.rb#205
2312
2327
  sig { returns(T::Array[::String]) }
2313
2328
  def exported_rbi_files; end
2314
2329
 
2315
- # source://tapioca//lib/tapioca/gemfile.rb#206
2330
+ # source://tapioca//lib/tapioca/gemfile.rb#215
2316
2331
  sig { returns(::RBI::MergeTree) }
2317
2332
  def exported_rbi_tree; end
2318
2333
 
2319
- # source://tapioca//lib/tapioca/gemfile.rb#133
2334
+ # source://tapioca//lib/tapioca/gemfile.rb#142
2320
2335
  sig { returns(T::Array[::Pathname]) }
2321
2336
  def files; end
2322
2337
 
2323
- # source://tapioca//lib/tapioca/gemfile.rb#130
2338
+ # source://tapioca//lib/tapioca/gemfile.rb#139
2324
2339
  sig { returns(::String) }
2325
2340
  def full_gem_path; end
2326
2341
 
2327
- # source://tapioca//lib/tapioca/gemfile.rb#151
2342
+ # source://tapioca//lib/tapioca/gemfile.rb#160
2328
2343
  sig { params(gemfile_dir: ::String).returns(T::Boolean) }
2329
2344
  def ignore?(gemfile_dir); end
2330
2345
 
2331
- # source://tapioca//lib/tapioca/gemfile.rb#156
2346
+ # source://tapioca//lib/tapioca/gemfile.rb#165
2332
2347
  sig { returns(::String) }
2333
2348
  def name; end
2334
2349
 
2335
- # source://tapioca//lib/tapioca/gemfile.rb#180
2350
+ # source://tapioca//lib/tapioca/gemfile.rb#189
2336
2351
  sig { void }
2337
2352
  def parse_yard_docs; end
2338
2353
 
2339
- # source://tapioca//lib/tapioca/gemfile.rb#166
2354
+ # source://tapioca//lib/tapioca/gemfile.rb#175
2340
2355
  sig { returns(::String) }
2341
2356
  def rbi_file_name; end
2342
2357
 
2343
- # source://tapioca//lib/tapioca/gemfile.rb#218
2358
+ # source://tapioca//lib/tapioca/gemfile.rb#227
2344
2359
  sig { params(file: ::Pathname).returns(::Pathname) }
2345
2360
  def relative_path_for(file); end
2346
2361
 
2347
2362
  # @return [String]
2348
2363
  #
2349
- # source://tapioca//lib/tapioca/gemfile.rb#130
2364
+ # source://tapioca//lib/tapioca/gemfile.rb#139
2350
2365
  def version; end
2351
2366
 
2352
2367
  private
2353
2368
 
2354
- # source://tapioca//lib/tapioca/gemfile.rb#229
2369
+ # source://tapioca//lib/tapioca/gemfile.rb#238
2355
2370
  sig { returns(T::Array[::Pathname]) }
2356
2371
  def collect_files; end
2357
2372
 
2358
- # source://tapioca//lib/tapioca/gemfile.rb#244
2373
+ # source://tapioca//lib/tapioca/gemfile.rb#253
2359
2374
  sig { returns(T.nilable(T::Boolean)) }
2360
2375
  def default_gem?; end
2361
2376
 
2362
- # source://tapioca//lib/tapioca/gemfile.rb#303
2377
+ # source://tapioca//lib/tapioca/gemfile.rb#312
2363
2378
  sig { returns(T::Boolean) }
2364
2379
  def gem_ignored?; end
2365
2380
 
2366
- # source://tapioca//lib/tapioca/gemfile.rb#282
2381
+ # source://tapioca//lib/tapioca/gemfile.rb#291
2367
2382
  sig { params(path: ::String).returns(T::Boolean) }
2368
2383
  def has_parent_gemspec?(path); end
2369
2384
 
2370
- # source://tapioca//lib/tapioca/gemfile.rb#249
2385
+ # source://tapioca//lib/tapioca/gemfile.rb#258
2371
2386
  sig { returns(::Regexp) }
2372
2387
  def require_paths_prefix_matcher; end
2373
2388
 
2374
- # source://tapioca//lib/tapioca/gemfile.rb#261
2389
+ # source://tapioca//lib/tapioca/gemfile.rb#270
2375
2390
  sig { params(file: ::String).returns(::Pathname) }
2376
2391
  def resolve_to_ruby_lib_dir(file); end
2377
2392
 
2378
- # source://tapioca//lib/tapioca/gemfile.rb#275
2393
+ # source://tapioca//lib/tapioca/gemfile.rb#284
2379
2394
  sig { returns(::String) }
2380
2395
  def version_string; end
2381
2396
 
2382
2397
  class << self
2383
- # source://tapioca//lib/tapioca/gemfile.rb#104
2398
+ # source://tapioca//lib/tapioca/gemfile.rb#113
2384
2399
  sig { returns(T::Hash[::String, ::Tapioca::Gemfile::GemSpec]) }
2385
2400
  def spec_lookup_by_file_path; end
2386
2401
  end
2387
2402
  end
2388
2403
 
2389
- # source://tapioca//lib/tapioca/gemfile.rb#116
2404
+ # source://tapioca//lib/tapioca/gemfile.rb#125
2390
2405
  Tapioca::Gemfile::GemSpec::IGNORED_GEMS = T.let(T.unsafe(nil), Array)
2391
2406
 
2392
2407
  # source://tapioca//lib/tapioca/gemfile.rb#10
@@ -2400,7 +2415,7 @@ module Tapioca::Loaders; end
2400
2415
 
2401
2416
  # source://tapioca//lib/tapioca/loaders/dsl.rb#6
2402
2417
  class Tapioca::Loaders::Dsl < ::Tapioca::Loaders::Loader
2403
- # source://tapioca//lib/tapioca/loaders/dsl.rb#38
2418
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#74
2404
2419
  sig do
2405
2420
  params(
2406
2421
  tapioca_path: ::String,
@@ -2411,26 +2426,40 @@ class Tapioca::Loaders::Dsl < ::Tapioca::Loaders::Loader
2411
2426
  end
2412
2427
  def initialize(tapioca_path:, eager_load: T.unsafe(nil), app_root: T.unsafe(nil), halt_upon_load_error: T.unsafe(nil)); end
2413
2428
 
2414
- # source://tapioca//lib/tapioca/loaders/dsl.rb#27
2429
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#36
2415
2430
  sig { override.void }
2416
2431
  def load; end
2417
2432
 
2433
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#43
2434
+ sig { void }
2435
+ def load_dsl_extensions_and_compilers; end
2436
+
2437
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#49
2438
+ sig { void }
2439
+ def reload_custom_compilers; end
2440
+
2418
2441
  protected
2419
2442
 
2420
- # source://tapioca//lib/tapioca/loaders/dsl.rb#88
2443
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#120
2421
2444
  sig { void }
2422
2445
  def load_application; end
2423
2446
 
2424
- # source://tapioca//lib/tapioca/loaders/dsl.rb#63
2447
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#100
2425
2448
  sig { void }
2426
2449
  def load_dsl_compilers; end
2427
2450
 
2428
- # source://tapioca//lib/tapioca/loaders/dsl.rb#48
2451
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#85
2429
2452
  sig { void }
2430
2453
  def load_dsl_extensions; end
2431
2454
 
2455
+ private
2456
+
2457
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#136
2458
+ sig { void }
2459
+ def load_custom_dsl_compilers; end
2460
+
2432
2461
  class << self
2433
- # source://tapioca//lib/tapioca/loaders/dsl.rb#15
2462
+ # source://tapioca//lib/tapioca/loaders/dsl.rb#20
2434
2463
  sig do
2435
2464
  params(
2436
2465
  tapioca_path: ::String,
@@ -2736,7 +2765,7 @@ module Tapioca::RBIHelper
2736
2765
  sig { params(name: ::String).returns(T::Boolean) }
2737
2766
  def valid_method_name?(name); end
2738
2767
 
2739
- # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#123
2768
+ # source://tapioca//lib/tapioca/helpers/rbi_helper.rb#114
2740
2769
  sig { params(name: ::String).returns(T::Boolean) }
2741
2770
  def valid_parameter_name?(name); end
2742
2771
 
@@ -2955,7 +2984,7 @@ module Tapioca::Runtime::Reflection
2955
2984
  extend ::Tapioca::Runtime::AttachedClassOf
2956
2985
  extend ::Tapioca::Runtime::Reflection
2957
2986
 
2958
- # source://tapioca//lib/tapioca/runtime/reflection.rb#201
2987
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#207
2959
2988
  sig { params(constant: ::Module).returns(T.untyped) }
2960
2989
  def abstract_type_of(constant); end
2961
2990
 
@@ -3008,11 +3037,11 @@ module Tapioca::Runtime::Reflection
3008
3037
  end
3009
3038
  def descendants_of(klass); end
3010
3039
 
3011
- # source://tapioca//lib/tapioca/runtime/reflection.rb#194
3040
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#200
3012
3041
  sig { params(constant: ::Module).returns(T::Set[::String]) }
3013
3042
  def file_candidates_for(constant); end
3014
3043
 
3015
- # source://tapioca//lib/tapioca/runtime/reflection.rb#207
3044
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#213
3016
3045
  sig { params(constant: ::Module).returns(T::Boolean) }
3017
3046
  def final_module?(constant); end
3018
3047
 
@@ -3053,14 +3082,15 @@ module Tapioca::Runtime::Reflection
3053
3082
  def qualified_name_of(constant); end
3054
3083
 
3055
3084
  # Examines the call stack to identify the closest location where a "require" is performed
3056
- # by searching for the label "<top (required)>". If none is found, it returns the location
3085
+ # by searching for the label "<top (required)>" or "block in <class:...>" in the
3086
+ # case of an ActiveSupport.on_load hook. If none is found, it returns the location
3057
3087
  # labeled "<main>", which is the original call site.
3058
3088
  #
3059
- # source://tapioca//lib/tapioca/runtime/reflection.rb#184
3089
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#185
3060
3090
  sig { params(locations: T.nilable(T::Array[::Thread::Backtrace::Location])).returns(::String) }
3061
3091
  def resolve_loc(locations); end
3062
3092
 
3063
- # source://tapioca//lib/tapioca/runtime/reflection.rb#212
3093
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#218
3064
3094
  sig { params(constant: ::Module).returns(T::Boolean) }
3065
3095
  def sealed_module?(constant); end
3066
3096
 
@@ -3082,23 +3112,23 @@ module Tapioca::Runtime::Reflection
3082
3112
 
3083
3113
  private
3084
3114
 
3085
- # source://tapioca//lib/tapioca/runtime/reflection.rb#249
3115
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#255
3086
3116
  sig { params(parent: ::Module, name: ::String).returns(T.nilable(::Module)) }
3087
3117
  def child_module_for_parent_with_name(parent, name); end
3088
3118
 
3089
- # source://tapioca//lib/tapioca/runtime/reflection.rb#265
3119
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#271
3090
3120
  sig { params(name: ::String).returns(T::Boolean) }
3091
3121
  def has_aliased_namespace?(name); end
3092
3122
 
3093
- # source://tapioca//lib/tapioca/runtime/reflection.rb#260
3123
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#266
3094
3124
  sig { params(method: ::UnboundMethod).returns(T::Boolean) }
3095
3125
  def method_defined_by_forwardable_module?(method); end
3096
3126
 
3097
- # source://tapioca//lib/tapioca/runtime/reflection.rb#235
3127
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#241
3098
3128
  sig { params(constant: ::Module).returns(T::Array[::UnboundMethod]) }
3099
3129
  def methods_for(constant); end
3100
3130
 
3101
- # source://tapioca//lib/tapioca/runtime/reflection.rb#219
3131
+ # source://tapioca//lib/tapioca/runtime/reflection.rb#225
3102
3132
  sig { params(constant: ::Module).returns(T::Array[::UnboundMethod]) }
3103
3133
  def relevant_methods_for(constant); end
3104
3134
  end
@@ -3369,6 +3399,58 @@ Tapioca::SorbetHelper::SORBET_PAYLOAD_URL = T.let(T.unsafe(nil), String)
3369
3399
  # source://tapioca//lib/tapioca/helpers/sorbet_helper.rb#22
3370
3400
  Tapioca::SorbetHelper::SPOOM_CONTEXT = T.let(T.unsafe(nil), Spoom::Context)
3371
3401
 
3402
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#7
3403
+ class Tapioca::SourceURI < ::URI::File
3404
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#72
3405
+ sig { params(v: T.nilable(::String)).returns(T::Boolean) }
3406
+ def check_host(v); end
3407
+
3408
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#55
3409
+ sig { returns(T.nilable(::String)) }
3410
+ def gem_name; end
3411
+
3412
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#29
3413
+ sig { returns(T.nilable(::String)) }
3414
+ def gem_version; end
3415
+
3416
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#60
3417
+ sig { returns(T.nilable(::String)) }
3418
+ def line_number; end
3419
+
3420
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#65
3421
+ sig { params(v: T.nilable(::String)).void }
3422
+ def set_path(v); end
3423
+
3424
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#84
3425
+ sig { returns(::String) }
3426
+ def to_s; end
3427
+
3428
+ class << self
3429
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#42
3430
+ sig do
3431
+ params(
3432
+ gem_name: ::String,
3433
+ gem_version: T.nilable(::String),
3434
+ path: ::String,
3435
+ line_number: T.nilable(::String)
3436
+ ).returns(T.attached_class)
3437
+ end
3438
+ def build(gem_name:, gem_version:, path:, line_number:); end
3439
+ end
3440
+ end
3441
+
3442
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#10
3443
+ Tapioca::SourceURI::COMPONENT = T.let(T.unsafe(nil), Array)
3444
+
3445
+ # `uri` for Ruby 3.4 switched the default parser from RFC2396 to RFC3986. The new parser emits a deprecation
3446
+ # warning on a few methods and delegates them to RFC2396, namely `extract`/`make_regexp`/`escape`/`unescape`.
3447
+ # On earlier versions of the uri gem, the RFC2396_PARSER constant doesn't exist, so it needs some special
3448
+ # handling to select a parser that doesn't emit deprecations. While it was backported to Ruby 3.1, users may
3449
+ # have the uri gem in their own bundle and thus not use a compatible version.
3450
+ #
3451
+ # source://tapioca//lib/tapioca/helpers/source_uri.rb#26
3452
+ Tapioca::SourceURI::PARSER = T.let(T.unsafe(nil), URI::RFC2396_Parser)
3453
+
3372
3454
  # source://tapioca//lib/tapioca/static/symbol_table_parser.rb#5
3373
3455
  module Tapioca::Static; end
3374
3456
 
@@ -3428,10 +3510,10 @@ module Tapioca::Static::SymbolLoader
3428
3510
 
3429
3511
  # @return [Array<T.class_of(Rails::Engine)>]
3430
3512
  #
3431
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#69
3513
+ # source://tapioca//lib/tapioca/static/symbol_loader.rb#71
3432
3514
  def engines; end
3433
3515
 
3434
- # source://tapioca//lib/tapioca/static/symbol_loader.rb#82
3516
+ # source://tapioca//lib/tapioca/static/symbol_loader.rb#84
3435
3517
  sig { params(input: ::String, table_type: ::String).returns(::String) }
3436
3518
  def symbol_table_json_from(input, table_type: T.unsafe(nil)); end
3437
3519
  end
@@ -3544,60 +3626,3 @@ end
3544
3626
 
3545
3627
  # source://tapioca//lib/tapioca/version.rb#5
3546
3628
  Tapioca::VERSION = T.let(T.unsafe(nil), String)
3547
-
3548
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#6
3549
- module URI
3550
- include ::URI::RFC2396_REGEXP
3551
- end
3552
-
3553
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#7
3554
- class URI::Source < ::URI::File
3555
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#65
3556
- sig { params(v: T.nilable(::String)).returns(T::Boolean) }
3557
- def check_host(v); end
3558
-
3559
- # source://uri/0.13.0/uri/generic.rb#243
3560
- def gem_name; end
3561
-
3562
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#32
3563
- sig { returns(T.nilable(::String)) }
3564
- def gem_version; end
3565
-
3566
- # source://uri/0.13.0/uri/generic.rb#283
3567
- def line_number; end
3568
-
3569
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#58
3570
- sig { params(v: T.nilable(::String)).void }
3571
- def set_path(v); end
3572
-
3573
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#77
3574
- sig { returns(::String) }
3575
- def to_s; end
3576
-
3577
- class << self
3578
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#45
3579
- sig do
3580
- params(
3581
- gem_name: ::String,
3582
- gem_version: T.nilable(::String),
3583
- path: ::String,
3584
- line_number: T.nilable(::String)
3585
- ).returns(::URI::Source)
3586
- end
3587
- def build(gem_name:, gem_version:, path:, line_number:); end
3588
- end
3589
- end
3590
-
3591
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#10
3592
- URI::Source::COMPONENT = T.let(T.unsafe(nil), Array)
3593
-
3594
- # `uri` for Ruby 3.4 switched the default parser from RFC2396 to RFC3986. The new parser emits a deprecation
3595
- # warning on a few methods and delegates them to RFC2396, namely `extract`/`make_regexp`/`escape`/`unescape`.
3596
- # On earlier versions of the uri gem, the RFC2396_PARSER constant doesn't exist, so it needs some special
3597
- # handling to select a parser that doesn't emit deprecations. While it was backported to Ruby 3.1, users may
3598
- # have the uri gem in their own bundle and thus not use a compatible version.
3599
- #
3600
- # source://tapioca//lib/tapioca/helpers/source_uri.rb#26
3601
- URI::Source::PARSER = T.let(T.unsafe(nil), URI::RFC2396_Parser)
3602
-
3603
- class URI::WSS < ::URI::WS; end