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