ipt 1.0.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (235) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/test.yml +41 -0
  3. data/.gitignore +0 -1
  4. data/Gemfile.lock +318 -0
  5. data/README.md +1 -1
  6. data/bin/tapioca +29 -0
  7. data/ipt.gemspec +15 -8
  8. data/lib/pt.rb +8 -9
  9. data/lib/pt/action.rb +42 -24
  10. data/lib/pt/cli.rb +1 -1
  11. data/lib/pt/client.rb +2 -3
  12. data/lib/pt/configuration.rb +1 -1
  13. data/lib/pt/data_row.rb +1 -0
  14. data/lib/pt/data_table.rb +1 -2
  15. data/lib/pt/io.rb +16 -7
  16. data/lib/pt/version.rb +2 -1
  17. data/sorbet/config +3 -0
  18. data/sorbet/rbi/gems/activesupport.rbi +671 -0
  19. data/sorbet/rbi/gems/activesupport@6.1.3.2.rbi +63 -0
  20. data/sorbet/rbi/gems/addressable.rbi +147 -0
  21. data/sorbet/rbi/gems/addressable@2.7.0.rbi +8 -0
  22. data/sorbet/rbi/gems/anyway_config.rbi +197 -0
  23. data/sorbet/rbi/gems/anyway_config@2.1.0.rbi +8 -0
  24. data/sorbet/rbi/gems/aruba.rbi +917 -0
  25. data/sorbet/rbi/gems/aruba@0.14.14.rbi +1342 -0
  26. data/sorbet/rbi/gems/ast.rbi +49 -0
  27. data/sorbet/rbi/gems/ast@2.4.2.rbi +54 -0
  28. data/sorbet/rbi/gems/axiom-types@0.1.1.rbi +8 -0
  29. data/sorbet/rbi/gems/builder@3.2.4.rbi +15 -0
  30. data/sorbet/rbi/gems/childprocess.rbi +107 -0
  31. data/sorbet/rbi/gems/childprocess@3.0.0.rbi +135 -0
  32. data/sorbet/rbi/gems/coderay.rbi +285 -0
  33. data/sorbet/rbi/gems/coderay@1.1.3.rbi +1005 -0
  34. data/sorbet/rbi/gems/coercible@1.0.0.rbi +8 -0
  35. data/sorbet/rbi/gems/colorize.rbi +82 -0
  36. data/sorbet/rbi/gems/colorize@0.8.1.rbi +39 -0
  37. data/sorbet/rbi/gems/commander@4.6.0.rbi +8 -0
  38. data/sorbet/rbi/gems/concurrent-ruby.rbi +1590 -0
  39. data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +8 -0
  40. data/sorbet/rbi/gems/config.rbi +124 -0
  41. data/sorbet/rbi/gems/config@3.1.0.rbi +8 -0
  42. data/sorbet/rbi/gems/contracts.rbi +391 -0
  43. data/sorbet/rbi/gems/contracts@0.16.1.rbi +592 -0
  44. data/sorbet/rbi/gems/cucumber-core.rbi +628 -0
  45. data/sorbet/rbi/gems/cucumber-core@9.0.0.rbi +8 -0
  46. data/sorbet/rbi/gems/cucumber-create-meta.rbi +27 -0
  47. data/sorbet/rbi/gems/cucumber-create-meta@4.0.0.rbi +8 -0
  48. data/sorbet/rbi/gems/cucumber-cucumber-expressions.rbi +216 -0
  49. data/sorbet/rbi/gems/cucumber-cucumber-expressions@12.1.1.rbi +8 -0
  50. data/sorbet/rbi/gems/cucumber-gherkin.rbi +289 -0
  51. data/sorbet/rbi/gems/cucumber-gherkin@18.1.1.rbi +8 -0
  52. data/sorbet/rbi/gems/cucumber-html-formatter@13.0.0.rbi +8 -0
  53. data/sorbet/rbi/gems/cucumber-messages.rbi +872 -0
  54. data/sorbet/rbi/gems/cucumber-messages@15.0.0.rbi +8 -0
  55. data/sorbet/rbi/gems/cucumber-tag-expressions.rbi +53 -0
  56. data/sorbet/rbi/gems/cucumber-tag-expressions@3.0.1.rbi +8 -0
  57. data/sorbet/rbi/gems/cucumber-wire.rbi +161 -0
  58. data/sorbet/rbi/gems/cucumber-wire@5.0.0.rbi +8 -0
  59. data/sorbet/rbi/gems/cucumber.rbi +1876 -0
  60. data/sorbet/rbi/gems/cucumber@6.0.0.rbi +8 -0
  61. data/sorbet/rbi/gems/declarative.rbi +75 -0
  62. data/sorbet/rbi/gems/declarative@0.0.20.rbi +8 -0
  63. data/sorbet/rbi/gems/deep_merge.rbi +26 -0
  64. data/sorbet/rbi/gems/deep_merge@1.2.1.rbi +8 -0
  65. data/sorbet/rbi/gems/descendants_tracker@0.0.4.rbi +8 -0
  66. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +8 -0
  67. data/sorbet/rbi/gems/dry-configurable@0.12.1.rbi +8 -0
  68. data/sorbet/rbi/gems/dry-container@0.7.2.rbi +8 -0
  69. data/sorbet/rbi/gems/dry-core@0.5.0.rbi +8 -0
  70. data/sorbet/rbi/gems/dry-equalizer@0.3.0.rbi +8 -0
  71. data/sorbet/rbi/gems/dry-inflector@0.2.0.rbi +8 -0
  72. data/sorbet/rbi/gems/dry-initializer@3.0.4.rbi +8 -0
  73. data/sorbet/rbi/gems/dry-logic@1.2.0.rbi +8 -0
  74. data/sorbet/rbi/gems/dry-schema@1.6.2.rbi +8 -0
  75. data/sorbet/rbi/gems/dry-types@1.5.1.rbi +8 -0
  76. data/sorbet/rbi/gems/dry-validation@1.6.0.rbi +8 -0
  77. data/sorbet/rbi/gems/equalizer.rbi +23 -0
  78. data/sorbet/rbi/gems/equalizer@0.0.11.rbi +8 -0
  79. data/sorbet/rbi/gems/equatable.rbi +26 -0
  80. data/sorbet/rbi/gems/equatable@0.5.0.rbi +8 -0
  81. data/sorbet/rbi/gems/excon.rbi +378 -0
  82. data/sorbet/rbi/gems/excon@0.81.0.rbi +8 -0
  83. data/sorbet/rbi/gems/faraday-excon.rbi +28 -0
  84. data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +8 -0
  85. data/sorbet/rbi/gems/faraday-net_http.rbi +32 -0
  86. data/sorbet/rbi/gems/faraday-net_http@1.0.1.rbi +8 -0
  87. data/sorbet/rbi/gems/faraday-net_http_persistent.rbi +24 -0
  88. data/sorbet/rbi/gems/faraday-net_http_persistent@1.1.0.rbi +8 -0
  89. data/sorbet/rbi/gems/faraday.rbi +606 -0
  90. data/sorbet/rbi/gems/faraday@1.4.1.rbi +8 -0
  91. data/sorbet/rbi/gems/faraday_middleware.rbi +19 -0
  92. data/sorbet/rbi/gems/faraday_middleware@1.0.0.rbi +8 -0
  93. data/sorbet/rbi/gems/ffi.rbi +560 -0
  94. data/sorbet/rbi/gems/ffi@1.15.0.rbi +849 -0
  95. data/sorbet/rbi/gems/formatador.rbi +52 -0
  96. data/sorbet/rbi/gems/formatador@0.2.5.rbi +8 -0
  97. data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +49 -0
  98. data/sorbet/rbi/gems/guard-rspec@4.7.3.rbi +233 -0
  99. data/sorbet/rbi/gems/guard.rbi +397 -0
  100. data/sorbet/rbi/gems/guard@2.16.2.rbi +615 -0
  101. data/sorbet/rbi/gems/highline.rbi +567 -0
  102. data/sorbet/rbi/gems/highline@2.0.3.rbi +8 -0
  103. data/sorbet/rbi/gems/i18n.rbi +133 -0
  104. data/sorbet/rbi/gems/i18n@1.8.10.rbi +8 -0
  105. data/sorbet/rbi/gems/ice_nine@0.11.2.rbi +8 -0
  106. data/sorbet/rbi/gems/listen.rbi +301 -0
  107. data/sorbet/rbi/gems/listen@3.5.1.rbi +476 -0
  108. data/sorbet/rbi/gems/lumberjack.rbi +299 -0
  109. data/sorbet/rbi/gems/lumberjack@1.2.8.rbi +431 -0
  110. data/sorbet/rbi/gems/method_source.rbi +64 -0
  111. data/sorbet/rbi/gems/method_source@1.0.0.rbi +72 -0
  112. data/sorbet/rbi/gems/middleware.rbi +32 -0
  113. data/sorbet/rbi/gems/middleware@0.1.0.rbi +8 -0
  114. data/sorbet/rbi/gems/mime-types-data.rbi +17 -0
  115. data/sorbet/rbi/gems/mime-types-data@3.2021.0225.rbi +8 -0
  116. data/sorbet/rbi/gems/mime-types.rbi +218 -0
  117. data/sorbet/rbi/gems/mime-types@3.3.1.rbi +8 -0
  118. data/sorbet/rbi/gems/mini_mime.rbi +52 -0
  119. data/sorbet/rbi/gems/mini_mime@1.1.0.rbi +8 -0
  120. data/sorbet/rbi/gems/minitest@5.14.4.rbi +8 -0
  121. data/sorbet/rbi/gems/multi_json.rbi +62 -0
  122. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +8 -0
  123. data/sorbet/rbi/gems/multi_test.rbi +28 -0
  124. data/sorbet/rbi/gems/multi_test@0.1.2.rbi +8 -0
  125. data/sorbet/rbi/gems/multipart-post.rbi +53 -0
  126. data/sorbet/rbi/gems/multipart-post@2.1.1.rbi +8 -0
  127. data/sorbet/rbi/gems/necromancer.rbi +135 -0
  128. data/sorbet/rbi/gems/necromancer@0.3.0.rbi +8 -0
  129. data/sorbet/rbi/gems/nenv.rbi +60 -0
  130. data/sorbet/rbi/gems/nenv@0.3.0.rbi +88 -0
  131. data/sorbet/rbi/gems/notiffany.rbi +215 -0
  132. data/sorbet/rbi/gems/notiffany@0.1.3.rbi +323 -0
  133. data/sorbet/rbi/gems/paint.rbi +31 -0
  134. data/sorbet/rbi/gems/paint@2.2.1.rbi +8 -0
  135. data/sorbet/rbi/gems/parlour.rbi +840 -0
  136. data/sorbet/rbi/gems/parlour@6.0.0.rbi +1610 -0
  137. data/sorbet/rbi/gems/parser.rbi +1517 -0
  138. data/sorbet/rbi/gems/parser@3.0.1.1.rbi +1726 -0
  139. data/sorbet/rbi/gems/pastel.rbi +128 -0
  140. data/sorbet/rbi/gems/pastel@0.6.1.rbi +8 -0
  141. data/sorbet/rbi/gems/protobuf-cucumber.rbi +1520 -0
  142. data/sorbet/rbi/gems/protobuf-cucumber@3.10.8.rbi +8 -0
  143. data/sorbet/rbi/gems/pry.rbi +1898 -0
  144. data/sorbet/rbi/gems/pry@0.14.1.rbi +2486 -0
  145. data/sorbet/rbi/gems/public_suffix.rbi +104 -0
  146. data/sorbet/rbi/gems/public_suffix@4.0.6.rbi +8 -0
  147. data/sorbet/rbi/gems/rainbow.rbi +118 -0
  148. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +153 -0
  149. data/sorbet/rbi/gems/rake.rbi +647 -0
  150. data/sorbet/rbi/gems/rake@10.5.0.rbi +805 -0
  151. data/sorbet/rbi/gems/rb-fsevent@0.11.0.rbi +8 -0
  152. data/sorbet/rbi/gems/rb-inotify@0.10.1.rbi +8 -0
  153. data/sorbet/rbi/gems/representable.rbi +227 -0
  154. data/sorbet/rbi/gems/representable@3.1.1.rbi +8 -0
  155. data/sorbet/rbi/gems/rspec-core.rbi +1932 -0
  156. data/sorbet/rbi/gems/rspec-core@3.10.1.rbi +2455 -0
  157. data/sorbet/rbi/gems/rspec-expectations.rbi +1151 -0
  158. data/sorbet/rbi/gems/rspec-expectations@3.10.1.rbi +1652 -0
  159. data/sorbet/rbi/gems/rspec-mocks.rbi +1100 -0
  160. data/sorbet/rbi/gems/rspec-mocks@3.10.2.rbi +1462 -0
  161. data/sorbet/rbi/gems/rspec-support.rbi +280 -0
  162. data/sorbet/rbi/gems/rspec-support@3.10.2.rbi +509 -0
  163. data/sorbet/rbi/gems/rspec.rbi +15 -0
  164. data/sorbet/rbi/gems/rspec@3.10.0.rbi +38 -0
  165. data/sorbet/rbi/gems/ruby-next-core.rbi +76 -0
  166. data/sorbet/rbi/gems/ruby-next-core@0.12.0.rbi +7 -0
  167. data/sorbet/rbi/gems/ruby2_keywords@0.0.4.rbi +8 -0
  168. data/sorbet/rbi/gems/shellany.rbi +29 -0
  169. data/sorbet/rbi/gems/shellany@0.0.1.rbi +28 -0
  170. data/sorbet/rbi/gems/spoom.rbi +872 -0
  171. data/sorbet/rbi/gems/spoom@1.1.1.rbi +1193 -0
  172. data/sorbet/rbi/gems/sys-uname.rbi +66 -0
  173. data/sorbet/rbi/gems/sys-uname@1.2.2.rbi +8 -0
  174. data/sorbet/rbi/gems/tapioca.rbi +39 -0
  175. data/sorbet/rbi/gems/tapioca@0.4.23.rbi +1230 -0
  176. data/sorbet/rbi/gems/terminal-table.rbi +166 -0
  177. data/sorbet/rbi/gems/terminal-table@3.0.0.rbi +8 -0
  178. data/sorbet/rbi/gems/thor.rbi +537 -0
  179. data/sorbet/rbi/gems/thor@1.1.0.rbi +838 -0
  180. data/sorbet/rbi/gems/thread_safe@0.3.6.rbi +8 -0
  181. data/sorbet/rbi/gems/tracker_api.rbi +33 -0
  182. data/sorbet/rbi/gems/tracker_api@1.13.0.rbi +21 -0
  183. data/sorbet/rbi/gems/trailblazer-option.rbi +22 -0
  184. data/sorbet/rbi/gems/trailblazer-option@0.1.1.rbi +8 -0
  185. data/sorbet/rbi/gems/tty-color.rbi +41 -0
  186. data/sorbet/rbi/gems/tty-color@0.3.0.rbi +8 -0
  187. data/sorbet/rbi/gems/tty-command@0.1.0.rbi +8 -0
  188. data/sorbet/rbi/gems/tty-cursor@0.3.0.rbi +8 -0
  189. data/sorbet/rbi/gems/tty-pager.rbi +41 -0
  190. data/sorbet/rbi/gems/tty-pager@0.4.0.rbi +8 -0
  191. data/sorbet/rbi/gems/tty-platform.rbi +36 -0
  192. data/sorbet/rbi/gems/tty-platform@0.1.0.rbi +8 -0
  193. data/sorbet/rbi/gems/tty-progressbar.rbi +164 -0
  194. data/sorbet/rbi/gems/tty-progressbar@0.9.0.rbi +8 -0
  195. data/sorbet/rbi/gems/tty-prompt@0.6.0.rbi +8 -0
  196. data/sorbet/rbi/gems/tty-screen.rbi +40 -0
  197. data/sorbet/rbi/gems/tty-screen@0.5.1.rbi +8 -0
  198. data/sorbet/rbi/gems/tty-spinner.rbi +40 -0
  199. data/sorbet/rbi/gems/tty-spinner@0.2.0.rbi +8 -0
  200. data/sorbet/rbi/gems/tty-table.rbi +417 -0
  201. data/sorbet/rbi/gems/tty-table@0.5.0.rbi +8 -0
  202. data/sorbet/rbi/gems/tty-which.rbi +22 -0
  203. data/sorbet/rbi/gems/tty-which@0.1.0.rbi +8 -0
  204. data/sorbet/rbi/gems/tty.rbi +126 -0
  205. data/sorbet/rbi/gems/tty@0.5.0.rbi +8 -0
  206. data/sorbet/rbi/gems/tzinfo.rbi +588 -0
  207. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +8 -0
  208. data/sorbet/rbi/gems/uber.rbi +18 -0
  209. data/sorbet/rbi/gems/uber@0.1.0.rbi +8 -0
  210. data/sorbet/rbi/gems/unicode-display_width.rbi +17 -0
  211. data/sorbet/rbi/gems/unicode-display_width@1.7.0.rbi +8 -0
  212. data/sorbet/rbi/gems/unicode_utils.rbi +171 -0
  213. data/sorbet/rbi/gems/unicode_utils@1.4.0.rbi +8 -0
  214. data/sorbet/rbi/gems/vcr.rbi +582 -0
  215. data/sorbet/rbi/gems/vcr@6.0.0.rbi +782 -0
  216. data/sorbet/rbi/gems/verse.rbi +87 -0
  217. data/sorbet/rbi/gems/verse@0.4.0.rbi +8 -0
  218. data/sorbet/rbi/gems/virtus@1.0.5.rbi +8 -0
  219. data/sorbet/rbi/gems/wisper@1.6.1.rbi +8 -0
  220. data/sorbet/rbi/gems/zeitwerk.rbi +139 -0
  221. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +8 -0
  222. data/sorbet/rbi/hidden-definitions/errors.txt +8695 -0
  223. data/sorbet/rbi/hidden-definitions/hidden.rbi +18529 -0
  224. data/sorbet/rbi/sorbet-typed/lib/activesupport/>=6/activesupport.rbi +37 -0
  225. data/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1850 -0
  226. data/sorbet/rbi/sorbet-typed/lib/faraday/all/faraday.rbi +756 -0
  227. data/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +108 -0
  228. data/sorbet/rbi/sorbet-typed/lib/parlour/6.0.0/parlour.rbi +1903 -0
  229. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +276 -0
  230. data/sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi +645 -0
  231. data/sorbet/rbi/sorbet-typed/lib/rspec-core/all/rspec-core.rbi +1891 -0
  232. data/sorbet/rbi/sorbet-typed/lib/thor/all/thor.rbi +905 -0
  233. data/sorbet/rbi/todo.rbi +23 -0
  234. data/sorbet/tapioca/require.rb +4 -0
  235. metadata +341 -23
