packwerk 2.2.0 → 2.2.1

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