@ai-ecoverse/wasix-ruby 3.4.11-20 → 3.4.11-21

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 (618) hide show
  1. package/PRESTAGE.md +8 -8
  2. package/README.md +9 -1
  3. package/THIRD-PARTY-NOTICES.md +1 -1
  4. package/bin/ruby +0 -0
  5. package/lib/ruby/3.4.0/wasm32-wasi/rbconfig.rb +9 -9
  6. package/lib/ruby/gems/3.4.0/cache/bigdecimal-3.1.8.gem +0 -0
  7. package/lib/ruby/gems/3.4.0/cache/debug-1.11.0.gem +0 -0
  8. package/lib/ruby/gems/3.4.0/cache/nkf-0.2.0.gem +0 -0
  9. package/lib/ruby/gems/3.4.0/cache/racc-1.8.1.gem +0 -0
  10. package/lib/ruby/gems/3.4.0/cache/rbs-3.8.0.gem +0 -0
  11. package/lib/ruby/gems/3.4.0/cache/syslog-0.2.0.gem +0 -0
  12. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/bigdecimal-3.1.8/gem.build_complete +0 -0
  13. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/debug-1.11.0/gem.build_complete +0 -0
  14. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/nkf-0.2.0/gem.build_complete +0 -0
  15. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/racc-1.8.1/gem.build_complete +0 -0
  16. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/rbs-3.8.0/gem.build_complete +0 -0
  17. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/syslog-0.2.0/gem.build_complete +0 -0
  18. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/LICENSE +56 -0
  19. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/bigdecimal.c +7794 -0
  20. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/bigdecimal.h +313 -0
  21. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/bits.h +141 -0
  22. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/extconf.rb +62 -0
  23. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/feature.h +68 -0
  24. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/missing/dtoa.c +3462 -0
  25. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/missing.c +27 -0
  26. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/missing.h +196 -0
  27. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/static_assert.h +54 -0
  28. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/jacobian.rb +90 -0
  29. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/ludcmp.rb +89 -0
  30. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/math.rb +232 -0
  31. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/newton.rb +80 -0
  32. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/util.rb +185 -0
  33. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal.rb +5 -0
  34. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/sample/linear.rb +74 -0
  35. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/sample/nlsolve.rb +40 -0
  36. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/sample/pi.rb +21 -0
  37. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/CONTRIBUTING.md +573 -0
  38. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/Gemfile +10 -0
  39. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/LICENSE.txt +22 -0
  40. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/README.md +996 -0
  41. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/Rakefile +57 -0
  42. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/TODO.md +23 -0
  43. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/exe/rdbg +53 -0
  44. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/ext/debug/debug.c +228 -0
  45. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/ext/debug/extconf.rb +27 -0
  46. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/ext/debug/iseq_collector.c +93 -0
  47. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/abbrev_command.rb +77 -0
  48. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/breakpoint.rb +556 -0
  49. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/client.rb +263 -0
  50. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/color.rb +123 -0
  51. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/config.rb +592 -0
  52. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/console.rb +224 -0
  53. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/dap_custom/traceInspector.rb +336 -0
  54. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/frame_info.rb +190 -0
  55. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/irb_integration.rb +37 -0
  56. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/local.rb +115 -0
  57. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/open.rb +13 -0
  58. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/open_nonstop.rb +15 -0
  59. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/prelude.rb +50 -0
  60. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/server.rb +534 -0
  61. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/server_cdp.rb +1348 -0
  62. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/server_dap.rb +1108 -0
  63. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/session.rb +2667 -0
  64. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/source_repository.rb +150 -0
  65. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/start.rb +5 -0
  66. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/thread_client.rb +1457 -0
  67. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/tracer.rb +241 -0
  68. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/version.rb +5 -0
  69. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug.rb +9 -0
  70. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/misc/README.md.erb +660 -0
  71. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/Gemfile +5 -0
  72. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/LICENSE.txt +22 -0
  73. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/README.md +38 -0
  74. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/Rakefile +24 -0
  75. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/bin/console +14 -0
  76. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/bin/setup +8 -0
  77. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/Command.java +58 -0
  78. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/CommandParser.java +70 -0
  79. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/NKFLibrary.java +13 -0
  80. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/Option.java +80 -0
  81. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/Options.java +109 -0
  82. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/RubyNKF.java +601 -0
  83. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/extconf.rb +3 -0
  84. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/config.h +51 -0
  85. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/nkf.c +7205 -0
  86. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/nkf.h +189 -0
  87. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/utf8tbl.c +14638 -0
  88. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/utf8tbl.h +72 -0
  89. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf.c +506 -0
  90. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/lib/kconv.rb +283 -0
  91. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/lib/nkf.rb +6 -0
  92. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/BSDL +22 -0
  93. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/COPYING +56 -0
  94. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/ChangeLog +846 -0
  95. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/README.ja.rdoc +58 -0
  96. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/README.rdoc +60 -0
  97. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/TODO +5 -0
  98. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/bin/racc +320 -0
  99. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/en/grammar.en.rdoc +218 -0
  100. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/en/grammar2.en.rdoc +219 -0
  101. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/command.ja.html +99 -0
  102. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/debug.ja.rdoc +36 -0
  103. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/grammar.ja.rdoc +348 -0
  104. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/index.ja.html +10 -0
  105. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/parser.ja.rdoc +125 -0
  106. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/usage.ja.html +414 -0
  107. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/ext/racc/cparse/cparse.c +840 -0
  108. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/ext/racc/cparse/extconf.rb +8 -0
  109. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/compat.rb +33 -0
  110. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/debugflags.rb +60 -0
  111. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/exception.rb +16 -0
  112. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/grammar.rb +1191 -0
  113. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/grammarfileparser.rb +667 -0
  114. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/info.rb +18 -0
  115. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/iset.rb +92 -0
  116. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/logfilegenerator.rb +212 -0
  117. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/parser-text.rb +644 -0
  118. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/parser.rb +630 -0
  119. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/parserfilegenerator.rb +473 -0
  120. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/sourcetext.rb +35 -0
  121. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/state.rb +976 -0
  122. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/statetransitiontable.rb +311 -0
  123. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/static.rb +5 -0
  124. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc.rb +6 -0
  125. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/BSDL +22 -0
  126. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/CHANGELOG.md +1854 -0
  127. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/COPYING +56 -0
  128. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/README.md +203 -0
  129. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/Rakefile +415 -0
  130. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/Steepfile +44 -0
  131. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/config.yml +311 -0
  132. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/array.rbs +4062 -0
  133. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/basic_object.rbs +375 -0
  134. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/binding.rbs +150 -0
  135. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/builtin.rbs +277 -0
  136. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/class.rbs +220 -0
  137. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/comparable.rbs +171 -0
  138. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/complex.rbs +786 -0
  139. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/constants.rbs +96 -0
  140. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/data.rbs +415 -0
  141. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/dir.rbs +981 -0
  142. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/encoding.rbs +1371 -0
  143. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/enumerable.rbs +2405 -0
  144. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/enumerator/product.rbs +92 -0
  145. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/enumerator.rbs +630 -0
  146. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/env.rbs +6 -0
  147. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/errno.rbs +673 -0
  148. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/errors.rbs +760 -0
  149. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/exception.rbs +376 -0
  150. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/false_class.rbs +82 -0
  151. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/fiber.rbs +550 -0
  152. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/fiber_error.rbs +11 -0
  153. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/file.rbs +2936 -0
  154. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/file_test.rbs +331 -0
  155. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/float.rbs +1151 -0
  156. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/gc.rbs +644 -0
  157. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/global_variables.rbs +184 -0
  158. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/hash.rbs +1861 -0
  159. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/integer.rbs +1413 -0
  160. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/io/buffer.rbs +984 -0
  161. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/io/wait.rbs +70 -0
  162. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/io.rbs +3402 -0
  163. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/kernel.rbs +3054 -0
  164. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/marshal.rbs +207 -0
  165. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/match_data.rbs +635 -0
  166. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/math.rbs +729 -0
  167. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/method.rbs +386 -0
  168. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/module.rbs +1704 -0
  169. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/nil_class.rbs +209 -0
  170. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/numeric.rbs +818 -0
  171. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/object.rbs +110 -0
  172. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/object_space/weak_key_map.rbs +166 -0
  173. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/object_space.rbs +190 -0
  174. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/proc.rbs +868 -0
  175. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/process.rbs +2296 -0
  176. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/ractor.rbs +1065 -0
  177. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/random.rbs +237 -0
  178. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/range.rbs +1107 -0
  179. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rational.rbs +531 -0
  180. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rb_config.rbs +88 -0
  181. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rbs/unnamed/argf.rbs +1229 -0
  182. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rbs/unnamed/env_class.rbs +1209 -0
  183. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rbs/unnamed/random.rbs +293 -0
  184. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/refinement.rbs +59 -0
  185. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/regexp.rbs +1928 -0
  186. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/ruby_vm.rbs +765 -0
  187. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/basic_specification.rbs +6 -0
  188. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/config_file.rbs +38 -0
  189. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/dependency_installer.rbs +6 -0
  190. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/errors.rbs +176 -0
  191. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/installer.rbs +15 -0
  192. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/path_support.rbs +6 -0
  193. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/platform.rbs +7 -0
  194. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/request_set.rbs +49 -0
  195. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/requirement.rbs +148 -0
  196. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/rubygems.rbs +1171 -0
  197. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/source_list.rbs +15 -0
  198. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/specification.rbs +23 -0
  199. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/stream_ui.rbs +5 -0
  200. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/uninstaller.rbs +10 -0
  201. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/version.rbs +294 -0
  202. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/set.rbs +621 -0
  203. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/signal.rbs +100 -0
  204. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/string.rbs +3583 -0
  205. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/struct.rbs +667 -0
  206. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/symbol.rbs +475 -0
  207. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/thread.rbs +1765 -0
  208. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/thread_group.rbs +79 -0
  209. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/time.rbs +1762 -0
  210. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/trace_point.rbs +477 -0
  211. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/true_class.rbs +98 -0
  212. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/unbound_method.rbs +329 -0
  213. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/warning.rbs +87 -0
  214. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/CONTRIBUTING.md +106 -0
  215. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/architecture.md +110 -0
  216. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/collection.md +192 -0
  217. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/data_and_struct.md +86 -0
  218. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/gem.md +57 -0
  219. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/rbs_by_example.md +309 -0
  220. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/repo.md +125 -0
  221. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/sigs.md +167 -0
  222. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/stdlib.md +147 -0
  223. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/syntax.md +905 -0
  224. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/tools.md +17 -0
  225. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/exe/rbs +7 -0
  226. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/extconf.rb +14 -0
  227. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/lexer.c +2728 -0
  228. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/lexer.h +179 -0
  229. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/lexer.re +147 -0
  230. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/lexstate.c +175 -0
  231. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/location.c +303 -0
  232. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/location.h +84 -0
  233. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/main.c +12 -0
  234. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/parser.c +2961 -0
  235. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/parser.h +18 -0
  236. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/parserstate.c +366 -0
  237. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/parserstate.h +161 -0
  238. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/rbs_extension.h +31 -0
  239. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/unescape.c +32 -0
  240. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/goodcheck.yml +91 -0
  241. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/include/rbs/constants.h +82 -0
  242. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/include/rbs/ruby_objs.h +72 -0
  243. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/include/rbs.h +7 -0
  244. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ancestor_graph.rb +92 -0
  245. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate/annotations.rb +199 -0
  246. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate/formatter.rb +92 -0
  247. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate/rdoc_annotator.rb +400 -0
  248. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate/rdoc_source.rb +131 -0
  249. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate.rb +8 -0
  250. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/annotation.rb +29 -0
  251. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/comment.rb +29 -0
  252. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/declarations.rb +467 -0
  253. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/directives.rb +39 -0
  254. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/members.rb +449 -0
  255. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/type_param.rb +225 -0
  256. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/visitor.rb +137 -0
  257. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/buffer.rb +67 -0
  258. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/builtin_names.rb +58 -0
  259. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/cli/colored_io.rb +48 -0
  260. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/cli/diff.rb +83 -0
  261. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/cli/validate.rb +356 -0
  262. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/cli.rb +1223 -0
  263. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/cleaner.rb +38 -0
  264. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/config/lockfile.rb +92 -0
  265. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/config/lockfile_generator.rb +223 -0
  266. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/config.rb +81 -0
  267. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/installer.rb +32 -0
  268. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/base.rb +14 -0
  269. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/git.rb +258 -0
  270. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/local.rb +81 -0
  271. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/rubygems.rb +48 -0
  272. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/stdlib.rb +50 -0
  273. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources.rb +38 -0
  274. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection.rb +16 -0
  275. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/constant.rb +28 -0
  276. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/definition.rb +395 -0
  277. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/definition_builder/ancestor_builder.rb +620 -0
  278. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/definition_builder/method_builder.rb +254 -0
  279. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/definition_builder.rb +841 -0
  280. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/diff.rb +125 -0
  281. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/environment/use_map.rb +77 -0
  282. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/environment.rb +818 -0
  283. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/environment_loader.rb +173 -0
  284. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/environment_walker.rb +155 -0
  285. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/errors.rb +600 -0
  286. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/factory.rb +18 -0
  287. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/file_finder.rb +28 -0
  288. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/location_aux.rb +138 -0
  289. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/locator.rb +241 -0
  290. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/method_type.rb +141 -0
  291. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/namespace.rb +125 -0
  292. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/parser/lex_result.rb +15 -0
  293. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/parser/token.rb +23 -0
  294. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/parser_aux.rb +77 -0
  295. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/helpers.rb +140 -0
  296. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/node_usage.rb +99 -0
  297. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/rb.rb +840 -0
  298. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/rbi.rb +641 -0
  299. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/runtime/helpers.rb +59 -0
  300. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/runtime/reflection.rb +19 -0
  301. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/runtime/value_object_generator.rb +279 -0
  302. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/runtime.rb +667 -0
  303. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/repository.rb +127 -0
  304. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/resolver/constant_resolver.rb +219 -0
  305. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/resolver/type_name_resolver.rb +91 -0
  306. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/sorter.rb +198 -0
  307. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/substitution.rb +83 -0
  308. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/subtractor.rb +201 -0
  309. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/errors.rb +80 -0
  310. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/guaranteed.rb +30 -0
  311. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/hook.rb +212 -0
  312. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/observer.rb +19 -0
  313. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/setup.rb +84 -0
  314. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/setup_helper.rb +50 -0
  315. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/tester.rb +167 -0
  316. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/type_check.rb +433 -0
  317. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test.rb +112 -0
  318. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/type_alias_dependency.rb +100 -0
  319. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/type_alias_regularity.rb +126 -0
  320. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/type_name.rb +109 -0
  321. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/types.rb +1557 -0
  322. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test/convertibles.rb +176 -0
  323. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test/spy.rb +136 -0
  324. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test/type_assertions.rb +341 -0
  325. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test/with_aliases.rb +143 -0
  326. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test.rb +6 -0
  327. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/validator.rb +182 -0
  328. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/variance_calculator.rb +189 -0
  329. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/vendorer.rb +71 -0
  330. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/version.rb +5 -0
  331. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/writer.rb +419 -0
  332. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs.rb +93 -0
  333. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rdoc/discover.rb +20 -0
  334. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rdoc_plugin/parser.rb +163 -0
  335. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/annotation.json +14 -0
  336. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/comment.json +26 -0
  337. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/decls.json +326 -0
  338. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/function.json +87 -0
  339. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/location.json +56 -0
  340. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/members.json +266 -0
  341. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/methodType.json +50 -0
  342. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/typeParam.json +36 -0
  343. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/types.json +317 -0
  344. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/ancestor_builder.rbs +163 -0
  345. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/ancestor_graph.rbs +60 -0
  346. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotate/annotations.rbs +102 -0
  347. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotate/formatter.rbs +24 -0
  348. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotate/rdoc_annotater.rbs +82 -0
  349. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotate/rdoc_source.rbs +30 -0
  350. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotation.rbs +27 -0
  351. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/buffer.rbs +32 -0
  352. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/builtin_names.rbs +44 -0
  353. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/cli/colored_io.rbs +15 -0
  354. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/cli/diff.rbs +21 -0
  355. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/cli/validate.rbs +43 -0
  356. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/cli.rbs +87 -0
  357. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/cleaner.rbs +13 -0
  358. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/config/lockfile.rbs +74 -0
  359. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/config/lockfile_generator.rbs +66 -0
  360. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/config.rbs +46 -0
  361. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/installer.rbs +17 -0
  362. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/sources.rbs +214 -0
  363. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection.rbs +4 -0
  364. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/comment.rbs +26 -0
  365. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/constant.rbs +21 -0
  366. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/declarations.rbs +267 -0
  367. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/definition.rbs +173 -0
  368. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/definition_builder.rbs +165 -0
  369. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/diff.rbs +28 -0
  370. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/directives.rbs +61 -0
  371. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/environment.rbs +277 -0
  372. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/environment_loader.rbs +111 -0
  373. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/environment_walker.rbs +65 -0
  374. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/errors.rbs +383 -0
  375. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/factory.rbs +5 -0
  376. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/file_finder.rbs +28 -0
  377. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/location.rbs +110 -0
  378. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/locator.rbs +58 -0
  379. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/manifest.yaml +7 -0
  380. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/members.rbs +258 -0
  381. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/method_builder.rbs +84 -0
  382. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/method_types.rbs +58 -0
  383. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/namespace.rbs +146 -0
  384. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/parser.rbs +96 -0
  385. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/helpers.rbs +27 -0
  386. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/node_usage.rbs +20 -0
  387. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/rb.rbs +96 -0
  388. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/rbi.rbs +75 -0
  389. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/runtime.rbs +182 -0
  390. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/rbs.rbs +21 -0
  391. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/rdoc/rbs.rbs +67 -0
  392. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/repository.rbs +85 -0
  393. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/resolver/constant_resolver.rbs +92 -0
  394. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/resolver/context.rbs +34 -0
  395. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/resolver/type_name_resolver.rbs +35 -0
  396. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/shims/bundler.rbs +38 -0
  397. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/shims/enumerable.rbs +5 -0
  398. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/shims/rubygems.rbs +19 -0
  399. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/sorter.rbs +41 -0
  400. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/substitution.rbs +48 -0
  401. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/subtractor.rbs +37 -0
  402. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/test/errors.rbs +52 -0
  403. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/test/guranteed.rbs +9 -0
  404. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/test/type_check.rbs +19 -0
  405. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/test.rbs +82 -0
  406. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/type_alias_dependency.rbs +53 -0
  407. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/type_alias_regularity.rbs +98 -0
  408. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/type_param.rbs +110 -0
  409. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/typename.rbs +79 -0
  410. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/types.rbs +576 -0
  411. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/unit_test/convertibles.rbs +154 -0
  412. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/unit_test/spy.rbs +28 -0
  413. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/unit_test/type_assertions.rbs +194 -0
  414. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/unit_test/with_aliases.rbs +136 -0
  415. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/use_map.rbs +35 -0
  416. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/util.rbs +9 -0
  417. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/validator.rbs +59 -0
  418. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/variance_calculator.rbs +87 -0
  419. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/vendorer.rbs +51 -0
  420. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/version.rbs +3 -0
  421. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/visitor.rbs +47 -0
  422. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/writer.rbs +127 -0
  423. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/src/constants.c +153 -0
  424. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/src/ruby_objs.c +793 -0
  425. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/abbrev/0/abbrev.rbs +66 -0
  426. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/abbrev/0/array.rbs +26 -0
  427. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/base64/0/base64.rbs +355 -0
  428. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/benchmark/0/benchmark.rbs +452 -0
  429. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/bigdecimal/0/big_decimal.rbs +1629 -0
  430. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/bigdecimal-math/0/big_math.rbs +119 -0
  431. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/bigdecimal-math/0/manifest.yaml +2 -0
  432. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/cgi/0/core.rbs +1285 -0
  433. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/cgi/0/manifest.yaml +3 -0
  434. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/coverage/0/coverage.rbs +263 -0
  435. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/csv/0/csv.rbs +3776 -0
  436. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/csv/0/manifest.yaml +3 -0
  437. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/date/0/date.rbs +1585 -0
  438. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/date/0/date_time.rbs +616 -0
  439. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/date/0/time.rbs +26 -0
  440. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/dbm/0/dbm.rbs +421 -0
  441. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/delegate/0/delegator.rbs +184 -0
  442. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/delegate/0/kernel.rbs +47 -0
  443. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/delegate/0/simple_delegator.rbs +96 -0
  444. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/did_you_mean/0/did_you_mean.rbs +343 -0
  445. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/digest/0/digest.rbs +577 -0
  446. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/erb/0/erb.rbs +532 -0
  447. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/etc/0/etc.rbs +865 -0
  448. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/fileutils/0/fileutils.rbs +1734 -0
  449. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/find/0/find.rbs +49 -0
  450. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/forwardable/0/forwardable.rbs +268 -0
  451. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/io-console/0/io-console.rbs +414 -0
  452. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/ipaddr/0/ipaddr.rbs +428 -0
  453. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/json/0/json.rbs +1914 -0
  454. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/kconv/0/kconv.rbs +166 -0
  455. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/formatter.rbs +45 -0
  456. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/log_device.rbs +100 -0
  457. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/logger.rbs +796 -0
  458. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/manifest.yaml +2 -0
  459. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/period.rbs +17 -0
  460. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/severity.rbs +34 -0
  461. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/kernel.rbs +42 -0
  462. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/abstract_reporter.rbs +52 -0
  463. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/assertion.rbs +17 -0
  464. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/assertions.rbs +590 -0
  465. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/backtrace_filter.rbs +23 -0
  466. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/bench_spec.rbs +102 -0
  467. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/benchmark.rbs +259 -0
  468. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/composite_reporter.rbs +25 -0
  469. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/compress.rbs +13 -0
  470. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/error_on_warning.rbs +3 -0
  471. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/expectation.rbs +2 -0
  472. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/expectations.rbs +21 -0
  473. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/guard.rbs +64 -0
  474. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/mock.rbs +64 -0
  475. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/parallel/executor.rbs +46 -0
  476. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/parallel/test/class_methods.rbs +5 -0
  477. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/parallel/test.rbs +3 -0
  478. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/parallel.rbs +2 -0
  479. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/pride_io.rbs +62 -0
  480. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/pride_lol.rbs +19 -0
  481. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/progress_reporter.rbs +11 -0
  482. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/reportable.rbs +53 -0
  483. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/reporter.rbs +5 -0
  484. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/result.rbs +28 -0
  485. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/runnable.rbs +163 -0
  486. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/skip.rbs +6 -0
  487. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/spec/dsl/instance_methods.rbs +48 -0
  488. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/spec/dsl.rbs +129 -0
  489. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/spec.rbs +11 -0
  490. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/statistics_reporter.rbs +81 -0
  491. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/summary_reporter.rbs +18 -0
  492. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/test/lifecycle_hooks.rbs +92 -0
  493. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/test.rbs +69 -0
  494. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/unexpected_error.rbs +12 -0
  495. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/unexpected_warning.rbs +6 -0
  496. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/unit/test_case.rbs +3 -0
  497. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/unit.rbs +4 -0
  498. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest.rbs +115 -0
  499. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/monitor/0/monitor.rbs +354 -0
  500. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/mutex_m/0/mutex_m.rbs +104 -0
  501. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-http/0/manifest.yaml +3 -0
  502. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-http/0/net-http.rbs +5552 -0
  503. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-protocol/0/manifest.yaml +2 -0
  504. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-protocol/0/net-protocol.rbs +56 -0
  505. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-smtp/0/manifest.yaml +2 -0
  506. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-smtp/0/net-smtp.rbs +55 -0
  507. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/nkf/0/nkf.rbs +402 -0
  508. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/objspace/0/objspace.rbs +487 -0
  509. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/observable/0/observable.rbs +217 -0
  510. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/open-uri/0/manifest.yaml +4 -0
  511. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/open-uri/0/open-uri.rbs +393 -0
  512. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/open3/0/open3.rbs +147 -0
  513. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/openssl/0/manifest.yaml +3 -0
  514. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/openssl/0/openssl.rbs +12113 -0
  515. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/optparse/0/optparse.rbs +1725 -0
  516. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pathname/0/pathname.rbs +1406 -0
  517. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pp/0/manifest.yaml +2 -0
  518. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pp/0/pp.rbs +300 -0
  519. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/prettyprint/0/prettyprint.rbs +383 -0
  520. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pstore/0/pstore.rbs +603 -0
  521. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/core_ext.rbs +12 -0
  522. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/dbm.rbs +237 -0
  523. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/manifest.yaml +3 -0
  524. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/psych.rbs +402 -0
  525. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/store.rbs +59 -0
  526. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pty/0/pty.rbs +237 -0
  527. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/code_object.rbs +51 -0
  528. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/comment.rbs +59 -0
  529. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/context.rbs +153 -0
  530. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/markup.rbs +117 -0
  531. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/parser.rbs +56 -0
  532. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/rdoc.rbs +391 -0
  533. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/ri.rbs +17 -0
  534. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/store.rbs +48 -0
  535. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/top_level.rbs +97 -0
  536. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/resolv/0/manifest.yaml +3 -0
  537. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/resolv/0/resolv.rbs +1830 -0
  538. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/ripper/0/ripper.rbs +1648 -0
  539. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/securerandom/0/securerandom.rbs +62 -0
  540. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/shellwords/0/shellwords.rbs +229 -0
  541. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/singleton/0/singleton.rbs +131 -0
  542. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/addrinfo.rbs +666 -0
  543. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/basic_socket.rbs +590 -0
  544. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/constants.rbs +2295 -0
  545. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/ip_socket.rbs +92 -0
  546. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/socket.rbs +4157 -0
  547. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/socket_error.rbs +5 -0
  548. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/tcp_server.rbs +192 -0
  549. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/tcp_socket.rbs +79 -0
  550. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/udp_socket.rbs +133 -0
  551. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/unix_server.rbs +169 -0
  552. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/unix_socket.rbs +170 -0
  553. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/stringio/0/stringio.rbs +567 -0
  554. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/strscan/0/string_scanner.rbs +1627 -0
  555. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tempfile/0/tempfile.rbs +479 -0
  556. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/time/0/time.rbs +432 -0
  557. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/timeout/0/timeout.rbs +81 -0
  558. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tmpdir/0/tmpdir.rbs +69 -0
  559. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tsort/0/cyclic.rbs +5 -0
  560. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tsort/0/interfaces.rbs +20 -0
  561. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tsort/0/tsort.rbs +409 -0
  562. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/common.rbs +582 -0
  563. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/file.rbs +118 -0
  564. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/ftp.rbs +13 -0
  565. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/generic.rbs +1108 -0
  566. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/http.rbs +104 -0
  567. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/https.rbs +14 -0
  568. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/ldap.rbs +230 -0
  569. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/ldaps.rbs +14 -0
  570. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/mailto.rbs +92 -0
  571. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/rfc2396_parser.rbs +189 -0
  572. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/rfc3986_parser.rbs +2 -0
  573. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/ws.rbs +13 -0
  574. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/wss.rbs +9 -0
  575. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/yaml/0/manifest.yaml +2 -0
  576. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/yaml/0/yaml.rbs +1 -0
  577. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/buf_error.rbs +10 -0
  578. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/data_error.rbs +10 -0
  579. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/deflate.rbs +210 -0
  580. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/error.rbs +20 -0
  581. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file/crc_error.rbs +12 -0
  582. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file/error.rbs +23 -0
  583. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file/length_error.rbs +12 -0
  584. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file/no_footer.rbs +11 -0
  585. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file.rbs +156 -0
  586. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_reader.rbs +293 -0
  587. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_writer.rbs +166 -0
  588. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/inflate.rbs +180 -0
  589. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/mem_error.rbs +10 -0
  590. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/need_dict.rbs +13 -0
  591. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/stream_end.rbs +11 -0
  592. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/stream_error.rbs +11 -0
  593. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/version_error.rbs +11 -0
  594. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/zlib.rbs +449 -0
  595. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/zstream.rbs +200 -0
  596. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/include/rbs/constants.h.erb +20 -0
  597. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/include/rbs/ruby_objs.h.erb +10 -0
  598. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/src/constants.c.erb +36 -0
  599. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/src/ruby_objs.c.erb +27 -0
  600. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/template.rb +122 -0
  601. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/Gemfile +5 -0
  602. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/LICENSE.txt +22 -0
  603. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/README.md +41 -0
  604. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/Rakefile +20 -0
  605. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/bin/console +14 -0
  606. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/bin/setup +8 -0
  607. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/ext/syslog/extconf.rb +26 -0
  608. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/ext/syslog/syslog.c +592 -0
  609. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/ext/syslog/syslog.txt +124 -0
  610. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/lib/syslog/logger.rb +209 -0
  611. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/lib/syslog.rb +10 -0
  612. package/lib/ruby/gems/3.4.0/specifications/bigdecimal-3.1.8.gemspec +25 -0
  613. package/lib/ruby/gems/3.4.0/specifications/debug-1.11.0.gemspec +32 -0
  614. package/lib/ruby/gems/3.4.0/specifications/nkf-0.2.0.gemspec +26 -0
  615. package/lib/ruby/gems/3.4.0/specifications/racc-1.8.1.gemspec +28 -0
  616. package/lib/ruby/gems/3.4.0/specifications/rbs-3.8.0.gemspec +31 -0
  617. package/lib/ruby/gems/3.4.0/specifications/syslog-0.2.0.gemspec +25 -0
  618. package/package.json +9 -9
