packwerk 2.2.0 → 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) 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 +202 -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_load_paths.rb +1 -1
  19. data/lib/packwerk/application_validator.rb +7 -6
  20. data/lib/packwerk/association_inspector.rb +17 -15
  21. data/lib/packwerk/cache.rb +36 -29
  22. data/lib/packwerk/cli.rb +24 -20
  23. data/lib/packwerk/const_node_inspector.rb +8 -7
  24. data/lib/packwerk/constant_name_inspector.rb +2 -2
  25. data/lib/packwerk/deprecated_references.rb +40 -20
  26. data/lib/packwerk/file_processor.rb +14 -14
  27. data/lib/packwerk/files_for_processing.rb +27 -31
  28. data/lib/packwerk/formatters/offenses_formatter.rb +3 -3
  29. data/lib/packwerk/formatters/progress_formatter.rb +2 -2
  30. data/lib/packwerk/node.rb +1 -294
  31. data/lib/packwerk/node_helpers.rb +335 -0
  32. data/lib/packwerk/node_processor.rb +6 -5
  33. data/lib/packwerk/node_processor_factory.rb +3 -3
  34. data/lib/packwerk/node_visitor.rb +1 -1
  35. data/lib/packwerk/offense_collection.rb +27 -8
  36. data/lib/packwerk/offenses_formatter.rb +2 -2
  37. data/lib/packwerk/package.rb +3 -0
  38. data/lib/packwerk/package_set.rb +2 -0
  39. data/lib/packwerk/parse_run.rb +29 -20
  40. data/lib/packwerk/parsed_constant_definitions.rb +23 -20
  41. data/lib/packwerk/parsers/erb.rb +3 -3
  42. data/lib/packwerk/reference_checking/checkers/checker.rb +16 -3
  43. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +16 -0
  44. data/lib/packwerk/reference_checking/checkers/privacy_checker.rb +18 -0
  45. data/lib/packwerk/reference_checking/reference_checker.rb +3 -1
  46. data/lib/packwerk/reference_extractor.rb +51 -48
  47. data/lib/packwerk/reference_offense.rb +3 -27
  48. data/lib/packwerk/run_context.rb +9 -8
  49. data/lib/packwerk/spring_command.rb +1 -1
  50. data/lib/packwerk/version.rb +1 -1
  51. data/lib/packwerk.rb +1 -0
  52. data/packwerk.gemspec +5 -12
  53. data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +2754 -0
  54. data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +1496 -0
  55. data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +2362 -0
  56. data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +19397 -0
  57. data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +1569 -0
  58. data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +14907 -0
  59. data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +2553 -0
  60. data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +5999 -0
  61. data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +37832 -0
  62. data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +2321 -0
  63. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +18818 -0
  64. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +11722 -0
  65. data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +90 -0
  66. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1079 -0
  67. data/sorbet/rbi/gems/digest@3.1.0.rbi +189 -0
  68. data/sorbet/rbi/gems/erubi@1.11.0.rbi +140 -0
  69. data/sorbet/rbi/gems/globalid@1.0.0.rbi +572 -0
  70. data/sorbet/rbi/gems/i18n@1.12.0.rbi +2296 -0
  71. data/sorbet/rbi/gems/json@2.6.2.rbi +1548 -0
  72. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +8 -0
  73. data/sorbet/rbi/gems/loofah@2.18.0.rbi +877 -0
  74. data/sorbet/rbi/gems/m@1.6.0.rbi +257 -0
  75. data/sorbet/rbi/gems/marcel@1.0.2.rbi +220 -0
  76. data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +170 -0
  77. data/sorbet/rbi/gems/mini_portile2@2.8.0.rbi +8 -0
  78. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +104 -0
  79. data/sorbet/rbi/gems/minitest@5.16.2.rbi +2136 -0
  80. data/sorbet/rbi/gems/mocha@1.14.0.rbi +4177 -0
  81. data/sorbet/rbi/gems/net-imap@0.2.3.rbi +2147 -0
  82. data/sorbet/rbi/gems/net-pop@0.1.1.rbi +926 -0
  83. data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +11 -0
  84. data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +1108 -0
  85. data/sorbet/rbi/gems/netrc@0.11.0.rbi +153 -0
  86. data/sorbet/rbi/gems/nio4r@2.5.8.rbi +292 -0
  87. data/sorbet/rbi/gems/nokogiri@1.13.8.rbi +6478 -0
  88. data/sorbet/rbi/gems/parallel@1.22.1.rbi +277 -0
  89. data/sorbet/rbi/gems/parser@3.1.2.1.rbi +9029 -0
  90. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +8 -0
  91. data/sorbet/rbi/gems/pry@0.14.1.rbi +8 -0
  92. data/sorbet/rbi/gems/racc@1.6.0.rbi +152 -0
  93. data/sorbet/rbi/gems/rack-test@2.0.2.rbi +953 -0
  94. data/sorbet/rbi/gems/rack@2.2.4.rbi +5636 -0
  95. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +688 -0
  96. data/sorbet/rbi/gems/rails@7.0.3.1.rbi +8 -0
  97. data/sorbet/rbi/gems/railties@7.0.3.1.rbi +3507 -0
  98. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +392 -0
  99. data/sorbet/rbi/gems/rake@13.0.6.rbi +2924 -0
  100. data/sorbet/rbi/gems/rbi@0.0.15.rbi +3007 -0
  101. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +3383 -0
  102. data/sorbet/rbi/gems/rexml@3.2.5.rbi +4714 -0
  103. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +6961 -0
  104. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +2986 -0
  105. data/sorbet/rbi/gems/{rubocop-shopify@2.0.1.rbi → rubocop-shopify@2.9.0.rbi} +4 -4
  106. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +992 -0
  107. data/sorbet/rbi/gems/rubocop@1.34.1.rbi +51820 -0
  108. data/sorbet/rbi/gems/ruby-lsp@0.2.1.rbi +11 -0
  109. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +474 -0
  110. data/sorbet/rbi/gems/spoom@1.1.11.rbi +2181 -0
  111. data/sorbet/rbi/gems/spring@4.0.0.rbi +411 -0
  112. data/sorbet/rbi/gems/strscan@3.0.4.rbi +8 -0
  113. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +8 -0
  114. data/sorbet/rbi/gems/tapioca@0.9.2.rbi +3181 -0
  115. data/sorbet/rbi/gems/thor@1.2.1.rbi +3956 -0
  116. data/sorbet/rbi/gems/timeout@0.3.0.rbi +142 -0
  117. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +5896 -0
  118. data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +48 -0
  119. data/sorbet/rbi/gems/unparser@0.6.5.rbi +4529 -0
  120. data/sorbet/rbi/gems/webrick@1.7.0.rbi +2582 -0
  121. data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +993 -0
  122. data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +388 -0
  123. data/sorbet/rbi/gems/yard@0.9.28.rbi +18242 -0
  124. data/sorbet/rbi/gems/zeitwerk@2.6.0.rbi +867 -0
  125. data/sorbet/rbi/shims/psych.rbi +5 -0
  126. data/sorbet/tapioca/require.rb +2 -3
  127. metadata +91 -146
  128. data/.github/probots.yml +0 -2
  129. data/library.yml +0 -6
  130. data/service.yml +0 -1
  131. data/sorbet/rbi/gems/actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -860
  132. data/sorbet/rbi/gems/actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -568
  133. data/sorbet/rbi/gems/actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -587
  134. data/sorbet/rbi/gems/actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -5314
  135. data/sorbet/rbi/gems/actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -699
  136. data/sorbet/rbi/gems/actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -2515
  137. data/sorbet/rbi/gems/activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -624
  138. data/sorbet/rbi/gems/activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -1248
  139. data/sorbet/rbi/gems/activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8363
  140. data/sorbet/rbi/gems/activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -876
  141. data/sorbet/rbi/gems/activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -3987
  142. data/sorbet/rbi/gems/colorize@0.8.1.rbi +0 -40
  143. data/sorbet/rbi/gems/commander@4.5.2.rbi +0 -8
  144. data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +0 -1969
  145. data/sorbet/rbi/gems/constant_resolver@0.1.5.rbi +0 -26
  146. data/sorbet/rbi/gems/erubi@1.10.0.rbi +0 -41
  147. data/sorbet/rbi/gems/globalid@0.4.2.rbi +0 -178
  148. data/sorbet/rbi/gems/highline@2.0.3.rbi +0 -8
  149. data/sorbet/rbi/gems/i18n@1.8.10.rbi +0 -600
  150. data/sorbet/rbi/gems/loofah@2.9.0.rbi +0 -274
  151. data/sorbet/rbi/gems/m@1.5.1.rbi +0 -108
  152. data/sorbet/rbi/gems/marcel@1.0.0.rbi +0 -70
  153. data/sorbet/rbi/gems/mini_mime@1.0.3.rbi +0 -71
  154. data/sorbet/rbi/gems/minitest-focus@1.2.1.rbi +0 -8
  155. data/sorbet/rbi/gems/minitest@5.14.4.rbi +0 -544
  156. data/sorbet/rbi/gems/mocha@1.12.0.rbi +0 -953
  157. data/sorbet/rbi/gems/nio4r@2.5.7.rbi +0 -90
  158. data/sorbet/rbi/gems/nokogiri@1.11.2.rbi +0 -1647
  159. data/sorbet/rbi/gems/parallel@1.20.1.rbi +0 -117
  160. data/sorbet/rbi/gems/parlour@6.0.0.rbi +0 -1272
  161. data/sorbet/rbi/gems/parser@3.0.0.0.rbi +0 -1745
  162. data/sorbet/rbi/gems/pry@0.14.0.rbi +0 -8
  163. data/sorbet/rbi/gems/psych@3.3.2.rbi +0 -24
  164. data/sorbet/rbi/gems/racc@1.5.2.rbi +0 -57
  165. data/sorbet/rbi/gems/rack-test@1.1.0.rbi +0 -335
  166. data/sorbet/rbi/gems/rack@2.2.3.rbi +0 -1718
  167. data/sorbet/rbi/gems/rails-html-sanitizer@1.3.0.rbi +0 -213
  168. data/sorbet/rbi/gems/rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8
  169. data/sorbet/rbi/gems/railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -880
  170. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +0 -155
  171. data/sorbet/rbi/gems/rake@13.0.3.rbi +0 -837
  172. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +0 -8
  173. data/sorbet/rbi/gems/rexml@3.2.4.rbi +0 -8
  174. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +0 -8
  175. data/sorbet/rbi/gems/rubocop-performance@1.10.2.rbi +0 -8
  176. data/sorbet/rbi/gems/rubocop-sorbet@0.6.1.rbi +0 -8
  177. data/sorbet/rbi/gems/rubocop@1.12.0.rbi +0 -8
  178. data/sorbet/rbi/gems/smart_properties@1.15.0.rbi +0 -168
  179. data/sorbet/rbi/gems/spoom@1.1.0.rbi +0 -1061
  180. data/sorbet/rbi/gems/spring@2.1.1.rbi +0 -160
  181. data/sorbet/rbi/gems/sprockets-rails@3.2.2.rbi +0 -451
  182. data/sorbet/rbi/gems/sprockets@4.0.2.rbi +0 -1133
  183. data/sorbet/rbi/gems/tapioca@0.4.19.rbi +0 -603
  184. data/sorbet/rbi/gems/thor@1.1.0.rbi +0 -893
  185. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +0 -566
  186. data/sorbet/rbi/gems/unicode-display_width@2.0.0.rbi +0 -8
  187. data/sorbet/rbi/gems/websocket-driver@0.7.3.rbi +0 -438
  188. 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)