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

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 (725) hide show
  1. package/PRESTAGE.md +53 -16
  2. package/README.md +156 -0
  3. package/THIRD-PARTY-NOTICES.md +727 -0
  4. package/bin/bundle +1 -1
  5. package/bin/bundler +1 -1
  6. package/bin/erb +1 -1
  7. package/bin/gem +1 -1
  8. package/bin/irb +1 -1
  9. package/bin/rake +1 -1
  10. package/bin/{ruby.wasm → ruby} +0 -0
  11. package/lib/ruby/3.4.0/io/console/size.rb +23 -0
  12. package/lib/ruby/3.4.0/socket.rb +1790 -0
  13. package/lib/ruby/3.4.0/wasm32-wasi/rbconfig.rb +38 -34
  14. package/lib/ruby/gems/3.4.0/cache/abbrev-0.1.2.gem +0 -0
  15. package/lib/ruby/gems/3.4.0/cache/base64-0.2.0.gem +0 -0
  16. package/lib/ruby/gems/3.4.0/cache/csv-3.3.2.gem +0 -0
  17. package/lib/ruby/gems/3.4.0/cache/drb-2.2.1.gem +0 -0
  18. package/lib/ruby/gems/3.4.0/cache/getoptlong-0.2.1.gem +0 -0
  19. package/lib/ruby/gems/3.4.0/cache/matrix-0.4.2.gem +0 -0
  20. package/lib/ruby/gems/3.4.0/cache/minitest-5.25.4.gem +0 -0
  21. package/lib/ruby/gems/3.4.0/cache/mutex_m-0.3.0.gem +0 -0
  22. package/lib/ruby/gems/3.4.0/cache/net-ftp-0.3.8.gem +0 -0
  23. package/lib/ruby/gems/3.4.0/cache/net-imap-0.5.15.gem +0 -0
  24. package/lib/ruby/gems/3.4.0/cache/net-pop-0.1.2.gem +0 -0
  25. package/lib/ruby/gems/3.4.0/cache/net-smtp-0.5.1.gem +0 -0
  26. package/lib/ruby/gems/3.4.0/cache/observer-0.1.2.gem +0 -0
  27. package/lib/ruby/gems/3.4.0/cache/power_assert-2.0.5.gem +0 -0
  28. package/lib/ruby/gems/3.4.0/cache/prime-0.1.3.gem +0 -0
  29. package/lib/ruby/gems/3.4.0/cache/rake-13.2.1.gem +0 -0
  30. package/lib/ruby/gems/3.4.0/cache/repl_type_completor-0.1.9.gem +0 -0
  31. package/lib/ruby/gems/3.4.0/cache/resolv-replace-0.1.1.gem +0 -0
  32. package/lib/ruby/gems/3.4.0/cache/rexml-3.4.4.gem +0 -0
  33. package/lib/ruby/gems/3.4.0/cache/rinda-0.2.0.gem +0 -0
  34. package/lib/ruby/gems/3.4.0/cache/rss-0.3.1.gem +0 -0
  35. package/lib/ruby/gems/3.4.0/cache/test-unit-3.6.7.gem +0 -0
  36. package/lib/ruby/gems/3.4.0/cache/typeprof-0.30.1.gem +0 -0
  37. package/lib/ruby/gems/3.4.0/gems/abbrev-0.1.2/bin/console +0 -0
  38. package/lib/ruby/gems/3.4.0/gems/abbrev-0.1.2/bin/setup +0 -0
  39. package/lib/ruby/gems/3.4.0/gems/bundler-2.6.9/exe/bundle +29 -0
  40. package/lib/ruby/gems/3.4.0/gems/bundler-2.6.9/exe/bundler +4 -0
  41. package/lib/ruby/gems/3.4.0/gems/erb-4.0.4.1/libexec/erb +164 -0
  42. package/lib/ruby/gems/3.4.0/gems/getoptlong-0.2.1/bin/console +0 -0
  43. package/lib/ruby/gems/3.4.0/gems/getoptlong-0.2.1/bin/setup +0 -0
  44. package/lib/ruby/gems/3.4.0/gems/irb-1.14.3/exe/irb +9 -0
  45. package/lib/ruby/gems/3.4.0/gems/observer-0.1.2/bin/console +0 -0
  46. package/lib/ruby/gems/3.4.0/gems/observer-0.1.2/bin/setup +0 -0
  47. package/lib/ruby/gems/3.4.0/gems/rdoc-6.14.0/exe/rdoc +43 -0
  48. package/lib/ruby/gems/3.4.0/gems/rdoc-6.14.0/exe/ri +12 -0
  49. package/lib/ruby/gems/3.4.0/gems/resolv-replace-0.1.1/bin/console +0 -0
  50. package/lib/ruby/gems/3.4.0/gems/resolv-replace-0.1.1/bin/setup +0 -0
  51. package/lib/ruby/gems/3.4.0/gems/rinda-0.2.0/bin/console +0 -0
  52. package/lib/ruby/gems/3.4.0/gems/rinda-0.2.0/bin/setup +0 -0
  53. package/lib/ruby/gems/3.4.0/gems/syntax_suggest-2.0.3/exe/syntax_suggest +7 -0
  54. package/lib/ruby/gems/3.4.0/specifications/abbrev-0.1.2.gemspec +5 -4
  55. package/lib/ruby/gems/3.4.0/specifications/base64-0.2.0.gemspec +4 -3
  56. package/lib/ruby/gems/3.4.0/specifications/csv-3.3.2.gemspec +5 -3
  57. package/lib/ruby/gems/3.4.0/specifications/default/benchmark-0.4.0.gemspec +22 -0
  58. package/lib/ruby/gems/3.4.0/specifications/default/bundler-2.6.9.gemspec +23 -0
  59. package/lib/ruby/gems/3.4.0/specifications/default/cgi-0.4.2.gemspec +23 -0
  60. package/lib/ruby/gems/3.4.0/specifications/default/date-3.4.1.gemspec +23 -0
  61. package/lib/ruby/gems/3.4.0/specifications/default/delegate-0.4.0.gemspec +21 -0
  62. package/lib/ruby/gems/3.4.0/specifications/default/did_you_mean-2.0.0.gemspec +20 -0
  63. package/lib/ruby/gems/3.4.0/specifications/default/digest-3.2.0.gemspec +22 -0
  64. package/lib/ruby/gems/3.4.0/specifications/default/english-0.8.0.gemspec +21 -0
  65. package/lib/ruby/gems/3.4.0/specifications/default/erb-4.0.4.1.gemspec +29 -0
  66. package/lib/ruby/gems/3.4.0/specifications/default/error_highlight-0.7.0.gemspec +20 -0
  67. package/lib/ruby/gems/3.4.0/specifications/default/etc-1.4.6.gemspec +25 -0
  68. package/lib/ruby/gems/3.4.0/specifications/default/fcntl-1.2.0.gemspec +24 -0
  69. package/lib/ruby/gems/3.4.0/specifications/default/fileutils-1.7.3.gemspec +21 -0
  70. package/lib/ruby/gems/3.4.0/specifications/default/find-0.2.0.gemspec +21 -0
  71. package/lib/ruby/gems/3.4.0/specifications/default/forwardable-1.3.3.gemspec +21 -0
  72. package/lib/ruby/gems/3.4.0/specifications/default/io-console-0.8.1.gemspec +23 -0
  73. package/lib/ruby/gems/3.4.0/specifications/default/io-nonblock-0.3.2.gemspec +23 -0
  74. package/lib/ruby/gems/3.4.0/specifications/default/io-wait-0.3.2.gemspec +24 -0
  75. package/lib/ruby/gems/3.4.0/specifications/default/ipaddr-1.2.7.gemspec +20 -0
  76. package/lib/ruby/gems/3.4.0/specifications/default/irb-1.14.3.gemspec +28 -0
  77. package/lib/ruby/gems/3.4.0/specifications/default/json-2.9.1.gemspec +23 -0
  78. package/lib/ruby/gems/3.4.0/specifications/default/logger-1.6.4.gemspec +20 -0
  79. package/lib/ruby/gems/3.4.0/specifications/default/net-http-0.6.0.gemspec +26 -0
  80. package/lib/ruby/gems/3.4.0/specifications/default/net-protocol-0.2.2.gemspec +25 -0
  81. package/lib/ruby/gems/3.4.0/specifications/default/open-uri-0.5.0.gemspec +27 -0
  82. package/lib/ruby/gems/3.4.0/specifications/default/open3-0.2.1.gemspec +22 -0
  83. package/lib/ruby/gems/3.4.0/specifications/default/openssl-3.3.3.gemspec +24 -0
  84. package/lib/ruby/gems/3.4.0/specifications/default/optparse-0.6.0.gemspec +23 -0
  85. package/lib/ruby/gems/3.4.0/specifications/default/ostruct-0.6.1.gemspec +20 -0
  86. package/lib/ruby/gems/3.4.0/specifications/default/pathname-0.4.0.gemspec +24 -0
  87. package/lib/ruby/gems/3.4.0/specifications/default/pp-0.6.2.gemspec +26 -0
  88. package/lib/ruby/gems/3.4.0/specifications/default/prettyprint-0.2.0.gemspec +22 -0
  89. package/lib/ruby/gems/3.4.0/specifications/default/prism-1.5.3.gemspec +22 -0
  90. package/lib/ruby/gems/3.4.0/specifications/default/pstore-0.2.1.gemspec +21 -0
  91. package/lib/ruby/gems/3.4.0/specifications/default/psych-5.2.2.gemspec +30 -0
  92. package/lib/ruby/gems/3.4.0/specifications/default/rdoc-6.14.0.gemspec +30 -0
  93. package/lib/ruby/gems/3.4.0/specifications/default/readline-0.0.4.gemspec +23 -0
  94. package/lib/ruby/gems/3.4.0/specifications/default/reline-0.6.0.gemspec +25 -0
  95. package/lib/ruby/gems/3.4.0/specifications/default/resolv-0.7.2.gemspec +24 -0
  96. package/lib/ruby/gems/3.4.0/specifications/default/ruby2_keywords-0.0.5.gemspec +20 -0
  97. package/lib/ruby/gems/3.4.0/specifications/default/securerandom-0.4.1.gemspec +22 -0
  98. package/lib/ruby/gems/3.4.0/specifications/default/set-1.1.1.gemspec +21 -0
  99. package/lib/ruby/gems/3.4.0/specifications/default/shellwords-0.2.2.gemspec +22 -0
  100. package/lib/ruby/gems/3.4.0/specifications/default/singleton-0.3.0.gemspec +21 -0
  101. package/lib/ruby/gems/3.4.0/specifications/default/stringio-3.1.2.gemspec +23 -0
  102. package/lib/ruby/gems/3.4.0/specifications/default/strscan-3.1.2.gemspec +24 -0
  103. package/lib/ruby/gems/3.4.0/specifications/default/syntax_suggest-2.0.3.gemspec +23 -0
  104. package/lib/ruby/gems/3.4.0/specifications/default/tempfile-0.3.1.gemspec +21 -0
  105. package/lib/ruby/gems/3.4.0/specifications/default/time-0.4.1.gemspec +26 -0
  106. package/lib/ruby/gems/3.4.0/specifications/default/timeout-0.4.3.gemspec +21 -0
  107. package/lib/ruby/gems/3.4.0/specifications/default/tmpdir-0.3.1.gemspec +26 -0
  108. package/lib/ruby/gems/3.4.0/specifications/default/tsort-0.2.0.gemspec +22 -0
  109. package/lib/ruby/gems/3.4.0/specifications/default/un-0.3.0.gemspec +22 -0
  110. package/lib/ruby/gems/3.4.0/specifications/default/uri-1.0.4.gemspec +22 -0
  111. package/lib/ruby/gems/3.4.0/specifications/default/weakref-0.1.3.gemspec +25 -0
  112. package/lib/ruby/gems/3.4.0/specifications/default/yaml-0.4.0.gemspec +21 -0
  113. package/lib/ruby/gems/3.4.0/specifications/default/zlib-3.2.3.gemspec +23 -0
  114. package/lib/ruby/gems/3.4.0/specifications/drb-2.2.1.gemspec +5 -4
  115. package/lib/ruby/gems/3.4.0/specifications/getoptlong-0.2.1.gemspec +5 -4
  116. package/lib/ruby/gems/3.4.0/specifications/matrix-0.4.2.gemspec +5 -4
  117. package/lib/ruby/gems/3.4.0/specifications/minitest-5.25.4.gemspec +7 -5
  118. package/lib/ruby/gems/3.4.0/specifications/mutex_m-0.3.0.gemspec +4 -3
  119. package/lib/ruby/gems/3.4.0/specifications/net-ftp-0.3.8.gemspec +10 -4
  120. package/lib/ruby/gems/3.4.0/specifications/net-imap-0.5.15.gemspec +7 -5
  121. package/lib/ruby/gems/3.4.0/specifications/net-pop-0.1.2.gemspec +9 -4
  122. package/lib/ruby/gems/3.4.0/specifications/net-smtp-0.5.1.gemspec +9 -4
  123. package/lib/ruby/gems/3.4.0/specifications/observer-0.1.2.gemspec +5 -4
  124. package/lib/ruby/gems/3.4.0/specifications/power_assert-2.0.5.gemspec +6 -4
  125. package/lib/ruby/gems/3.4.0/specifications/prime-0.1.3.gemspec +10 -4
  126. package/lib/ruby/gems/3.4.0/specifications/rake-13.2.1.gemspec +6 -4
  127. package/lib/ruby/gems/3.4.0/specifications/repl_type_completor-0.1.9.gemspec +6 -5
  128. package/lib/ruby/gems/3.4.0/specifications/resolv-replace-0.1.1.gemspec +6 -5
  129. package/lib/ruby/gems/3.4.0/specifications/rexml-3.4.4.gemspec +5 -3
  130. package/lib/ruby/gems/3.4.0/specifications/rinda-0.2.0.gemspec +8 -5
  131. package/lib/ruby/gems/3.4.0/specifications/rss-0.3.1.gemspec +5 -4
  132. package/lib/ruby/gems/3.4.0/specifications/test-unit-3.6.7.gemspec +5 -4
  133. package/lib/ruby/gems/3.4.0/specifications/typeprof-0.30.1.gemspec +7 -5
  134. package/package.json +60 -21
  135. package/lib/ruby/3.4.0/expect.rb +0 -71
  136. package/lib/ruby/gems/3.4.0/gems/abbrev-0.1.2/abbrev.gemspec +0 -29
  137. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/.bundled.bigdecimal-3.1.8.gemspec +0 -23
  138. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/LICENSE +0 -56
  139. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/bigdecimal-3.1.8.gemspec +0 -23
  140. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/bigdecimal.gemspec +0 -50
  141. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/jacobian.rb +0 -90
  142. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/ludcmp.rb +0 -89
  143. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/math.rb +0 -232
  144. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/newton.rb +0 -80
  145. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal/util.rb +0 -185
  146. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/lib/bigdecimal.rb +0 -5
  147. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/sample/linear.rb +0 -74
  148. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/sample/nlsolve.rb +0 -40
  149. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/sample/pi.rb +0 -21
  150. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/.bundled.debug-1.11.0.gemspec +0 -25
  151. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/CONTRIBUTING.md +0 -573
  152. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/Gemfile +0 -10
  153. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/LICENSE.txt +0 -22
  154. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/README.md +0 -996
  155. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/Rakefile +0 -57
  156. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/TODO.md +0 -23
  157. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/debug-1.11.0.gemspec +0 -30
  158. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/debug.gemspec +0 -33
  159. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/exe/rdbg +0 -53
  160. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/abbrev_command.rb +0 -77
  161. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/breakpoint.rb +0 -556
  162. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/client.rb +0 -263
  163. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/color.rb +0 -123
  164. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/config.rb +0 -592
  165. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/console.rb +0 -224
  166. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/dap_custom/traceInspector.rb +0 -336
  167. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/frame_info.rb +0 -190
  168. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/irb_integration.rb +0 -37
  169. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/local.rb +0 -115
  170. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/open.rb +0 -13
  171. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/open_nonstop.rb +0 -15
  172. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/prelude.rb +0 -50
  173. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/server.rb +0 -534
  174. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/server_cdp.rb +0 -1348
  175. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/server_dap.rb +0 -1108
  176. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/session.rb +0 -2667
  177. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/source_repository.rb +0 -150
  178. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/start.rb +0 -5
  179. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/thread_client.rb +0 -1457
  180. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/tracer.rb +0 -241
  181. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug/version.rb +0 -5
  182. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/lib/debug.rb +0 -9
  183. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/misc/README.md.erb +0 -660
  184. package/lib/ruby/gems/3.4.0/gems/drb-2.2.1/drb.gemspec +0 -41
  185. package/lib/ruby/gems/3.4.0/gems/getoptlong-0.2.1/getoptlong.gemspec +0 -30
  186. package/lib/ruby/gems/3.4.0/gems/matrix-0.4.2/matrix.gemspec +0 -26
  187. package/lib/ruby/gems/3.4.0/gems/minitest-5.25.4/.autotest +0 -34
  188. package/lib/ruby/gems/3.4.0/gems/net-ftp-0.3.8/net-ftp.gemspec +0 -34
  189. package/lib/ruby/gems/3.4.0/gems/net-imap-0.5.15/net-imap.gemspec +0 -38
  190. package/lib/ruby/gems/3.4.0/gems/net-pop-0.1.2/net-pop.gemspec +0 -32
  191. package/lib/ruby/gems/3.4.0/gems/net-smtp-0.5.1/net-smtp.gemspec +0 -31
  192. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/.bundled.nkf-0.2.0.gemspec +0 -24
  193. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/Gemfile +0 -5
  194. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/LICENSE.txt +0 -22
  195. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/README.md +0 -38
  196. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/Rakefile +0 -24
  197. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/bin/console +0 -14
  198. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/bin/setup +0 -8
  199. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/lib/kconv.rb +0 -283
  200. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/lib/nkf.rb +0 -6
  201. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/nkf-0.2.0.gemspec +0 -24
  202. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/nkf.gemspec +0 -43
  203. package/lib/ruby/gems/3.4.0/gems/observer-0.1.2/observer.gemspec +0 -32
  204. package/lib/ruby/gems/3.4.0/gems/power_assert-2.0.5/power_assert.gemspec +0 -24
  205. package/lib/ruby/gems/3.4.0/gems/prime-0.1.3/prime.gemspec +0 -28
  206. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/.bundled.racc-1.8.1.gemspec +0 -26
  207. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/BSDL +0 -22
  208. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/COPYING +0 -56
  209. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/ChangeLog +0 -846
  210. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/README.ja.rdoc +0 -58
  211. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/README.rdoc +0 -60
  212. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/TODO +0 -5
  213. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/bin/racc +0 -320
  214. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/en/grammar.en.rdoc +0 -218
  215. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/en/grammar2.en.rdoc +0 -219
  216. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/command.ja.html +0 -99
  217. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/debug.ja.rdoc +0 -36
  218. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/grammar.ja.rdoc +0 -348
  219. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/index.ja.html +0 -10
  220. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/parser.ja.rdoc +0 -125
  221. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/doc/ja/usage.ja.html +0 -414
  222. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/compat.rb +0 -33
  223. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/debugflags.rb +0 -60
  224. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/exception.rb +0 -16
  225. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/grammar.rb +0 -1191
  226. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/grammarfileparser.rb +0 -667
  227. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/info.rb +0 -18
  228. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/iset.rb +0 -92
  229. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/logfilegenerator.rb +0 -212
  230. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/parser-text.rb +0 -644
  231. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/parser.rb +0 -630
  232. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/parserfilegenerator.rb +0 -473
  233. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/sourcetext.rb +0 -35
  234. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/state.rb +0 -976
  235. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/statetransitiontable.rb +0 -311
  236. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc/static.rb +0 -5
  237. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/lib/racc.rb +0 -6
  238. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/racc-1.8.1.gemspec +0 -26
  239. package/lib/ruby/gems/3.4.0/gems/rake-13.2.1/rake.gemspec +0 -101
  240. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/.bundled.rbs-3.8.0.gemspec +0 -25
  241. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/.rubocop.yml +0 -53
  242. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/BSDL +0 -22
  243. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/CHANGELOG.md +0 -1854
  244. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/COPYING +0 -56
  245. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/README.md +0 -203
  246. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/Rakefile +0 -415
  247. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/Steepfile +0 -44
  248. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/config.yml +0 -311
  249. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/array.rbs +0 -4062
  250. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/basic_object.rbs +0 -375
  251. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/binding.rbs +0 -150
  252. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/builtin.rbs +0 -277
  253. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/class.rbs +0 -220
  254. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/comparable.rbs +0 -171
  255. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/complex.rbs +0 -786
  256. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/constants.rbs +0 -96
  257. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/data.rbs +0 -415
  258. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/dir.rbs +0 -981
  259. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/encoding.rbs +0 -1371
  260. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/enumerable.rbs +0 -2405
  261. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/enumerator/product.rbs +0 -92
  262. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/enumerator.rbs +0 -630
  263. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/env.rbs +0 -6
  264. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/errno.rbs +0 -673
  265. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/errors.rbs +0 -760
  266. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/exception.rbs +0 -376
  267. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/false_class.rbs +0 -82
  268. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/fiber.rbs +0 -550
  269. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/fiber_error.rbs +0 -11
  270. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/file.rbs +0 -2936
  271. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/file_test.rbs +0 -331
  272. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/float.rbs +0 -1151
  273. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/gc.rbs +0 -644
  274. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/global_variables.rbs +0 -184
  275. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/hash.rbs +0 -1861
  276. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/integer.rbs +0 -1413
  277. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/io/buffer.rbs +0 -984
  278. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/io/wait.rbs +0 -70
  279. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/io.rbs +0 -3402
  280. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/kernel.rbs +0 -3054
  281. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/marshal.rbs +0 -207
  282. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/match_data.rbs +0 -635
  283. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/math.rbs +0 -729
  284. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/method.rbs +0 -386
  285. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/module.rbs +0 -1704
  286. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/nil_class.rbs +0 -209
  287. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/numeric.rbs +0 -818
  288. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/object.rbs +0 -110
  289. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/object_space/weak_key_map.rbs +0 -166
  290. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/object_space.rbs +0 -190
  291. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/proc.rbs +0 -868
  292. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/process.rbs +0 -2296
  293. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/ractor.rbs +0 -1065
  294. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/random.rbs +0 -237
  295. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/range.rbs +0 -1107
  296. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rational.rbs +0 -531
  297. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rb_config.rbs +0 -88
  298. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rbs/unnamed/argf.rbs +0 -1229
  299. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rbs/unnamed/env_class.rbs +0 -1209
  300. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rbs/unnamed/random.rbs +0 -293
  301. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/refinement.rbs +0 -59
  302. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/regexp.rbs +0 -1928
  303. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/ruby_vm.rbs +0 -765
  304. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/basic_specification.rbs +0 -6
  305. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/config_file.rbs +0 -38
  306. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/dependency_installer.rbs +0 -6
  307. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/errors.rbs +0 -176
  308. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/installer.rbs +0 -15
  309. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/path_support.rbs +0 -6
  310. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/platform.rbs +0 -7
  311. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/request_set.rbs +0 -49
  312. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/requirement.rbs +0 -148
  313. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/rubygems.rbs +0 -1171
  314. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/source_list.rbs +0 -15
  315. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/specification.rbs +0 -23
  316. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/stream_ui.rbs +0 -5
  317. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/uninstaller.rbs +0 -10
  318. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/rubygems/version.rbs +0 -294
  319. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/set.rbs +0 -621
  320. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/signal.rbs +0 -100
  321. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/string.rbs +0 -3583
  322. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/struct.rbs +0 -667
  323. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/symbol.rbs +0 -475
  324. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/thread.rbs +0 -1765
  325. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/thread_group.rbs +0 -79
  326. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/time.rbs +0 -1762
  327. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/trace_point.rbs +0 -477
  328. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/true_class.rbs +0 -98
  329. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/unbound_method.rbs +0 -329
  330. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/core/warning.rbs +0 -87
  331. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/CONTRIBUTING.md +0 -106
  332. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/architecture.md +0 -110
  333. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/collection.md +0 -192
  334. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/data_and_struct.md +0 -86
  335. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/gem.md +0 -57
  336. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/rbs_by_example.md +0 -309
  337. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/repo.md +0 -125
  338. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/sigs.md +0 -167
  339. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/stdlib.md +0 -147
  340. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/syntax.md +0 -905
  341. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/docs/tools.md +0 -17
  342. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/exe/rbs +0 -7
  343. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/goodcheck.yml +0 -91
  344. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/include/rbs/constants.h +0 -82
  345. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/include/rbs/ruby_objs.h +0 -72
  346. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/include/rbs.h +0 -7
  347. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ancestor_graph.rb +0 -92
  348. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate/annotations.rb +0 -199
  349. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate/formatter.rb +0 -92
  350. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate/rdoc_annotator.rb +0 -400
  351. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate/rdoc_source.rb +0 -131
  352. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/annotate.rb +0 -8
  353. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/annotation.rb +0 -29
  354. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/comment.rb +0 -29
  355. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/declarations.rb +0 -467
  356. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/directives.rb +0 -39
  357. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/members.rb +0 -449
  358. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/type_param.rb +0 -225
  359. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/ast/visitor.rb +0 -137
  360. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/buffer.rb +0 -67
  361. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/builtin_names.rb +0 -58
  362. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/cli/colored_io.rb +0 -48
  363. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/cli/diff.rb +0 -83
  364. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/cli/validate.rb +0 -356
  365. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/cli.rb +0 -1223
  366. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/cleaner.rb +0 -38
  367. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/config/lockfile.rb +0 -92
  368. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/config/lockfile_generator.rb +0 -223
  369. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/config.rb +0 -81
  370. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/installer.rb +0 -32
  371. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/base.rb +0 -14
  372. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/git.rb +0 -258
  373. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/local.rb +0 -81
  374. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/rubygems.rb +0 -48
  375. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources/stdlib.rb +0 -50
  376. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection/sources.rb +0 -38
  377. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/collection.rb +0 -16
  378. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/constant.rb +0 -28
  379. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/definition.rb +0 -395
  380. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/definition_builder/ancestor_builder.rb +0 -620
  381. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/definition_builder/method_builder.rb +0 -254
  382. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/definition_builder.rb +0 -841
  383. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/diff.rb +0 -125
  384. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/environment/use_map.rb +0 -77
  385. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/environment.rb +0 -818
  386. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/environment_loader.rb +0 -173
  387. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/environment_walker.rb +0 -155
  388. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/errors.rb +0 -600
  389. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/factory.rb +0 -18
  390. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/file_finder.rb +0 -28
  391. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/location_aux.rb +0 -138
  392. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/locator.rb +0 -241
  393. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/method_type.rb +0 -141
  394. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/namespace.rb +0 -125
  395. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/parser/lex_result.rb +0 -15
  396. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/parser/token.rb +0 -23
  397. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/parser_aux.rb +0 -77
  398. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/helpers.rb +0 -140
  399. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/node_usage.rb +0 -99
  400. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/rb.rb +0 -840
  401. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/rbi.rb +0 -641
  402. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/runtime/helpers.rb +0 -59
  403. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/runtime/reflection.rb +0 -19
  404. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/runtime/value_object_generator.rb +0 -279
  405. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/prototype/runtime.rb +0 -667
  406. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/repository.rb +0 -127
  407. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/resolver/constant_resolver.rb +0 -219
  408. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/resolver/type_name_resolver.rb +0 -91
  409. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/sorter.rb +0 -198
  410. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/substitution.rb +0 -83
  411. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/subtractor.rb +0 -201
  412. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/errors.rb +0 -80
  413. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/guaranteed.rb +0 -30
  414. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/hook.rb +0 -212
  415. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/observer.rb +0 -19
  416. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/setup.rb +0 -84
  417. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/setup_helper.rb +0 -50
  418. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/tester.rb +0 -167
  419. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test/type_check.rb +0 -433
  420. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/test.rb +0 -112
  421. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/type_alias_dependency.rb +0 -100
  422. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/type_alias_regularity.rb +0 -126
  423. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/type_name.rb +0 -109
  424. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/types.rb +0 -1557
  425. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test/convertibles.rb +0 -176
  426. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test/spy.rb +0 -136
  427. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test/type_assertions.rb +0 -341
  428. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test/with_aliases.rb +0 -143
  429. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/unit_test.rb +0 -6
  430. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/validator.rb +0 -182
  431. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/variance_calculator.rb +0 -189
  432. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/vendorer.rb +0 -71
  433. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/version.rb +0 -5
  434. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs/writer.rb +0 -419
  435. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rbs.rb +0 -93
  436. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rdoc/discover.rb +0 -20
  437. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/lib/rdoc_plugin/parser.rb +0 -163
  438. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/rbs-3.8.0.gemspec +0 -29
  439. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/rbs.gemspec +0 -49
  440. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/annotation.json +0 -14
  441. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/comment.json +0 -26
  442. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/decls.json +0 -326
  443. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/function.json +0 -87
  444. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/location.json +0 -56
  445. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/members.json +0 -266
  446. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/methodType.json +0 -50
  447. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/typeParam.json +0 -36
  448. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/schema/types.json +0 -317
  449. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/ancestor_builder.rbs +0 -163
  450. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/ancestor_graph.rbs +0 -60
  451. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotate/annotations.rbs +0 -102
  452. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotate/formatter.rbs +0 -24
  453. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotate/rdoc_annotater.rbs +0 -82
  454. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotate/rdoc_source.rbs +0 -30
  455. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/annotation.rbs +0 -27
  456. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/buffer.rbs +0 -32
  457. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/builtin_names.rbs +0 -44
  458. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/cli/colored_io.rbs +0 -15
  459. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/cli/diff.rbs +0 -21
  460. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/cli/validate.rbs +0 -43
  461. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/cli.rbs +0 -87
  462. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/cleaner.rbs +0 -13
  463. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/config/lockfile.rbs +0 -74
  464. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/config/lockfile_generator.rbs +0 -66
  465. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/config.rbs +0 -46
  466. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/installer.rbs +0 -17
  467. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection/sources.rbs +0 -214
  468. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/collection.rbs +0 -4
  469. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/comment.rbs +0 -26
  470. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/constant.rbs +0 -21
  471. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/declarations.rbs +0 -267
  472. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/definition.rbs +0 -173
  473. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/definition_builder.rbs +0 -165
  474. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/diff.rbs +0 -28
  475. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/directives.rbs +0 -61
  476. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/environment.rbs +0 -277
  477. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/environment_loader.rbs +0 -111
  478. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/environment_walker.rbs +0 -65
  479. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/errors.rbs +0 -383
  480. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/factory.rbs +0 -5
  481. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/file_finder.rbs +0 -28
  482. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/location.rbs +0 -110
  483. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/locator.rbs +0 -58
  484. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/manifest.yaml +0 -7
  485. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/members.rbs +0 -258
  486. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/method_builder.rbs +0 -84
  487. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/method_types.rbs +0 -58
  488. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/namespace.rbs +0 -146
  489. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/parser.rbs +0 -96
  490. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/helpers.rbs +0 -27
  491. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/node_usage.rbs +0 -20
  492. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/rb.rbs +0 -96
  493. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/rbi.rbs +0 -75
  494. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/prototype/runtime.rbs +0 -182
  495. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/rbs.rbs +0 -21
  496. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/rdoc/rbs.rbs +0 -67
  497. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/repository.rbs +0 -85
  498. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/resolver/constant_resolver.rbs +0 -92
  499. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/resolver/context.rbs +0 -34
  500. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/resolver/type_name_resolver.rbs +0 -35
  501. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/shims/bundler.rbs +0 -38
  502. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/shims/enumerable.rbs +0 -5
  503. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/shims/rubygems.rbs +0 -19
  504. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/sorter.rbs +0 -41
  505. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/substitution.rbs +0 -48
  506. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/subtractor.rbs +0 -37
  507. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/test/errors.rbs +0 -52
  508. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/test/guranteed.rbs +0 -9
  509. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/test/type_check.rbs +0 -19
  510. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/test.rbs +0 -82
  511. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/type_alias_dependency.rbs +0 -53
  512. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/type_alias_regularity.rbs +0 -98
  513. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/type_param.rbs +0 -110
  514. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/typename.rbs +0 -79
  515. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/types.rbs +0 -576
  516. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/unit_test/convertibles.rbs +0 -154
  517. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/unit_test/spy.rbs +0 -28
  518. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/unit_test/type_assertions.rbs +0 -194
  519. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/unit_test/with_aliases.rbs +0 -136
  520. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/use_map.rbs +0 -35
  521. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/util.rbs +0 -9
  522. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/validator.rbs +0 -59
  523. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/variance_calculator.rbs +0 -87
  524. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/vendorer.rbs +0 -51
  525. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/version.rbs +0 -3
  526. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/visitor.rbs +0 -47
  527. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/sig/writer.rbs +0 -127
  528. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/src/constants.c +0 -153
  529. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/src/ruby_objs.c +0 -793
  530. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/abbrev/0/abbrev.rbs +0 -66
  531. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/abbrev/0/array.rbs +0 -26
  532. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/base64/0/base64.rbs +0 -355
  533. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/benchmark/0/benchmark.rbs +0 -452
  534. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/bigdecimal/0/big_decimal.rbs +0 -1629
  535. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/bigdecimal-math/0/big_math.rbs +0 -119
  536. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/bigdecimal-math/0/manifest.yaml +0 -2
  537. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/cgi/0/core.rbs +0 -1285
  538. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/cgi/0/manifest.yaml +0 -3
  539. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/coverage/0/coverage.rbs +0 -263
  540. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/csv/0/csv.rbs +0 -3776
  541. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/csv/0/manifest.yaml +0 -3
  542. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/date/0/date.rbs +0 -1585
  543. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/date/0/date_time.rbs +0 -616
  544. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/date/0/time.rbs +0 -26
  545. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/dbm/0/dbm.rbs +0 -421
  546. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/delegate/0/delegator.rbs +0 -184
  547. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/delegate/0/kernel.rbs +0 -47
  548. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/delegate/0/simple_delegator.rbs +0 -96
  549. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/did_you_mean/0/did_you_mean.rbs +0 -343
  550. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/digest/0/digest.rbs +0 -577
  551. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/erb/0/erb.rbs +0 -532
  552. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/etc/0/etc.rbs +0 -865
  553. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/fileutils/0/fileutils.rbs +0 -1734
  554. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/find/0/find.rbs +0 -49
  555. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/forwardable/0/forwardable.rbs +0 -268
  556. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/io-console/0/io-console.rbs +0 -414
  557. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/ipaddr/0/ipaddr.rbs +0 -428
  558. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/json/0/json.rbs +0 -1914
  559. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/kconv/0/kconv.rbs +0 -166
  560. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/formatter.rbs +0 -45
  561. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/log_device.rbs +0 -100
  562. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/logger.rbs +0 -796
  563. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/manifest.yaml +0 -2
  564. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/period.rbs +0 -17
  565. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/logger/0/severity.rbs +0 -34
  566. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/kernel.rbs +0 -42
  567. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/abstract_reporter.rbs +0 -52
  568. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/assertion.rbs +0 -17
  569. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/assertions.rbs +0 -590
  570. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/backtrace_filter.rbs +0 -23
  571. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/bench_spec.rbs +0 -102
  572. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/benchmark.rbs +0 -259
  573. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/composite_reporter.rbs +0 -25
  574. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/compress.rbs +0 -13
  575. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/error_on_warning.rbs +0 -3
  576. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/expectation.rbs +0 -2
  577. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/expectations.rbs +0 -21
  578. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/guard.rbs +0 -64
  579. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/mock.rbs +0 -64
  580. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/parallel/executor.rbs +0 -46
  581. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/parallel/test/class_methods.rbs +0 -5
  582. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/parallel/test.rbs +0 -3
  583. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/parallel.rbs +0 -2
  584. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/pride_io.rbs +0 -62
  585. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/pride_lol.rbs +0 -19
  586. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/progress_reporter.rbs +0 -11
  587. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/reportable.rbs +0 -53
  588. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/reporter.rbs +0 -5
  589. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/result.rbs +0 -28
  590. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/runnable.rbs +0 -163
  591. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/skip.rbs +0 -6
  592. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/spec/dsl/instance_methods.rbs +0 -48
  593. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/spec/dsl.rbs +0 -129
  594. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/spec.rbs +0 -11
  595. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/statistics_reporter.rbs +0 -81
  596. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/summary_reporter.rbs +0 -18
  597. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/test/lifecycle_hooks.rbs +0 -92
  598. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/test.rbs +0 -69
  599. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/unexpected_error.rbs +0 -12
  600. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/unexpected_warning.rbs +0 -6
  601. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/unit/test_case.rbs +0 -3
  602. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest/unit.rbs +0 -4
  603. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/minitest/0/minitest.rbs +0 -115
  604. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/monitor/0/monitor.rbs +0 -354
  605. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/mutex_m/0/mutex_m.rbs +0 -104
  606. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-http/0/manifest.yaml +0 -3
  607. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-http/0/net-http.rbs +0 -5552
  608. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-protocol/0/manifest.yaml +0 -2
  609. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-protocol/0/net-protocol.rbs +0 -56
  610. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-smtp/0/manifest.yaml +0 -2
  611. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/net-smtp/0/net-smtp.rbs +0 -55
  612. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/nkf/0/nkf.rbs +0 -402
  613. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/objspace/0/objspace.rbs +0 -487
  614. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/observable/0/observable.rbs +0 -217
  615. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/open-uri/0/manifest.yaml +0 -4
  616. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/open-uri/0/open-uri.rbs +0 -393
  617. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/open3/0/open3.rbs +0 -147
  618. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/openssl/0/manifest.yaml +0 -3
  619. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/openssl/0/openssl.rbs +0 -12113
  620. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/optparse/0/optparse.rbs +0 -1725
  621. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pathname/0/pathname.rbs +0 -1406
  622. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pp/0/manifest.yaml +0 -2
  623. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pp/0/pp.rbs +0 -300
  624. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/prettyprint/0/prettyprint.rbs +0 -383
  625. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pstore/0/pstore.rbs +0 -603
  626. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/core_ext.rbs +0 -12
  627. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/dbm.rbs +0 -237
  628. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/manifest.yaml +0 -3
  629. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/psych.rbs +0 -402
  630. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/psych/0/store.rbs +0 -59
  631. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/pty/0/pty.rbs +0 -237
  632. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/code_object.rbs +0 -51
  633. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/comment.rbs +0 -59
  634. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/context.rbs +0 -153
  635. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/markup.rbs +0 -117
  636. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/parser.rbs +0 -56
  637. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/rdoc.rbs +0 -391
  638. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/ri.rbs +0 -17
  639. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/store.rbs +0 -48
  640. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/rdoc/0/top_level.rbs +0 -97
  641. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/resolv/0/manifest.yaml +0 -3
  642. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/resolv/0/resolv.rbs +0 -1830
  643. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/ripper/0/ripper.rbs +0 -1648
  644. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/securerandom/0/securerandom.rbs +0 -62
  645. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/shellwords/0/shellwords.rbs +0 -229
  646. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/singleton/0/singleton.rbs +0 -131
  647. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/addrinfo.rbs +0 -666
  648. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/basic_socket.rbs +0 -590
  649. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/constants.rbs +0 -2295
  650. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/ip_socket.rbs +0 -92
  651. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/socket.rbs +0 -4157
  652. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/socket_error.rbs +0 -5
  653. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/tcp_server.rbs +0 -192
  654. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/tcp_socket.rbs +0 -79
  655. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/udp_socket.rbs +0 -133
  656. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/unix_server.rbs +0 -169
  657. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/socket/0/unix_socket.rbs +0 -170
  658. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/stringio/0/stringio.rbs +0 -567
  659. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/strscan/0/string_scanner.rbs +0 -1627
  660. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tempfile/0/tempfile.rbs +0 -479
  661. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/time/0/time.rbs +0 -432
  662. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/timeout/0/timeout.rbs +0 -81
  663. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tmpdir/0/tmpdir.rbs +0 -69
  664. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tsort/0/cyclic.rbs +0 -5
  665. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tsort/0/interfaces.rbs +0 -20
  666. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/tsort/0/tsort.rbs +0 -409
  667. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/common.rbs +0 -582
  668. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/file.rbs +0 -118
  669. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/ftp.rbs +0 -13
  670. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/generic.rbs +0 -1108
  671. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/http.rbs +0 -104
  672. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/https.rbs +0 -14
  673. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/ldap.rbs +0 -230
  674. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/ldaps.rbs +0 -14
  675. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/mailto.rbs +0 -92
  676. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/rfc2396_parser.rbs +0 -189
  677. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/rfc3986_parser.rbs +0 -2
  678. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/ws.rbs +0 -13
  679. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/uri/0/wss.rbs +0 -9
  680. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/yaml/0/manifest.yaml +0 -2
  681. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/yaml/0/yaml.rbs +0 -1
  682. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/buf_error.rbs +0 -10
  683. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/data_error.rbs +0 -10
  684. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/deflate.rbs +0 -210
  685. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/error.rbs +0 -20
  686. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file/crc_error.rbs +0 -12
  687. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file/error.rbs +0 -23
  688. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file/length_error.rbs +0 -12
  689. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file/no_footer.rbs +0 -11
  690. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_file.rbs +0 -156
  691. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_reader.rbs +0 -293
  692. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/gzip_writer.rbs +0 -166
  693. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/inflate.rbs +0 -180
  694. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/mem_error.rbs +0 -10
  695. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/need_dict.rbs +0 -13
  696. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/stream_end.rbs +0 -11
  697. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/stream_error.rbs +0 -11
  698. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/version_error.rbs +0 -11
  699. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/zlib.rbs +0 -449
  700. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/stdlib/zlib/0/zstream.rbs +0 -200
  701. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/include/rbs/constants.h.erb +0 -20
  702. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/include/rbs/ruby_objs.h.erb +0 -10
  703. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/src/constants.c.erb +0 -36
  704. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/src/ruby_objs.c.erb +0 -27
  705. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/templates/template.rb +0 -122
  706. package/lib/ruby/gems/3.4.0/gems/resolv-replace-0.1.1/resolv-replace.gemspec +0 -22
  707. package/lib/ruby/gems/3.4.0/gems/rinda-0.2.0/rinda.gemspec +0 -35
  708. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/.bundled.syslog-0.2.0.gemspec +0 -23
  709. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/Gemfile +0 -5
  710. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/LICENSE.txt +0 -22
  711. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/README.md +0 -41
  712. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/Rakefile +0 -20
  713. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/bin/console +0 -14
  714. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/bin/setup +0 -8
  715. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/lib/syslog/logger.rb +0 -209
  716. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/lib/syslog.rb +0 -10
  717. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/syslog-0.2.0.gemspec +0 -23
  718. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/syslog.gemspec +0 -26
  719. package/lib/ruby/gems/3.4.0/gems/typeprof-0.30.1/typeprof.gemspec +0 -32
  720. package/lib/ruby/gems/3.4.0/specifications/bigdecimal-3.1.8.gemspec +0 -50
  721. package/lib/ruby/gems/3.4.0/specifications/debug-1.11.0.gemspec +0 -33
  722. package/lib/ruby/gems/3.4.0/specifications/nkf-0.2.0.gemspec +0 -43
  723. package/lib/ruby/gems/3.4.0/specifications/racc-1.8.1.gemspec +0 -26
  724. package/lib/ruby/gems/3.4.0/specifications/rbs-3.8.0.gemspec +0 -49
  725. package/lib/ruby/gems/3.4.0/specifications/syslog-0.2.0.gemspec +0 -26