@@ -0,0 +1,433 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RBS
4
+ module Test
5
+ class TypeCheck
6
+ attr_reader :self_class
7
+ attr_reader :builder
8
+ attr_reader :sample_size
9
+ attr_reader :unchecked_classes
10
+ attr_reader :instance_class
11
+ attr_reader :class_class
12
+
13
+ DEFAULT_SAMPLE_SIZE = 100
14
+
15
+ def initialize(self_class:, builder:, sample_size:, unchecked_classes:, instance_class: Object, class_class: Module)
16
+ @self_class = self_class
17
+ @instance_class = instance_class
18
+ @class_class = class_class
19
+ @builder = builder
20
+ @sample_size = sample_size
21
+ @unchecked_classes = unchecked_classes.uniq
22
+ end
23
+
24
+ def overloaded_call(method, method_name, call, errors:)
25
+ es = method.method_types.map do |method_type|
26
+ es = method_call(method_name, method_type, call, errors: [])
27
+
28
+ if es.empty?
29
+ return errors
30
+ else
31
+ es
32
+ end
33
+ end
34
+
35
+ if es.size == 1
36
+ errors.push(*es[0])
37
+ else
38
+ error = Errors::UnresolvedOverloadingError.new(
39
+ klass: self_class,
40
+ method_name: method_name,
41
+ method_types: method.method_types
42
+ )
43
+ RBS.logger.warn do
44
+ tag = Errors.method_tag(error)
45
+ message = +"#{tag} UnresolvedOverloadingError "
46
+ message << method.method_types.zip(es).map do |method_type, es|
47
+ msg = +"method_type=`#{method_type}`"
48
+ details = es.map do |e|
49
+ "\"#{Errors.to_string(e).sub("#{tag} ", "") }\""
50
+ end.join(', ')
51
+ msg << " details=[#{details}]"
52
+ end.join(', ')
53
+ message
54
+ end
55
+ errors << error
56
+ end
57
+
58
+ errors
59
+ end
60
+
61
+ def method_call(method_name, method_type, call, errors:)
62
+ return errors if method_type.type.is_a?(Types::UntypedFunction)
63
+
64
+ args(method_name, method_type, method_type.type, call.method_call, errors, type_error: Errors::ArgumentTypeError, argument_error: Errors::ArgumentError)
65
+ self.return(method_name, method_type, method_type.type, call.method_call, errors, return_error: Errors::ReturnTypeError)
66
+
67
+ if method_type.block
68
+ case
69
+ when !call.block_calls.empty?
70
+ call.block_calls.each do |block_call|
71
+ args(method_name, method_type, method_type.block.type, block_call, errors, type_error: Errors::BlockArgumentTypeError, argument_error: Errors::BlockArgumentError)
72
+ self.return(method_name, method_type, method_type.block.type, block_call, errors, return_error: Errors::BlockReturnTypeError)
73
+ end
74
+ when !call.block_given
75
+ # Block is not given
76
+ if method_type.block.required
77
+ errors << Errors::MissingBlockError.new(klass: self_class, method_name: method_name, method_type: method_type)
78
+ end
79
+ else
80
+ # Block is given, but not yielded
81
+ end
82
+ else
83
+ if call.block_given
84
+ errors << Errors::UnexpectedBlockError.new(klass: self_class, method_name: method_name, method_type: method_type)
85
+ end
86
+ end
87
+
88
+ errors
89
+ end
90
+
91
+ def args(method_name, method_type, fun, call, errors, type_error:, argument_error:)
92
+ test = zip_args(call.arguments, fun) do |val, param|
93
+ unless self.value(val, param.type)
94
+ errors << type_error.new(klass: self_class,
95
+ method_name: method_name,
96
+ method_type: method_type,
97
+ param: param,
98
+ value: val)
99
+ end
100
+ end
101
+
102
+ unless test
103
+ errors << argument_error.new(klass: self_class,
104
+ method_name: method_name,
105
+ method_type: method_type)
106
+ end
107
+ end
108
+
109
+ def return(method_name, method_type, fun, call, errors, return_error:)
110
+ if call.return?
111
+ unless value(call.return_value, fun.return_type)
112
+ errors << return_error.new(klass: self_class,
113
+ method_name: method_name,
114
+ method_type: method_type,
115
+ type: fun.return_type,
116
+ value: call.return_value)
117
+ end
118
+ end
119
+ end
120
+
121
+ def zip_keyword_args(hash, fun)
122
+ fun.required_keywords.each do |name, param|
123
+ if hash.key?(name)
124
+ yield(hash[name], param)
125
+ else
126
+ return false
127
+ end
128
+ end
129
+
130
+ fun.optional_keywords.each do |name, param|
131
+ if hash.key?(name)
132
+ yield(hash[name], param)
133
+ end
134
+ end
135
+
136
+ hash.each do |name, value|
137
+ next if fun.required_keywords.key?(name)
138
+ next if fun.optional_keywords.key?(name)
139
+
140
+ if fun.rest_keywords
141
+ yield value, fun.rest_keywords
142
+ else
143
+ return false
144
+ end
145
+ end
146
+
147
+ true
148
+ end
149
+
150
+ def keyword?(value)
151
+ Hash === value && value.each_key.all?(Symbol)
152
+ end
153
+
154
+ def zip_args(args, fun, &block)
155
+ return true if fun.is_a?(Types::UntypedFunction)
156
+
157
+ case
158
+ when args.empty?
159
+ if fun.required_positionals.empty? && fun.trailing_positionals.empty? && fun.required_keywords.empty?
160
+ true
161
+ else
162
+ false
163
+ end
164
+ when !fun.required_positionals.empty?
165
+ yield_self do
166
+ param, fun_ = fun.drop_head
167
+ yield(args.first, param)
168
+ zip_args(args.drop(1), fun_, &block)
169
+ end
170
+ when fun.has_keyword?
171
+ yield_self do
172
+ hash = args.last
173
+ if keyword?(hash)
174
+ zip_keyword_args(hash, fun, &block) &&
175
+ zip_args(args.take(args.size - 1),
176
+ fun.update(required_keywords: {}, optional_keywords: {}, rest_keywords: nil),
177
+ &block)
178
+ else
179
+ fun.required_keywords.empty? &&
180
+ zip_args(args,
181
+ fun.update(required_keywords: {}, optional_keywords: {}, rest_keywords: nil),
182
+ &block)
183
+ end
184
+ end
185
+ when !fun.trailing_positionals.empty?
186
+ yield_self do
187
+ param, fun_ = fun.drop_tail
188
+ yield(args.last, param)
189
+ zip_args(args.take(args.size - 1), fun_, &block)
190
+ end
191
+ when !fun.optional_positionals.empty?
192
+ yield_self do
193
+ param, fun_ = fun.drop_head
194
+ yield(args.first, param)
195
+ zip_args(args.drop(1), fun_, &block)
196
+ end
197
+ when fun.rest_positionals
198
+ yield_self do
199
+ yield(args.first, fun.rest_positionals)
200
+ zip_args(args.drop(1), fun, &block)
201
+ end
202
+ else
203
+ false
204
+ end
205
+ end
206
+
207
+ def each_sample(array, &block)
208
+ if block
209
+ if sample_size && array.size > sample_size
210
+ if sample_size > 0
211
+ size = array.size
212
+ sample_size.times do
213
+ yield array[rand(size)]
214
+ end
215
+ end
216
+ else
217
+ array.each(&block)
218
+ end
219
+ else
220
+ enum_for :each_sample, array
221
+ end
222
+ end
223
+
224
+ def get_class(type_name)
225
+ Object.const_get(type_name.to_s)
226
+ rescue NameError
227
+ nil
228
+ end
229
+
230
+ def is_double?(value)
231
+ unchecked_classes.any? { |unchecked_class| Test.call(value, IS_AP, Object.const_get(unchecked_class))}
232
+ rescue NameError
233
+ false
234
+ end
235
+
236
+ def value(val, type)
237
+ if is_double?(val)
238
+ RBS.logger.info("A double (#{val.inspect}) is detected!")
239
+ return true
240
+ end
241
+
242
+ case type
243
+ when Types::Bases::Any
244
+ true
245
+ when Types::Bases::Bool
246
+ val.is_a?(TrueClass) || val.is_a?(FalseClass)
247
+ when Types::Bases::Top
248
+ true
249
+ when Types::Bases::Bottom
250
+ false
251
+ when Types::Bases::Void
252
+ true
253
+ when Types::Bases::Self
254
+ Test.call(val, IS_AP, self_class)
255
+ when Types::Bases::Nil
256
+ Test.call(val, IS_AP, ::NilClass)
257
+ when Types::Bases::Class
258
+ Test.call(val, IS_AP, class_class)
259
+ when Types::Bases::Instance
260
+ Test.call(val, IS_AP, instance_class)
261
+ when Types::ClassInstance
262
+ klass = get_class(type.name) or return false
263
+ if params = builder.env.normalized_module_class_entry(type.name.absolute!)&.type_params
264
+ args = AST::TypeParam.normalize_args(params, type.args)
265
+ unless args == type.args
266
+ type = Types::ClassInstance.new(name: type.name, args: args, location: type.location)
267
+ end
268
+ end
269
+
270
+ case
271
+ when klass == ::Array
272
+ Test.call(val, IS_AP, klass) && each_sample(val).all? {|v| value(v, type.args[0]) }
273
+ when klass == ::Hash
274
+ Test.call(val, IS_AP, klass) && each_sample(val.keys).all? do |key|
275
+ value(key, type.args[0]) && value(val[key], type.args[1])
276
+ end
277
+ when klass == ::Range
278
+ Test.call(val, IS_AP, klass) && value(val.begin, type.args[0]) && value(val.end, type.args[0])
279
+ when klass == ::Enumerator
280
+ if Test.call(val, IS_AP, klass)
281
+ case val.size
282
+ when Float::INFINITY
283
+ values = []
284
+ ret = self
285
+ val.lazy.take(10).each do |*args|
286
+ values << args
287
+ nil
288
+ end
289
+ else
290
+ values = []
291
+ ret = val.each do |*args|
292
+ values << args
293
+ nil
294
+ end
295
+ end
296
+
297
+ value_check = values.empty? || each_sample(values).all? do |v|
298
+ if v.size == 1
299
+ # Only one block argument.
300
+ value(v[0], type.args[0]) || value(v, type.args[0])
301
+ else
302
+ value(v, type.args[0])
303
+ end
304
+ end
305
+
306
+ return_check = if ret.equal?(self)
307
+ type.args[1].is_a?(Types::Bases::Bottom)
308
+ else
309
+ value(ret, type.args[1])
310
+ end
311
+
312
+ value_check && return_check
313
+ end
314
+ else
315
+ Test.call(val, IS_AP, klass)
316
+ end
317
+ when Types::ClassSingleton
318
+ klass = get_class(type.name) or return false
319
+ singleton_class = begin
320
+ klass.singleton_class
321
+ rescue TypeError
322
+ return false
323
+ end
324
+ val.is_a?(singleton_class)
325
+ when Types::Interface
326
+ if (definition = builder.build_interface(type.name.absolute!))
327
+ definition.methods.each.all? do |method_name, method|
328
+ next false unless Test.call(val, RESPOND_TOP, method_name)
329
+
330
+ meth = Test.call(val, METHOD, method_name)
331
+ method.defs.all? do |type_def|
332
+ type_def.member.overloads.all? do |overload|
333
+ callable_argument?(meth.parameters, overload.method_type)
334
+ end
335
+ end
336
+ end
337
+ end
338
+ when Types::Variable
339
+ true
340
+ when Types::Literal
341
+ type.literal == val
342
+ when Types::Union
343
+ type.types.any? {|type| value(val, type) }
344
+ when Types::Intersection
345
+ type.types.all? {|type| value(val, type) }
346
+ when Types::Optional
347
+ Test.call(val, IS_AP, ::NilClass) || value(val, type.type)
348
+ when Types::Alias
349
+ value(val, builder.expand_alias2(type.name.absolute!, type.args))
350
+ when Types::Tuple
351
+ Test.call(val, IS_AP, ::Array) &&
352
+ type.types.map.with_index {|ty, index| value(val[index], ty) }.all?
353
+ when Types::Record
354
+ Test::call(val, IS_AP, ::Hash) &&
355
+ type.fields.map {|key, type| value(val[key], type) }.all?
356
+ when Types::Proc
357
+ Test::call(val, IS_AP, ::Proc)
358
+ else
359
+ false
360
+ end
361
+ end
362
+
363
+ private
364
+
365
+ def callable_argument?(parameters, method_type)
366
+ fun = method_type.type
367
+ take_has_rest = !!parameters.find { |(op, _)| op == :rest }
368
+
369
+ return true if fun.is_a?(Types::UntypedFunction)
370
+
371
+ fun.required_positionals.each do
372
+ op, _ = parameters.first
373
+ return false if op.nil? || op == :keyreq || op == :key || op == :keyrest
374
+ parameters.shift if op == :req || op == :opt
375
+ end
376
+
377
+ fun.optional_positionals.each do
378
+ op, _ = parameters.first
379
+ return false if op.nil? || op == :req || op == :keyreq || op == :key || op == :keyrest
380
+ parameters.shift if op == :opt
381
+ end
382
+
383
+ if fun.rest_positionals
384
+ op, _ = parameters.shift
385
+ return false if op.nil? || op != :rest
386
+ end
387
+
388
+ fun.trailing_positionals.each do
389
+ op, _ = parameters.first
390
+ return false if !take_has_rest && (op.nil? || op == :keyreq || op == :key || op == :keyrest)
391
+ index = parameters.find_index { |(op, _)| op == :req }
392
+ parameters.delete_at(index) if index
393
+ end
394
+
395
+ if fun.has_keyword?
396
+ return false if !take_has_rest && parameters.empty?
397
+
398
+ fun.required_keywords.each do |name, _|
399
+ return false if !take_has_rest && parameters.empty?
400
+ index = parameters.find_index { |(op, n)| (op == :keyreq || op == :key) && n == name }
401
+ parameters.delete_at(index) if index
402
+ end
403
+
404
+ if !fun.optional_keywords.empty?
405
+ fun.optional_keywords.each do |name, _|
406
+ return false if !take_has_rest && parameters.empty?
407
+ index = parameters.find_index { |(op, n)| op == :key && n == name }
408
+ parameters.delete_at(index) if index
409
+ end
410
+ op, _ = parameters.first
411
+ return false if op == :req
412
+ end
413
+
414
+ if fun.rest_keywords
415
+ op, _ = parameters.first
416
+ return false if (!take_has_rest && op.nil?)
417
+ # f(a) allows (Integer, a: Integer)
418
+ return false if op == :req && fun.required_keywords.empty?
419
+ end
420
+
421
+ op, _ = parameters.first
422
+ return true if (op == :req || op == :opt) && parameters.length == 1
423
+ end
424
+
425
+ # rest required arguments
426
+ op, _ = parameters.first
427
+ return false if op == :req || op == :keyreq
428
+
429
+ true
430
+ end
431
+ end
432
+ end
433
+ end
@@ -0,0 +1,112 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "securerandom"
4
+ require "rbs/test/guaranteed"
5
+ require "rbs/test/observer"
6
+ require "rbs/test/errors"
7
+ require "rbs/test/type_check"
8
+ require "rbs/test/tester"
9
+ require "rbs/test/hook"
10
+ require "rbs/test/setup_helper"
11
+
12
+ module RBS
13
+ module Test
14
+ IS_AP = Kernel.instance_method(:is_a?)
15
+ DEFINE_METHOD = Module.instance_method(:define_method)
16
+ INSTANCE_EVAL = BasicObject.instance_method(:instance_eval)
17
+ INSTANCE_EXEC = BasicObject.instance_method(:instance_exec)
18
+ METHOD = Kernel.instance_method(:method)
19
+ CLASS = Kernel.instance_method(:class)
20
+ SINGLETON_CLASS = Kernel.instance_method(:singleton_class)
21
+ PP = Kernel.instance_method(:pp)
22
+ INSPECT = Kernel.instance_method(:inspect)
23
+ METHODS = Kernel.instance_method(:methods)
24
+ RESPOND_TOP = Kernel.instance_method(:respond_to?)
25
+
26
+ class ArgumentsReturn
27
+ include Guaranteed::Inspect
28
+
29
+ attr_reader :arguments
30
+ attr_reader :exit_value
31
+ attr_reader :exit_type
32
+
33
+ def initialize(arguments:, exit_value:, exit_type:)
34
+ @arguments = arguments
35
+ @exit_value = exit_value
36
+ @exit_type = exit_type
37
+ end
38
+
39
+ def self.return(arguments:, value:)
40
+ new(arguments: arguments, exit_value: value, exit_type: :return)
41
+ end
42
+
43
+ def self.exception(arguments:, exception:)
44
+ new(arguments: arguments, exit_value: exception, exit_type: :exception)
45
+ end
46
+
47
+ def self.break(arguments:)
48
+ new(arguments: arguments, exit_value: nil, exit_type: :break)
49
+ end
50
+
51
+ def return_value
52
+ raise unless exit_type == :return
53
+ exit_value
54
+ end
55
+
56
+ def exception
57
+ raise unless exit_type == :exception
58
+ exit_value
59
+ end
60
+
61
+ def return?
62
+ exit_type == :return
63
+ end
64
+
65
+ def exception?
66
+ exit_type == :exception
67
+ end
68
+
69
+ def break?
70
+ exit_type == :break
71
+ end
72
+ end
73
+
74
+ CallTrace = Struct.new(:method_name, :method_call, :block_calls, :block_given, keyword_init: true)
75
+
76
+ class <<self
77
+ attr_accessor :suffix
78
+
79
+ def reset_suffix
80
+ self.suffix = "RBS_TEST_#{SecureRandom.hex(3)}"
81
+ end
82
+ end
83
+
84
+ reset_suffix
85
+
86
+ if ::UnboundMethod.instance_methods.include?(:bind_call)
87
+ def self.call(receiver, method, *args, &block)
88
+ __skip__ = method.bind_call(receiver, *args, &block)
89
+ end
90
+ else
91
+ def self.call(receiver, method, *args, &block)
92
+ __skip__ = method.bind(receiver).call(*args, &block)
93
+ end
94
+ end
95
+ end
96
+ end
97
+
98
+ unless ::Module.private_instance_methods.include?(:ruby2_keywords)
99
+ class Module
100
+ private
101
+ def ruby2_keywords(*)
102
+ end
103
+ end
104
+ end
105
+
106
+ unless ::Proc.instance_methods.include?(:ruby2_keywords)
107
+ class Proc
108
+ def ruby2_keywords
109
+ self
110
+ end
111
+ end
112
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RBS
4
+ class TypeAliasDependency
5
+ attr_reader :env
6
+
7
+ # Direct dependencies corresponds to a directed graph
8
+ # with vertices as types and directions based on assignment of types
9
+ attr_reader :direct_dependencies
10
+ # A hash which stores the transitive closure
11
+ # of the directed graph
12
+ attr_reader :dependencies
13
+
14
+ def initialize(env:)
15
+ @env = env
16
+ end
17
+
18
+ # Check if an alias type definition is circular & prohibited
19
+ def circular_definition?(alias_name)
20
+ # Construct transitive closure, if not constructed already
21
+ transitive_closure() unless @dependencies
22
+
23
+ alias_name = env.normalize_type_name!(alias_name)
24
+ @dependencies[alias_name][alias_name]
25
+ end
26
+
27
+ def build_dependencies
28
+ return if @direct_dependencies
29
+
30
+ # Initialize hash(a directed graph)
31
+ @direct_dependencies = {}
32
+ # Initialize dependencies as an empty hash
33
+ @dependencies = {}
34
+ # Iterate over alias declarations inserted into environment
35
+ env.type_alias_decls.each do |name, entry|
36
+ # Construct a directed graph by recursively extracting type aliases
37
+ @direct_dependencies[name] = direct_dependency(entry.decl.type)
38
+ # Initialize dependencies with an empty hash
39
+ @dependencies[name] = {}
40
+ end
41
+ end
42
+
43
+ def transitive_closure
44
+ # Construct a graph of direct dependencies
45
+ build_dependencies()
46
+ # Construct transitive closure by using DFS(recursive technique)
47
+ @direct_dependencies.each_key do |name|
48
+ dependency(name, name)
49
+ end
50
+ end
51
+
52
+ def direct_dependencies_of(name)
53
+ name = env.normalize_type_name!(name)
54
+ @direct_dependencies[name]
55
+ end
56
+
57
+ def dependencies_of(name)
58
+ name = env.normalize_type_name!(name)
59
+ @dependencies[name].each_key.to_set
60
+ end
61
+
62
+ private
63
+
64
+ # Constructs directed graph recursively
65
+ def direct_dependency(type, result = Set[])
66
+ case type
67
+ when RBS::Types::Union, RBS::Types::Intersection, RBS::Types::Optional
68
+ # Iterate over nested types & extract type aliases recursively
69
+ type.each_type do |nested_type|
70
+ direct_dependency(nested_type, result)
71
+ end
72
+ when RBS::Types::Alias
73
+ # Append type name if the type is an alias
74
+ result << env.normalize_type_name(type.name)
75
+ end
76
+
77
+ result
78
+ end
79
+
80
+ # Recursive function to construct transitive closure
81
+ def dependency(start, vertex, nested = nil)
82
+ if (start == vertex)
83
+ if (@direct_dependencies[start].include?(vertex) || nested)
84
+ # Mark a vertex as connected to itself
85
+ # if it is connected as an edge || a path(traverse multiple edges)
86
+ @dependencies[start][vertex] = true
87
+ end
88
+ else
89
+ # Mark a pair of vertices as connected while recursively performing DFS
90
+ @dependencies[start][vertex] = true
91
+ end
92
+
93
+ # Iterate over the direct dependencies of the vertex
94
+ @direct_dependencies[vertex]&.each do |type_name|
95
+ # Invoke the function unless it is already checked
96
+ dependency(start, type_name, start == type_name) unless @dependencies[start][type_name]
97
+ end
98
+ end
99
+ end
100
+ end