ipt 1.0.1 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
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)