@@ -1,1861 +0,0 @@
1
- # <!-- rdoc-file=hash.c -->
2
- # A `Hash` maps each of its unique keys to a specific value.
3
- #
4
- # A `Hash` has certain similarities to an Array, but:
5
- # * An Array index is always an Integer.
6
- # * A `Hash` key can be (almost) any object.
7
- #
8
- # ### `Hash` Data Syntax
9
- #
10
- # The older syntax for `Hash` data uses the "hash rocket," `=>`:
11
- #
12
- # h = {:foo => 0, :bar => 1, :baz => 2}
13
- # h # => {:foo=>0, :bar=>1, :baz=>2}
14
- #
15
- # Alternatively, but only for a `Hash` key that's a Symbol, you can use a newer
16
- # JSON-style syntax, where each bareword becomes a Symbol:
17
- #
18
- # h = {foo: 0, bar: 1, baz: 2}
19
- # h # => {:foo=>0, :bar=>1, :baz=>2}
20
- #
21
- # You can also use a String in place of a bareword:
22
- #
23
- # h = {'foo': 0, 'bar': 1, 'baz': 2}
24
- # h # => {:foo=>0, :bar=>1, :baz=>2}
25
- #
26
- # And you can mix the styles:
27
- #
28
- # h = {foo: 0, :bar => 1, 'baz': 2}
29
- # h # => {:foo=>0, :bar=>1, :baz=>2}
30
- #
31
- # But it's an error to try the JSON-style syntax for a key that's not a bareword
32
- # or a String:
33
- #
34
- # # Raises SyntaxError (syntax error, unexpected ':', expecting =>):
35
- # h = {0: 'zero'}
36
- #
37
- # `Hash` value can be omitted, meaning that value will be fetched from the
38
- # context by the name of the key:
39
- #
40
- # x = 0
41
- # y = 100
42
- # h = {x:, y:}
43
- # h # => {:x=>0, :y=>100}
44
- #
45
- # ### Common Uses
46
- #
47
- # You can use a `Hash` to give names to objects:
48
- #
49
- # person = {name: 'Matz', language: 'Ruby'}
50
- # person # => {:name=>"Matz", :language=>"Ruby"}
51
- #
52
- # You can use a `Hash` to give names to method arguments:
53
- #
54
- # def some_method(hash)
55
- # p hash
56
- # end
57
- # some_method({foo: 0, bar: 1, baz: 2}) # => {:foo=>0, :bar=>1, :baz=>2}
58
- #
59
- # Note: when the last argument in a method call is a `Hash`, the curly braces
60
- # may be omitted:
61
- #
62
- # some_method(foo: 0, bar: 1, baz: 2) # => {:foo=>0, :bar=>1, :baz=>2}
63
- #
64
- # You can use a `Hash` to initialize an object:
65
- #
66
- # class Dev
67
- # attr_accessor :name, :language
68
- # def initialize(hash)
69
- # self.name = hash[:name]
70
- # self.language = hash[:language]
71
- # end
72
- # end
73
- # matz = Dev.new(name: 'Matz', language: 'Ruby')
74
- # matz # => #<Dev: @name="Matz", @language="Ruby">
75
- #
76
- # ### Creating a `Hash`
77
- #
78
- # You can create a `Hash` object explicitly with:
79
- #
80
- # * A [hash literal](rdoc-ref:syntax/literals.rdoc@Hash+Literals).
81
- #
82
- # You can convert certain objects to Hashes with:
83
- #
84
- # * Method #Hash.
85
- #
86
- # You can create a `Hash` by calling method Hash.new.
87
- #
88
- # Create an empty `Hash`:
89
- #
90
- # h = Hash.new
91
- # h # => {}
92
- # h.class # => Hash
93
- #
94
- # You can create a `Hash` by calling method Hash.[].
95
- #
96
- # Create an empty `Hash`:
97
- #
98
- # h = Hash[]
99
- # h # => {}
100
- #
101
- # Create a `Hash` with initial entries:
102
- #
103
- # h = Hash[foo: 0, bar: 1, baz: 2]
104
- # h # => {:foo=>0, :bar=>1, :baz=>2}
105
- #
106
- # You can create a `Hash` by using its literal form (curly braces).
107
- #
108
- # Create an empty `Hash`:
109
- #
110
- # h = {}
111
- # h # => {}
112
- #
113
- # Create a `Hash` with initial entries:
114
- #
115
- # h = {foo: 0, bar: 1, baz: 2}
116
- # h # => {:foo=>0, :bar=>1, :baz=>2}
117
- #
118
- # ### `Hash` Value Basics
119
- #
120
- # The simplest way to retrieve a `Hash` value (instance method #[]):
121
- #
122
- # h = {foo: 0, bar: 1, baz: 2}
123
- # h[:foo] # => 0
124
- #
125
- # The simplest way to create or update a `Hash` value (instance method #[]=):
126
- #
127
- # h = {foo: 0, bar: 1, baz: 2}
128
- # h[:bat] = 3 # => 3
129
- # h # => {:foo=>0, :bar=>1, :baz=>2, :bat=>3}
130
- # h[:foo] = 4 # => 4
131
- # h # => {:foo=>4, :bar=>1, :baz=>2, :bat=>3}
132
- #
133
- # The simplest way to delete a `Hash` entry (instance method #delete):
134
- #
135
- # h = {foo: 0, bar: 1, baz: 2}
136
- # h.delete(:bar) # => 1
137
- # h # => {:foo=>0, :baz=>2}
138
- #
139
- # ### Entry Order
140
- #
141
- # A `Hash` object presents its entries in the order of their creation. This is
142
- # seen in:
143
- #
144
- # * Iterative methods such as `each`, `each_key`, `each_pair`, `each_value`.
145
- # * Other order-sensitive methods such as `shift`, `keys`, `values`.
146
- # * The String returned by method `inspect`.
147
- #
148
- # A new `Hash` has its initial ordering per the given entries:
149
- #
150
- # h = Hash[foo: 0, bar: 1]
151
- # h # => {:foo=>0, :bar=>1}
152
- #
153
- # New entries are added at the end:
154
- #
155
- # h[:baz] = 2
156
- # h # => {:foo=>0, :bar=>1, :baz=>2}
157
- #
158
- # Updating a value does not affect the order:
159
- #
160
- # h[:baz] = 3
161
- # h # => {:foo=>0, :bar=>1, :baz=>3}
162
- #
163
- # But re-creating a deleted entry can affect the order:
164
- #
165
- # h.delete(:foo)
166
- # h[:foo] = 5
167
- # h # => {:bar=>1, :baz=>3, :foo=>5}
168
- #
169
- # ### `Hash` Keys
170
- #
171
- # #### `Hash` Key Equivalence
172
- #
173
- # Two objects are treated as the same hash key when their `hash` value is
174
- # identical and the two objects are `eql?` to each other.
175
- #
176
- # #### Modifying an Active `Hash` Key
177
- #
178
- # Modifying a `Hash` key while it is in use damages the hash's index.
179
- #
180
- # This `Hash` has keys that are Arrays:
181
- #
182
- # a0 = [ :foo, :bar ]
183
- # a1 = [ :baz, :bat ]
184
- # h = {a0 => 0, a1 => 1}
185
- # h.include?(a0) # => true
186
- # h[a0] # => 0
187
- # a0.hash # => 110002110
188
- #
189
- # Modifying array element `a0[0]` changes its hash value:
190
- #
191
- # a0[0] = :bam
192
- # a0.hash # => 1069447059
193
- #
194
- # And damages the `Hash` index:
195
- #
196
- # h.include?(a0) # => false
197
- # h[a0] # => nil
198
- #
199
- # You can repair the hash index using method `rehash`:
200
- #
201
- # h.rehash # => {[:bam, :bar]=>0, [:baz, :bat]=>1}
202
- # h.include?(a0) # => true
203
- # h[a0] # => 0
204
- #
205
- # A String key is always safe. That's because an unfrozen String passed as a key
206
- # will be replaced by a duplicated and frozen String:
207
- #
208
- # s = 'foo'
209
- # s.frozen? # => false
210
- # h = {s => 0}
211
- # first_key = h.keys.first
212
- # first_key.frozen? # => true
213
- #
214
- # #### User-Defined `Hash` Keys
215
- #
216
- # To be usable as a `Hash` key, objects must implement the methods `hash` and
217
- # `eql?`. Note: this requirement does not apply if the `Hash` uses
218
- # #compare_by_identity since comparison will then rely on the keys' object id
219
- # instead of `hash` and `eql?`.
220
- #
221
- # Object defines basic implementation for `hash` and `eq?` that makes each
222
- # object a distinct key. Typically, user-defined classes will want to override
223
- # these methods to provide meaningful behavior, or for example inherit Struct
224
- # that has useful definitions for these.
225
- #
226
- # A typical implementation of `hash` is based on the object's data while `eql?`
227
- # is usually aliased to the overridden `==` method:
228
- #
229
- # class Book
230
- # attr_reader :author, :title
231
- #
232
- # def initialize(author, title)
233
- # @author = author
234
- # @title = title
235
- # end
236
- #
237
- # def ==(other)
238
- # self.class === other &&
239
- # other.author == @author &&
240
- # other.title == @title
241
- # end
242
- #
243
- # alias eql? ==
244
- #
245
- # def hash
246
- # [self.class, @author, @title].hash
247
- # end
248
- # end
249
- #
250
- # book1 = Book.new 'matz', 'Ruby in a Nutshell'
251
- # book2 = Book.new 'matz', 'Ruby in a Nutshell'
252
- #
253
- # reviews = {}
254
- #
255
- # reviews[book1] = 'Great reference!'
256
- # reviews[book2] = 'Nice and compact!'
257
- #
258
- # reviews.length #=> 1
259
- #
260
- # ### Default Values
261
- #
262
- # The methods #[], #values_at and #dig need to return the value associated to a
263
- # certain key. When that key is not found, that value will be determined by its
264
- # default proc (if any) or else its default (initially `nil`).
265
- #
266
- # You can retrieve the default value with method #default:
267
- #
268
- # h = Hash.new
269
- # h.default # => nil
270
- #
271
- # You can set the default value by passing an argument to method Hash.new or
272
- # with method #default=
273
- #
274
- # h = Hash.new(-1)
275
- # h.default # => -1
276
- # h.default = 0
277
- # h.default # => 0
278
- #
279
- # This default value is returned for #[], #values_at and #dig when a key is not
280
- # found:
281
- #
282
- # counts = {foo: 42}
283
- # counts.default # => nil (default)
284
- # counts[:foo] = 42
285
- # counts[:bar] # => nil
286
- # counts.default = 0
287
- # counts[:bar] # => 0
288
- # counts.values_at(:foo, :bar, :baz) # => [42, 0, 0]
289
- # counts.dig(:bar) # => 0
290
- #
291
- # Note that the default value is used without being duplicated. It is not
292
- # advised to set the default value to a mutable object:
293
- #
294
- # synonyms = Hash.new([])
295
- # synonyms[:hello] # => []
296
- # synonyms[:hello] << :hi # => [:hi], but this mutates the default!
297
- # synonyms.default # => [:hi]
298
- # synonyms[:world] << :universe
299
- # synonyms[:world] # => [:hi, :universe], oops
300
- # synonyms.keys # => [], oops
301
- #
302
- # To use a mutable object as default, it is recommended to use a default proc
303
- #
304
- # #### Default Proc
305
- #
306
- # When the default proc for a `Hash` is set (i.e., not `nil`), the default value
307
- # returned by method #[] is determined by the default proc alone.
308
- #
309
- # You can retrieve the default proc with method #default_proc:
310
- #
311
- # h = Hash.new
312
- # h.default_proc # => nil
313
- #
314
- # You can set the default proc by calling Hash.new with a block or calling the
315
- # method #default_proc=
316
- #
317
- # h = Hash.new { |hash, key| "Default value for #{key}" }
318
- # h.default_proc.class # => Proc
319
- # h.default_proc = proc { |hash, key| "Default value for #{key.inspect}" }
320
- # h.default_proc.class # => Proc
321
- #
322
- # When the default proc is set (i.e., not `nil`) and method #[] is called with
323
- # with a non-existent key, #[] calls the default proc with both the `Hash`
324
- # object itself and the missing key, then returns the proc's return value:
325
- #
326
- # h = Hash.new { |hash, key| "Default value for #{key}" }
327
- # h[:nosuch] # => "Default value for nosuch"
328
- #
329
- # Note that in the example above no entry for key `:nosuch` is created:
330
- #
331
- # h.include?(:nosuch) # => false
332
- #
333
- # However, the proc itself can add a new entry:
334
- #
335
- # synonyms = Hash.new { |hash, key| hash[key] = [] }
336
- # synonyms.include?(:hello) # => false
337
- # synonyms[:hello] << :hi # => [:hi]
338
- # synonyms[:world] << :universe # => [:universe]
339
- # synonyms.keys # => [:hello, :world]
340
- #
341
- # Note that setting the default proc will clear the default value and vice
342
- # versa.
343
- #
344
- # Be aware that a default proc that modifies the hash is not thread-safe in the
345
- # sense that multiple threads can call into the default proc concurrently for
346
- # the same key.
347
- #
348
- # ### What's Here
349
- #
350
- # First, what's elsewhere. Class `Hash`:
351
- #
352
- # * Inherits from [class Object](rdoc-ref:Object@What-27s+Here).
353
- # * Includes [module Enumerable](rdoc-ref:Enumerable@What-27s+Here), which
354
- # provides dozens of additional methods.
355
- #
356
- # Here, class `Hash` provides methods that are useful for:
357
- #
358
- # * [Creating a Hash](rdoc-ref:Hash@Methods+for+Creating+a+Hash)
359
- # * [Setting Hash State](rdoc-ref:Hash@Methods+for+Setting+Hash+State)
360
- # * [Querying](rdoc-ref:Hash@Methods+for+Querying)
361
- # * [Comparing](rdoc-ref:Hash@Methods+for+Comparing)
362
- # * [Fetching](rdoc-ref:Hash@Methods+for+Fetching)
363
- # * [Assigning](rdoc-ref:Hash@Methods+for+Assigning)
364
- # * [Deleting](rdoc-ref:Hash@Methods+for+Deleting)
365
- # * [Iterating](rdoc-ref:Hash@Methods+for+Iterating)
366
- # * [Converting](rdoc-ref:Hash@Methods+for+Converting)
367
- # * [Transforming Keys and
368
- # Values](rdoc-ref:Hash@Methods+for+Transforming+Keys+and+Values)
369
- # * [And more....](rdoc-ref:Hash@Other+Methods)
370
- #
371
- # Class `Hash` also includes methods from module Enumerable.
372
- #
373
- # #### Methods for Creating a `Hash`
374
- #
375
- # * ::[]: Returns a new hash populated with given objects.
376
- # * ::new: Returns a new empty hash.
377
- # * ::try_convert: Returns a new hash created from a given object.
378
- #
379
- # #### Methods for Setting `Hash` State
380
- #
381
- # * #compare_by_identity: Sets `self` to consider only identity in comparing
382
- # keys.
383
- # * #default=: Sets the default to a given value.
384
- # * #default_proc=: Sets the default proc to a given proc.
385
- # * #rehash: Rebuilds the hash table by recomputing the hash index for each
386
- # key.
387
- #
388
- # #### Methods for Querying
389
- #
390
- # * #any?: Returns whether any element satisfies a given criterion.
391
- # * #compare_by_identity?: Returns whether the hash considers only identity
392
- # when comparing keys.
393
- # * #default: Returns the default value, or the default value for a given key.
394
- # * #default_proc: Returns the default proc.
395
- # * #empty?: Returns whether there are no entries.
396
- # * #eql?: Returns whether a given object is equal to `self`.
397
- # * #hash: Returns the integer hash code.
398
- # * #has_value? (aliased as #value?): Returns whether a given object is a
399
- # value in `self`.
400
- # * #include? (aliased as #has_key?, #member?, #key?): Returns whether a given
401
- # object is a key in `self`.
402
- # * #size (aliased as #length): Returns the count of entries.
403
- #
404
- # #### Methods for Comparing
405
- #
406
- # * #<: Returns whether `self` is a proper subset of a given object.
407
- # * #<=: Returns whether `self` is a subset of a given object.
408
- # * #==: Returns whether a given object is equal to `self`.
409
- # * #>: Returns whether `self` is a proper superset of a given object
410
- # * #>=: Returns whether `self` is a superset of a given object.
411
- #
412
- # #### Methods for Fetching
413
- #
414
- # * #[]: Returns the value associated with a given key.
415
- # * #assoc: Returns a 2-element array containing a given key and its value.
416
- # * #dig: Returns the object in nested objects that is specified by a given
417
- # key and additional arguments.
418
- # * #fetch: Returns the value for a given key.
419
- # * #fetch_values: Returns array containing the values associated with given
420
- # keys.
421
- # * #key: Returns the key for the first-found entry with a given value.
422
- # * #keys: Returns an array containing all keys in `self`.
423
- # * #rassoc: Returns a 2-element array consisting of the key and value of the
424
- # first-found entry having a given value.
425
- # * #values: Returns an array containing all values in `self`/
426
- # * #values_at: Returns an array containing values for given keys.
427
- #
428
- # #### Methods for Assigning
429
- #
430
- # * #[]= (aliased as #store): Associates a given key with a given value.
431
- # * #merge: Returns the hash formed by merging each given hash into a copy of
432
- # `self`.
433
- # * #update (aliased as #merge!): Merges each given hash into `self`.
434
- # * #replace (aliased as #initialize_copy): Replaces the entire contents of
435
- # `self` with the contents of a given hash.
436
- #
437
- # #### Methods for Deleting
438
- #
439
- # These methods remove entries from `self`:
440
- #
441
- # * #clear: Removes all entries from `self`.
442
- # * #compact!: Removes all `nil`-valued entries from `self`.
443
- # * #delete: Removes the entry for a given key.
444
- # * #delete_if: Removes entries selected by a given block.
445
- # * #select! (aliased as #filter!): Keep only those entries selected by a
446
- # given block.
447
- # * #keep_if: Keep only those entries selected by a given block.
448
- # * #reject!: Removes entries selected by a given block.
449
- # * #shift: Removes and returns the first entry.
450
- #
451
- # These methods return a copy of `self` with some entries removed:
452
- #
453
- # * #compact: Returns a copy of `self` with all `nil`-valued entries removed.
454
- # * #except: Returns a copy of `self` with entries removed for specified keys.
455
- # * #select (aliased as #filter): Returns a copy of `self` with only those
456
- # entries selected by a given block.
457
- # * #reject: Returns a copy of `self` with entries removed as specified by a
458
- # given block.
459
- # * #slice: Returns a hash containing the entries for given keys.
460
- #
461
- # #### Methods for Iterating
462
- # * #each_pair (aliased as #each): Calls a given block with each key-value
463
- # pair.
464
- # * #each_key: Calls a given block with each key.
465
- # * #each_value: Calls a given block with each value.
466
- #
467
- # #### Methods for Converting
468
- #
469
- # * #inspect (aliased as #to_s): Returns a new String containing the hash
470
- # entries.
471
- # * #to_a: Returns a new array of 2-element arrays; each nested array contains
472
- # a key-value pair from `self`.
473
- # * #to_h: Returns `self` if a `Hash`; if a subclass of `Hash`, returns a
474
- # `Hash` containing the entries from `self`.
475
- # * #to_hash: Returns `self`.
476
- # * #to_proc: Returns a proc that maps a given key to its value.
477
- #
478
- # #### Methods for Transforming Keys and Values
479
- #
480
- # * #transform_keys: Returns a copy of `self` with modified keys.
481
- # * #transform_keys!: Modifies keys in `self`
482
- # * #transform_values: Returns a copy of `self` with modified values.
483
- # * #transform_values!: Modifies values in `self`.
484
- #
485
- # #### Other Methods
486
- # * #flatten: Returns an array that is a 1-dimensional flattening of `self`.
487
- # * #invert: Returns a hash with the each key-value pair inverted.
488
- #
489
- class Hash[unchecked out K, unchecked out V] < Object
490
- include Enumerable[[ K, V ]]
491
-
492
- interface _Key
493
- def hash: () -> Integer
494
-
495
- def eql?: (untyped rhs) -> boolish
496
- end
497
-
498
- # <!--
499
- # rdoc-file=hash.c
500
- # - Hash[] -> new_empty_hash
501
- # - Hash[hash] -> new_hash
502
- # - Hash[ [*2_element_arrays] ] -> new_hash
503
- # - Hash[*objects] -> new_hash
504
- # -->
505
- # Returns a new `Hash` object populated with the given objects, if any. See
506
- # Hash::new.
507
- #
508
- # With no argument, returns a new empty `Hash`.
509
- #
510
- # When the single given argument is a `Hash`, returns a new `Hash` populated
511
- # with the entries from the given `Hash`, excluding the default value or proc.
512
- #
513
- # h = {foo: 0, bar: 1, baz: 2}
514
- # Hash[h] # => {:foo=>0, :bar=>1, :baz=>2}
515
- #
516
- # When the single given argument is an Array of 2-element Arrays, returns a new
517
- # `Hash` object wherein each 2-element array forms a key-value entry:
518
- #
519
- # Hash[ [ [:foo, 0], [:bar, 1] ] ] # => {:foo=>0, :bar=>1}
520
- #
521
- # When the argument count is an even number; returns a new `Hash` object wherein
522
- # each successive pair of arguments has become a key-value entry:
523
- #
524
- # Hash[:foo, 0, :bar, 1] # => {:foo=>0, :bar=>1}
525
- #
526
- # Raises an exception if the argument list does not conform to any of the above.
527
- #
528
- def self.[]: [U, V] (_ToHash[U, V]) -> ::Hash[U, V]
529
- | [U, V] (Array[[ U, V ]]) -> ::Hash[U, V]
530
- | (*untyped) -> ::Hash[untyped, untyped]
531
-
532
- # <!--
533
- # rdoc-file=hash.c
534
- # - Hash.try_convert(obj) -> obj, new_hash, or nil
535
- # -->
536
- # If `obj` is a `Hash` object, returns `obj`.
537
- #
538
- # Otherwise if `obj` responds to `:to_hash`, calls `obj.to_hash` and returns the
539
- # result.
540
- #
541
- # Returns `nil` if `obj` does not respond to `:to_hash`
542
- #
543
- # Raises an exception unless `obj.to_hash` returns a `Hash` object.
544
- #
545
- def self.try_convert: [U, V] (_ToHash[U, V]) -> ::Hash[U, V]
546
- | (untyped) -> (::Hash[untyped, untyped] | nil)
547
-
548
- # <!--
549
- # rdoc-file=hash.c
550
- # - hash < other_hash -> true or false
551
- # -->
552
- # Returns `true` if `hash` is a proper subset of `other_hash`, `false`
553
- # otherwise:
554
- # h1 = {foo: 0, bar: 1}
555
- # h2 = {foo: 0, bar: 1, baz: 2}
556
- # h1 < h2 # => true
557
- # h2 < h1 # => false
558
- # h1 < h1 # => false
559
- #
560
- def <: [A, B] (::Hash[A, B]) -> bool
561
-
562
- # <!--
563
- # rdoc-file=hash.c
564
- # - hash <= other_hash -> true or false
565
- # -->
566
- # Returns `true` if `hash` is a subset of `other_hash`, `false` otherwise:
567
- # h1 = {foo: 0, bar: 1}
568
- # h2 = {foo: 0, bar: 1, baz: 2}
569
- # h1 <= h2 # => true
570
- # h2 <= h1 # => false
571
- # h1 <= h1 # => true
572
- #
573
- def <=: [A, B] (::Hash[A, B]) -> bool
574
-
575
- # <!--
576
- # rdoc-file=hash.c
577
- # - hash == object -> true or false
578
- # -->
579
- # Returns `true` if all of the following are true:
580
- # * `object` is a `Hash` object.
581
- # * `hash` and `object` have the same keys (regardless of order).
582
- # * For each key `key`, `hash[key] == object[key]`.
583
- #
584
- # Otherwise, returns `false`.
585
- #
586
- # Equal:
587
- # h1 = {foo: 0, bar: 1, baz: 2}
588
- # h2 = {foo: 0, bar: 1, baz: 2}
589
- # h1 == h2 # => true
590
- # h3 = {baz: 2, bar: 1, foo: 0}
591
- # h1 == h3 # => true
592
- #
593
- def ==: (untyped other) -> bool
594
-
595
- # <!--
596
- # rdoc-file=hash.c
597
- # - hash > other_hash -> true or false
598
- # -->
599
- # Returns `true` if `hash` is a proper superset of `other_hash`, `false`
600
- # otherwise:
601
- # h1 = {foo: 0, bar: 1, baz: 2}
602
- # h2 = {foo: 0, bar: 1}
603
- # h1 > h2 # => true
604
- # h2 > h1 # => false
605
- # h1 > h1 # => false
606
- #
607
- def >: [A, B] (::Hash[A, B]) -> bool
608
-
609
- # <!--
610
- # rdoc-file=hash.c
611
- # - hash >= other_hash -> true or false
612
- # -->
613
- # Returns `true` if `hash` is a superset of `other_hash`, `false` otherwise:
614
- # h1 = {foo: 0, bar: 1, baz: 2}
615
- # h2 = {foo: 0, bar: 1}
616
- # h1 >= h2 # => true
617
- # h2 >= h1 # => false
618
- # h1 >= h1 # => true
619
- #
620
- def >=: [A, B] (::Hash[A, B]) -> bool
621
-
622
- # <!--
623
- # rdoc-file=hash.c
624
- # - hash[key] -> value
625
- # -->
626
- # Returns the value associated with the given `key`, if found:
627
- # h = {foo: 0, bar: 1, baz: 2}
628
- # h[:foo] # => 0
629
- #
630
- # If `key` is not found, returns a default value (see [Default
631
- # Values](rdoc-ref:Hash@Default+Values)):
632
- # h = {foo: 0, bar: 1, baz: 2}
633
- # h[:nosuch] # => nil
634
- #
635
- def []: %a{implicitly-returns-nil} (K arg0) -> V
636
-
637
- # <!--
638
- # rdoc-file=hash.c
639
- # - hash[key] = value -> value
640
- # - hash.store(key, value)
641
- # -->
642
- # Associates the given `value` with the given `key`; returns `value`.
643
- #
644
- # If the given `key` exists, replaces its value with the given `value`; the
645
- # ordering is not affected (see [Entry Order](rdoc-ref:Hash@Entry+Order)):
646
- # h = {foo: 0, bar: 1}
647
- # h[:foo] = 2 # => 2
648
- # h.store(:bar, 3) # => 3
649
- # h # => {:foo=>2, :bar=>3}
650
- #
651
- # If `key` does not exist, adds the `key` and `value`; the new entry is last in
652
- # the order (see [Entry Order](rdoc-ref:Hash@Entry+Order)):
653
- # h = {foo: 0, bar: 1}
654
- # h[:baz] = 2 # => 2
655
- # h.store(:bat, 3) # => 3
656
- # h # => {:foo=>0, :bar=>1, :baz=>2, :bat=>3}
657
- #
658
- def []=: (K arg0, V arg1) -> V
659
-
660
- # <!--
661
- # rdoc-file=hash.c
662
- # - hash.any? -> true or false
663
- # - hash.any?(object) -> true or false
664
- # - hash.any? {|key, value| ... } -> true or false
665
- # -->
666
- # Returns `true` if any element satisfies a given criterion; `false` otherwise.
667
- #
668
- # If `self` has no element, returns `false` and argument or block are not used.
669
- #
670
- # With no argument and no block, returns `true` if `self` is non-empty; `false`
671
- # if empty.
672
- #
673
- # With argument `object` and no block, returns `true` if for any key `key`
674
- # `h.assoc(key) == object`:
675
- # h = {foo: 0, bar: 1, baz: 2}
676
- # h.any?([:bar, 1]) # => true
677
- # h.any?([:bar, 0]) # => false
678
- # h.any?([:baz, 1]) # => false
679
- #
680
- # With no argument and a block, calls the block with each key-value pair;
681
- # returns `true` if the block returns any truthy value, `false` otherwise:
682
- # h = {foo: 0, bar: 1, baz: 2}
683
- # h.any? {|key, value| value < 3 } # => true
684
- # h.any? {|key, value| value > 3 } # => false
685
- #
686
- # Related: Enumerable#any?
687
- #
688
- def any?: () -> bool
689
- | (untyped pattern) -> bool
690
- | () { (K, V) -> boolish } -> bool
691
-
692
- # <!--
693
- # rdoc-file=hash.c
694
- # - hash.assoc(key) -> new_array or nil
695
- # -->
696
- # If the given `key` is found, returns a 2-element Array containing that key and
697
- # its value:
698
- # h = {foo: 0, bar: 1, baz: 2}
699
- # h.assoc(:bar) # => [:bar, 1]
700
- #
701
- # Returns `nil` if key `key` is not found.
702
- #
703
- def assoc: (K arg0) -> [ K, V ]?
704
-
705
- # <!--
706
- # rdoc-file=hash.c
707
- # - hash.clear -> self
708
- # -->
709
- # Removes all hash entries; returns `self`.
710
- #
711
- def clear: () -> self
712
-
713
- # <!--
714
- # rdoc-file=hash.c
715
- # - hash.compact -> new_hash
716
- # -->
717
- # Returns a copy of `self` with all `nil`-valued entries removed:
718
- # h = {foo: 0, bar: nil, baz: 2, bat: nil}
719
- # h1 = h.compact
720
- # h1 # => {:foo=>0, :baz=>2}
721
- #
722
- def compact: () -> ::Hash[K, V]
723
-
724
- # <!--
725
- # rdoc-file=hash.c
726
- # - hash.compact! -> self or nil
727
- # -->
728
- # Returns `self` with all its `nil`-valued entries removed (in place):
729
- # h = {foo: 0, bar: nil, baz: 2, bat: nil}
730
- # h.compact! # => {:foo=>0, :baz=>2}
731
- #
732
- # Returns `nil` if no entries were removed.
733
- #
734
- def compact!: () -> self?
735
-
736
- # <!--
737
- # rdoc-file=hash.c
738
- # - hash.compare_by_identity -> self
739
- # -->
740
- # Sets `self` to consider only identity in comparing keys; two keys are
741
- # considered the same only if they are the same object; returns `self`.
742
- #
743
- # By default, these two object are considered to be the same key, so `s1` will
744
- # overwrite `s0`:
745
- # s0 = 'x'
746
- # s1 = 'x'
747
- # h = {}
748
- # h.compare_by_identity? # => false
749
- # h[s0] = 0
750
- # h[s1] = 1
751
- # h # => {"x"=>1}
752
- #
753
- # After calling #compare_by_identity, the keys are considered to be different,
754
- # and therefore do not overwrite each other:
755
- # h = {}
756
- # h.compare_by_identity # => {}
757
- # h.compare_by_identity? # => true
758
- # h[s0] = 0
759
- # h[s1] = 1
760
- # h # => {"x"=>0, "x"=>1}
761
- #
762
- def compare_by_identity: () -> self
763
-
764
- # <!--
765
- # rdoc-file=hash.c
766
- # - hash.compare_by_identity? -> true or false
767
- # -->
768
- # Returns `true` if #compare_by_identity has been called, `false` otherwise.
769
- #
770
- def compare_by_identity?: () -> bool
771
-
772
- # <!--
773
- # rdoc-file=hash.c
774
- # - deconstruct_keys(p1)
775
- # -->
776
- #
777
- def deconstruct_keys: (Array[K] | nil) -> self
778
-
779
- # <!--
780
- # rdoc-file=hash.c
781
- # - hash.default -> object
782
- # - hash.default(key) -> object
783
- # -->
784
- # Returns the default value for the given `key`. The returned value will be
785
- # determined either by the default proc or by the default value. See [Default
786
- # Values](rdoc-ref:Hash@Default+Values).
787
- #
788
- # With no argument, returns the current default value:
789
- # h = {}
790
- # h.default # => nil
791
- #
792
- # If `key` is given, returns the default value for `key`, regardless of whether
793
- # that key exists:
794
- # h = Hash.new { |hash, key| hash[key] = "No key #{key}"}
795
- # h[:foo] = "Hello"
796
- # h.default(:foo) # => "No key foo"
797
- #
798
- def default: (?K arg0) -> V?
799
-
800
- # <!--
801
- # rdoc-file=hash.c
802
- # - hash.default = value -> object
803
- # -->
804
- # Sets the default value to `value`; returns `value`:
805
- # h = {}
806
- # h.default # => nil
807
- # h.default = false # => false
808
- # h.default # => false
809
- #
810
- # See [Default Values](rdoc-ref:Hash@Default+Values).
811
- #
812
- def default=: (V arg0) -> V
813
-
814
- # <!--
815
- # rdoc-file=hash.c
816
- # - hash.default_proc -> proc or nil
817
- # -->
818
- # Returns the default proc for `self` (see [Default
819
- # Values](rdoc-ref:Hash@Default+Values)):
820
- # h = {}
821
- # h.default_proc # => nil
822
- # h.default_proc = proc {|hash, key| "Default value for #{key}" }
823
- # h.default_proc.class # => Proc
824
- #
825
- def default_proc: () -> (Proc | nil)
826
-
827
- # <!--
828
- # rdoc-file=hash.c
829
- # - hash.default_proc = proc -> proc
830
- # -->
831
- # Sets the default proc for `self` to `proc` (see [Default
832
- # Values](rdoc-ref:Hash@Default+Values)):
833
- # h = {}
834
- # h.default_proc # => nil
835
- # h.default_proc = proc { |hash, key| "Default value for #{key}" }
836
- # h.default_proc.class # => Proc
837
- # h.default_proc = nil
838
- # h.default_proc # => nil
839
- #
840
- def default_proc=: (Proc | _ToProc | nil) -> (Proc | _ToProc | nil)
841
-
842
- # <!--
843
- # rdoc-file=hash.c
844
- # - hash.delete(key) -> value or nil
845
- # - hash.delete(key) {|key| ... } -> object
846
- # -->
847
- # Deletes the entry for the given `key` and returns its associated value.
848
- #
849
- # If no block is given and `key` is found, deletes the entry and returns the
850
- # associated value:
851
- # h = {foo: 0, bar: 1, baz: 2}
852
- # h.delete(:bar) # => 1
853
- # h # => {:foo=>0, :baz=>2}
854
- #
855
- # If no block given and `key` is not found, returns `nil`.
856
- #
857
- # If a block is given and `key` is found, ignores the block, deletes the entry,
858
- # and returns the associated value:
859
- # h = {foo: 0, bar: 1, baz: 2}
860
- # h.delete(:baz) { |key| raise 'Will never happen'} # => 2
861
- # h # => {:foo=>0, :bar=>1}
862
- #
863
- # If a block is given and `key` is not found, calls the block and returns the
864
- # block's return value:
865
- # h = {foo: 0, bar: 1, baz: 2}
866
- # h.delete(:nosuch) { |key| "Key #{key} not found" } # => "Key nosuch not found"
867
- # h # => {:foo=>0, :bar=>1, :baz=>2}
868
- #
869
- def delete: (K arg0) -> V?
870
- | [U] (K arg0) { (K arg0) -> U } -> (U | V)
871
-
872
- # <!--
873
- # rdoc-file=hash.c
874
- # - hash.delete_if {|key, value| ... } -> self
875
- # - hash.delete_if -> new_enumerator
876
- # -->
877
- # If a block given, calls the block with each key-value pair; deletes each entry
878
- # for which the block returns a truthy value; returns `self`:
879
- # h = {foo: 0, bar: 1, baz: 2}
880
- # h.delete_if {|key, value| value > 0 } # => {:foo=>0}
881
- #
882
- # If no block given, returns a new Enumerator:
883
- # h = {foo: 0, bar: 1, baz: 2}
884
- # e = h.delete_if # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:delete_if>
885
- # e.each { |key, value| value > 0 } # => {:foo=>0}
886
- #
887
- def delete_if: () { (K, V) -> boolish } -> self
888
- | () -> ::Enumerator[[ K, V ], self]
889
-
890
- # <!--
891
- # rdoc-file=hash.c
892
- # - hash.dig(key, *identifiers) -> object
893
- # -->
894
- # Finds and returns the object in nested objects that is specified by `key` and
895
- # `identifiers`. The nested objects may be instances of various classes. See
896
- # [Dig Methods](rdoc-ref:dig_methods.rdoc).
897
- #
898
- # Nested Hashes:
899
- # h = {foo: {bar: {baz: 2}}}
900
- # h.dig(:foo) # => {:bar=>{:baz=>2}}
901
- # h.dig(:foo, :bar) # => {:baz=>2}
902
- # h.dig(:foo, :bar, :baz) # => 2
903
- # h.dig(:foo, :bar, :BAZ) # => nil
904
- #
905
- # Nested Hashes and Arrays:
906
- # h = {foo: {bar: [:a, :b, :c]}}
907
- # h.dig(:foo, :bar, 2) # => :c
908
- #
909
- # This method will use the [default values](rdoc-ref:Hash@Default+Values) for
910
- # keys that are not present:
911
- # h = {foo: {bar: [:a, :b, :c]}}
912
- # h.dig(:hello) # => nil
913
- # h.default_proc = -> (hash, _key) { hash }
914
- # h.dig(:hello, :world) # => h
915
- # h.dig(:hello, :world, :foo, :bar, 2) # => :c
916
- #
917
- def dig: (K, *untyped) -> untyped
918
-
919
- # <!-- rdoc-file=hash.c -->
920
- # Calls the given block with each key-value pair; returns `self`:
921
- # h = {foo: 0, bar: 1, baz: 2}
922
- # h.each_pair {|key, value| puts "#{key}: #{value}"} # => {:foo=>0, :bar=>1, :baz=>2}
923
- #
924
- # Output:
925
- # foo: 0
926
- # bar: 1
927
- # baz: 2
928
- #
929
- # Returns a new Enumerator if no block given:
930
- # h = {foo: 0, bar: 1, baz: 2}
931
- # e = h.each_pair # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:each_pair>
932
- # h1 = e.each {|key, value| puts "#{key}: #{value}"}
933
- # h1 # => {:foo=>0, :bar=>1, :baz=>2}
934
- #
935
- # Output:
936
- # foo: 0
937
- # bar: 1
938
- # baz: 2
939
- #
940
- def each: () { ([ K, V ] arg0) -> untyped } -> self
941
- | () -> ::Enumerator[[ K, V ], self]
942
-
943
- # <!--
944
- # rdoc-file=hash.c
945
- # - hash.each_key {|key| ... } -> self
946
- # - hash.each_key -> new_enumerator
947
- # -->
948
- # Calls the given block with each key; returns `self`:
949
- # h = {foo: 0, bar: 1, baz: 2}
950
- # h.each_key {|key| puts key } # => {:foo=>0, :bar=>1, :baz=>2}
951
- #
952
- # Output:
953
- # foo
954
- # bar
955
- # baz
956
- #
957
- # Returns a new Enumerator if no block given:
958
- # h = {foo: 0, bar: 1, baz: 2}
959
- # e = h.each_key # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:each_key>
960
- # h1 = e.each {|key| puts key }
961
- # h1 # => {:foo=>0, :bar=>1, :baz=>2}
962
- #
963
- # Output:
964
- # foo
965
- # bar
966
- # baz
967
- #
968
- def each_key: () { (K arg0) -> untyped } -> ::Hash[K, V]
969
- | () -> ::Enumerator[K, self]
970
-
971
- # <!--
972
- # rdoc-file=hash.c
973
- # - hash.each {|key, value| ... } -> self
974
- # - hash.each_pair {|key, value| ... } -> self
975
- # - hash.each -> new_enumerator
976
- # - hash.each_pair -> new_enumerator
977
- # -->
978
- # Calls the given block with each key-value pair; returns `self`:
979
- # h = {foo: 0, bar: 1, baz: 2}
980
- # h.each_pair {|key, value| puts "#{key}: #{value}"} # => {:foo=>0, :bar=>1, :baz=>2}
981
- #
982
- # Output:
983
- # foo: 0
984
- # bar: 1
985
- # baz: 2
986
- #
987
- # Returns a new Enumerator if no block given:
988
- # h = {foo: 0, bar: 1, baz: 2}
989
- # e = h.each_pair # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:each_pair>
990
- # h1 = e.each {|key, value| puts "#{key}: #{value}"}
991
- # h1 # => {:foo=>0, :bar=>1, :baz=>2}
992
- #
993
- # Output:
994
- # foo: 0
995
- # bar: 1
996
- # baz: 2
997
- #
998
- alias each_pair each
999
-
1000
- # <!--
1001
- # rdoc-file=hash.c
1002
- # - hash.each_value {|value| ... } -> self
1003
- # - hash.each_value -> new_enumerator
1004
- # -->
1005
- # Calls the given block with each value; returns `self`:
1006
- # h = {foo: 0, bar: 1, baz: 2}
1007
- # h.each_value {|value| puts value } # => {:foo=>0, :bar=>1, :baz=>2}
1008
- #
1009
- # Output:
1010
- # 0
1011
- # 1
1012
- # 2
1013
- #
1014
- # Returns a new Enumerator if no block given:
1015
- # h = {foo: 0, bar: 1, baz: 2}
1016
- # e = h.each_value # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:each_value>
1017
- # h1 = e.each {|value| puts value }
1018
- # h1 # => {:foo=>0, :bar=>1, :baz=>2}
1019
- #
1020
- # Output:
1021
- # 0
1022
- # 1
1023
- # 2
1024
- #
1025
- def each_value: () { (V arg0) -> untyped } -> self
1026
- | () -> ::Enumerator[V, self]
1027
-
1028
- # <!--
1029
- # rdoc-file=hash.c
1030
- # - hash.empty? -> true or false
1031
- # -->
1032
- # Returns `true` if there are no hash entries, `false` otherwise:
1033
- # {}.empty? # => true
1034
- # {foo: 0, bar: 1, baz: 2}.empty? # => false
1035
- #
1036
- def empty?: () -> bool
1037
-
1038
- # <!--
1039
- # rdoc-file=hash.c
1040
- # - hash.eql?(object) -> true or false
1041
- # -->
1042
- # Returns `true` if all of the following are true:
1043
- # * `object` is a `Hash` object.
1044
- # * `hash` and `object` have the same keys (regardless of order).
1045
- # * For each key `key`, `h[key].eql?(object[key])`.
1046
- #
1047
- # Otherwise, returns `false`.
1048
- #
1049
- # h1 = {foo: 0, bar: 1, baz: 2}
1050
- # h2 = {foo: 0, bar: 1, baz: 2}
1051
- # h1.eql? h2 # => true
1052
- # h3 = {baz: 2, bar: 1, foo: 0}
1053
- # h1.eql? h3 # => true
1054
- #
1055
- def eql?: (untyped) -> bool
1056
-
1057
- # <!--
1058
- # rdoc-file=hash.c
1059
- # - hsh.except(*keys) -> a_hash
1060
- # -->
1061
- # Returns a new `Hash` excluding entries for the given `keys`:
1062
- # h = { a: 100, b: 200, c: 300 }
1063
- # h.except(:a) #=> {:b=>200, :c=>300}
1064
- #
1065
- # Any given `keys` that are not found are ignored.
1066
- #
1067
- def except: (*K) -> ::Hash[K, V]
1068
-
1069
- # <!--
1070
- # rdoc-file=hash.c
1071
- # - hash.fetch(key) -> object
1072
- # - hash.fetch(key, default_value) -> object
1073
- # - hash.fetch(key) {|key| ... } -> object
1074
- # -->
1075
- # Returns the value for the given `key`, if found.
1076
- # h = {foo: 0, bar: 1, baz: 2}
1077
- # h.fetch(:bar) # => 1
1078
- #
1079
- # If `key` is not found and no block was given, returns `default_value`:
1080
- # {}.fetch(:nosuch, :default) # => :default
1081
- #
1082
- # If `key` is not found and a block was given, yields `key` to the block and
1083
- # returns the block's return value:
1084
- # {}.fetch(:nosuch) {|key| "No key #{key}"} # => "No key nosuch"
1085
- #
1086
- # Raises KeyError if neither `default_value` nor a block was given.
1087
- #
1088
- # Note that this method does not use the values of either #default or
1089
- # #default_proc.
1090
- #
1091
- def fetch: (K arg0) -> V
1092
- | [X] (K arg0, X arg1) -> (V | X)
1093
- | [X] (K arg0) { (K arg0) -> X } -> (V | X)
1094
-
1095
- # <!--
1096
- # rdoc-file=hash.c
1097
- # - hash.fetch_values(*keys) -> new_array
1098
- # - hash.fetch_values(*keys) {|key| ... } -> new_array
1099
- # -->
1100
- # Returns a new Array containing the values associated with the given keys
1101
- # *keys:
1102
- # h = {foo: 0, bar: 1, baz: 2}
1103
- # h.fetch_values(:baz, :foo) # => [2, 0]
1104
- #
1105
- # Returns a new empty Array if no arguments given.
1106
- #
1107
- # When a block is given, calls the block with each missing key, treating the
1108
- # block's return value as the value for that key:
1109
- # h = {foo: 0, bar: 1, baz: 2}
1110
- # values = h.fetch_values(:bar, :foo, :bad, :bam) {|key| key.to_s}
1111
- # values # => [1, 0, "bad", "bam"]
1112
- #
1113
- # When no block is given, raises an exception if any given key is not found.
1114
- #
1115
- def fetch_values: (*K) -> ::Array[V]
1116
- | [X] (*K) { (K) -> X } -> ::Array[V | X]
1117
-
1118
- # <!-- rdoc-file=hash.c -->
1119
- # Returns a new `Hash` object whose entries are those for which the block
1120
- # returns a truthy value:
1121
- # h = {foo: 0, bar: 1, baz: 2}
1122
- # h.select {|key, value| value < 2 } # => {:foo=>0, :bar=>1}
1123
- #
1124
- # Returns a new Enumerator if no block given:
1125
- # h = {foo: 0, bar: 1, baz: 2}
1126
- # e = h.select # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:select>
1127
- # e.each {|key, value| value < 2 } # => {:foo=>0, :bar=>1}
1128
- #
1129
- def filter: () { (K, V) -> boolish } -> ::Hash[K, V]
1130
- | () -> ::Enumerator[[ K, V ], ::Hash[K, V]]
1131
-
1132
- # <!-- rdoc-file=hash.c -->
1133
- # Returns `self`, whose entries are those for which the block returns a truthy
1134
- # value:
1135
- # h = {foo: 0, bar: 1, baz: 2}
1136
- # h.select! {|key, value| value < 2 } => {:foo=>0, :bar=>1}
1137
- #
1138
- # Returns `nil` if no entries were removed.
1139
- #
1140
- # Returns a new Enumerator if no block given:
1141
- # h = {foo: 0, bar: 1, baz: 2}
1142
- # e = h.select! # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:select!>
1143
- # e.each { |key, value| value < 2 } # => {:foo=>0, :bar=>1}
1144
- #
1145
- def filter!: () { (K, V) -> boolish } -> self?
1146
- | () -> ::Enumerator[[ K, V ], self?]
1147
-
1148
- # <!--
1149
- # rdoc-file=hash.c
1150
- # - hash.flatten -> new_array
1151
- # - hash.flatten(level) -> new_array
1152
- # -->
1153
- # Returns a new Array object that is a 1-dimensional flattening of `self`.
1154
- #
1155
- # ---
1156
- #
1157
- # By default, nested Arrays are not flattened:
1158
- # h = {foo: 0, bar: [:bat, 3], baz: 2}
1159
- # h.flatten # => [:foo, 0, :bar, [:bat, 3], :baz, 2]
1160
- #
1161
- # Takes the depth of recursive flattening from Integer argument `level`:
1162
- # h = {foo: 0, bar: [:bat, [:baz, [:bat, ]]]}
1163
- # h.flatten(1) # => [:foo, 0, :bar, [:bat, [:baz, [:bat]]]]
1164
- # h.flatten(2) # => [:foo, 0, :bar, :bat, [:baz, [:bat]]]
1165
- # h.flatten(3) # => [:foo, 0, :bar, :bat, :baz, [:bat]]
1166
- # h.flatten(4) # => [:foo, 0, :bar, :bat, :baz, :bat]
1167
- #
1168
- # When `level` is negative, flattens all nested Arrays:
1169
- # h = {foo: 0, bar: [:bat, [:baz, [:bat, ]]]}
1170
- # h.flatten(-1) # => [:foo, 0, :bar, :bat, :baz, :bat]
1171
- # h.flatten(-2) # => [:foo, 0, :bar, :bat, :baz, :bat]
1172
- #
1173
- # When `level` is zero, returns the equivalent of #to_a :
1174
- # h = {foo: 0, bar: [:bat, 3], baz: 2}
1175
- # h.flatten(0) # => [[:foo, 0], [:bar, [:bat, 3]], [:baz, 2]]
1176
- # h.flatten(0) == h.to_a # => true
1177
- #
1178
- def flatten: () -> ::Array[K | V]
1179
- | (1 level) -> ::Array[K | V]
1180
- | (Integer level) -> Array[untyped]
1181
-
1182
- # <!-- rdoc-file=hash.c -->
1183
- # Returns `true` if `key` is a key in `self`, otherwise `false`.
1184
- #
1185
- def has_key?: (K arg0) -> bool
1186
-
1187
- # <!--
1188
- # rdoc-file=hash.c
1189
- # - hash.has_value?(value) -> true or false
1190
- # - hash.value?(value) -> true or false
1191
- # -->
1192
- # Returns `true` if `value` is a value in `self`, otherwise `false`.
1193
- #
1194
- def has_value?: (V arg0) -> bool
1195
-
1196
- # <!--
1197
- # rdoc-file=hash.c
1198
- # - hash.hash -> an_integer
1199
- # -->
1200
- # Returns the Integer hash-code for the hash.
1201
- #
1202
- # Two `Hash` objects have the same hash-code if their content is the same
1203
- # (regardless of order):
1204
- # h1 = {foo: 0, bar: 1, baz: 2}
1205
- # h2 = {baz: 2, bar: 1, foo: 0}
1206
- # h2.hash == h1.hash # => true
1207
- # h2.eql? h1 # => true
1208
- #
1209
- def hash: () -> Integer
1210
-
1211
- # <!--
1212
- # rdoc-file=hash.c
1213
- # - hash.include?(key) -> true or false
1214
- # - hash.has_key?(key) -> true or false
1215
- # - hash.key?(key) -> true or false
1216
- # - hash.member?(key) -> true or false
1217
- # -->
1218
- # Returns `true` if `key` is a key in `self`, otherwise `false`.
1219
- #
1220
- alias include? has_key?
1221
-
1222
- # <!--
1223
- # rdoc-file=hash.c
1224
- # - hash.inspect -> new_string
1225
- # -->
1226
- # Returns a new String containing the hash entries:
1227
- #
1228
- # h = {foo: 0, bar: 1, baz: 2}
1229
- # h.inspect # => "{foo: 0, bar: 1, baz: 2}"
1230
- #
1231
- def inspect: () -> String
1232
-
1233
- # <!--
1234
- # rdoc-file=hash.c
1235
- # - hash.invert -> new_hash
1236
- # -->
1237
- # Returns a new `Hash` object with the each key-value pair inverted:
1238
- # h = {foo: 0, bar: 1, baz: 2}
1239
- # h1 = h.invert
1240
- # h1 # => {0=>:foo, 1=>:bar, 2=>:baz}
1241
- #
1242
- # Overwrites any repeated new keys: (see [Entry
1243
- # Order](rdoc-ref:Hash@Entry+Order)):
1244
- # h = {foo: 0, bar: 0, baz: 0}
1245
- # h.invert # => {0=>:baz}
1246
- #
1247
- def invert: () -> ::Hash[V, K]
1248
-
1249
- # <!--
1250
- # rdoc-file=hash.c
1251
- # - hash.keep_if {|key, value| ... } -> self
1252
- # - hash.keep_if -> new_enumerator
1253
- # -->
1254
- # Calls the block for each key-value pair; retains the entry if the block
1255
- # returns a truthy value; otherwise deletes the entry; returns `self`.
1256
- # h = {foo: 0, bar: 1, baz: 2}
1257
- # h.keep_if { |key, value| key.start_with?('b') } # => {:bar=>1, :baz=>2}
1258
- #
1259
- # Returns a new Enumerator if no block given:
1260
- # h = {foo: 0, bar: 1, baz: 2}
1261
- # e = h.keep_if # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:keep_if>
1262
- # e.each { |key, value| key.start_with?('b') } # => {:bar=>1, :baz=>2}
1263
- #
1264
- def keep_if: () { (K, V) -> boolish } -> self
1265
- | () -> ::Enumerator[[ K, V ], self]
1266
-
1267
- # <!--
1268
- # rdoc-file=hash.c
1269
- # - hash.key(value) -> key or nil
1270
- # -->
1271
- # Returns the key for the first-found entry with the given `value` (see [Entry
1272
- # Order](rdoc-ref:Hash@Entry+Order)):
1273
- # h = {foo: 0, bar: 2, baz: 2}
1274
- # h.key(0) # => :foo
1275
- # h.key(2) # => :bar
1276
- #
1277
- # Returns `nil` if no such value is found.
1278
- #
1279
- def key: (V) -> K?
1280
-
1281
- # <!-- rdoc-file=hash.c -->
1282
- # Returns `true` if `key` is a key in `self`, otherwise `false`.
1283
- #
1284
- alias key? has_key?
1285
-
1286
- # <!--
1287
- # rdoc-file=hash.c
1288
- # - hash.keys -> new_array
1289
- # -->
1290
- # Returns a new Array containing all keys in `self`:
1291
- # h = {foo: 0, bar: 1, baz: 2}
1292
- # h.keys # => [:foo, :bar, :baz]
1293
- #
1294
- def keys: () -> ::Array[K]
1295
-
1296
- # <!-- rdoc-file=hash.c -->
1297
- # Returns the count of entries in `self`:
1298
- #
1299
- # {foo: 0, bar: 1, baz: 2}.length # => 3
1300
- #
1301
- def length: () -> Integer
1302
-
1303
- # <!-- rdoc-file=hash.c -->
1304
- # Returns `true` if `key` is a key in `self`, otherwise `false`.
1305
- #
1306
- alias member? has_key?
1307
-
1308
- # <!--
1309
- # rdoc-file=hash.c
1310
- # - hash.merge -> copy_of_self
1311
- # - hash.merge(*other_hashes) -> new_hash
1312
- # - hash.merge(*other_hashes) { |key, old_value, new_value| ... } -> new_hash
1313
- # -->
1314
- # Returns the new `Hash` formed by merging each of `other_hashes` into a copy of
1315
- # `self`.
1316
- #
1317
- # Each argument in `other_hashes` must be a `Hash`.
1318
- #
1319
- # ---
1320
- #
1321
- # With arguments and no block:
1322
- # * Returns the new `Hash` object formed by merging each successive `Hash` in
1323
- # `other_hashes` into `self`.
1324
- # * Each new-key entry is added at the end.
1325
- # * Each duplicate-key entry's value overwrites the previous value.
1326
- #
1327
- # Example:
1328
- # h = {foo: 0, bar: 1, baz: 2}
1329
- # h1 = {bat: 3, bar: 4}
1330
- # h2 = {bam: 5, bat:6}
1331
- # h.merge(h1, h2) # => {:foo=>0, :bar=>4, :baz=>2, :bat=>6, :bam=>5}
1332
- #
1333
- # With arguments and a block:
1334
- # * Returns a new `Hash` object that is the merge of `self` and each given
1335
- # hash.
1336
- # * The given hashes are merged left to right.
1337
- # * Each new-key entry is added at the end.
1338
- # * For each duplicate key:
1339
- # * Calls the block with the key and the old and new values.
1340
- # * The block's return value becomes the new value for the entry.
1341
- #
1342
- # Example:
1343
- # h = {foo: 0, bar: 1, baz: 2}
1344
- # h1 = {bat: 3, bar: 4}
1345
- # h2 = {bam: 5, bat:6}
1346
- # h3 = h.merge(h1, h2) { |key, old_value, new_value| old_value + new_value }
1347
- # h3 # => {:foo=>0, :bar=>5, :baz=>2, :bat=>9, :bam=>5}
1348
- #
1349
- # With no arguments:
1350
- # * Returns a copy of `self`.
1351
- # * The block, if given, is ignored.
1352
- #
1353
- # Example:
1354
- # h = {foo: 0, bar: 1, baz: 2}
1355
- # h.merge # => {:foo=>0, :bar=>1, :baz=>2}
1356
- # h1 = h.merge { |key, old_value, new_value| raise 'Cannot happen' }
1357
- # h1 # => {:foo=>0, :bar=>1, :baz=>2}
1358
- #
1359
- def merge: [A, B] (*::Hash[A, B] other_hashes) -> ::Hash[A | K, B | V]
1360
- | [A, B, C] (*::Hash[A, B] other_hashes) { (K key, V oldval, B newval) -> C } -> ::Hash[A | K, B | V | C]
1361
-
1362
- # <!-- rdoc-file=hash.c -->
1363
- # Merges each of `other_hashes` into `self`; returns `self`.
1364
- #
1365
- # Each argument in `other_hashes` must be a `Hash`.
1366
- #
1367
- # With arguments and no block:
1368
- # * Returns `self`, after the given hashes are merged into it.
1369
- # * The given hashes are merged left to right.
1370
- # * Each new entry is added at the end.
1371
- # * Each duplicate-key entry's value overwrites the previous value.
1372
- #
1373
- # Example:
1374
- # h = {foo: 0, bar: 1, baz: 2}
1375
- # h1 = {bat: 3, bar: 4}
1376
- # h2 = {bam: 5, bat:6}
1377
- # h.merge!(h1, h2) # => {:foo=>0, :bar=>4, :baz=>2, :bat=>6, :bam=>5}
1378
- #
1379
- # With arguments and a block:
1380
- # * Returns `self`, after the given hashes are merged.
1381
- # * The given hashes are merged left to right.
1382
- # * Each new-key entry is added at the end.
1383
- # * For each duplicate key:
1384
- # * Calls the block with the key and the old and new values.
1385
- # * The block's return value becomes the new value for the entry.
1386
- #
1387
- # Example:
1388
- # h = {foo: 0, bar: 1, baz: 2}
1389
- # h1 = {bat: 3, bar: 4}
1390
- # h2 = {bam: 5, bat:6}
1391
- # h3 = h.merge!(h1, h2) { |key, old_value, new_value| old_value + new_value }
1392
- # h3 # => {:foo=>0, :bar=>5, :baz=>2, :bat=>9, :bam=>5}
1393
- #
1394
- # With no arguments:
1395
- # * Returns `self`, unmodified.
1396
- # * The block, if given, is ignored.
1397
- #
1398
- # Example:
1399
- # h = {foo: 0, bar: 1, baz: 2}
1400
- # h.merge # => {:foo=>0, :bar=>1, :baz=>2}
1401
- # h1 = h.merge! { |key, old_value, new_value| raise 'Cannot happen' }
1402
- # h1 # => {:foo=>0, :bar=>1, :baz=>2}
1403
- #
1404
- def merge!: (*::Hash[K, V] other_hashes) -> self
1405
- | (*::Hash[K, V] other_hashes) { (K key, V oldval, V newval) -> V } -> self
1406
-
1407
- # <!--
1408
- # rdoc-file=hash.c
1409
- # - hash.rassoc(value) -> new_array or nil
1410
- # -->
1411
- # Returns a new 2-element Array consisting of the key and value of the
1412
- # first-found entry whose value is `==` to value (see [Entry
1413
- # Order](rdoc-ref:Hash@Entry+Order)):
1414
- # h = {foo: 0, bar: 1, baz: 1}
1415
- # h.rassoc(1) # => [:bar, 1]
1416
- #
1417
- # Returns `nil` if no such value found.
1418
- #
1419
- def rassoc: (V) -> [ K, V ]?
1420
-
1421
- # <!--
1422
- # rdoc-file=hash.c
1423
- # - hash.rehash -> self
1424
- # -->
1425
- # Rebuilds the hash table by recomputing the hash index for each key; returns
1426
- # `self`.
1427
- #
1428
- # The hash table becomes invalid if the hash value of a key has changed after
1429
- # the entry was created. See [Modifying an Active Hash
1430
- # Key](rdoc-ref:Hash@Modifying+an+Active+Hash+Key).
1431
- #
1432
- def rehash: () -> self
1433
-
1434
- # <!--
1435
- # rdoc-file=hash.c
1436
- # - hash.reject {|key, value| ... } -> new_hash
1437
- # - hash.reject -> new_enumerator
1438
- # -->
1439
- # Returns a new `Hash` object whose entries are all those from `self` for which
1440
- # the block returns `false` or `nil`:
1441
- # h = {foo: 0, bar: 1, baz: 2}
1442
- # h1 = h.reject {|key, value| key.start_with?('b') }
1443
- # h1 # => {:foo=>0}
1444
- #
1445
- # Returns a new Enumerator if no block given:
1446
- # h = {foo: 0, bar: 1, baz: 2}
1447
- # e = h.reject # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:reject>
1448
- # h1 = e.each {|key, value| key.start_with?('b') }
1449
- # h1 # => {:foo=>0}
1450
- #
1451
- def reject: () -> ::Enumerator[[ K, V ], ::Hash[K, V]]
1452
- | () { (K, V) -> boolish } -> ::Hash[K, V]
1453
-
1454
- # <!--
1455
- # rdoc-file=hash.c
1456
- # - hash.reject! {|key, value| ... } -> self or nil
1457
- # - hash.reject! -> new_enumerator
1458
- # -->
1459
- # Returns `self`, whose remaining entries are those for which the block returns
1460
- # `false` or `nil`:
1461
- # h = {foo: 0, bar: 1, baz: 2}
1462
- # h.reject! {|key, value| value < 2 } # => {:baz=>2}
1463
- #
1464
- # Returns `nil` if no entries are removed.
1465
- #
1466
- # Returns a new Enumerator if no block given:
1467
- # h = {foo: 0, bar: 1, baz: 2}
1468
- # e = h.reject! # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:reject!>
1469
- # e.each {|key, value| key.start_with?('b') } # => {:foo=>0}
1470
- #
1471
- def reject!: () -> ::Enumerator[[ K, V ], self?]
1472
- | () { (K, V) -> boolish } -> self?
1473
-
1474
- # <!-- rdoc-file=hash.c -->
1475
- # Replaces the entire contents of `self` with the contents of `other_hash`;
1476
- # returns `self`:
1477
- # h = {foo: 0, bar: 1, baz: 2}
1478
- # h.replace({bat: 3, bam: 4}) # => {:bat=>3, :bam=>4}
1479
- #
1480
- def replace: (Hash[K, V]) -> self
1481
-
1482
- # <!--
1483
- # rdoc-file=hash.c
1484
- # - hash.select {|key, value| ... } -> new_hash
1485
- # - hash.select -> new_enumerator
1486
- # -->
1487
- # Returns a new `Hash` object whose entries are those for which the block
1488
- # returns a truthy value:
1489
- # h = {foo: 0, bar: 1, baz: 2}
1490
- # h.select {|key, value| value < 2 } # => {:foo=>0, :bar=>1}
1491
- #
1492
- # Returns a new Enumerator if no block given:
1493
- # h = {foo: 0, bar: 1, baz: 2}
1494
- # e = h.select # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:select>
1495
- # e.each {|key, value| value < 2 } # => {:foo=>0, :bar=>1}
1496
- #
1497
- alias select filter
1498
-
1499
- # <!--
1500
- # rdoc-file=hash.c
1501
- # - hash.select! {|key, value| ... } -> self or nil
1502
- # - hash.select! -> new_enumerator
1503
- # -->
1504
- # Returns `self`, whose entries are those for which the block returns a truthy
1505
- # value:
1506
- # h = {foo: 0, bar: 1, baz: 2}
1507
- # h.select! {|key, value| value < 2 } => {:foo=>0, :bar=>1}
1508
- #
1509
- # Returns `nil` if no entries were removed.
1510
- #
1511
- # Returns a new Enumerator if no block given:
1512
- # h = {foo: 0, bar: 1, baz: 2}
1513
- # e = h.select! # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:select!>
1514
- # e.each { |key, value| value < 2 } # => {:foo=>0, :bar=>1}
1515
- #
1516
- alias select! filter!
1517
-
1518
- # <!--
1519
- # rdoc-file=hash.c
1520
- # - hash.shift -> [key, value] or nil
1521
- # -->
1522
- # Removes the first hash entry (see [Entry Order](rdoc-ref:Hash@Entry+Order));
1523
- # returns a 2-element Array containing the removed key and value:
1524
- # h = {foo: 0, bar: 1, baz: 2}
1525
- # h.shift # => [:foo, 0]
1526
- # h # => {:bar=>1, :baz=>2}
1527
- #
1528
- # Returns nil if the hash is empty.
1529
- #
1530
- def shift: () -> [ K, V ]?
1531
-
1532
- # <!--
1533
- # rdoc-file=hash.c
1534
- # - hash.length -> integer
1535
- # - hash.size -> integer
1536
- # -->
1537
- # Returns the count of entries in `self`:
1538
- #
1539
- # {foo: 0, bar: 1, baz: 2}.length # => 3
1540
- #
1541
- alias size length
1542
-
1543
- # <!--
1544
- # rdoc-file=hash.c
1545
- # - hash.slice(*keys) -> new_hash
1546
- # -->
1547
- # Returns a new `Hash` object containing the entries for the given `keys`:
1548
- # h = {foo: 0, bar: 1, baz: 2}
1549
- # h.slice(:baz, :foo) # => {:baz=>2, :foo=>0}
1550
- #
1551
- # Any given `keys` that are not found are ignored.
1552
- #
1553
- def slice: (*K) -> ::Hash[K, V]
1554
-
1555
- # <!-- rdoc-file=hash.c -->
1556
- # Associates the given `value` with the given `key`; returns `value`.
1557
- #
1558
- # If the given `key` exists, replaces its value with the given `value`; the
1559
- # ordering is not affected (see [Entry Order](rdoc-ref:Hash@Entry+Order)):
1560
- # h = {foo: 0, bar: 1}
1561
- # h[:foo] = 2 # => 2
1562
- # h.store(:bar, 3) # => 3
1563
- # h # => {:foo=>2, :bar=>3}
1564
- #
1565
- # If `key` does not exist, adds the `key` and `value`; the new entry is last in
1566
- # the order (see [Entry Order](rdoc-ref:Hash@Entry+Order)):
1567
- # h = {foo: 0, bar: 1}
1568
- # h[:baz] = 2 # => 2
1569
- # h.store(:bat, 3) # => 3
1570
- # h # => {:foo=>0, :bar=>1, :baz=>2, :bat=>3}
1571
- #
1572
- alias store []=
1573
-
1574
- # <!--
1575
- # rdoc-file=hash.c
1576
- # - hash.to_a -> new_array
1577
- # -->
1578
- # Returns a new Array of 2-element Array objects; each nested Array contains a
1579
- # key-value pair from `self`:
1580
- # h = {foo: 0, bar: 1, baz: 2}
1581
- # h.to_a # => [[:foo, 0], [:bar, 1], [:baz, 2]]
1582
- #
1583
- def to_a: () -> ::Array[[ K, V ]]
1584
-
1585
- # <!--
1586
- # rdoc-file=hash.c
1587
- # - hash.to_h -> self or new_hash
1588
- # - hash.to_h {|key, value| ... } -> new_hash
1589
- # -->
1590
- # For an instance of `Hash`, returns `self`.
1591
- #
1592
- # For a subclass of `Hash`, returns a new `Hash` containing the content of
1593
- # `self`.
1594
- #
1595
- # When a block is given, returns a new `Hash` object whose content is based on
1596
- # the block; the block should return a 2-element Array object specifying the
1597
- # key-value pair to be included in the returned Array:
1598
- # h = {foo: 0, bar: 1, baz: 2}
1599
- # h1 = h.to_h {|key, value| [value, key] }
1600
- # h1 # => {0=>:foo, 1=>:bar, 2=>:baz}
1601
- #
1602
- def to_h: () -> Hash[K, V]
1603
- | [A, B] () { (K, V) -> [ A, B ] } -> Hash[A, B]
1604
-
1605
- # <!--
1606
- # rdoc-file=hash.c
1607
- # - hash.to_hash -> self
1608
- # -->
1609
- # Returns `self`.
1610
- #
1611
- def to_hash: () -> self
1612
-
1613
- # <!--
1614
- # rdoc-file=hash.c
1615
- # - hash.to_proc -> proc
1616
- # -->
1617
- # Returns a Proc object that maps a key to its value:
1618
- # h = {foo: 0, bar: 1, baz: 2}
1619
- # proc = h.to_proc
1620
- # proc.class # => Proc
1621
- # proc.call(:foo) # => 0
1622
- # proc.call(:bar) # => 1
1623
- # proc.call(:nosuch) # => nil
1624
- #
1625
- def to_proc: () -> ^(K) -> V?
1626
-
1627
- # <!-- rdoc-file=hash.c -->
1628
- # Returns a new String containing the hash entries:
1629
- #
1630
- # h = {foo: 0, bar: 1, baz: 2}
1631
- # h.inspect # => "{foo: 0, bar: 1, baz: 2}"
1632
- #
1633
- alias to_s inspect
1634
-
1635
- # <!--
1636
- # rdoc-file=hash.c
1637
- # - hash.transform_keys {|key| ... } -> new_hash
1638
- # - hash.transform_keys(hash2) -> new_hash
1639
- # - hash.transform_keys(hash2) {|other_key| ...} -> new_hash
1640
- # - hash.transform_keys -> new_enumerator
1641
- # -->
1642
- # Returns a new `Hash` object; each entry has:
1643
- # * A key provided by the block.
1644
- # * The value from `self`.
1645
- #
1646
- # An optional hash argument can be provided to map keys to new keys. Any key not
1647
- # given will be mapped using the provided block, or remain the same if no block
1648
- # is given.
1649
- #
1650
- # Transform keys:
1651
- # h = {foo: 0, bar: 1, baz: 2}
1652
- # h1 = h.transform_keys {|key| key.to_s }
1653
- # h1 # => {"foo"=>0, "bar"=>1, "baz"=>2}
1654
- #
1655
- # h.transform_keys(foo: :bar, bar: :foo)
1656
- # #=> {bar: 0, foo: 1, baz: 2}
1657
- #
1658
- # h.transform_keys(foo: :hello, &:to_s)
1659
- # #=> {:hello=>0, "bar"=>1, "baz"=>2}
1660
- #
1661
- # Overwrites values for duplicate keys:
1662
- # h = {foo: 0, bar: 1, baz: 2}
1663
- # h1 = h.transform_keys {|key| :bat }
1664
- # h1 # => {:bat=>2}
1665
- #
1666
- # Returns a new Enumerator if no block given:
1667
- # h = {foo: 0, bar: 1, baz: 2}
1668
- # e = h.transform_keys # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:transform_keys>
1669
- # h1 = e.each { |key| key.to_s }
1670
- # h1 # => {"foo"=>0, "bar"=>1, "baz"=>2}
1671
- #
1672
- def transform_keys: () -> Enumerator[K, Hash[untyped, V]]
1673
- | [A] () { (K) -> A } -> Hash[A, V]
1674
-
1675
- # <!--
1676
- # rdoc-file=hash.c
1677
- # - hash.transform_keys! {|key| ... } -> self
1678
- # - hash.transform_keys!(hash2) -> self
1679
- # - hash.transform_keys!(hash2) {|other_key| ...} -> self
1680
- # - hash.transform_keys! -> new_enumerator
1681
- # -->
1682
- # Same as Hash#transform_keys but modifies the receiver in place instead of
1683
- # returning a new hash.
1684
- #
1685
- def transform_keys!: () -> Enumerator[K, self]
1686
- | () { (K) -> K } -> self
1687
-
1688
- # <!--
1689
- # rdoc-file=hash.c
1690
- # - hash.transform_values {|value| ... } -> new_hash
1691
- # - hash.transform_values -> new_enumerator
1692
- # -->
1693
- # Returns a new `Hash` object; each entry has:
1694
- # * A key from `self`.
1695
- # * A value provided by the block.
1696
- #
1697
- # Transform values:
1698
- # h = {foo: 0, bar: 1, baz: 2}
1699
- # h1 = h.transform_values {|value| value * 100}
1700
- # h1 # => {:foo=>0, :bar=>100, :baz=>200}
1701
- #
1702
- # Returns a new Enumerator if no block given:
1703
- # h = {foo: 0, bar: 1, baz: 2}
1704
- # e = h.transform_values # => #<Enumerator: {:foo=>0, :bar=>1, :baz=>2}:transform_values>
1705
- # h1 = e.each { |value| value * 100}
1706
- # h1 # => {:foo=>0, :bar=>100, :baz=>200}
1707
- #
1708
- def transform_values: () -> Enumerator[V, Hash[K, untyped]]
1709
- | [A] () { (V) -> A } -> Hash[K, A]
1710
-
1711
- # <!--
1712
- # rdoc-file=hash.c
1713
- # - hash.transform_values! {|value| ... } -> self
1714
- # - hash.transform_values! -> new_enumerator
1715
- # -->
1716
- # Returns `self`, whose keys are unchanged, and whose values are determined by
1717
- # the given block.
1718
- # h = {foo: 0, bar: 1, baz: 2}
1719
- # h.transform_values! {|value| value * 100} # => {:foo=>0, :bar=>100, :baz=>200}
1720
- #
1721
- # Returns a new Enumerator if no block given:
1722
- # h = {foo: 0, bar: 1, baz: 2}
1723
- # e = h.transform_values! # => #<Enumerator: {:foo=>0, :bar=>100, :baz=>200}:transform_values!>
1724
- # h1 = e.each {|value| value * 100}
1725
- # h1 # => {:foo=>0, :bar=>100, :baz=>200}
1726
- #
1727
- def transform_values!: () -> Enumerator[V, self]
1728
- | () { (V) -> V } -> self
1729
-
1730
- # <!--
1731
- # rdoc-file=hash.c
1732
- # - hash.merge! -> self
1733
- # - hash.merge!(*other_hashes) -> self
1734
- # - hash.merge!(*other_hashes) { |key, old_value, new_value| ... } -> self
1735
- # -->
1736
- # Merges each of `other_hashes` into `self`; returns `self`.
1737
- #
1738
- # Each argument in `other_hashes` must be a `Hash`.
1739
- #
1740
- # With arguments and no block:
1741
- # * Returns `self`, after the given hashes are merged into it.
1742
- # * The given hashes are merged left to right.
1743
- # * Each new entry is added at the end.
1744
- # * Each duplicate-key entry's value overwrites the previous value.
1745
- #
1746
- # Example:
1747
- # h = {foo: 0, bar: 1, baz: 2}
1748
- # h1 = {bat: 3, bar: 4}
1749
- # h2 = {bam: 5, bat:6}
1750
- # h.merge!(h1, h2) # => {:foo=>0, :bar=>4, :baz=>2, :bat=>6, :bam=>5}
1751
- #
1752
- # With arguments and a block:
1753
- # * Returns `self`, after the given hashes are merged.
1754
- # * The given hashes are merged left to right.
1755
- # * Each new-key entry is added at the end.
1756
- # * For each duplicate key:
1757
- # * Calls the block with the key and the old and new values.
1758
- # * The block's return value becomes the new value for the entry.
1759
- #
1760
- # Example:
1761
- # h = {foo: 0, bar: 1, baz: 2}
1762
- # h1 = {bat: 3, bar: 4}
1763
- # h2 = {bam: 5, bat:6}
1764
- # h3 = h.merge!(h1, h2) { |key, old_value, new_value| old_value + new_value }
1765
- # h3 # => {:foo=>0, :bar=>5, :baz=>2, :bat=>9, :bam=>5}
1766
- #
1767
- # With no arguments:
1768
- # * Returns `self`, unmodified.
1769
- # * The block, if given, is ignored.
1770
- #
1771
- # Example:
1772
- # h = {foo: 0, bar: 1, baz: 2}
1773
- # h.merge # => {:foo=>0, :bar=>1, :baz=>2}
1774
- # h1 = h.merge! { |key, old_value, new_value| raise 'Cannot happen' }
1775
- # h1 # => {:foo=>0, :bar=>1, :baz=>2}
1776
- #
1777
- alias update merge!
1778
-
1779
- # <!-- rdoc-file=hash.c -->
1780
- # Returns `true` if `value` is a value in `self`, otherwise `false`.
1781
- #
1782
- alias value? has_value?
1783
-
1784
- # <!--
1785
- # rdoc-file=hash.c
1786
- # - hash.values -> new_array
1787
- # -->
1788
- # Returns a new Array containing all values in `self`:
1789
- # h = {foo: 0, bar: 1, baz: 2}
1790
- # h.values # => [0, 1, 2]
1791
- #
1792
- def values: () -> ::Array[V]
1793
-
1794
- # <!--
1795
- # rdoc-file=hash.c
1796
- # - hash.values_at(*keys) -> new_array
1797
- # -->
1798
- # Returns a new Array containing values for the given `keys`:
1799
- # h = {foo: 0, bar: 1, baz: 2}
1800
- # h.values_at(:baz, :foo) # => [2, 0]
1801
- #
1802
- # The [default values](rdoc-ref:Hash@Default+Values) are returned for any keys
1803
- # that are not found:
1804
- # h.values_at(:hello, :foo) # => [nil, 0]
1805
- #
1806
- def values_at: (*K arg0) -> ::Array[V?]
1807
-
1808
- private
1809
-
1810
- # <!--
1811
- # rdoc-file=hash.rb
1812
- # - Hash.new(default_value = nil) -> new_hash
1813
- # - Hash.new(default_value = nil, capacity: size) -> new_hash
1814
- # - Hash.new {|hash, key| ... } -> new_hash
1815
- # - Hash.new(capacity: size) {|hash, key| ... } -> new_hash
1816
- # -->
1817
- # Returns a new empty `Hash` object.
1818
- #
1819
- # The initial default value and initial default proc for the new hash depend on
1820
- # which form above was used. See [Default Values](rdoc-ref:Hash@Default+Values).
1821
- #
1822
- # If neither an argument nor a block is given, initializes both the default
1823
- # value and the default proc to `nil`:
1824
- # h = Hash.new
1825
- # h.default # => nil
1826
- # h.default_proc # => nil
1827
- #
1828
- # If argument `default_value` is given but no block is given, initializes the
1829
- # default value to the given `default_value` and the default proc to `nil`:
1830
- # h = Hash.new(false)
1831
- # h.default # => false
1832
- # h.default_proc # => nil
1833
- #
1834
- # If a block is given but no `default_value`, stores the block as the default
1835
- # proc and sets the default value to `nil`:
1836
- # h = Hash.new {|hash, key| "Default value for #{key}" }
1837
- # h.default # => nil
1838
- # h.default_proc.class # => Proc
1839
- # h[:nosuch] # => "Default value for nosuch"
1840
- #
1841
- # If both a block and a `default_value` are given, raises an `ArgumentError`
1842
- #
1843
- # If the optional keyword argument `capacity` is given, the hash will be
1844
- # allocated with enough capacity to accommodate this many keys without having to
1845
- # be resized.
1846
- #
1847
- def initialize: (?capacity: int) -> void
1848
- | [V] (V default, ?capacity: int) -> void
1849
- | [A, B] (?capacity: int) { (Hash[A, B] hash, A key) -> B } -> void
1850
-
1851
- # <!--
1852
- # rdoc-file=hash.c
1853
- # - hash.replace(other_hash) -> self
1854
- # -->
1855
- # Replaces the entire contents of `self` with the contents of `other_hash`;
1856
- # returns `self`:
1857
- # h = {foo: 0, bar: 1, baz: 2}
1858
- # h.replace({bat: 3, bam: 4}) # => {:bat=>3, :bam=>4}
1859
- #
1860
- def initialize_copy: (self object) -> self
1861
- end