@@ -0,0 +1,66 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: true
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/sys-uname/all/sys-uname.rbi
9
+ #
10
+ # sys-uname-1.2.2
11
+
12
+ module Sys
13
+ end
14
+ class Sys::Uname
15
+ def self.architecture; end
16
+ def self.dhcp_cache; end
17
+ def self.get_model; end
18
+ def self.get_si(flag); end
19
+ def self.hw_provider; end
20
+ def self.hw_serial; end
21
+ def self.isa_list; end
22
+ def self.machine; end
23
+ def self.model; end
24
+ def self.nodename; end
25
+ def self.platform; end
26
+ def self.release; end
27
+ def self.srpc_domain; end
28
+ def self.sysctl(*arg0); end
29
+ def self.sysname; end
30
+ def self.uname; end
31
+ def self.uname_c(*arg0); end
32
+ def self.version; end
33
+ def sysctl(*arg0); end
34
+ def uname_c(*arg0); end
35
+ extend FFI::Library
36
+ end
37
+ class Sys::Uname::Error < StandardError
38
+ end
39
+ class Sys::Uname::UnameFFIStruct < FFI::Struct
40
+ end
41
+ class Struct::UnameStruct < Struct
42
+ def machine; end
43
+ def machine=(_); end
44
+ def model; end
45
+ def model=(_); end
46
+ def nodename; end
47
+ def nodename=(_); end
48
+ def release; end
49
+ def release=(_); end
50
+ def self.[](*arg0); end
51
+ def self.inspect; end
52
+ def self.members; end
53
+ def self.new(*arg0); end
54
+ def sysname; end
55
+ def sysname=(_); end
56
+ def version; end
57
+ def version=(_); end
58
+ end
59
+ class Sys::Platform
60
+ def self.bsd?; end
61
+ def self.linux?; end
62
+ def self.mac?; end
63
+ def self.solaris?; end
64
+ def self.unix?; end
65
+ def self.windows?; end
66
+ end
@@ -0,0 +1,8 @@
1
+ # DO NOT EDIT MANUALLY
2
+ # This is an autogenerated file for types exported from the `sys-uname` gem.
3
+ # Please instead update this file by running `bin/tapioca sync`.
4
+
5
+ # typed: true
6
+
7
+ # THIS IS AN EMPTY RBI FILE.
8
+ # see https://github.com/Shopify/tapioca/blob/master/README.md#manual-gem-requires
@@ -0,0 +1,39 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: strict
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/tapioca/all/tapioca.rbi
9
+ #
10
+ # tapioca-0.4.23
11
+
12
+ module Tapioca
13
+ def self.silence_warnings(&blk); end
14
+ end
15
+ module Tapioca::Compilers
16
+ end
17
+ module Tapioca::Compilers::Dsl
18
+ end
19
+ class Tapioca::Compilers::Dsl::Base
20
+ def compile_method_parameters_to_parlour(*args, &blk); end
21
+ def compile_method_return_type_to_parlour(*args, &blk); end
22
+ def create_method(*args, &blk); end
23
+ def create_method_from_def(*args, &blk); end
24
+ def decorate(*args, &blk); end
25
+ def gather_constants(*args, &blk); end
26
+ def handles?(*args, &blk); end
27
+ def initialize(*args, &blk); end
28
+ def parameters_types_from_signature(*args, &blk); end
29
+ def processable_constants(*args, &blk); end
30
+ def valid_method_name?(*args, &blk); end
31
+ extend T::Helpers
32
+ extend T::InterfaceWrapper::Helpers
33
+ extend T::Private::Abstract::Hooks
34
+ extend T::Private::Methods::MethodHooks
35
+ extend T::Private::Methods::SingletonMethodHooks
36
+ extend T::Sig
37
+ end
38
+ class Tapioca::Error < StandardError
39
+ end
@@ -0,0 +1,1230 @@
1
+ # DO NOT EDIT MANUALLY
2
+ # This is an autogenerated file for types exported from the `tapioca` gem.
3
+ # Please instead update this file by running `bin/tapioca sync`.
4
+
5
+ # typed: true
6
+
7
+ class String
8
+ include ::Comparable
9
+ include ::JSON::Ext::Generator::GeneratorMethods::String
10
+ include ::Colorize::InstanceMethods
11
+ extend ::JSON::Ext::Generator::GeneratorMethods::String::Extend
12
+ extend ::Colorize::ClassMethods
13
+ end
14
+
15
+ module T::Generic::TypeStoragePatch
16
+ def [](*types); end
17
+ def type_member(variance = T.unsafe(nil), fixed: T.unsafe(nil), lower: T.unsafe(nil), upper: T.unsafe(nil)); end
18
+ def type_template(variance = T.unsafe(nil), fixed: T.unsafe(nil), lower: T.unsafe(nil), upper: T.unsafe(nil)); end
19
+ end
20
+
21
+ module T::Types::Simple::GenericNamePatch
22
+ def name; end
23
+ end
24
+
25
+ module T::Types::Simple::NamePatch
26
+ def name; end
27
+ end
28
+
29
+ module Tapioca
30
+ class << self
31
+ def silence_warnings(&blk); end
32
+ end
33
+ end
34
+
35
+ module Tapioca::Cli; end
36
+
37
+ class Tapioca::Cli::Main < ::Thor
38
+ include ::Thor::Actions
39
+ extend ::Thor::Actions::ClassMethods
40
+
41
+ def __print_version; end
42
+ def dsl(*constants); end
43
+ def generate(*gems); end
44
+ def init; end
45
+ def require; end
46
+ def sync; end
47
+ def todo; end
48
+
49
+ private
50
+
51
+ def create_config; end
52
+ def create_post_require; end
53
+ def generate_binstub; end
54
+ def generator; end
55
+
56
+ class << self
57
+ def exit_on_failure?; end
58
+ end
59
+ end
60
+
61
+ module Tapioca::Compilers; end
62
+ module Tapioca::Compilers::Dsl; end
63
+
64
+ class Tapioca::Compilers::Dsl::Base
65
+ abstract!
66
+
67
+ sig { void }
68
+ def initialize; end
69
+
70
+ sig { abstract.type_parameters(:T).params(root: Parlour::RbiGenerator::Namespace, constant: T.type_parameter(:T)).void }
71
+ def decorate(root, constant); end
72
+
73
+ sig { abstract.returns(T::Enumerable[Module]) }
74
+ def gather_constants; end
75
+
76
+ sig { params(constant: Module).returns(T::Boolean) }
77
+ def handles?(constant); end
78
+
79
+ sig { returns(T::Set[Module]) }
80
+ def processable_constants; end
81
+
82
+ private
83
+
84
+ sig { params(method_def: T.any(Method, UnboundMethod)).returns(T::Array[Parlour::RbiGenerator::Parameter]) }
85
+ def compile_method_parameters_to_parlour(method_def); end
86
+
87
+ sig { params(method_def: T.any(Method, UnboundMethod)).returns(T.nilable(String)) }
88
+ def compile_method_return_type_to_parlour(method_def); end
89
+
90
+ sig { params(namespace: Parlour::RbiGenerator::Namespace, name: String, options: T::Hash[T.untyped, T.untyped]).void }
91
+ def create_method(namespace, name, options = T.unsafe(nil)); end
92
+
93
+ sig { params(namespace: Parlour::RbiGenerator::Namespace, method_def: T.any(Method, UnboundMethod), class_method: T::Boolean).void }
94
+ def create_method_from_def(namespace, method_def, class_method: T.unsafe(nil)); end
95
+
96
+ sig { params(method_def: T.any(Method, UnboundMethod), signature: T.untyped).returns(T::Array[String]) }
97
+ def parameters_types_from_signature(method_def, signature); end
98
+
99
+ sig { params(name: String).returns(T::Boolean) }
100
+ def valid_method_name?(name); end
101
+ end
102
+
103
+ Tapioca::Compilers::Dsl::Base::SPECIAL_METHOD_NAMES = T.let(T.unsafe(nil), Array)
104
+
105
+ class Tapioca::Compilers::DslCompiler
106
+ sig { params(requested_constants: T::Array[Module], requested_generators: T::Array[String], error_handler: T.nilable(T.proc.params(error: String).void)).void }
107
+ def initialize(requested_constants:, requested_generators: T.unsafe(nil), error_handler: T.unsafe(nil)); end
108
+
109
+ sig { returns(T.proc.params(error: String).void) }
110
+ def error_handler; end
111
+
112
+ sig { returns(T::Enumerable[Tapioca::Compilers::Dsl::Base]) }
113
+ def generators; end
114
+
115
+ sig { returns(T::Array[Module]) }
116
+ def requested_constants; end
117
+
118
+ sig { params(blk: T.proc.params(constant: Module, rbi: String).void).void }
119
+ def run(&blk); end
120
+
121
+ private
122
+
123
+ sig { params(requested_constants: T::Array[Module]).returns(T::Set[Module]) }
124
+ def gather_constants(requested_constants); end
125
+
126
+ sig { params(requested_generators: T::Array[String]).returns(T::Enumerable[Tapioca::Compilers::Dsl::Base]) }
127
+ def gather_generators(requested_generators); end
128
+
129
+ sig { params(requested_generators: T::Array[String]).returns(T.proc.params(klass: Class).returns(T::Boolean)) }
130
+ def generator_filter(requested_generators); end
131
+
132
+ sig { params(constant: Module).returns(T.nilable(String)) }
133
+ def rbi_for_constant(constant); end
134
+
135
+ sig { params(error: String).returns(T.noreturn) }
136
+ def report_error(error); end
137
+
138
+ sig { params(parlour: Parlour::RbiGenerator).void }
139
+ def resolve_conflicts(parlour); end
140
+ end
141
+
142
+ class Tapioca::Compilers::RequiresCompiler
143
+ sig { params(sorbet_path: String).void }
144
+ def initialize(sorbet_path); end
145
+
146
+ sig { returns(String) }
147
+ def compile; end
148
+
149
+ private
150
+
151
+ sig { params(config: Spoom::Sorbet::Config).returns(T::Array[String]) }
152
+ def collect_files(config); end
153
+
154
+ sig { params(file_path: String).returns(T::Enumerable[String]) }
155
+ def collect_requires(file_path); end
156
+
157
+ sig { params(config: Spoom::Sorbet::Config, file_path: Pathname).returns(T::Boolean) }
158
+ def file_ignored_by_sorbet?(config, file_path); end
159
+
160
+ sig { params(files: T::Enumerable[String], name: String).returns(T::Boolean) }
161
+ def name_in_project?(files, name); end
162
+
163
+ sig { params(path: Pathname).returns(T::Array[String]) }
164
+ def path_parts(path); end
165
+ end
166
+
167
+ module Tapioca::Compilers::Sorbet
168
+ class << self
169
+ sig { params(args: String).returns(String) }
170
+ def run(*args); end
171
+
172
+ sig { returns(String) }
173
+ def sorbet_path; end
174
+ end
175
+ end
176
+
177
+ Tapioca::Compilers::Sorbet::EXE_PATH_ENV_VAR = T.let(T.unsafe(nil), String)
178
+ Tapioca::Compilers::Sorbet::SORBET = T.let(T.unsafe(nil), Pathname)
179
+ module Tapioca::Compilers::SymbolTable; end
180
+
181
+ class Tapioca::Compilers::SymbolTable::SymbolGenerator
182
+ sig { params(gem: Tapioca::Gemfile::Gem, indent: Integer).void }
183
+ def initialize(gem, indent = T.unsafe(nil)); end
184
+
185
+ def gem; end
186
+
187
+ sig { returns(String) }
188
+ def generate; end
189
+
190
+ def indent; end
191
+
192
+ private
193
+
194
+ sig { params(name: String).void }
195
+ def add_to_alias_namespace(name); end
196
+
197
+ def add_to_symbol_queue(name); end
198
+
199
+ sig { params(name: String).returns(T::Boolean) }
200
+ def alias_namespaced?(name); end
201
+
202
+ sig { params(constant: Module).returns(T::Array[Module]) }
203
+ def ancestors_of(constant); end
204
+
205
+ sig { params(constant: Module, other: BasicObject).returns(T::Boolean) }
206
+ def are_equal?(constant, other); end
207
+
208
+ sig { params(constant: BasicObject).returns(Class) }
209
+ def class_of(constant); end
210
+
211
+ sig { params(tree: Tapioca::RBI::Tree, name: T.nilable(String), constant: BasicObject).void }
212
+ def compile(tree, name, constant); end
213
+
214
+ sig { params(tree: Tapioca::RBI::Tree, name: String, constant: Module).void }
215
+ def compile_alias(tree, name, constant); end
216
+
217
+ sig { params(tree: Tapioca::RBI::Tree, name: String, constant: Module).void }
218
+ def compile_body(tree, name, constant); end
219
+
220
+ sig { params(tree: Tapioca::RBI::Tree, name: String, constant: BasicObject).void }
221
+ def compile_constant(tree, name, constant); end
222
+
223
+ sig { params(tree: Tapioca::RBI::Tree, module_name: String, mod: Module, for_visibility: T::Array[Symbol]).void }
224
+ def compile_directly_owned_methods(tree, module_name, mod, for_visibility = T.unsafe(nil)); end
225
+
226
+ sig { params(tree: Tapioca::RBI::Tree, constant: Module).void }
227
+ def compile_enums(tree, constant); end
228
+
229
+ sig { params(tree: Tapioca::RBI::Tree, symbol_name: String, constant: Module, method: T.nilable(UnboundMethod), visibility: Tapioca::RBI::Visibility).void }
230
+ def compile_method(tree, symbol_name, constant, method, visibility = T.unsafe(nil)); end
231
+
232
+ sig { params(tree: Tapioca::RBI::Tree, name: String, constant: Module).void }
233
+ def compile_methods(tree, name, constant); end
234
+
235
+ sig { params(tree: Tapioca::RBI::Tree, constant: Module).void }
236
+ def compile_mixes_in_class_methods(tree, constant); end
237
+
238
+ sig { params(tree: Tapioca::RBI::Tree, constant: Module).void }
239
+ def compile_mixins(tree, constant); end
240
+
241
+ sig { params(tree: Tapioca::RBI::Tree, name: String, constant: Module).void }
242
+ def compile_module(tree, name, constant); end
243
+
244
+ sig { params(tree: Tapioca::RBI::Tree, constant: Module).void }
245
+ def compile_module_helpers(tree, constant); end
246
+
247
+ sig { params(tree: Tapioca::RBI::Tree, name: String, value: BasicObject).void }
248
+ def compile_object(tree, name, value); end
249
+
250
+ sig { params(tree: Tapioca::RBI::Tree, constant: Module).void }
251
+ def compile_props(tree, constant); end
252
+
253
+ sig { params(signature: T.untyped, parameters: T::Array[[Symbol, String]]).returns(Tapioca::RBI::Sig) }
254
+ def compile_signature(signature, parameters); end
255
+
256
+ sig { params(tree: Tapioca::RBI::Tree, name: String, constant: Module).void }
257
+ def compile_subconstants(tree, name, constant); end
258
+
259
+ sig { params(constant: Class).returns(T.nilable(String)) }
260
+ def compile_superclass(constant); end
261
+
262
+ sig { params(tree: Tapioca::RBI::Tree, constant: Module).void }
263
+ def compile_type_variable_declarations(tree, constant); end
264
+
265
+ sig { params(tree: Tapioca::RBI::Tree, constant: Module).void }
266
+ def compile_type_variables(tree, constant); end
267
+
268
+ sig { params(constant: Module).returns(T::Array[Symbol]) }
269
+ def constants_of(constant); end
270
+
271
+ sig { params(constant: Module, strict: T::Boolean).returns(T::Boolean) }
272
+ def defined_in_gem?(constant, strict: T.unsafe(nil)); end
273
+
274
+ sig { params(symbols: T::Set[String]).returns(T::Set[String]) }
275
+ def engine_symbols(symbols); end
276
+
277
+ sig { params(tree: Tapioca::RBI::Tree, symbol: String).void }
278
+ def generate_from_symbol(tree, symbol); end
279
+
280
+ sig { params(constant: T.all(Module, T::Generic)).returns(String) }
281
+ def generic_name_of(constant); end
282
+
283
+ sig { params(constant: Module).returns(T::Array[String]) }
284
+ def get_file_candidates(constant); end
285
+
286
+ sig { params(constant: Module).returns(T::Array[Module]) }
287
+ def inherited_ancestors_of(constant); end
288
+
289
+ def initialize_method_for(constant); end
290
+
291
+ sig { params(constant: Module).returns(T::Array[Module]) }
292
+ def interesting_ancestors_of(constant); end
293
+
294
+ sig { params(name: String).void }
295
+ def mark_seen(name); end
296
+
297
+ sig { params(method: UnboundMethod).returns(T::Boolean) }
298
+ def method_in_gem?(method); end
299
+
300
+ sig { params(mod: Module).returns(T::Hash[Symbol, T::Array[Symbol]]) }
301
+ def method_names_by_visibility(mod); end
302
+
303
+ sig { params(constant: Module).returns(T.nilable(String)) }
304
+ def name_of(constant); end
305
+
306
+ sig { params(constant: Module).returns(T.nilable(String)) }
307
+ def name_of_proxy_target(constant); end
308
+
309
+ sig { params(object: BasicObject).returns(Integer) }
310
+ def object_id_of(object); end
311
+
312
+ sig { params(constant: Module).returns(T.nilable(String)) }
313
+ def qualified_name_of(constant); end
314
+
315
+ sig { params(constant: Module).returns(T.nilable(String)) }
316
+ def raw_name_of(constant); end
317
+
318
+ sig { params(symbol: String, inherit: T::Boolean, namespace: Module).returns(BasicObject) }
319
+ def resolve_constant(symbol, inherit: T.unsafe(nil), namespace: T.unsafe(nil)); end
320
+
321
+ sig { params(sig_string: String).returns(String) }
322
+ def sanitize_signature_types(sig_string); end
323
+
324
+ sig { params(name: String).returns(T::Boolean) }
325
+ def seen?(name); end
326
+
327
+ sig { params(method: T.any(Method, UnboundMethod)).returns(T.untyped) }
328
+ def signature_of(method); end
329
+
330
+ sig { params(constant: Module).returns(Class) }
331
+ def singleton_class_of(constant); end
332
+
333
+ sig { params(constant: Module, method_name: String).returns(T::Boolean) }
334
+ def struct_method?(constant, method_name); end
335
+
336
+ sig { params(constant: Class).returns(T.nilable(Class)) }
337
+ def superclass_of(constant); end
338
+
339
+ sig { params(symbol_name: String).returns(T::Boolean) }
340
+ def symbol_ignored?(symbol_name); end
341
+
342
+ sig { returns(T::Set[String]) }
343
+ def symbols; end
344
+
345
+ sig { params(constant: T::Types::Base).returns(String) }
346
+ def type_of(constant); end
347
+
348
+ sig { params(name: String).returns(T::Boolean) }
349
+ def valid_method_name?(name); end
350
+ end
351
+
352
+ Tapioca::Compilers::SymbolTable::SymbolGenerator::IGNORED_SYMBOLS = T.let(T.unsafe(nil), Array)
353
+ Tapioca::Compilers::SymbolTable::SymbolGenerator::SPECIAL_METHOD_NAMES = T.let(T.unsafe(nil), Array)
354
+ Tapioca::Compilers::SymbolTable::SymbolGenerator::TYPE_PARAMETER_MATCHER = T.let(T.unsafe(nil), Regexp)
355
+
356
+ module Tapioca::Compilers::SymbolTable::SymbolLoader
357
+ class << self
358
+ def ignore_symbol?(symbol); end
359
+
360
+ sig { params(paths: T::Array[Pathname]).returns(T::Set[String]) }
361
+ def list_from_paths(paths); end
362
+
363
+ private
364
+
365
+ def ignored_symbols; end
366
+
367
+ sig { params(paths: T::Array[String]).returns(T::Set[String]) }
368
+ def load_symbols(paths); end
369
+
370
+ def symbol_table_json_from(input, table_type: T.unsafe(nil)); end
371
+ end
372
+ end
373
+
374
+ class Tapioca::Compilers::SymbolTable::SymbolLoader::SymbolTableParser
375
+ class << self
376
+ def parse(object, parents = T.unsafe(nil)); end
377
+ end
378
+ end
379
+
380
+ class Tapioca::Compilers::SymbolTableCompiler
381
+ sig { params(gem: Tapioca::Gemfile::Gem, indent: Integer).returns(String) }
382
+ def compile(gem, indent = T.unsafe(nil)); end
383
+ end
384
+
385
+ class Tapioca::Compilers::TodosCompiler
386
+ sig { returns(String) }
387
+ def compile; end
388
+
389
+ private
390
+
391
+ sig { returns(String) }
392
+ def list_todos; end
393
+ end
394
+
395
+ class Tapioca::Config < ::T::Struct
396
+ const :exclude, T::Array[String]
397
+ const :generators, T::Array[String]
398
+ const :outdir, String
399
+ const :postrequire, String
400
+ const :prerequire, T.nilable(String)
401
+ const :todos_path, String
402
+ const :typed_overrides, T::Hash[String, String]
403
+
404
+ sig { returns(Pathname) }
405
+ def outpath; end
406
+
407
+ class << self
408
+ def inherited(s); end
409
+ end
410
+ end
411
+
412
+ Tapioca::Config::DEFAULT_COMMAND = T.let(T.unsafe(nil), String)
413
+ Tapioca::Config::DEFAULT_DSLDIR = T.let(T.unsafe(nil), String)
414
+ Tapioca::Config::DEFAULT_GEMDIR = T.let(T.unsafe(nil), String)
415
+ Tapioca::Config::DEFAULT_OVERRIDES = T.let(T.unsafe(nil), Hash)
416
+ Tapioca::Config::DEFAULT_POSTREQUIRE = T.let(T.unsafe(nil), String)
417
+ Tapioca::Config::DEFAULT_RBIDIR = T.let(T.unsafe(nil), String)
418
+ Tapioca::Config::DEFAULT_TODOSPATH = T.let(T.unsafe(nil), String)
419
+ Tapioca::Config::SORBET_CONFIG = T.let(T.unsafe(nil), String)
420
+ Tapioca::Config::SORBET_PATH = T.let(T.unsafe(nil), String)
421
+ Tapioca::Config::TAPIOCA_CONFIG = T.let(T.unsafe(nil), String)
422
+ Tapioca::Config::TAPIOCA_PATH = T.let(T.unsafe(nil), String)
423
+
424
+ class Tapioca::ConfigBuilder
425
+ class << self
426
+ sig { params(command: Symbol, options: T::Hash[String, T.untyped]).returns(Tapioca::Config) }
427
+ def from_options(command, options); end
428
+
429
+ private
430
+
431
+ sig { returns(T::Hash[String, T.untyped]) }
432
+ def config_options; end
433
+
434
+ sig { params(command: Symbol).returns(T::Hash[String, T.untyped]) }
435
+ def default_options(command); end
436
+
437
+ sig { params(options: T::Hash[String, T.untyped]).returns(T::Hash[String, T.untyped]) }
438
+ def merge_options(*options); end
439
+ end
440
+ end
441
+
442
+ Tapioca::ConfigBuilder::DEFAULT_OPTIONS = T.let(T.unsafe(nil), Hash)
443
+
444
+ module Tapioca::ConstantLocator
445
+ private
446
+
447
+ def files_for(klass); end
448
+
449
+ class << self
450
+ def files_for(klass); end
451
+ end
452
+ end
453
+
454
+ Tapioca::ConstantLocator::NAME = T.let(T.unsafe(nil), UnboundMethod)
455
+ class Tapioca::Error < ::StandardError; end
456
+
457
+ class Tapioca::Gemfile
458
+ sig { void }
459
+ def initialize; end
460
+
461
+ sig { returns(Bundler::Definition) }
462
+ def definition; end
463
+
464
+ sig { returns(T::Array[Tapioca::Gemfile::Gem]) }
465
+ def dependencies; end
466
+
467
+ sig { params(gem_name: String).returns(T.nilable(Tapioca::Gemfile::Gem)) }
468
+ def gem(gem_name); end
469
+
470
+ sig { returns(T::Array[String]) }
471
+ def missing_specs; end
472
+
473
+ sig { void }
474
+ def require; end
475
+
476
+ private
477
+
478
+ sig { returns(String) }
479
+ def dir; end
480
+
481
+ sig { returns(File) }
482
+ def gemfile; end
483
+
484
+ sig { returns(T::Array[Symbol]) }
485
+ def groups; end
486
+
487
+ sig { returns([T::Array[Tapioca::Gemfile::Gem], T::Array[String]]) }
488
+ def load_dependencies; end
489
+
490
+ def lockfile; end
491
+
492
+ sig { returns(Bundler::Runtime) }
493
+ def runtime; end
494
+ end
495
+
496
+ class Tapioca::Gemfile::Gem
497
+ sig { params(spec: T.any(Gem::Specification, T.all(Bundler::RemoteSpecification, Bundler::StubSpecification))).void }
498
+ def initialize(spec); end
499
+
500
+ sig { params(path: String).returns(T::Boolean) }
501
+ def contains_path?(path); end
502
+
503
+ sig { returns(T::Array[Pathname]) }
504
+ def files; end
505
+
506
+ sig { returns(String) }
507
+ def full_gem_path; end
508
+
509
+ sig { params(gemfile_dir: String).returns(T::Boolean) }
510
+ def ignore?(gemfile_dir); end
511
+
512
+ sig { returns(String) }
513
+ def name; end
514
+
515
+ sig { returns(String) }
516
+ def rbi_file_name; end
517
+
518
+ def version; end
519
+
520
+ private
521
+
522
+ sig { returns(T::Boolean) }
523
+ def default_gem?; end
524
+
525
+ sig { returns(T::Boolean) }
526
+ def gem_ignored?; end
527
+
528
+ sig { params(gemfile_dir: String).returns(T::Boolean) }
529
+ def gem_in_app_dir?(gemfile_dir); end
530
+
531
+ sig { returns(T::Boolean) }
532
+ def gem_in_bundle_path?; end
533
+
534
+ sig { params(path: String).returns(T::Boolean) }
535
+ def has_parent_gemspec?(path); end
536
+
537
+ sig { returns(Pathname) }
538
+ def ruby_lib_dir; end
539
+
540
+ sig { params(path: T.any(Pathname, String)).returns(String) }
541
+ def to_realpath(path); end
542
+
543
+ sig { returns(String) }
544
+ def version_string; end
545
+ end
546
+
547
+ Tapioca::Gemfile::Gem::IGNORED_GEMS = T.let(T.unsafe(nil), Array)
548
+ Tapioca::Gemfile::Spec = T.type_alias { T.any(Gem::Specification, T.all(Bundler::RemoteSpecification, Bundler::StubSpecification)) }
549
+
550
+ class Tapioca::Generator < ::Thor::Shell::Color
551
+ sig { params(config: Tapioca::Config).void }
552
+ def initialize(config); end
553
+
554
+ sig { params(requested_constants: T::Array[String], should_verify: T::Boolean, quiet: T::Boolean).void }
555
+ def build_dsl(requested_constants, should_verify: T.unsafe(nil), quiet: T.unsafe(nil)); end
556
+
557
+ sig { params(gem_names: T::Array[String]).void }
558
+ def build_gem_rbis(gem_names); end
559
+
560
+ sig { void }
561
+ def build_requires; end
562
+
563
+ sig { void }
564
+ def build_todos; end
565
+
566
+ sig { returns(Tapioca::Config) }
567
+ def config; end
568
+
569
+ sig { void }
570
+ def sync_rbis_with_gemfile; end
571
+
572
+ private
573
+
574
+ sig { params(filename: Pathname).void }
575
+ def add(filename); end
576
+
577
+ sig { returns(T::Array[String]) }
578
+ def added_rbis; end
579
+
580
+ sig { params(cause: Symbol, files: T::Array[String]).returns(String) }
581
+ def build_error_for_files(cause, files); end
582
+
583
+ sig { returns(Tapioca::Gemfile) }
584
+ def bundle; end
585
+
586
+ sig { params(constant_name: String, contents: String, outpath: Pathname, quiet: T::Boolean).returns(T.nilable(Pathname)) }
587
+ def compile_dsl_rbi(constant_name, contents, outpath: T.unsafe(nil), quiet: T.unsafe(nil)); end
588
+
589
+ sig { params(gem: Tapioca::Gemfile::Gem).void }
590
+ def compile_gem_rbi(gem); end
591
+
592
+ sig { returns(Tapioca::Compilers::SymbolTableCompiler) }
593
+ def compiler; end
594
+
595
+ sig { params(constant_names: T::Array[String]).returns(T::Array[Module]) }
596
+ def constantize(constant_names); end
597
+
598
+ sig { params(constant_name: String).returns(Pathname) }
599
+ def dsl_rbi_filename(constant_name); end
600
+
601
+ sig { params(gem_name: String).returns(Pathname) }
602
+ def existing_rbi(gem_name); end
603
+
604
+ sig { params(requested_constants: T::Array[String], path: Pathname).returns(T::Set[Pathname]) }
605
+ def existing_rbi_filenames(requested_constants, path: T.unsafe(nil)); end
606
+
607
+ sig { returns(T::Hash[String, String]) }
608
+ def existing_rbis; end
609
+
610
+ sig { params(gem_name: String).returns(Pathname) }
611
+ def expected_rbi(gem_name); end
612
+
613
+ sig { returns(T::Hash[String, String]) }
614
+ def expected_rbis; end
615
+
616
+ sig { params(file: String, error: LoadError).void }
617
+ def explain_failed_require(file, error); end
618
+
619
+ sig { params(gem_name: String).returns(T::Boolean) }
620
+ def gem_rbi_exists?(gem_name); end
621
+
622
+ sig { params(gem_name: String, version: String).returns(Pathname) }
623
+ def gem_rbi_filename(gem_name, version); end
624
+
625
+ sig { params(gem_names: T::Array[String]).returns(T::Array[Tapioca::Gemfile::Gem]) }
626
+ def gems_to_generate(gem_names); end
627
+
628
+ sig { params(eager_load: T::Boolean).void }
629
+ def load_application(eager_load:); end
630
+
631
+ sig { void }
632
+ def load_dsl_generators; end
633
+
634
+ sig { returns(Tapioca::Loader) }
635
+ def loader; end
636
+
637
+ sig { params(old_filename: Pathname, new_filename: Pathname).void }
638
+ def move(old_filename, new_filename); end
639
+
640
+ sig { void }
641
+ def perform_additions; end
642
+
643
+ sig { params(dir: Pathname).void }
644
+ def perform_dsl_verification(dir); end
645
+
646
+ sig { void }
647
+ def perform_removals; end
648
+
649
+ sig { params(files: T::Set[Pathname]).void }
650
+ def purge_stale_dsl_rbi_files(files); end
651
+
652
+ sig { params(path: Pathname).returns(T::Array[Pathname]) }
653
+ def rbi_files_in(path); end
654
+
655
+ sig { params(command: String, reason: T.nilable(String), strictness: T.nilable(String)).returns(String) }
656
+ def rbi_header(command, reason: T.unsafe(nil), strictness: T.unsafe(nil)); end
657
+
658
+ sig { params(filename: Pathname).void }
659
+ def remove(filename); end
660
+
661
+ sig { returns(T::Array[String]) }
662
+ def removed_rbis; end
663
+
664
+ sig { void }
665
+ def require_gem_file; end
666
+
667
+ sig { params(message: String, color: T.any(Symbol, T::Array[Symbol])).void }
668
+ def say_error(message = T.unsafe(nil), *color); end
669
+
670
+ sig { params(tmp_dir: Pathname).returns(T::Hash[String, Symbol]) }
671
+ def verify_dsl_rbi(tmp_dir:); end
672
+ end
673
+
674
+ Tapioca::Generator::EMPTY_RBI_COMMENT = T.let(T.unsafe(nil), String)
675
+
676
+ module Tapioca::GenericTypeRegistry
677
+ class << self
678
+ sig { params(constant: Module).returns(T.nilable(T::Hash[Integer, String])) }
679
+ def lookup_type_variables(constant); end
680
+
681
+ sig { params(constant: T.untyped, types: T.untyped).returns(Module) }
682
+ def register_type(constant, types); end
683
+
684
+ sig { params(constant: T.untyped, type_member: T::Types::TypeVariable, fixed: T.untyped, lower: T.untyped, upper: T.untyped).void }
685
+ def register_type_member(constant, type_member, fixed, lower, upper); end
686
+
687
+ sig { params(constant: T.untyped, type_template: T::Types::TypeVariable, fixed: T.untyped, lower: T.untyped, upper: T.untyped).void }
688
+ def register_type_template(constant, type_template, fixed, lower, upper); end
689
+
690
+ private
691
+
692
+ sig { params(constant: Module, name: String).returns(Module) }
693
+ def create_generic_type(constant, name); end
694
+
695
+ sig { params(constant: Class).returns(Class) }
696
+ def create_safe_subclass(constant); end
697
+
698
+ sig { params(constant: Module).returns(T::Hash[Integer, String]) }
699
+ def lookup_or_initialize_type_variables(constant); end
700
+
701
+ sig { params(constant: Module).returns(T.nilable(String)) }
702
+ def name_of(constant); end
703
+
704
+ sig { params(object: BasicObject).returns(Integer) }
705
+ def object_id_of(object); end
706
+
707
+ sig { params(constant: T.untyped, type_variable_type: T.enum([:type_member, :type_template]), type_variable: T::Types::TypeVariable, fixed: T.untyped, lower: T.untyped, upper: T.untyped).void }
708
+ def register_type_variable(constant, type_variable_type, type_variable, fixed, lower, upper); end
709
+
710
+ sig { params(type_variable_type: Symbol, variance: Symbol, fixed: T.untyped, lower: T.untyped, upper: T.untyped).returns(String) }
711
+ def serialize_type_variable(type_variable_type, variance, fixed, lower, upper); end
712
+ end
713
+ end
714
+
715
+ class Tapioca::Loader
716
+ sig { params(gemfile: Tapioca::Gemfile).void }
717
+ def initialize(gemfile); end
718
+
719
+ sig { params(initialize_file: T.nilable(String), require_file: T.nilable(String)).void }
720
+ def load_bundle(initialize_file, require_file); end
721
+
722
+ sig { params(environment_load: T::Boolean, eager_load: T::Boolean).void }
723
+ def load_rails(environment_load: T.unsafe(nil), eager_load: T.unsafe(nil)); end
724
+
725
+ private
726
+
727
+ sig { void }
728
+ def eager_load_rails_app; end
729
+
730
+ sig { returns(Tapioca::Gemfile) }
731
+ def gemfile; end
732
+
733
+ sig { void }
734
+ def load_rails_engines; end
735
+
736
+ sig { void }
737
+ def load_rake; end
738
+
739
+ sig { returns(T::Array[T.untyped]) }
740
+ def rails_engines; end
741
+
742
+ sig { void }
743
+ def require_bundle; end
744
+
745
+ sig { params(file: T.nilable(String)).void }
746
+ def require_helper(file); end
747
+
748
+ sig { params(path: String).void }
749
+ def safe_require(path); end
750
+
751
+ sig { void }
752
+ def silence_deprecations; end
753
+ end
754
+
755
+ module Tapioca::RBI; end
756
+
757
+ class Tapioca::RBI::BlockParam < ::Tapioca::RBI::Param
758
+ sig { override.params(v: Tapioca::RBI::Printer).void }
759
+ def accept_printer(v); end
760
+ end
761
+
762
+ class Tapioca::RBI::Class < ::Tapioca::RBI::Scope
763
+ sig { params(name: String, superclass_name: T.nilable(String)).void }
764
+ def initialize(name, superclass_name: T.unsafe(nil)); end
765
+
766
+ sig { returns(String) }
767
+ def name; end
768
+
769
+ def name=(_arg0); end
770
+
771
+ sig { returns(T.nilable(String)) }
772
+ def superclass_name; end
773
+
774
+ def superclass_name=(_arg0); end
775
+ end
776
+
777
+ class Tapioca::RBI::Const < ::Tapioca::RBI::Node
778
+ sig { params(name: String, value: String).void }
779
+ def initialize(name, value); end
780
+
781
+ sig { override.params(v: Tapioca::RBI::Printer).void }
782
+ def accept_printer(v); end
783
+
784
+ sig { returns(String) }
785
+ def name; end
786
+
787
+ def value; end
788
+ end
789
+
790
+ class Tapioca::RBI::Extend < ::Tapioca::RBI::Mixin; end
791
+
792
+ class Tapioca::RBI::Group < ::Tapioca::RBI::Tree
793
+ sig { params(kind: Tapioca::RBI::Group::Kind).void }
794
+ def initialize(kind); end
795
+
796
+ sig { override.params(v: Tapioca::RBI::Printer).void }
797
+ def accept_printer(v); end
798
+
799
+ sig { returns(Tapioca::RBI::Group::Kind) }
800
+ def kind; end
801
+ end
802
+
803
+ class Tapioca::RBI::Group::Kind < ::T::Enum
804
+ enums do
805
+ Mixins = new
806
+ Helpers = new
807
+ TypeMembers = new
808
+ MixesInClassMethods = new
809
+ TStructFields = new
810
+ TEnums = new
811
+ Inits = new
812
+ Methods = new
813
+ Consts = new
814
+ end
815
+ end
816
+
817
+ class Tapioca::RBI::Helper < ::Tapioca::RBI::Node
818
+ sig { params(name: String).void }
819
+ def initialize(name); end
820
+
821
+ sig { override.params(v: Tapioca::RBI::Printer).void }
822
+ def accept_printer(v); end
823
+
824
+ sig { returns(String) }
825
+ def name; end
826
+ end
827
+
828
+ class Tapioca::RBI::Include < ::Tapioca::RBI::Mixin; end
829
+
830
+ class Tapioca::RBI::KwOptParam < ::Tapioca::RBI::OptParam
831
+ sig { override.params(v: Tapioca::RBI::Printer).void }
832
+ def accept_printer(v); end
833
+ end
834
+
835
+ class Tapioca::RBI::KwParam < ::Tapioca::RBI::Param
836
+ sig { override.params(v: Tapioca::RBI::Printer).void }
837
+ def accept_printer(v); end
838
+ end
839
+
840
+ class Tapioca::RBI::KwRestParam < ::Tapioca::RBI::Param
841
+ sig { override.params(v: Tapioca::RBI::Printer).void }
842
+ def accept_printer(v); end
843
+ end
844
+
845
+ class Tapioca::RBI::Method < ::Tapioca::RBI::Node
846
+ sig { params(name: String, params: T::Array[Tapioca::RBI::Param], is_singleton: T::Boolean, visibility: Tapioca::RBI::Visibility, sigs: T::Array[Tapioca::RBI::Sig]).void }
847
+ def initialize(name, params: T.unsafe(nil), is_singleton: T.unsafe(nil), visibility: T.unsafe(nil), sigs: T.unsafe(nil)); end
848
+
849
+ sig { params(param: Tapioca::RBI::Param).void }
850
+ def <<(param); end
851
+
852
+ sig { override.params(v: Tapioca::RBI::Printer).void }
853
+ def accept_printer(v); end
854
+
855
+ sig { returns(T::Boolean) }
856
+ def is_singleton; end
857
+
858
+ def is_singleton=(_arg0); end
859
+
860
+ sig { returns(String) }
861
+ def name; end
862
+
863
+ def name=(_arg0); end
864
+
865
+ sig { override.returns(T::Boolean) }
866
+ def oneline?; end
867
+
868
+ sig { returns(T::Array[Tapioca::RBI::Param]) }
869
+ def params; end
870
+
871
+ sig { returns(T::Array[Tapioca::RBI::Sig]) }
872
+ def sigs; end
873
+
874
+ def sigs=(_arg0); end
875
+
876
+ sig { returns(Tapioca::RBI::Visibility) }
877
+ def visibility; end
878
+
879
+ def visibility=(_arg0); end
880
+ end
881
+
882
+ class Tapioca::RBI::MixesInClassMethods < ::Tapioca::RBI::Mixin; end
883
+
884
+ class Tapioca::RBI::Mixin < ::Tapioca::RBI::Node
885
+ abstract!
886
+
887
+ sig { params(name: String).void }
888
+ def initialize(name); end
889
+
890
+ sig { override.params(v: Tapioca::RBI::Printer).void }
891
+ def accept_printer(v); end
892
+
893
+ sig { returns(String) }
894
+ def name; end
895
+ end
896
+
897
+ class Tapioca::RBI::Module < ::Tapioca::RBI::Scope
898
+ sig { params(name: String).void }
899
+ def initialize(name); end
900
+
901
+ sig { returns(String) }
902
+ def name; end
903
+
904
+ def name=(_arg0); end
905
+ end
906
+
907
+ class Tapioca::RBI::Node
908
+ abstract!
909
+
910
+ sig { void }
911
+ def initialize; end
912
+
913
+ sig { abstract.params(v: Tapioca::RBI::Printer).void }
914
+ def accept_printer(v); end
915
+
916
+ sig { void }
917
+ def detach; end
918
+
919
+ sig { returns(Tapioca::RBI::Group::Kind) }
920
+ def group_kind; end
921
+
922
+ sig { returns(T::Boolean) }
923
+ def oneline?; end
924
+
925
+ sig { returns(T.nilable(Tapioca::RBI::Tree)) }
926
+ def parent_tree; end
927
+
928
+ def parent_tree=(_arg0); end
929
+
930
+ sig { params(out: T.any(IO, StringIO), indent: Integer).void }
931
+ def print(out: T.unsafe(nil), indent: T.unsafe(nil)); end
932
+
933
+ sig { params(indent: Integer).returns(String) }
934
+ def string(indent: T.unsafe(nil)); end
935
+ end
936
+
937
+ class Tapioca::RBI::OptParam < ::Tapioca::RBI::Param
938
+ sig { params(name: String, value: String).void }
939
+ def initialize(name, value); end
940
+
941
+ sig { override.params(v: Tapioca::RBI::Printer).void }
942
+ def accept_printer(v); end
943
+
944
+ sig { returns(String) }
945
+ def value; end
946
+ end
947
+
948
+ class Tapioca::RBI::Param < ::Tapioca::RBI::Node
949
+ sig { params(name: String).void }
950
+ def initialize(name); end
951
+
952
+ sig { override.params(v: Tapioca::RBI::Printer).void }
953
+ def accept_printer(v); end
954
+
955
+ sig { returns(String) }
956
+ def name; end
957
+ end
958
+
959
+ class Tapioca::RBI::Printer < ::Tapioca::RBI::Visitor
960
+ sig { params(out: T.any(IO, StringIO), indent: Integer).void }
961
+ def initialize(out: T.unsafe(nil), indent: T.unsafe(nil)); end
962
+
963
+ sig { void }
964
+ def dedent; end
965
+
966
+ sig { returns(T::Boolean) }
967
+ def in_visibility_group; end
968
+
969
+ def in_visibility_group=(_arg0); end
970
+
971
+ sig { void }
972
+ def indent; end
973
+
974
+ sig { returns(T.nilable(Tapioca::RBI::Node)) }
975
+ def previous_node; end
976
+
977
+ sig { params(string: String).void }
978
+ def print(string); end
979
+
980
+ sig { params(string: String).void }
981
+ def printl(string); end
982
+
983
+ sig { params(string: T.nilable(String)).void }
984
+ def printn(string = T.unsafe(nil)); end
985
+
986
+ sig { params(string: T.nilable(String)).void }
987
+ def printt(string = T.unsafe(nil)); end
988
+
989
+ sig { override.params(node: T.nilable(Tapioca::RBI::Node)).void }
990
+ def visit(node); end
991
+
992
+ sig { override.params(nodes: T::Array[Tapioca::RBI::Node]).void }
993
+ def visit_all(nodes); end
994
+ end
995
+
996
+ class Tapioca::RBI::RestParam < ::Tapioca::RBI::Param
997
+ sig { override.params(v: Tapioca::RBI::Printer).void }
998
+ def accept_printer(v); end
999
+ end
1000
+
1001
+ module Tapioca::RBI::Rewriters; end
1002
+
1003
+ class Tapioca::RBI::Rewriters::GroupNodes < ::Tapioca::RBI::Visitor
1004
+ sig { override.params(node: T.nilable(Tapioca::RBI::Node)).void }
1005
+ def visit(node); end
1006
+ end
1007
+
1008
+ class Tapioca::RBI::Rewriters::NestNonPublicMethods < ::Tapioca::RBI::Visitor
1009
+ sig { override.params(node: T.nilable(Tapioca::RBI::Node)).void }
1010
+ def visit(node); end
1011
+ end
1012
+
1013
+ class Tapioca::RBI::Rewriters::NestSingletonMethods < ::Tapioca::RBI::Visitor
1014
+ sig { override.params(node: T.nilable(Tapioca::RBI::Node)).void }
1015
+ def visit(node); end
1016
+ end
1017
+
1018
+ class Tapioca::RBI::Rewriters::SortNodes < ::Tapioca::RBI::Visitor
1019
+ sig { override.params(node: T.nilable(Tapioca::RBI::Node)).void }
1020
+ def visit(node); end
1021
+
1022
+ private
1023
+
1024
+ sig { params(kind: Tapioca::RBI::Group::Kind).returns(Integer) }
1025
+ def kind_rank(kind); end
1026
+
1027
+ sig { params(node: Tapioca::RBI::Node).returns(T.nilable(String)) }
1028
+ def node_name(node); end
1029
+
1030
+ sig { params(node: Tapioca::RBI::Node).returns(Integer) }
1031
+ def node_rank(node); end
1032
+ end
1033
+
1034
+ class Tapioca::RBI::Scope < ::Tapioca::RBI::Tree
1035
+ abstract!
1036
+
1037
+ def initialize(*args, &blk); end
1038
+
1039
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1040
+ def accept_printer(v); end
1041
+ end
1042
+
1043
+ class Tapioca::RBI::Sig < ::Tapioca::RBI::Node
1044
+ sig { params(params: T::Array[Tapioca::RBI::SigParam], return_type: T.nilable(String), is_abstract: T::Boolean, is_override: T::Boolean, is_overridable: T::Boolean, type_params: T::Array[String]).void }
1045
+ def initialize(params: T.unsafe(nil), return_type: T.unsafe(nil), is_abstract: T.unsafe(nil), is_override: T.unsafe(nil), is_overridable: T.unsafe(nil), type_params: T.unsafe(nil)); end
1046
+
1047
+ sig { params(param: Tapioca::RBI::SigParam).void }
1048
+ def <<(param); end
1049
+
1050
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1051
+ def accept_printer(v); end
1052
+
1053
+ sig { returns(T::Boolean) }
1054
+ def is_abstract; end
1055
+
1056
+ def is_abstract=(_arg0); end
1057
+ def is_overridable; end
1058
+ def is_overridable=(_arg0); end
1059
+ def is_override; end
1060
+ def is_override=(_arg0); end
1061
+
1062
+ sig { returns(T::Array[Tapioca::RBI::SigParam]) }
1063
+ def params; end
1064
+
1065
+ sig { returns(T.nilable(String)) }
1066
+ def return_type; end
1067
+
1068
+ def return_type=(_arg0); end
1069
+
1070
+ sig { returns(T::Array[String]) }
1071
+ def type_params; end
1072
+ end
1073
+
1074
+ class Tapioca::RBI::SigParam < ::Tapioca::RBI::Node
1075
+ sig { params(name: String, type: String).void }
1076
+ def initialize(name, type); end
1077
+
1078
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1079
+ def accept_printer(v); end
1080
+
1081
+ sig { returns(String) }
1082
+ def name; end
1083
+
1084
+ def type; end
1085
+ end
1086
+
1087
+ class Tapioca::RBI::SingletonClass < ::Tapioca::RBI::Scope
1088
+ sig { void }
1089
+ def initialize; end
1090
+ end
1091
+
1092
+ class Tapioca::RBI::TEnum < ::Tapioca::RBI::Class
1093
+ sig { params(name: String).void }
1094
+ def initialize(name); end
1095
+ end
1096
+
1097
+ class Tapioca::RBI::TEnumBlock < ::Tapioca::RBI::Node
1098
+ sig { params(names: T::Array[String]).void }
1099
+ def initialize(names = T.unsafe(nil)); end
1100
+
1101
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1102
+ def accept_printer(v); end
1103
+
1104
+ sig { returns(T::Boolean) }
1105
+ def empty?; end
1106
+
1107
+ sig { returns(T::Array[String]) }
1108
+ def names; end
1109
+ end
1110
+
1111
+ class Tapioca::RBI::TStruct < ::Tapioca::RBI::Class
1112
+ sig { params(name: String).void }
1113
+ def initialize(name); end
1114
+ end
1115
+
1116
+ class Tapioca::RBI::TStructConst < ::Tapioca::RBI::TStructField; end
1117
+
1118
+ class Tapioca::RBI::TStructField < ::Tapioca::RBI::Node
1119
+ abstract!
1120
+
1121
+ sig { params(name: String, type: String, default: T.nilable(String)).void }
1122
+ def initialize(name, type, default: T.unsafe(nil)); end
1123
+
1124
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1125
+ def accept_printer(v); end
1126
+
1127
+ sig { returns(T.nilable(String)) }
1128
+ def default; end
1129
+
1130
+ def default=(_arg0); end
1131
+
1132
+ sig { returns(String) }
1133
+ def name; end
1134
+
1135
+ def name=(_arg0); end
1136
+ def type; end
1137
+ def type=(_arg0); end
1138
+ end
1139
+
1140
+ class Tapioca::RBI::TStructProp < ::Tapioca::RBI::TStructField; end
1141
+
1142
+ class Tapioca::RBI::Tree < ::Tapioca::RBI::Node
1143
+ sig { void }
1144
+ def initialize; end
1145
+
1146
+ sig { params(node: Tapioca::RBI::Node).void }
1147
+ def <<(node); end
1148
+
1149
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1150
+ def accept_printer(v); end
1151
+
1152
+ sig { returns(T::Boolean) }
1153
+ def empty?; end
1154
+
1155
+ sig { void }
1156
+ def group_nodes!; end
1157
+
1158
+ sig { void }
1159
+ def nest_non_public_methods!; end
1160
+
1161
+ sig { void }
1162
+ def nest_singleton_methods!; end
1163
+
1164
+ sig { returns(T::Array[Tapioca::RBI::Node]) }
1165
+ def nodes; end
1166
+
1167
+ sig { override.returns(T::Boolean) }
1168
+ def oneline?; end
1169
+
1170
+ sig { void }
1171
+ def sort_nodes!; end
1172
+ end
1173
+
1174
+ class Tapioca::RBI::TypeMember < ::Tapioca::RBI::Node
1175
+ sig { params(name: String, value: String).void }
1176
+ def initialize(name, value); end
1177
+
1178
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1179
+ def accept_printer(v); end
1180
+
1181
+ sig { returns(String) }
1182
+ def name; end
1183
+
1184
+ def value; end
1185
+ end
1186
+
1187
+ class Tapioca::RBI::Visibility < ::Tapioca::RBI::Node
1188
+ abstract!
1189
+
1190
+ sig { params(visibility: Symbol).void }
1191
+ def initialize(visibility); end
1192
+
1193
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1194
+ def accept_printer(v); end
1195
+
1196
+ sig { returns(T::Boolean) }
1197
+ def public?; end
1198
+
1199
+ sig { returns(Symbol) }
1200
+ def visibility; end
1201
+ end
1202
+
1203
+ Tapioca::RBI::Visibility::Private = T.let(T.unsafe(nil), Tapioca::RBI::Visibility)
1204
+ Tapioca::RBI::Visibility::Protected = T.let(T.unsafe(nil), Tapioca::RBI::Visibility)
1205
+ Tapioca::RBI::Visibility::Public = T.let(T.unsafe(nil), Tapioca::RBI::Visibility)
1206
+
1207
+ class Tapioca::RBI::VisibilityGroup < ::Tapioca::RBI::Tree
1208
+ sig { params(visibility: Tapioca::RBI::Visibility).void }
1209
+ def initialize(visibility); end
1210
+
1211
+ sig { override.params(v: Tapioca::RBI::Printer).void }
1212
+ def accept_printer(v); end
1213
+
1214
+ sig { returns(Tapioca::RBI::Visibility) }
1215
+ def visibility; end
1216
+ end
1217
+
1218
+ class Tapioca::RBI::Visitor
1219
+ abstract!
1220
+
1221
+ def initialize(*args, &blk); end
1222
+
1223
+ sig { abstract.params(node: T.nilable(Tapioca::RBI::Node)).void }
1224
+ def visit(node); end
1225
+
1226
+ sig { params(nodes: T::Array[Tapioca::RBI::Node]).void }
1227
+ def visit_all(nodes); end
1228
+ end
1229
+
1230
+ Tapioca::VERSION = T.let(T.unsafe(nil), String)