@ai-ecoverse/wasix-ruby 3.4.11-1

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 (1123) hide show
  1. package/LICENSE +56 -0
  2. package/PRESTAGE.md +30 -0
  3. package/README.md +3 -0
  4. package/bin/ruby.wasm +0 -0
  5. package/lib/ruby/3.4.11/English.gemspec +22 -0
  6. package/lib/ruby/3.4.11/English.rb +164 -0
  7. package/lib/ruby/3.4.11/benchmark.gemspec +32 -0
  8. package/lib/ruby/3.4.11/benchmark.rb +594 -0
  9. package/lib/ruby/3.4.11/bundled_gems.rb +248 -0
  10. package/lib/ruby/3.4.11/bundler/.document +1 -0
  11. package/lib/ruby/3.4.11/bundler/build_metadata.rb +43 -0
  12. package/lib/ruby/3.4.11/bundler/bundler.gemspec +45 -0
  13. package/lib/ruby/3.4.11/bundler/capistrano.rb +22 -0
  14. package/lib/ruby/3.4.11/bundler/checksum.rb +264 -0
  15. package/lib/ruby/3.4.11/bundler/ci_detector.rb +75 -0
  16. package/lib/ruby/3.4.11/bundler/cli/add.rb +49 -0
  17. package/lib/ruby/3.4.11/bundler/cli/binstubs.rb +57 -0
  18. package/lib/ruby/3.4.11/bundler/cli/cache.rb +43 -0
  19. package/lib/ruby/3.4.11/bundler/cli/check.rb +40 -0
  20. package/lib/ruby/3.4.11/bundler/cli/clean.rb +25 -0
  21. package/lib/ruby/3.4.11/bundler/cli/common.rb +138 -0
  22. package/lib/ruby/3.4.11/bundler/cli/config.rb +204 -0
  23. package/lib/ruby/3.4.11/bundler/cli/console.rb +42 -0
  24. package/lib/ruby/3.4.11/bundler/cli/doctor/diagnose.rb +167 -0
  25. package/lib/ruby/3.4.11/bundler/cli/doctor/ssl.rb +249 -0
  26. package/lib/ruby/3.4.11/bundler/cli/doctor.rb +33 -0
  27. package/lib/ruby/3.4.11/bundler/cli/exec.rb +89 -0
  28. package/lib/ruby/3.4.11/bundler/cli/fund.rb +36 -0
  29. package/lib/ruby/3.4.11/bundler/cli/gem.rb +467 -0
  30. package/lib/ruby/3.4.11/bundler/cli/info.rb +83 -0
  31. package/lib/ruby/3.4.11/bundler/cli/init.rb +51 -0
  32. package/lib/ruby/3.4.11/bundler/cli/inject.rb +60 -0
  33. package/lib/ruby/3.4.11/bundler/cli/install.rb +199 -0
  34. package/lib/ruby/3.4.11/bundler/cli/issue.rb +41 -0
  35. package/lib/ruby/3.4.11/bundler/cli/list.rb +66 -0
  36. package/lib/ruby/3.4.11/bundler/cli/lock.rb +94 -0
  37. package/lib/ruby/3.4.11/bundler/cli/open.rb +29 -0
  38. package/lib/ruby/3.4.11/bundler/cli/outdated.rb +297 -0
  39. package/lib/ruby/3.4.11/bundler/cli/platform.rb +48 -0
  40. package/lib/ruby/3.4.11/bundler/cli/plugin.rb +35 -0
  41. package/lib/ruby/3.4.11/bundler/cli/pristine.rb +60 -0
  42. package/lib/ruby/3.4.11/bundler/cli/remove.rb +17 -0
  43. package/lib/ruby/3.4.11/bundler/cli/show.rb +75 -0
  44. package/lib/ruby/3.4.11/bundler/cli/update.rb +123 -0
  45. package/lib/ruby/3.4.11/bundler/cli/viz.rb +31 -0
  46. package/lib/ruby/3.4.11/bundler/cli.rb +790 -0
  47. package/lib/ruby/3.4.11/bundler/compact_index_client/cache.rb +96 -0
  48. package/lib/ruby/3.4.11/bundler/compact_index_client/cache_file.rb +148 -0
  49. package/lib/ruby/3.4.11/bundler/compact_index_client/parser.rb +84 -0
  50. package/lib/ruby/3.4.11/bundler/compact_index_client/updater.rb +105 -0
  51. package/lib/ruby/3.4.11/bundler/compact_index_client.rb +97 -0
  52. package/lib/ruby/3.4.11/bundler/constants.rb +14 -0
  53. package/lib/ruby/3.4.11/bundler/current_ruby.rb +82 -0
  54. package/lib/ruby/3.4.11/bundler/definition.rb +1187 -0
  55. package/lib/ruby/3.4.11/bundler/dependency.rb +151 -0
  56. package/lib/ruby/3.4.11/bundler/deployment.rb +69 -0
  57. package/lib/ruby/3.4.11/bundler/deprecate.rb +44 -0
  58. package/lib/ruby/3.4.11/bundler/digest.rb +71 -0
  59. package/lib/ruby/3.4.11/bundler/dsl.rb +638 -0
  60. package/lib/ruby/3.4.11/bundler/endpoint_specification.rb +174 -0
  61. package/lib/ruby/3.4.11/bundler/env.rb +148 -0
  62. package/lib/ruby/3.4.11/bundler/environment_preserver.rb +68 -0
  63. package/lib/ruby/3.4.11/bundler/errors.rb +281 -0
  64. package/lib/ruby/3.4.11/bundler/feature_flag.rb +50 -0
  65. package/lib/ruby/3.4.11/bundler/fetcher/base.rb +52 -0
  66. package/lib/ruby/3.4.11/bundler/fetcher/compact_index.rb +120 -0
  67. package/lib/ruby/3.4.11/bundler/fetcher/dependency.rb +78 -0
  68. package/lib/ruby/3.4.11/bundler/fetcher/downloader.rb +91 -0
  69. package/lib/ruby/3.4.11/bundler/fetcher/gem_remote_fetcher.rb +16 -0
  70. package/lib/ruby/3.4.11/bundler/fetcher/index.rb +25 -0
  71. package/lib/ruby/3.4.11/bundler/fetcher.rb +331 -0
  72. package/lib/ruby/3.4.11/bundler/force_platform.rb +16 -0
  73. package/lib/ruby/3.4.11/bundler/friendly_errors.rb +126 -0
  74. package/lib/ruby/3.4.11/bundler/gem_helper.rb +237 -0
  75. package/lib/ruby/3.4.11/bundler/gem_helpers.rb +144 -0
  76. package/lib/ruby/3.4.11/bundler/gem_tasks.rb +7 -0
  77. package/lib/ruby/3.4.11/bundler/gem_version_promoter.rb +147 -0
  78. package/lib/ruby/3.4.11/bundler/graph.rb +152 -0
  79. package/lib/ruby/3.4.11/bundler/index.rb +205 -0
  80. package/lib/ruby/3.4.11/bundler/injector.rb +285 -0
  81. package/lib/ruby/3.4.11/bundler/inline.rb +98 -0
  82. package/lib/ruby/3.4.11/bundler/installer/gem_installer.rb +85 -0
  83. package/lib/ruby/3.4.11/bundler/installer/parallel_installer.rb +203 -0
  84. package/lib/ruby/3.4.11/bundler/installer/standalone.rb +113 -0
  85. package/lib/ruby/3.4.11/bundler/installer.rb +243 -0
  86. package/lib/ruby/3.4.11/bundler/lazy_specification.rb +243 -0
  87. package/lib/ruby/3.4.11/bundler/lockfile_generator.rb +104 -0
  88. package/lib/ruby/3.4.11/bundler/lockfile_parser.rb +300 -0
  89. package/lib/ruby/3.4.11/bundler/man/.document +1 -0
  90. package/lib/ruby/3.4.11/bundler/man/bundle-add.1 +76 -0
  91. package/lib/ruby/3.4.11/bundler/man/bundle-add.1.ronn +87 -0
  92. package/lib/ruby/3.4.11/bundler/man/bundle-binstubs.1 +33 -0
  93. package/lib/ruby/3.4.11/bundler/man/bundle-binstubs.1.ronn +44 -0
  94. package/lib/ruby/3.4.11/bundler/man/bundle-cache.1 +68 -0
  95. package/lib/ruby/3.4.11/bundler/man/bundle-cache.1.ronn +108 -0
  96. package/lib/ruby/3.4.11/bundler/man/bundle-check.1 +24 -0
  97. package/lib/ruby/3.4.11/bundler/man/bundle-check.1.ronn +31 -0
  98. package/lib/ruby/3.4.11/bundler/man/bundle-clean.1 +17 -0
  99. package/lib/ruby/3.4.11/bundler/man/bundle-clean.1.ronn +18 -0
  100. package/lib/ruby/3.4.11/bundler/man/bundle-config.1 +317 -0
  101. package/lib/ruby/3.4.11/bundler/man/bundle-config.1.ronn +408 -0
  102. package/lib/ruby/3.4.11/bundler/man/bundle-console.1 +33 -0
  103. package/lib/ruby/3.4.11/bundler/man/bundle-console.1.ronn +39 -0
  104. package/lib/ruby/3.4.11/bundler/man/bundle-doctor.1 +30 -0
  105. package/lib/ruby/3.4.11/bundler/man/bundle-doctor.1.ronn +33 -0
  106. package/lib/ruby/3.4.11/bundler/man/bundle-env.1 +9 -0
  107. package/lib/ruby/3.4.11/bundler/man/bundle-env.1.ronn +10 -0
  108. package/lib/ruby/3.4.11/bundler/man/bundle-exec.1 +107 -0
  109. package/lib/ruby/3.4.11/bundler/man/bundle-exec.1.ronn +154 -0
  110. package/lib/ruby/3.4.11/bundler/man/bundle-fund.1 +22 -0
  111. package/lib/ruby/3.4.11/bundler/man/bundle-fund.1.ronn +25 -0
  112. package/lib/ruby/3.4.11/bundler/man/bundle-gem.1 +87 -0
  113. package/lib/ruby/3.4.11/bundler/man/bundle-gem.1.ronn +149 -0
  114. package/lib/ruby/3.4.11/bundler/man/bundle-help.1 +9 -0
  115. package/lib/ruby/3.4.11/bundler/man/bundle-help.1.ronn +12 -0
  116. package/lib/ruby/3.4.11/bundler/man/bundle-info.1 +17 -0
  117. package/lib/ruby/3.4.11/bundler/man/bundle-info.1.ronn +21 -0
  118. package/lib/ruby/3.4.11/bundler/man/bundle-init.1 +20 -0
  119. package/lib/ruby/3.4.11/bundler/man/bundle-init.1.ronn +32 -0
  120. package/lib/ruby/3.4.11/bundler/man/bundle-inject.1 +31 -0
  121. package/lib/ruby/3.4.11/bundler/man/bundle-inject.1.ronn +32 -0
  122. package/lib/ruby/3.4.11/bundler/man/bundle-install.1 +218 -0
  123. package/lib/ruby/3.4.11/bundler/man/bundle-install.1.ronn +387 -0
  124. package/lib/ruby/3.4.11/bundler/man/bundle-issue.1 +45 -0
  125. package/lib/ruby/3.4.11/bundler/man/bundle-issue.1.ronn +37 -0
  126. package/lib/ruby/3.4.11/bundler/man/bundle-licenses.1 +9 -0
  127. package/lib/ruby/3.4.11/bundler/man/bundle-licenses.1.ronn +10 -0
  128. package/lib/ruby/3.4.11/bundler/man/bundle-list.1 +35 -0
  129. package/lib/ruby/3.4.11/bundler/man/bundle-list.1.ronn +36 -0
  130. package/lib/ruby/3.4.11/bundler/man/bundle-lock.1 +75 -0
  131. package/lib/ruby/3.4.11/bundler/man/bundle-lock.1.ronn +115 -0
  132. package/lib/ruby/3.4.11/bundler/man/bundle-open.1 +32 -0
  133. package/lib/ruby/3.4.11/bundler/man/bundle-open.1.ronn +28 -0
  134. package/lib/ruby/3.4.11/bundler/man/bundle-outdated.1 +103 -0
  135. package/lib/ruby/3.4.11/bundler/man/bundle-outdated.1.ronn +110 -0
  136. package/lib/ruby/3.4.11/bundler/man/bundle-platform.1 +49 -0
  137. package/lib/ruby/3.4.11/bundler/man/bundle-platform.1.ronn +49 -0
  138. package/lib/ruby/3.4.11/bundler/man/bundle-plugin.1 +58 -0
  139. package/lib/ruby/3.4.11/bundler/man/bundle-plugin.1.ronn +63 -0
  140. package/lib/ruby/3.4.11/bundler/man/bundle-pristine.1 +23 -0
  141. package/lib/ruby/3.4.11/bundler/man/bundle-pristine.1.ronn +34 -0
  142. package/lib/ruby/3.4.11/bundler/man/bundle-remove.1 +21 -0
  143. package/lib/ruby/3.4.11/bundler/man/bundle-remove.1.ronn +23 -0
  144. package/lib/ruby/3.4.11/bundler/man/bundle-show.1 +19 -0
  145. package/lib/ruby/3.4.11/bundler/man/bundle-show.1.ronn +25 -0
  146. package/lib/ruby/3.4.11/bundler/man/bundle-update.1 +281 -0
  147. package/lib/ruby/3.4.11/bundler/man/bundle-update.1.ronn +359 -0
  148. package/lib/ruby/3.4.11/bundler/man/bundle-version.1 +22 -0
  149. package/lib/ruby/3.4.11/bundler/man/bundle-version.1.ronn +24 -0
  150. package/lib/ruby/3.4.11/bundler/man/bundle-viz.1 +30 -0
  151. package/lib/ruby/3.4.11/bundler/man/bundle-viz.1.ronn +36 -0
  152. package/lib/ruby/3.4.11/bundler/man/bundle.1 +102 -0
  153. package/lib/ruby/3.4.11/bundler/man/bundle.1.ronn +116 -0
  154. package/lib/ruby/3.4.11/bundler/man/gemfile.5 +472 -0
  155. package/lib/ruby/3.4.11/bundler/man/gemfile.5.ronn +558 -0
  156. package/lib/ruby/3.4.11/bundler/man/index.txt +33 -0
  157. package/lib/ruby/3.4.11/bundler/match_metadata.rb +30 -0
  158. package/lib/ruby/3.4.11/bundler/match_platform.rb +23 -0
  159. package/lib/ruby/3.4.11/bundler/match_remote_metadata.rb +29 -0
  160. package/lib/ruby/3.4.11/bundler/materialization.rb +59 -0
  161. package/lib/ruby/3.4.11/bundler/mirror.rb +221 -0
  162. package/lib/ruby/3.4.11/bundler/plugin/api/source.rb +322 -0
  163. package/lib/ruby/3.4.11/bundler/plugin/api.rb +81 -0
  164. package/lib/ruby/3.4.11/bundler/plugin/dsl.rb +53 -0
  165. package/lib/ruby/3.4.11/bundler/plugin/events.rb +85 -0
  166. package/lib/ruby/3.4.11/bundler/plugin/index.rb +197 -0
  167. package/lib/ruby/3.4.11/bundler/plugin/installer/git.rb +34 -0
  168. package/lib/ruby/3.4.11/bundler/plugin/installer/path.rb +26 -0
  169. package/lib/ruby/3.4.11/bundler/plugin/installer/rubygems.rb +19 -0
  170. package/lib/ruby/3.4.11/bundler/plugin/installer.rb +132 -0
  171. package/lib/ruby/3.4.11/bundler/plugin/source_list.rb +31 -0
  172. package/lib/ruby/3.4.11/bundler/plugin.rb +378 -0
  173. package/lib/ruby/3.4.11/bundler/process_lock.rb +20 -0
  174. package/lib/ruby/3.4.11/bundler/remote_specification.rb +126 -0
  175. package/lib/ruby/3.4.11/bundler/resolver/base.rb +118 -0
  176. package/lib/ruby/3.4.11/bundler/resolver/candidate.rb +85 -0
  177. package/lib/ruby/3.4.11/bundler/resolver/incompatibility.rb +15 -0
  178. package/lib/ruby/3.4.11/bundler/resolver/package.rb +94 -0
  179. package/lib/ruby/3.4.11/bundler/resolver/root.rb +25 -0
  180. package/lib/ruby/3.4.11/bundler/resolver/spec_group.rb +74 -0
  181. package/lib/ruby/3.4.11/bundler/resolver/strategy.rb +40 -0
  182. package/lib/ruby/3.4.11/bundler/resolver.rb +526 -0
  183. package/lib/ruby/3.4.11/bundler/retry.rb +66 -0
  184. package/lib/ruby/3.4.11/bundler/ruby_dsl.rb +62 -0
  185. package/lib/ruby/3.4.11/bundler/ruby_version.rb +137 -0
  186. package/lib/ruby/3.4.11/bundler/rubygems_ext.rb +485 -0
  187. package/lib/ruby/3.4.11/bundler/rubygems_gem_installer.rb +172 -0
  188. package/lib/ruby/3.4.11/bundler/rubygems_integration.rb +455 -0
  189. package/lib/ruby/3.4.11/bundler/runtime.rb +320 -0
  190. package/lib/ruby/3.4.11/bundler/safe_marshal.rb +31 -0
  191. package/lib/ruby/3.4.11/bundler/self_manager.rb +206 -0
  192. package/lib/ruby/3.4.11/bundler/settings/validator.rb +102 -0
  193. package/lib/ruby/3.4.11/bundler/settings.rb +599 -0
  194. package/lib/ruby/3.4.11/bundler/setup.rb +39 -0
  195. package/lib/ruby/3.4.11/bundler/shared_helpers.rb +398 -0
  196. package/lib/ruby/3.4.11/bundler/similarity_detector.rb +63 -0
  197. package/lib/ruby/3.4.11/bundler/source/gemspec.rb +15 -0
  198. package/lib/ruby/3.4.11/bundler/source/git/git_proxy.rb +472 -0
  199. package/lib/ruby/3.4.11/bundler/source/git.rb +452 -0
  200. package/lib/ruby/3.4.11/bundler/source/metadata.rb +63 -0
  201. package/lib/ruby/3.4.11/bundler/source/path/installer.rb +53 -0
  202. package/lib/ruby/3.4.11/bundler/source/path.rb +250 -0
  203. package/lib/ruby/3.4.11/bundler/source/rubygems/remote.rb +76 -0
  204. package/lib/ruby/3.4.11/bundler/source/rubygems.rb +522 -0
  205. package/lib/ruby/3.4.11/bundler/source/rubygems_aggregate.rb +68 -0
  206. package/lib/ruby/3.4.11/bundler/source.rb +118 -0
  207. package/lib/ruby/3.4.11/bundler/source_list.rb +273 -0
  208. package/lib/ruby/3.4.11/bundler/source_map.rb +71 -0
  209. package/lib/ruby/3.4.11/bundler/spec_set.rb +395 -0
  210. package/lib/ruby/3.4.11/bundler/stub_specification.rb +146 -0
  211. package/lib/ruby/3.4.11/bundler/templates/.document +1 -0
  212. package/lib/ruby/3.4.11/bundler/templates/Executable +27 -0
  213. package/lib/ruby/3.4.11/bundler/templates/Executable.bundler +109 -0
  214. package/lib/ruby/3.4.11/bundler/templates/Executable.standalone +14 -0
  215. package/lib/ruby/3.4.11/bundler/templates/Gemfile +5 -0
  216. package/lib/ruby/3.4.11/bundler/templates/newgem/CHANGELOG.md.tt +5 -0
  217. package/lib/ruby/3.4.11/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +132 -0
  218. package/lib/ruby/3.4.11/bundler/templates/newgem/Cargo.toml.tt +7 -0
  219. package/lib/ruby/3.4.11/bundler/templates/newgem/Gemfile.tt +24 -0
  220. package/lib/ruby/3.4.11/bundler/templates/newgem/LICENSE.txt.tt +21 -0
  221. package/lib/ruby/3.4.11/bundler/templates/newgem/README.md.tt +49 -0
  222. package/lib/ruby/3.4.11/bundler/templates/newgem/Rakefile.tt +67 -0
  223. package/lib/ruby/3.4.11/bundler/templates/newgem/bin/console.tt +11 -0
  224. package/lib/ruby/3.4.11/bundler/templates/newgem/bin/setup.tt +8 -0
  225. package/lib/ruby/3.4.11/bundler/templates/newgem/circleci/config.yml.tt +25 -0
  226. package/lib/ruby/3.4.11/bundler/templates/newgem/exe/newgem.tt +3 -0
  227. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +15 -0
  228. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt +10 -0
  229. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt +6 -0
  230. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/newgem.c.tt +9 -0
  231. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/newgem.h.tt +6 -0
  232. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +12 -0
  233. package/lib/ruby/3.4.11/bundler/templates/newgem/github/workflows/main.yml.tt +37 -0
  234. package/lib/ruby/3.4.11/bundler/templates/newgem/gitignore.tt +23 -0
  235. package/lib/ruby/3.4.11/bundler/templates/newgem/gitlab-ci.yml.tt +18 -0
  236. package/lib/ruby/3.4.11/bundler/templates/newgem/lib/newgem/version.rb.tt +9 -0
  237. package/lib/ruby/3.4.11/bundler/templates/newgem/lib/newgem.rb.tt +15 -0
  238. package/lib/ruby/3.4.11/bundler/templates/newgem/newgem.gemspec.tt +52 -0
  239. package/lib/ruby/3.4.11/bundler/templates/newgem/rspec.tt +3 -0
  240. package/lib/ruby/3.4.11/bundler/templates/newgem/rubocop.yml.tt +8 -0
  241. package/lib/ruby/3.4.11/bundler/templates/newgem/sig/newgem.rbs.tt +8 -0
  242. package/lib/ruby/3.4.11/bundler/templates/newgem/spec/newgem_spec.rb.tt +11 -0
  243. package/lib/ruby/3.4.11/bundler/templates/newgem/spec/spec_helper.rb.tt +15 -0
  244. package/lib/ruby/3.4.11/bundler/templates/newgem/standard.yml.tt +3 -0
  245. package/lib/ruby/3.4.11/bundler/templates/newgem/test/minitest/test_helper.rb.tt +6 -0
  246. package/lib/ruby/3.4.11/bundler/templates/newgem/test/minitest/test_newgem.rb.tt +13 -0
  247. package/lib/ruby/3.4.11/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +15 -0
  248. package/lib/ruby/3.4.11/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +6 -0
  249. package/lib/ruby/3.4.11/bundler/ui/rg_proxy.rb +19 -0
  250. package/lib/ruby/3.4.11/bundler/ui/shell.rb +187 -0
  251. package/lib/ruby/3.4.11/bundler/ui/silent.rb +96 -0
  252. package/lib/ruby/3.4.11/bundler/ui.rb +9 -0
  253. package/lib/ruby/3.4.11/bundler/uri_credentials_filter.rb +43 -0
  254. package/lib/ruby/3.4.11/bundler/uri_normalizer.rb +23 -0
  255. package/lib/ruby/3.4.11/bundler/vendor/.document +1 -0
  256. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/.document +1 -0
  257. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +224 -0
  258. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/lib/connection_pool/version.rb +3 -0
  259. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +56 -0
  260. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/lib/connection_pool.rb +186 -0
  261. package/lib/ruby/3.4.11/bundler/vendor/fileutils/.document +1 -0
  262. package/lib/ruby/3.4.11/bundler/vendor/fileutils/lib/fileutils.rb +2696 -0
  263. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/.document +1 -0
  264. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb +41 -0
  265. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb +65 -0
  266. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +79 -0
  267. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +1111 -0
  268. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/.document +1 -0
  269. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb +20 -0
  270. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +169 -0
  271. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb +182 -0
  272. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +150 -0
  273. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/package.rb +43 -0
  274. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb +121 -0
  275. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb +45 -0
  276. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb +19 -0
  277. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +61 -0
  278. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/strategy.rb +42 -0
  279. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/term.rb +105 -0
  280. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version.rb +3 -0
  281. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +129 -0
  282. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +423 -0
  283. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +236 -0
  284. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +178 -0
  285. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub.rb +31 -0
  286. package/lib/ruby/3.4.11/bundler/vendor/securerandom/.document +1 -0
  287. package/lib/ruby/3.4.11/bundler/vendor/securerandom/lib/securerandom.rb +102 -0
  288. package/lib/ruby/3.4.11/bundler/vendor/thor/.document +1 -0
  289. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/create_file.rb +105 -0
  290. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/create_link.rb +61 -0
  291. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/directory.rb +108 -0
  292. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/empty_directory.rb +143 -0
  293. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +371 -0
  294. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +130 -0
  295. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions.rb +340 -0
  296. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/base.rb +825 -0
  297. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/command.rb +151 -0
  298. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +107 -0
  299. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/error.rb +106 -0
  300. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/group.rb +292 -0
  301. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/invocation.rb +178 -0
  302. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/line_editor/basic.rb +37 -0
  303. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/line_editor/readline.rb +88 -0
  304. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/line_editor.rb +17 -0
  305. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/nested_context.rb +29 -0
  306. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser/argument.rb +86 -0
  307. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser/arguments.rb +195 -0
  308. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser/option.rb +178 -0
  309. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser/options.rb +294 -0
  310. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser.rb +4 -0
  311. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/rake_compat.rb +72 -0
  312. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/runner.rb +335 -0
  313. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/basic.rb +388 -0
  314. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/color.rb +112 -0
  315. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/column_printer.rb +29 -0
  316. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/html.rb +81 -0
  317. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/table_printer.rb +118 -0
  318. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/terminal.rb +42 -0
  319. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/wrapped_printer.rb +38 -0
  320. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell.rb +81 -0
  321. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/util.rb +285 -0
  322. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/version.rb +3 -0
  323. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor.rb +674 -0
  324. package/lib/ruby/3.4.11/bundler/vendor/tsort/.document +1 -0
  325. package/lib/ruby/3.4.11/bundler/vendor/tsort/lib/tsort.rb +455 -0
  326. package/lib/ruby/3.4.11/bundler/vendor/uri/.document +1 -0
  327. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/common.rb +880 -0
  328. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/file.rb +100 -0
  329. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/ftp.rb +267 -0
  330. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/generic.rb +1592 -0
  331. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/http.rb +125 -0
  332. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/https.rb +23 -0
  333. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/ldap.rb +261 -0
  334. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/ldaps.rb +22 -0
  335. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/mailto.rb +293 -0
  336. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +546 -0
  337. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +206 -0
  338. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/version.rb +6 -0
  339. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/ws.rb +83 -0
  340. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/wss.rb +23 -0
  341. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri.rb +104 -0
  342. package/lib/ruby/3.4.11/bundler/vendored_fileutils.rb +4 -0
  343. package/lib/ruby/3.4.11/bundler/vendored_net_http.rb +23 -0
  344. package/lib/ruby/3.4.11/bundler/vendored_persistent.rb +11 -0
  345. package/lib/ruby/3.4.11/bundler/vendored_pub_grub.rb +4 -0
  346. package/lib/ruby/3.4.11/bundler/vendored_securerandom.rb +12 -0
  347. package/lib/ruby/3.4.11/bundler/vendored_thor.rb +8 -0
  348. package/lib/ruby/3.4.11/bundler/vendored_timeout.rb +12 -0
  349. package/lib/ruby/3.4.11/bundler/vendored_tsort.rb +4 -0
  350. package/lib/ruby/3.4.11/bundler/vendored_uri.rb +21 -0
  351. package/lib/ruby/3.4.11/bundler/version.rb +13 -0
  352. package/lib/ruby/3.4.11/bundler/vlad.rb +17 -0
  353. package/lib/ruby/3.4.11/bundler/worker.rb +117 -0
  354. package/lib/ruby/3.4.11/bundler/yaml_serializer.rb +98 -0
  355. package/lib/ruby/3.4.11/bundler.rb +701 -0
  356. package/lib/ruby/3.4.11/cgi/cgi.gemspec +43 -0
  357. package/lib/ruby/3.4.11/cgi/cookie.rb +210 -0
  358. package/lib/ruby/3.4.11/cgi/core.rb +900 -0
  359. package/lib/ruby/3.4.11/cgi/html.rb +1035 -0
  360. package/lib/ruby/3.4.11/cgi/session/pstore.rb +91 -0
  361. package/lib/ruby/3.4.11/cgi/session.rb +562 -0
  362. package/lib/ruby/3.4.11/cgi/util.rb +258 -0
  363. package/lib/ruby/3.4.11/cgi.rb +297 -0
  364. package/lib/ruby/3.4.11/delegate.gemspec +29 -0
  365. package/lib/ruby/3.4.11/delegate.rb +444 -0
  366. package/lib/ruby/3.4.11/did_you_mean/core_ext/name_error.rb +57 -0
  367. package/lib/ruby/3.4.11/did_you_mean/did_you_mean.gemspec +25 -0
  368. package/lib/ruby/3.4.11/did_you_mean/experimental.rb +2 -0
  369. package/lib/ruby/3.4.11/did_you_mean/formatter.rb +44 -0
  370. package/lib/ruby/3.4.11/did_you_mean/formatters/plain_formatter.rb +4 -0
  371. package/lib/ruby/3.4.11/did_you_mean/formatters/verbose_formatter.rb +10 -0
  372. package/lib/ruby/3.4.11/did_you_mean/jaro_winkler.rb +84 -0
  373. package/lib/ruby/3.4.11/did_you_mean/levenshtein.rb +57 -0
  374. package/lib/ruby/3.4.11/did_you_mean/spell_checker.rb +46 -0
  375. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/key_error_checker.rb +28 -0
  376. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/method_name_checker.rb +79 -0
  377. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb +49 -0
  378. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb +85 -0
  379. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/name_error_checkers.rb +20 -0
  380. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/null_checker.rb +6 -0
  381. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/pattern_key_name_checker.rb +28 -0
  382. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/require_path_checker.rb +39 -0
  383. package/lib/ruby/3.4.11/did_you_mean/tree_spell_checker.rb +109 -0
  384. package/lib/ruby/3.4.11/did_you_mean/verbose.rb +2 -0
  385. package/lib/ruby/3.4.11/did_you_mean/version.rb +3 -0
  386. package/lib/ruby/3.4.11/did_you_mean.rb +131 -0
  387. package/lib/ruby/3.4.11/erb/compiler.rb +472 -0
  388. package/lib/ruby/3.4.11/erb/def_method.rb +47 -0
  389. package/lib/ruby/3.4.11/erb/util.rb +63 -0
  390. package/lib/ruby/3.4.11/erb/version.rb +5 -0
  391. package/lib/ruby/3.4.11/erb.gemspec +38 -0
  392. package/lib/ruby/3.4.11/erb.rb +509 -0
  393. package/lib/ruby/3.4.11/error_highlight/base.rb +830 -0
  394. package/lib/ruby/3.4.11/error_highlight/core_ext.rb +47 -0
  395. package/lib/ruby/3.4.11/error_highlight/error_highlight.gemspec +27 -0
  396. package/lib/ruby/3.4.11/error_highlight/formatter.rb +74 -0
  397. package/lib/ruby/3.4.11/error_highlight/version.rb +3 -0
  398. package/lib/ruby/3.4.11/error_highlight.rb +2 -0
  399. package/lib/ruby/3.4.11/fileutils.gemspec +31 -0
  400. package/lib/ruby/3.4.11/fileutils.rb +2696 -0
  401. package/lib/ruby/3.4.11/find.gemspec +29 -0
  402. package/lib/ruby/3.4.11/find.rb +90 -0
  403. package/lib/ruby/3.4.11/forwardable/forwardable.gemspec +26 -0
  404. package/lib/ruby/3.4.11/forwardable/impl.rb +17 -0
  405. package/lib/ruby/3.4.11/forwardable.rb +321 -0
  406. package/lib/ruby/3.4.11/ipaddr.gemspec +36 -0
  407. package/lib/ruby/3.4.11/ipaddr.rb +841 -0
  408. package/lib/ruby/3.4.11/irb/cmd/nop.rb +4 -0
  409. package/lib/ruby/3.4.11/irb/color.rb +262 -0
  410. package/lib/ruby/3.4.11/irb/color_printer.rb +55 -0
  411. package/lib/ruby/3.4.11/irb/command/backtrace.rb +17 -0
  412. package/lib/ruby/3.4.11/irb/command/base.rb +60 -0
  413. package/lib/ruby/3.4.11/irb/command/break.rb +17 -0
  414. package/lib/ruby/3.4.11/irb/command/catch.rb +17 -0
  415. package/lib/ruby/3.4.11/irb/command/cd.rb +51 -0
  416. package/lib/ruby/3.4.11/irb/command/chws.rb +40 -0
  417. package/lib/ruby/3.4.11/irb/command/context.rb +16 -0
  418. package/lib/ruby/3.4.11/irb/command/continue.rb +17 -0
  419. package/lib/ruby/3.4.11/irb/command/debug.rb +73 -0
  420. package/lib/ruby/3.4.11/irb/command/delete.rb +17 -0
  421. package/lib/ruby/3.4.11/irb/command/disable_irb.rb +19 -0
  422. package/lib/ruby/3.4.11/irb/command/edit.rb +63 -0
  423. package/lib/ruby/3.4.11/irb/command/exit.rb +18 -0
  424. package/lib/ruby/3.4.11/irb/command/finish.rb +17 -0
  425. package/lib/ruby/3.4.11/irb/command/force_exit.rb +18 -0
  426. package/lib/ruby/3.4.11/irb/command/help.rb +83 -0
  427. package/lib/ruby/3.4.11/irb/command/history.rb +45 -0
  428. package/lib/ruby/3.4.11/irb/command/info.rb +17 -0
  429. package/lib/ruby/3.4.11/irb/command/internal_helpers.rb +27 -0
  430. package/lib/ruby/3.4.11/irb/command/irb_info.rb +33 -0
  431. package/lib/ruby/3.4.11/irb/command/load.rb +91 -0
  432. package/lib/ruby/3.4.11/irb/command/ls.rb +167 -0
  433. package/lib/ruby/3.4.11/irb/command/measure.rb +49 -0
  434. package/lib/ruby/3.4.11/irb/command/next.rb +17 -0
  435. package/lib/ruby/3.4.11/irb/command/pushws.rb +65 -0
  436. package/lib/ruby/3.4.11/irb/command/show_doc.rb +51 -0
  437. package/lib/ruby/3.4.11/irb/command/show_source.rb +74 -0
  438. package/lib/ruby/3.4.11/irb/command/step.rb +17 -0
  439. package/lib/ruby/3.4.11/irb/command/subirb.rb +123 -0
  440. package/lib/ruby/3.4.11/irb/command/whereami.rb +23 -0
  441. package/lib/ruby/3.4.11/irb/command.rb +23 -0
  442. package/lib/ruby/3.4.11/irb/completion.rb +504 -0
  443. package/lib/ruby/3.4.11/irb/context.rb +716 -0
  444. package/lib/ruby/3.4.11/irb/debug/ui.rb +101 -0
  445. package/lib/ruby/3.4.11/irb/debug.rb +127 -0
  446. package/lib/ruby/3.4.11/irb/default_commands.rb +276 -0
  447. package/lib/ruby/3.4.11/irb/easter-egg.rb +152 -0
  448. package/lib/ruby/3.4.11/irb/ext/change-ws.rb +37 -0
  449. package/lib/ruby/3.4.11/irb/ext/eval_history.rb +149 -0
  450. package/lib/ruby/3.4.11/irb/ext/loader.rb +127 -0
  451. package/lib/ruby/3.4.11/irb/ext/multi-irb.rb +258 -0
  452. package/lib/ruby/3.4.11/irb/ext/tracer.rb +39 -0
  453. package/lib/ruby/3.4.11/irb/ext/use-loader.rb +67 -0
  454. package/lib/ruby/3.4.11/irb/ext/workspaces.rb +36 -0
  455. package/lib/ruby/3.4.11/irb/frame.rb +80 -0
  456. package/lib/ruby/3.4.11/irb/help.rb +28 -0
  457. package/lib/ruby/3.4.11/irb/helper_method/base.rb +16 -0
  458. package/lib/ruby/3.4.11/irb/helper_method/conf.rb +11 -0
  459. package/lib/ruby/3.4.11/irb/helper_method.rb +29 -0
  460. package/lib/ruby/3.4.11/irb/history.rb +112 -0
  461. package/lib/ruby/3.4.11/irb/init.rb +538 -0
  462. package/lib/ruby/3.4.11/irb/input-method.rb +515 -0
  463. package/lib/ruby/3.4.11/irb/inspector.rb +131 -0
  464. package/lib/ruby/3.4.11/irb/irb.gemspec +46 -0
  465. package/lib/ruby/3.4.11/irb/lc/error.rb +52 -0
  466. package/lib/ruby/3.4.11/irb/lc/help-message +55 -0
  467. package/lib/ruby/3.4.11/irb/lc/ja/error.rb +53 -0
  468. package/lib/ruby/3.4.11/irb/lc/ja/help-message +58 -0
  469. package/lib/ruby/3.4.11/irb/locale.rb +153 -0
  470. package/lib/ruby/3.4.11/irb/nesting_parser.rb +239 -0
  471. package/lib/ruby/3.4.11/irb/notifier.rb +230 -0
  472. package/lib/ruby/3.4.11/irb/output-method.rb +80 -0
  473. package/lib/ruby/3.4.11/irb/pager.rb +100 -0
  474. package/lib/ruby/3.4.11/irb/ruby-lex.rb +476 -0
  475. package/lib/ruby/3.4.11/irb/ruby_logo.aa +118 -0
  476. package/lib/ruby/3.4.11/irb/source_finder.rb +138 -0
  477. package/lib/ruby/3.4.11/irb/statement.rb +80 -0
  478. package/lib/ruby/3.4.11/irb/version.rb +11 -0
  479. package/lib/ruby/3.4.11/irb/workspace.rb +171 -0
  480. package/lib/ruby/3.4.11/irb/ws-for-case-2.rb +9 -0
  481. package/lib/ruby/3.4.11/irb/xmp.rb +164 -0
  482. package/lib/ruby/3.4.11/irb.rb +1593 -0
  483. package/lib/ruby/3.4.11/logger/errors.rb +9 -0
  484. package/lib/ruby/3.4.11/logger/formatter.rb +36 -0
  485. package/lib/ruby/3.4.11/logger/log_device.rb +236 -0
  486. package/lib/ruby/3.4.11/logger/logger.gemspec +22 -0
  487. package/lib/ruby/3.4.11/logger/period.rb +47 -0
  488. package/lib/ruby/3.4.11/logger/severity.rb +38 -0
  489. package/lib/ruby/3.4.11/logger/version.rb +5 -0
  490. package/lib/ruby/3.4.11/logger.rb +761 -0
  491. package/lib/ruby/3.4.11/mkmf.rb +3045 -0
  492. package/lib/ruby/3.4.11/net/http/exceptions.rb +34 -0
  493. package/lib/ruby/3.4.11/net/http/generic_request.rb +414 -0
  494. package/lib/ruby/3.4.11/net/http/header.rb +981 -0
  495. package/lib/ruby/3.4.11/net/http/net-http.gemspec +39 -0
  496. package/lib/ruby/3.4.11/net/http/proxy_delta.rb +17 -0
  497. package/lib/ruby/3.4.11/net/http/request.rb +88 -0
  498. package/lib/ruby/3.4.11/net/http/requests.rb +430 -0
  499. package/lib/ruby/3.4.11/net/http/response.rb +738 -0
  500. package/lib/ruby/3.4.11/net/http/responses.rb +1174 -0
  501. package/lib/ruby/3.4.11/net/http/status.rb +84 -0
  502. package/lib/ruby/3.4.11/net/http.rb +2574 -0
  503. package/lib/ruby/3.4.11/net/https.rb +23 -0
  504. package/lib/ruby/3.4.11/net/net-protocol.gemspec +34 -0
  505. package/lib/ruby/3.4.11/net/protocol.rb +544 -0
  506. package/lib/ruby/3.4.11/open-uri.gemspec +32 -0
  507. package/lib/ruby/3.4.11/open-uri.rb +895 -0
  508. package/lib/ruby/3.4.11/open3/open3.gemspec +33 -0
  509. package/lib/ruby/3.4.11/open3/version.rb +3 -0
  510. package/lib/ruby/3.4.11/open3.rb +1410 -0
  511. package/lib/ruby/3.4.11/optionparser.rb +2 -0
  512. package/lib/ruby/3.4.11/optparse/ac.rb +70 -0
  513. package/lib/ruby/3.4.11/optparse/date.rb +18 -0
  514. package/lib/ruby/3.4.11/optparse/kwargs.rb +27 -0
  515. package/lib/ruby/3.4.11/optparse/optparse.gemspec +31 -0
  516. package/lib/ruby/3.4.11/optparse/shellwords.rb +7 -0
  517. package/lib/ruby/3.4.11/optparse/time.rb +11 -0
  518. package/lib/ruby/3.4.11/optparse/uri.rb +7 -0
  519. package/lib/ruby/3.4.11/optparse/version.rb +80 -0
  520. package/lib/ruby/3.4.11/optparse.rb +2429 -0
  521. package/lib/ruby/3.4.11/ostruct.gemspec +24 -0
  522. package/lib/ruby/3.4.11/ostruct.rb +489 -0
  523. package/lib/ruby/3.4.11/pp.gemspec +35 -0
  524. package/lib/ruby/3.4.11/pp.rb +699 -0
  525. package/lib/ruby/3.4.11/prettyprint.gemspec +29 -0
  526. package/lib/ruby/3.4.11/prettyprint.rb +558 -0
  527. package/lib/ruby/3.4.11/prism/compiler.rb +801 -0
  528. package/lib/ruby/3.4.11/prism/desugar_compiler.rb +392 -0
  529. package/lib/ruby/3.4.11/prism/dispatcher.rb +2210 -0
  530. package/lib/ruby/3.4.11/prism/dsl.rb +1003 -0
  531. package/lib/ruby/3.4.11/prism/ffi.rb +570 -0
  532. package/lib/ruby/3.4.11/prism/inspect_visitor.rb +2392 -0
  533. package/lib/ruby/3.4.11/prism/lex_compat.rb +928 -0
  534. package/lib/ruby/3.4.11/prism/mutation_compiler.rb +772 -0
  535. package/lib/ruby/3.4.11/prism/node.rb +18816 -0
  536. package/lib/ruby/3.4.11/prism/node_ext.rb +511 -0
  537. package/lib/ruby/3.4.11/prism/pack.rb +230 -0
  538. package/lib/ruby/3.4.11/prism/parse_result/comments.rb +188 -0
  539. package/lib/ruby/3.4.11/prism/parse_result/errors.rb +66 -0
  540. package/lib/ruby/3.4.11/prism/parse_result/newlines.rb +155 -0
  541. package/lib/ruby/3.4.11/prism/parse_result.rb +911 -0
  542. package/lib/ruby/3.4.11/prism/pattern.rb +269 -0
  543. package/lib/ruby/3.4.11/prism/polyfill/append_as_bytes.rb +15 -0
  544. package/lib/ruby/3.4.11/prism/polyfill/byteindex.rb +13 -0
  545. package/lib/ruby/3.4.11/prism/polyfill/scan_byte.rb +14 -0
  546. package/lib/ruby/3.4.11/prism/polyfill/unpack1.rb +14 -0
  547. package/lib/ruby/3.4.11/prism/polyfill/warn.rb +36 -0
  548. package/lib/ruby/3.4.11/prism/prism.gemspec +174 -0
  549. package/lib/ruby/3.4.11/prism/reflection.rb +416 -0
  550. package/lib/ruby/3.4.11/prism/relocation.rb +505 -0
  551. package/lib/ruby/3.4.11/prism/serialize.rb +2400 -0
  552. package/lib/ruby/3.4.11/prism/string_query.rb +31 -0
  553. package/lib/ruby/3.4.11/prism/translation/parser/builder.rb +62 -0
  554. package/lib/ruby/3.4.11/prism/translation/parser/compiler.rb +2234 -0
  555. package/lib/ruby/3.4.11/prism/translation/parser/lexer.rb +820 -0
  556. package/lib/ruby/3.4.11/prism/translation/parser.rb +374 -0
  557. package/lib/ruby/3.4.11/prism/translation/parser33.rb +13 -0
  558. package/lib/ruby/3.4.11/prism/translation/parser34.rb +13 -0
  559. package/lib/ruby/3.4.11/prism/translation/parser35.rb +13 -0
  560. package/lib/ruby/3.4.11/prism/translation/parser_current.rb +24 -0
  561. package/lib/ruby/3.4.11/prism/translation/ripper/sexp.rb +126 -0
  562. package/lib/ruby/3.4.11/prism/translation/ripper/shim.rb +5 -0
  563. package/lib/ruby/3.4.11/prism/translation/ripper.rb +3474 -0
  564. package/lib/ruby/3.4.11/prism/translation/ruby_parser.rb +1929 -0
  565. package/lib/ruby/3.4.11/prism/translation.rb +16 -0
  566. package/lib/ruby/3.4.11/prism/visitor.rb +813 -0
  567. package/lib/ruby/3.4.11/prism.rb +91 -0
  568. package/lib/ruby/3.4.11/pstore.gemspec +32 -0
  569. package/lib/ruby/3.4.11/pstore.rb +736 -0
  570. package/lib/ruby/3.4.11/random/formatter.rb +372 -0
  571. package/lib/ruby/3.4.11/rbconfig.rb +366 -0
  572. package/lib/ruby/3.4.11/rdoc/.document +2 -0
  573. package/lib/ruby/3.4.11/rdoc/code_object/alias.rb +104 -0
  574. package/lib/ruby/3.4.11/rdoc/code_object/anon_class.rb +10 -0
  575. package/lib/ruby/3.4.11/rdoc/code_object/any_method.rb +374 -0
  576. package/lib/ruby/3.4.11/rdoc/code_object/attr.rb +172 -0
  577. package/lib/ruby/3.4.11/rdoc/code_object/class_module.rb +888 -0
  578. package/lib/ruby/3.4.11/rdoc/code_object/constant.rb +186 -0
  579. package/lib/ruby/3.4.11/rdoc/code_object/context/section.rb +175 -0
  580. package/lib/ruby/3.4.11/rdoc/code_object/context.rb +1222 -0
  581. package/lib/ruby/3.4.11/rdoc/code_object/extend.rb +9 -0
  582. package/lib/ruby/3.4.11/rdoc/code_object/ghost_method.rb +6 -0
  583. package/lib/ruby/3.4.11/rdoc/code_object/include.rb +9 -0
  584. package/lib/ruby/3.4.11/rdoc/code_object/meta_method.rb +6 -0
  585. package/lib/ruby/3.4.11/rdoc/code_object/method_attr.rb +410 -0
  586. package/lib/ruby/3.4.11/rdoc/code_object/mixin.rb +120 -0
  587. package/lib/ruby/3.4.11/rdoc/code_object/normal_class.rb +92 -0
  588. package/lib/ruby/3.4.11/rdoc/code_object/normal_module.rb +73 -0
  589. package/lib/ruby/3.4.11/rdoc/code_object/require.rb +51 -0
  590. package/lib/ruby/3.4.11/rdoc/code_object/single_class.rb +30 -0
  591. package/lib/ruby/3.4.11/rdoc/code_object/top_level.rb +273 -0
  592. package/lib/ruby/3.4.11/rdoc/code_object.rb +395 -0
  593. package/lib/ruby/3.4.11/rdoc/code_objects.rb +5 -0
  594. package/lib/ruby/3.4.11/rdoc/comment.rb +236 -0
  595. package/lib/ruby/3.4.11/rdoc/cross_reference.rb +228 -0
  596. package/lib/ruby/3.4.11/rdoc/encoding.rb +120 -0
  597. package/lib/ruby/3.4.11/rdoc/erb_partial.rb +18 -0
  598. package/lib/ruby/3.4.11/rdoc/erbio.rb +37 -0
  599. package/lib/ruby/3.4.11/rdoc/generator/darkfish.rb +812 -0
  600. package/lib/ruby/3.4.11/rdoc/generator/json_index.rb +284 -0
  601. package/lib/ruby/3.4.11/rdoc/generator/markup.rb +171 -0
  602. package/lib/ruby/3.4.11/rdoc/generator/pot/message_extractor.rb +68 -0
  603. package/lib/ruby/3.4.11/rdoc/generator/pot/po.rb +84 -0
  604. package/lib/ruby/3.4.11/rdoc/generator/pot/po_entry.rb +141 -0
  605. package/lib/ruby/3.4.11/rdoc/generator/pot.rb +94 -0
  606. package/lib/ruby/3.4.11/rdoc/generator/ri.rb +30 -0
  607. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/.document +0 -0
  608. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_footer.rhtml +5 -0
  609. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_head.rhtml +48 -0
  610. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_classes.rhtml +5 -0
  611. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +15 -0
  612. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +15 -0
  613. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +15 -0
  614. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_methods.rhtml +21 -0
  615. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_navigation.rhtml +11 -0
  616. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +32 -0
  617. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_parent.rhtml +6 -0
  618. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_search.rhtml +14 -0
  619. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +11 -0
  620. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +39 -0
  621. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_toggle.rhtml +3 -0
  622. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/class.rhtml +221 -0
  623. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/css/fonts.css +167 -0
  624. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/css/rdoc.css +683 -0
  625. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/Lato-Light.ttf +0 -0
  626. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/Lato-LightItalic.ttf +0 -0
  627. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/Lato-Regular.ttf +0 -0
  628. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/Lato-RegularItalic.ttf +0 -0
  629. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/SourceCodePro-Bold.ttf +0 -0
  630. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/SourceCodePro-Regular.ttf +0 -0
  631. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/add.png +0 -0
  632. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/arrow_up.png +0 -0
  633. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/brick.png +0 -0
  634. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/brick_link.png +0 -0
  635. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/bug.png +0 -0
  636. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/bullet_black.png +0 -0
  637. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/bullet_toggle_minus.png +0 -0
  638. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/bullet_toggle_plus.png +0 -0
  639. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/date.png +0 -0
  640. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/delete.png +0 -0
  641. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/find.png +0 -0
  642. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/loadingAnimation.gif +0 -0
  643. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/macFFBgHack.png +0 -0
  644. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/package.png +0 -0
  645. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/page_green.png +0 -0
  646. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/page_white_text.png +0 -0
  647. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/page_white_width.png +0 -0
  648. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/plugin.png +0 -0
  649. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/ruby.png +0 -0
  650. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/tag_blue.png +0 -0
  651. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/tag_green.png +0 -0
  652. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/transparent.png +0 -0
  653. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/wrench.png +0 -0
  654. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/wrench_orange.png +0 -0
  655. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/zoom.png +0 -0
  656. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/index.rhtml +23 -0
  657. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/js/darkfish.js +120 -0
  658. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/js/search.js +110 -0
  659. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/page.rhtml +18 -0
  660. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/servlet_not_found.rhtml +20 -0
  661. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/servlet_root.rhtml +65 -0
  662. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/table_of_contents.rhtml +70 -0
  663. package/lib/ruby/3.4.11/rdoc/generator/template/json_index/.document +1 -0
  664. package/lib/ruby/3.4.11/rdoc/generator/template/json_index/js/navigation.js +105 -0
  665. package/lib/ruby/3.4.11/rdoc/generator/template/json_index/js/searcher.js +229 -0
  666. package/lib/ruby/3.4.11/rdoc/generator.rb +51 -0
  667. package/lib/ruby/3.4.11/rdoc/i18n/locale.rb +102 -0
  668. package/lib/ruby/3.4.11/rdoc/i18n/text.rb +126 -0
  669. package/lib/ruby/3.4.11/rdoc/i18n.rb +10 -0
  670. package/lib/ruby/3.4.11/rdoc/known_classes.rb +74 -0
  671. package/lib/ruby/3.4.11/rdoc/markdown/.document +1 -0
  672. package/lib/ruby/3.4.11/rdoc/markdown/entities.rb +2131 -0
  673. package/lib/ruby/3.4.11/rdoc/markdown/literals.rb +454 -0
  674. package/lib/ruby/3.4.11/rdoc/markdown.rb +16806 -0
  675. package/lib/ruby/3.4.11/rdoc/markup/attr_changer.rb +22 -0
  676. package/lib/ruby/3.4.11/rdoc/markup/attr_span.rb +35 -0
  677. package/lib/ruby/3.4.11/rdoc/markup/attribute_manager.rb +405 -0
  678. package/lib/ruby/3.4.11/rdoc/markup/attributes.rb +70 -0
  679. package/lib/ruby/3.4.11/rdoc/markup/blank_line.rb +27 -0
  680. package/lib/ruby/3.4.11/rdoc/markup/block_quote.rb +14 -0
  681. package/lib/ruby/3.4.11/rdoc/markup/document.rb +164 -0
  682. package/lib/ruby/3.4.11/rdoc/markup/formatter.rb +272 -0
  683. package/lib/ruby/3.4.11/rdoc/markup/hard_break.rb +31 -0
  684. package/lib/ruby/3.4.11/rdoc/markup/heading.rb +84 -0
  685. package/lib/ruby/3.4.11/rdoc/markup/include.rb +42 -0
  686. package/lib/ruby/3.4.11/rdoc/markup/indented_paragraph.rb +47 -0
  687. package/lib/ruby/3.4.11/rdoc/markup/list.rb +101 -0
  688. package/lib/ruby/3.4.11/rdoc/markup/list_item.rb +99 -0
  689. package/lib/ruby/3.4.11/rdoc/markup/paragraph.rb +28 -0
  690. package/lib/ruby/3.4.11/rdoc/markup/parser.rb +585 -0
  691. package/lib/ruby/3.4.11/rdoc/markup/pre_process.rb +318 -0
  692. package/lib/ruby/3.4.11/rdoc/markup/raw.rb +69 -0
  693. package/lib/ruby/3.4.11/rdoc/markup/regexp_handling.rb +40 -0
  694. package/lib/ruby/3.4.11/rdoc/markup/rule.rb +20 -0
  695. package/lib/ruby/3.4.11/rdoc/markup/table.rb +56 -0
  696. package/lib/ruby/3.4.11/rdoc/markup/to_ansi.rb +93 -0
  697. package/lib/ruby/3.4.11/rdoc/markup/to_bs.rb +102 -0
  698. package/lib/ruby/3.4.11/rdoc/markup/to_html.rb +462 -0
  699. package/lib/ruby/3.4.11/rdoc/markup/to_html_crossref.rb +226 -0
  700. package/lib/ruby/3.4.11/rdoc/markup/to_html_snippet.rb +287 -0
  701. package/lib/ruby/3.4.11/rdoc/markup/to_joined_paragraph.rb +46 -0
  702. package/lib/ruby/3.4.11/rdoc/markup/to_label.rb +74 -0
  703. package/lib/ruby/3.4.11/rdoc/markup/to_markdown.rb +191 -0
  704. package/lib/ruby/3.4.11/rdoc/markup/to_rdoc.rb +353 -0
  705. package/lib/ruby/3.4.11/rdoc/markup/to_table_of_contents.rb +88 -0
  706. package/lib/ruby/3.4.11/rdoc/markup/to_test.rb +69 -0
  707. package/lib/ruby/3.4.11/rdoc/markup/to_tt_only.rb +120 -0
  708. package/lib/ruby/3.4.11/rdoc/markup/verbatim.rb +83 -0
  709. package/lib/ruby/3.4.11/rdoc/markup.rb +240 -0
  710. package/lib/ruby/3.4.11/rdoc/options.rb +1416 -0
  711. package/lib/ruby/3.4.11/rdoc/parser/c.rb +1257 -0
  712. package/lib/ruby/3.4.11/rdoc/parser/changelog.rb +350 -0
  713. package/lib/ruby/3.4.11/rdoc/parser/markdown.rb +22 -0
  714. package/lib/ruby/3.4.11/rdoc/parser/prism_ruby.rb +1092 -0
  715. package/lib/ruby/3.4.11/rdoc/parser/rd.rb +22 -0
  716. package/lib/ruby/3.4.11/rdoc/parser/ripper_state_lex.rb +302 -0
  717. package/lib/ruby/3.4.11/rdoc/parser/ruby.rb +2378 -0
  718. package/lib/ruby/3.4.11/rdoc/parser/ruby_tools.rb +165 -0
  719. package/lib/ruby/3.4.11/rdoc/parser/simple.rb +61 -0
  720. package/lib/ruby/3.4.11/rdoc/parser/text.rb +11 -0
  721. package/lib/ruby/3.4.11/rdoc/parser.rb +297 -0
  722. package/lib/ruby/3.4.11/rdoc/rd/.document +1 -0
  723. package/lib/ruby/3.4.11/rdoc/rd/block_parser.rb +1706 -0
  724. package/lib/ruby/3.4.11/rdoc/rd/inline.rb +71 -0
  725. package/lib/ruby/3.4.11/rdoc/rd/inline_parser.rb +1854 -0
  726. package/lib/ruby/3.4.11/rdoc/rd.rb +99 -0
  727. package/lib/ruby/3.4.11/rdoc/rdoc.gemspec +68 -0
  728. package/lib/ruby/3.4.11/rdoc/rdoc.rb +551 -0
  729. package/lib/ruby/3.4.11/rdoc/ri/driver.rb +1566 -0
  730. package/lib/ruby/3.4.11/rdoc/ri/formatter.rb +6 -0
  731. package/lib/ruby/3.4.11/rdoc/ri/paths.rb +171 -0
  732. package/lib/ruby/3.4.11/rdoc/ri/store.rb +6 -0
  733. package/lib/ruby/3.4.11/rdoc/ri/task.rb +71 -0
  734. package/lib/ruby/3.4.11/rdoc/ri.rb +20 -0
  735. package/lib/ruby/3.4.11/rdoc/rubygems_hook.rb +327 -0
  736. package/lib/ruby/3.4.11/rdoc/servlet.rb +452 -0
  737. package/lib/ruby/3.4.11/rdoc/stats/normal.rb +58 -0
  738. package/lib/ruby/3.4.11/rdoc/stats/quiet.rb +59 -0
  739. package/lib/ruby/3.4.11/rdoc/stats/verbose.rb +44 -0
  740. package/lib/ruby/3.4.11/rdoc/stats.rb +461 -0
  741. package/lib/ruby/3.4.11/rdoc/store.rb +997 -0
  742. package/lib/ruby/3.4.11/rdoc/task.rb +354 -0
  743. package/lib/ruby/3.4.11/rdoc/text.rb +322 -0
  744. package/lib/ruby/3.4.11/rdoc/token_stream.rb +118 -0
  745. package/lib/ruby/3.4.11/rdoc/tom_doc.rb +257 -0
  746. package/lib/ruby/3.4.11/rdoc/version.rb +10 -0
  747. package/lib/ruby/3.4.11/rdoc.rb +211 -0
  748. package/lib/ruby/3.4.11/readline.gemspec +33 -0
  749. package/lib/ruby/3.4.11/readline.rb +7 -0
  750. package/lib/ruby/3.4.11/reline/config.rb +373 -0
  751. package/lib/ruby/3.4.11/reline/face.rb +199 -0
  752. package/lib/ruby/3.4.11/reline/history.rb +76 -0
  753. package/lib/ruby/3.4.11/reline/io/ansi.rb +325 -0
  754. package/lib/ruby/3.4.11/reline/io/dumb.rb +120 -0
  755. package/lib/ruby/3.4.11/reline/io/windows.rb +530 -0
  756. package/lib/ruby/3.4.11/reline/io.rb +55 -0
  757. package/lib/ruby/3.4.11/reline/key_actor/base.rb +37 -0
  758. package/lib/ruby/3.4.11/reline/key_actor/composite.rb +17 -0
  759. package/lib/ruby/3.4.11/reline/key_actor/emacs.rb +517 -0
  760. package/lib/ruby/3.4.11/reline/key_actor/vi_command.rb +518 -0
  761. package/lib/ruby/3.4.11/reline/key_actor/vi_insert.rb +517 -0
  762. package/lib/ruby/3.4.11/reline/key_actor.rb +8 -0
  763. package/lib/ruby/3.4.11/reline/key_stroke.rb +119 -0
  764. package/lib/ruby/3.4.11/reline/kill_ring.rb +125 -0
  765. package/lib/ruby/3.4.11/reline/line_editor.rb +2382 -0
  766. package/lib/ruby/3.4.11/reline/reline.gemspec +30 -0
  767. package/lib/ruby/3.4.11/reline/unicode/east_asian_width.rb +1267 -0
  768. package/lib/ruby/3.4.11/reline/unicode.rb +415 -0
  769. package/lib/ruby/3.4.11/reline/version.rb +3 -0
  770. package/lib/ruby/3.4.11/reline.rb +519 -0
  771. package/lib/ruby/3.4.11/resolv.gemspec +30 -0
  772. package/lib/ruby/3.4.11/resolv.rb +3587 -0
  773. package/lib/ruby/3.4.11/ruby2_keywords.gemspec +23 -0
  774. package/lib/ruby/3.4.11/ruby_vm/rjit/.document +1 -0
  775. package/lib/ruby/3.4.11/ruby_vm/rjit/assembler.rb +1160 -0
  776. package/lib/ruby/3.4.11/ruby_vm/rjit/block.rb +11 -0
  777. package/lib/ruby/3.4.11/ruby_vm/rjit/branch_stub.rb +24 -0
  778. package/lib/ruby/3.4.11/ruby_vm/rjit/c_pointer.rb +394 -0
  779. package/lib/ruby/3.4.11/ruby_vm/rjit/c_type.rb +99 -0
  780. package/lib/ruby/3.4.11/ruby_vm/rjit/code_block.rb +91 -0
  781. package/lib/ruby/3.4.11/ruby_vm/rjit/compiler.rb +518 -0
  782. package/lib/ruby/3.4.11/ruby_vm/rjit/context.rb +377 -0
  783. package/lib/ruby/3.4.11/ruby_vm/rjit/entry_stub.rb +7 -0
  784. package/lib/ruby/3.4.11/ruby_vm/rjit/exit_compiler.rb +164 -0
  785. package/lib/ruby/3.4.11/ruby_vm/rjit/hooks.rb +36 -0
  786. package/lib/ruby/3.4.11/ruby_vm/rjit/insn_compiler.rb +6046 -0
  787. package/lib/ruby/3.4.11/ruby_vm/rjit/instruction.rb +1326 -0
  788. package/lib/ruby/3.4.11/ruby_vm/rjit/invariants.rb +155 -0
  789. package/lib/ruby/3.4.11/ruby_vm/rjit/jit_state.rb +65 -0
  790. package/lib/ruby/3.4.11/ruby_vm/rjit/stats.rb +191 -0
  791. package/lib/ruby/3.4.11/ruby_vm/rjit/type.rb +221 -0
  792. package/lib/ruby/3.4.11/rubygems/available_set.rb +165 -0
  793. package/lib/ruby/3.4.11/rubygems/basic_specification.rb +383 -0
  794. package/lib/ruby/3.4.11/rubygems/bundler_version_finder.rb +77 -0
  795. package/lib/ruby/3.4.11/rubygems/ci_detector.rb +75 -0
  796. package/lib/ruby/3.4.11/rubygems/command.rb +664 -0
  797. package/lib/ruby/3.4.11/rubygems/command_manager.rb +255 -0
  798. package/lib/ruby/3.4.11/rubygems/commands/build_command.rb +127 -0
  799. package/lib/ruby/3.4.11/rubygems/commands/cert_command.rb +325 -0
  800. package/lib/ruby/3.4.11/rubygems/commands/check_command.rb +97 -0
  801. package/lib/ruby/3.4.11/rubygems/commands/cleanup_command.rb +178 -0
  802. package/lib/ruby/3.4.11/rubygems/commands/contents_command.rb +196 -0
  803. package/lib/ruby/3.4.11/rubygems/commands/dependency_command.rb +206 -0
  804. package/lib/ruby/3.4.11/rubygems/commands/environment_command.rb +181 -0
  805. package/lib/ruby/3.4.11/rubygems/commands/exec_command.rb +256 -0
  806. package/lib/ruby/3.4.11/rubygems/commands/fetch_command.rb +109 -0
  807. package/lib/ruby/3.4.11/rubygems/commands/generate_index_command.rb +51 -0
  808. package/lib/ruby/3.4.11/rubygems/commands/help_command.rb +375 -0
  809. package/lib/ruby/3.4.11/rubygems/commands/info_command.rb +38 -0
  810. package/lib/ruby/3.4.11/rubygems/commands/install_command.rb +269 -0
  811. package/lib/ruby/3.4.11/rubygems/commands/list_command.rb +42 -0
  812. package/lib/ruby/3.4.11/rubygems/commands/lock_command.rb +109 -0
  813. package/lib/ruby/3.4.11/rubygems/commands/mirror_command.rb +26 -0
  814. package/lib/ruby/3.4.11/rubygems/commands/open_command.rb +83 -0
  815. package/lib/ruby/3.4.11/rubygems/commands/outdated_command.rb +33 -0
  816. package/lib/ruby/3.4.11/rubygems/commands/owner_command.rb +124 -0
  817. package/lib/ruby/3.4.11/rubygems/commands/pristine_command.rb +217 -0
  818. package/lib/ruby/3.4.11/rubygems/commands/push_command.rb +135 -0
  819. package/lib/ruby/3.4.11/rubygems/commands/query_command.rb +43 -0
  820. package/lib/ruby/3.4.11/rubygems/commands/rdoc_command.rb +90 -0
  821. package/lib/ruby/3.4.11/rubygems/commands/rebuild_command.rb +262 -0
  822. package/lib/ruby/3.4.11/rubygems/commands/search_command.rb +41 -0
  823. package/lib/ruby/3.4.11/rubygems/commands/server_command.rb +26 -0
  824. package/lib/ruby/3.4.11/rubygems/commands/setup_command.rb +663 -0
  825. package/lib/ruby/3.4.11/rubygems/commands/signin_command.rb +34 -0
  826. package/lib/ruby/3.4.11/rubygems/commands/signout_command.rb +32 -0
  827. package/lib/ruby/3.4.11/rubygems/commands/sources_command.rb +227 -0
  828. package/lib/ruby/3.4.11/rubygems/commands/specification_command.rb +156 -0
  829. package/lib/ruby/3.4.11/rubygems/commands/stale_command.rb +40 -0
  830. package/lib/ruby/3.4.11/rubygems/commands/uninstall_command.rb +204 -0
  831. package/lib/ruby/3.4.11/rubygems/commands/unpack_command.rb +168 -0
  832. package/lib/ruby/3.4.11/rubygems/commands/update_command.rb +326 -0
  833. package/lib/ruby/3.4.11/rubygems/commands/which_command.rb +88 -0
  834. package/lib/ruby/3.4.11/rubygems/commands/yank_command.rb +99 -0
  835. package/lib/ruby/3.4.11/rubygems/compatibility.rb +41 -0
  836. package/lib/ruby/3.4.11/rubygems/config_file.rb +618 -0
  837. package/lib/ruby/3.4.11/rubygems/core_ext/kernel_gem.rb +68 -0
  838. package/lib/ruby/3.4.11/rubygems/core_ext/kernel_require.rb +149 -0
  839. package/lib/ruby/3.4.11/rubygems/core_ext/kernel_warn.rb +45 -0
  840. package/lib/ruby/3.4.11/rubygems/core_ext/tcpsocket_init.rb +54 -0
  841. package/lib/ruby/3.4.11/rubygems/defaults.rb +308 -0
  842. package/lib/ruby/3.4.11/rubygems/dependency.rb +348 -0
  843. package/lib/ruby/3.4.11/rubygems/dependency_installer.rb +335 -0
  844. package/lib/ruby/3.4.11/rubygems/dependency_list.rb +243 -0
  845. package/lib/ruby/3.4.11/rubygems/deprecate.rb +169 -0
  846. package/lib/ruby/3.4.11/rubygems/doctor.rb +132 -0
  847. package/lib/ruby/3.4.11/rubygems/errors.rb +177 -0
  848. package/lib/ruby/3.4.11/rubygems/exceptions.rb +293 -0
  849. package/lib/ruby/3.4.11/rubygems/ext/build_error.rb +9 -0
  850. package/lib/ruby/3.4.11/rubygems/ext/builder.rb +260 -0
  851. package/lib/ruby/3.4.11/rubygems/ext/cargo_builder/link_flag_converter.rb +27 -0
  852. package/lib/ruby/3.4.11/rubygems/ext/cargo_builder.rb +346 -0
  853. package/lib/ruby/3.4.11/rubygems/ext/cmake_builder.rb +21 -0
  854. package/lib/ruby/3.4.11/rubygems/ext/configure_builder.rb +26 -0
  855. package/lib/ruby/3.4.11/rubygems/ext/ext_conf_builder.rb +77 -0
  856. package/lib/ruby/3.4.11/rubygems/ext/rake_builder.rb +37 -0
  857. package/lib/ruby/3.4.11/rubygems/ext.rb +20 -0
  858. package/lib/ruby/3.4.11/rubygems/gem_runner.rb +89 -0
  859. package/lib/ruby/3.4.11/rubygems/gemcutter_utilities/webauthn_listener/response.rb +163 -0
  860. package/lib/ruby/3.4.11/rubygems/gemcutter_utilities/webauthn_listener.rb +105 -0
  861. package/lib/ruby/3.4.11/rubygems/gemcutter_utilities/webauthn_poller.rb +80 -0
  862. package/lib/ruby/3.4.11/rubygems/gemcutter_utilities.rb +397 -0
  863. package/lib/ruby/3.4.11/rubygems/gemspec_helpers.rb +19 -0
  864. package/lib/ruby/3.4.11/rubygems/install_default_message.rb +13 -0
  865. package/lib/ruby/3.4.11/rubygems/install_message.rb +13 -0
  866. package/lib/ruby/3.4.11/rubygems/install_update_options.rb +204 -0
  867. package/lib/ruby/3.4.11/rubygems/installer.rb +1031 -0
  868. package/lib/ruby/3.4.11/rubygems/installer_uninstaller_utils.rb +27 -0
  869. package/lib/ruby/3.4.11/rubygems/local_remote_options.rb +146 -0
  870. package/lib/ruby/3.4.11/rubygems/name_tuple.rb +119 -0
  871. package/lib/ruby/3.4.11/rubygems/openssl.rb +7 -0
  872. package/lib/ruby/3.4.11/rubygems/package/digest_io.rb +63 -0
  873. package/lib/ruby/3.4.11/rubygems/package/file_source.rb +32 -0
  874. package/lib/ruby/3.4.11/rubygems/package/io_source.rb +48 -0
  875. package/lib/ruby/3.4.11/rubygems/package/old.rb +169 -0
  876. package/lib/ruby/3.4.11/rubygems/package/source.rb +4 -0
  877. package/lib/ruby/3.4.11/rubygems/package/tar_header.rb +277 -0
  878. package/lib/ruby/3.4.11/rubygems/package/tar_reader/entry.rb +244 -0
  879. package/lib/ruby/3.4.11/rubygems/package/tar_reader.rb +101 -0
  880. package/lib/ruby/3.4.11/rubygems/package/tar_writer.rb +332 -0
  881. package/lib/ruby/3.4.11/rubygems/package.rb +742 -0
  882. package/lib/ruby/3.4.11/rubygems/package_task.rb +123 -0
  883. package/lib/ruby/3.4.11/rubygems/path_support.rb +85 -0
  884. package/lib/ruby/3.4.11/rubygems/platform.rb +269 -0
  885. package/lib/ruby/3.4.11/rubygems/psych_tree.rb +37 -0
  886. package/lib/ruby/3.4.11/rubygems/query_utils.rb +349 -0
  887. package/lib/ruby/3.4.11/rubygems/rdoc.rb +26 -0
  888. package/lib/ruby/3.4.11/rubygems/remote_fetcher.rb +341 -0
  889. package/lib/ruby/3.4.11/rubygems/request/connection_pools.rb +95 -0
  890. package/lib/ruby/3.4.11/rubygems/request/http_pool.rb +47 -0
  891. package/lib/ruby/3.4.11/rubygems/request/https_pool.rb +10 -0
  892. package/lib/ruby/3.4.11/rubygems/request.rb +298 -0
  893. package/lib/ruby/3.4.11/rubygems/request_set/gem_dependency_api.rb +841 -0
  894. package/lib/ruby/3.4.11/rubygems/request_set/lockfile/parser.rb +344 -0
  895. package/lib/ruby/3.4.11/rubygems/request_set/lockfile/tokenizer.rb +122 -0
  896. package/lib/ruby/3.4.11/rubygems/request_set/lockfile.rb +235 -0
  897. package/lib/ruby/3.4.11/rubygems/request_set.rb +468 -0
  898. package/lib/ruby/3.4.11/rubygems/requirement.rb +298 -0
  899. package/lib/ruby/3.4.11/rubygems/resolver/activation_request.rb +159 -0
  900. package/lib/ruby/3.4.11/rubygems/resolver/api_set/gem_parser.rb +21 -0
  901. package/lib/ruby/3.4.11/rubygems/resolver/api_set.rb +139 -0
  902. package/lib/ruby/3.4.11/rubygems/resolver/api_specification.rb +105 -0
  903. package/lib/ruby/3.4.11/rubygems/resolver/best_set.rb +49 -0
  904. package/lib/ruby/3.4.11/rubygems/resolver/composed_set.rb +65 -0
  905. package/lib/ruby/3.4.11/rubygems/resolver/conflict.rb +146 -0
  906. package/lib/ruby/3.4.11/rubygems/resolver/current_set.rb +12 -0
  907. package/lib/ruby/3.4.11/rubygems/resolver/dependency_request.rb +119 -0
  908. package/lib/ruby/3.4.11/rubygems/resolver/git_set.rb +120 -0
  909. package/lib/ruby/3.4.11/rubygems/resolver/git_specification.rb +57 -0
  910. package/lib/ruby/3.4.11/rubygems/resolver/index_set.rb +79 -0
  911. package/lib/ruby/3.4.11/rubygems/resolver/index_specification.rb +101 -0
  912. package/lib/ruby/3.4.11/rubygems/resolver/installed_specification.rb +57 -0
  913. package/lib/ruby/3.4.11/rubygems/resolver/installer_set.rb +271 -0
  914. package/lib/ruby/3.4.11/rubygems/resolver/local_specification.rb +40 -0
  915. package/lib/ruby/3.4.11/rubygems/resolver/lock_set.rb +81 -0
  916. package/lib/ruby/3.4.11/rubygems/resolver/lock_specification.rb +86 -0
  917. package/lib/ruby/3.4.11/rubygems/resolver/requirement_list.rb +82 -0
  918. package/lib/ruby/3.4.11/rubygems/resolver/set.rb +55 -0
  919. package/lib/ruby/3.4.11/rubygems/resolver/source_set.rb +47 -0
  920. package/lib/ruby/3.4.11/rubygems/resolver/spec_specification.rb +76 -0
  921. package/lib/ruby/3.4.11/rubygems/resolver/specification.rb +126 -0
  922. package/lib/ruby/3.4.11/rubygems/resolver/stats.rb +46 -0
  923. package/lib/ruby/3.4.11/rubygems/resolver/vendor_set.rb +86 -0
  924. package/lib/ruby/3.4.11/rubygems/resolver/vendor_specification.rb +23 -0
  925. package/lib/ruby/3.4.11/rubygems/resolver.rb +341 -0
  926. package/lib/ruby/3.4.11/rubygems/s3_uri_signer.rb +177 -0
  927. package/lib/ruby/3.4.11/rubygems/safe_marshal/elements.rb +146 -0
  928. package/lib/ruby/3.4.11/rubygems/safe_marshal/reader.rb +325 -0
  929. package/lib/ruby/3.4.11/rubygems/safe_marshal/visitors/stream_printer.rb +31 -0
  930. package/lib/ruby/3.4.11/rubygems/safe_marshal/visitors/to_ruby.rb +428 -0
  931. package/lib/ruby/3.4.11/rubygems/safe_marshal/visitors/visitor.rb +74 -0
  932. package/lib/ruby/3.4.11/rubygems/safe_marshal.rb +74 -0
  933. package/lib/ruby/3.4.11/rubygems/safe_yaml.rb +45 -0
  934. package/lib/ruby/3.4.11/rubygems/security/policies.rb +114 -0
  935. package/lib/ruby/3.4.11/rubygems/security/policy.rb +288 -0
  936. package/lib/ruby/3.4.11/rubygems/security/signer.rb +212 -0
  937. package/lib/ruby/3.4.11/rubygems/security/trust_dir.rb +117 -0
  938. package/lib/ruby/3.4.11/rubygems/security.rb +615 -0
  939. package/lib/ruby/3.4.11/rubygems/security_option.rb +43 -0
  940. package/lib/ruby/3.4.11/rubygems/source/git.rb +244 -0
  941. package/lib/ruby/3.4.11/rubygems/source/installed.rb +39 -0
  942. package/lib/ruby/3.4.11/rubygems/source/local.rb +131 -0
  943. package/lib/ruby/3.4.11/rubygems/source/lock.rb +49 -0
  944. package/lib/ruby/3.4.11/rubygems/source/specific_file.rb +73 -0
  945. package/lib/ruby/3.4.11/rubygems/source/vendor.rb +24 -0
  946. package/lib/ruby/3.4.11/rubygems/source.rb +247 -0
  947. package/lib/ruby/3.4.11/rubygems/source_list.rb +146 -0
  948. package/lib/ruby/3.4.11/rubygems/spec_fetcher.rb +290 -0
  949. package/lib/ruby/3.4.11/rubygems/specification.rb +2666 -0
  950. package/lib/ruby/3.4.11/rubygems/specification_policy.rb +558 -0
  951. package/lib/ruby/3.4.11/rubygems/specification_record.rb +212 -0
  952. package/lib/ruby/3.4.11/rubygems/ssl_certs/.document +1 -0
  953. package/lib/ruby/3.4.11/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem +21 -0
  954. package/lib/ruby/3.4.11/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem +21 -0
  955. package/lib/ruby/3.4.11/rubygems/stub_specification.rb +235 -0
  956. package/lib/ruby/3.4.11/rubygems/target_rbconfig.rb +50 -0
  957. package/lib/ruby/3.4.11/rubygems/text.rb +85 -0
  958. package/lib/ruby/3.4.11/rubygems/uninstaller.rb +429 -0
  959. package/lib/ruby/3.4.11/rubygems/unknown_command_spell_checker.rb +21 -0
  960. package/lib/ruby/3.4.11/rubygems/update_suggestion.rb +56 -0
  961. package/lib/ruby/3.4.11/rubygems/uri.rb +126 -0
  962. package/lib/ruby/3.4.11/rubygems/uri_formatter.rb +47 -0
  963. package/lib/ruby/3.4.11/rubygems/user_interaction.rb +650 -0
  964. package/lib/ruby/3.4.11/rubygems/util/licenses.rb +834 -0
  965. package/lib/ruby/3.4.11/rubygems/util/list.rb +40 -0
  966. package/lib/ruby/3.4.11/rubygems/util.rb +118 -0
  967. package/lib/ruby/3.4.11/rubygems/validator.rb +144 -0
  968. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/.document +1 -0
  969. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +57 -0
  970. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +88 -0
  971. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +36 -0
  972. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +66 -0
  973. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +62 -0
  974. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +63 -0
  975. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +61 -0
  976. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +126 -0
  977. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +46 -0
  978. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +36 -0
  979. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +164 -0
  980. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph.rb +255 -0
  981. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/errors.rb +149 -0
  982. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/gem_metadata.rb +6 -0
  983. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +112 -0
  984. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/modules/ui.rb +67 -0
  985. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/resolution.rb +839 -0
  986. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/resolver.rb +46 -0
  987. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/state.rb +58 -0
  988. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo.rb +11 -0
  989. package/lib/ruby/3.4.11/rubygems/vendor/net-http/.document +1 -0
  990. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/exceptions.rb +34 -0
  991. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/generic_request.rb +414 -0
  992. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/header.rb +981 -0
  993. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/proxy_delta.rb +17 -0
  994. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/request.rb +88 -0
  995. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/requests.rb +430 -0
  996. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/response.rb +738 -0
  997. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/responses.rb +1174 -0
  998. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/status.rb +84 -0
  999. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http.rb +2580 -0
  1000. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/https.rb +23 -0
  1001. package/lib/ruby/3.4.11/rubygems/vendor/net-protocol/.document +1 -0
  1002. package/lib/ruby/3.4.11/rubygems/vendor/net-protocol/lib/net/protocol.rb +544 -0
  1003. package/lib/ruby/3.4.11/rubygems/vendor/optparse/.document +1 -0
  1004. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optionparser.rb +2 -0
  1005. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/ac.rb +70 -0
  1006. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/date.rb +18 -0
  1007. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/kwargs.rb +27 -0
  1008. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/shellwords.rb +7 -0
  1009. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/time.rb +11 -0
  1010. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/uri.rb +7 -0
  1011. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/version.rb +80 -0
  1012. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse.rb +2426 -0
  1013. package/lib/ruby/3.4.11/rubygems/vendor/resolv/.document +1 -0
  1014. package/lib/ruby/3.4.11/rubygems/vendor/resolv/lib/resolv.rb +3455 -0
  1015. package/lib/ruby/3.4.11/rubygems/vendor/securerandom/.document +1 -0
  1016. package/lib/ruby/3.4.11/rubygems/vendor/securerandom/lib/securerandom.rb +102 -0
  1017. package/lib/ruby/3.4.11/rubygems/vendor/timeout/.document +1 -0
  1018. package/lib/ruby/3.4.11/rubygems/vendor/timeout/lib/timeout.rb +198 -0
  1019. package/lib/ruby/3.4.11/rubygems/vendor/tsort/.document +1 -0
  1020. package/lib/ruby/3.4.11/rubygems/vendor/tsort/lib/tsort.rb +455 -0
  1021. package/lib/ruby/3.4.11/rubygems/vendor/uri/.document +1 -0
  1022. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/common.rb +880 -0
  1023. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/file.rb +100 -0
  1024. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/ftp.rb +267 -0
  1025. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/generic.rb +1592 -0
  1026. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/http.rb +125 -0
  1027. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/https.rb +23 -0
  1028. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/ldap.rb +261 -0
  1029. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/ldaps.rb +22 -0
  1030. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/mailto.rb +293 -0
  1031. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/rfc2396_parser.rb +546 -0
  1032. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/rfc3986_parser.rb +206 -0
  1033. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/version.rb +6 -0
  1034. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/ws.rb +83 -0
  1035. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/wss.rb +23 -0
  1036. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri.rb +104 -0
  1037. package/lib/ruby/3.4.11/rubygems/vendored_molinillo.rb +3 -0
  1038. package/lib/ruby/3.4.11/rubygems/vendored_net_http.rb +5 -0
  1039. package/lib/ruby/3.4.11/rubygems/vendored_optparse.rb +3 -0
  1040. package/lib/ruby/3.4.11/rubygems/vendored_securerandom.rb +3 -0
  1041. package/lib/ruby/3.4.11/rubygems/vendored_timeout.rb +5 -0
  1042. package/lib/ruby/3.4.11/rubygems/vendored_tsort.rb +3 -0
  1043. package/lib/ruby/3.4.11/rubygems/version.rb +441 -0
  1044. package/lib/ruby/3.4.11/rubygems/version_option.rb +80 -0
  1045. package/lib/ruby/3.4.11/rubygems/yaml_serializer.rb +98 -0
  1046. package/lib/ruby/3.4.11/rubygems.rb +1417 -0
  1047. package/lib/ruby/3.4.11/securerandom.gemspec +34 -0
  1048. package/lib/ruby/3.4.11/securerandom.rb +102 -0
  1049. package/lib/ruby/3.4.11/set/set.gemspec +30 -0
  1050. package/lib/ruby/3.4.11/set/sorted_set.rb +6 -0
  1051. package/lib/ruby/3.4.11/set.rb +855 -0
  1052. package/lib/ruby/3.4.11/shellwords.gemspec +31 -0
  1053. package/lib/ruby/3.4.11/shellwords.rb +254 -0
  1054. package/lib/ruby/3.4.11/singleton.gemspec +30 -0
  1055. package/lib/ruby/3.4.11/singleton.rb +239 -0
  1056. package/lib/ruby/3.4.11/syntax_suggest/api.rb +233 -0
  1057. package/lib/ruby/3.4.11/syntax_suggest/around_block_scan.rb +232 -0
  1058. package/lib/ruby/3.4.11/syntax_suggest/block_expand.rb +165 -0
  1059. package/lib/ruby/3.4.11/syntax_suggest/capture/before_after_keyword_ends.rb +85 -0
  1060. package/lib/ruby/3.4.11/syntax_suggest/capture/falling_indent_lines.rb +71 -0
  1061. package/lib/ruby/3.4.11/syntax_suggest/capture_code_context.rb +245 -0
  1062. package/lib/ruby/3.4.11/syntax_suggest/clean_document.rb +306 -0
  1063. package/lib/ruby/3.4.11/syntax_suggest/cli.rb +130 -0
  1064. package/lib/ruby/3.4.11/syntax_suggest/code_block.rb +100 -0
  1065. package/lib/ruby/3.4.11/syntax_suggest/code_frontier.rb +178 -0
  1066. package/lib/ruby/3.4.11/syntax_suggest/code_line.rb +243 -0
  1067. package/lib/ruby/3.4.11/syntax_suggest/code_search.rb +139 -0
  1068. package/lib/ruby/3.4.11/syntax_suggest/core_ext.rb +96 -0
  1069. package/lib/ruby/3.4.11/syntax_suggest/display_code_with_line_numbers.rb +70 -0
  1070. package/lib/ruby/3.4.11/syntax_suggest/display_invalid_blocks.rb +83 -0
  1071. package/lib/ruby/3.4.11/syntax_suggest/explain_syntax.rb +117 -0
  1072. package/lib/ruby/3.4.11/syntax_suggest/left_right_lex_count.rb +168 -0
  1073. package/lib/ruby/3.4.11/syntax_suggest/lex_all.rb +74 -0
  1074. package/lib/ruby/3.4.11/syntax_suggest/lex_value.rb +70 -0
  1075. package/lib/ruby/3.4.11/syntax_suggest/mini_stringio.rb +30 -0
  1076. package/lib/ruby/3.4.11/syntax_suggest/parse_blocks_from_indent_line.rb +60 -0
  1077. package/lib/ruby/3.4.11/syntax_suggest/pathname_from_message.rb +59 -0
  1078. package/lib/ruby/3.4.11/syntax_suggest/priority_engulf_queue.rb +63 -0
  1079. package/lib/ruby/3.4.11/syntax_suggest/priority_queue.rb +105 -0
  1080. package/lib/ruby/3.4.11/syntax_suggest/ripper_errors.rb +39 -0
  1081. package/lib/ruby/3.4.11/syntax_suggest/scan_history.rb +134 -0
  1082. package/lib/ruby/3.4.11/syntax_suggest/syntax_suggest.gemspec +32 -0
  1083. package/lib/ruby/3.4.11/syntax_suggest/unvisited_lines.rb +36 -0
  1084. package/lib/ruby/3.4.11/syntax_suggest/version.rb +5 -0
  1085. package/lib/ruby/3.4.11/syntax_suggest.rb +3 -0
  1086. package/lib/ruby/3.4.11/tempfile.gemspec +33 -0
  1087. package/lib/ruby/3.4.11/tempfile.rb +640 -0
  1088. package/lib/ruby/3.4.11/time.gemspec +35 -0
  1089. package/lib/ruby/3.4.11/time.rb +731 -0
  1090. package/lib/ruby/3.4.11/timeout.gemspec +33 -0
  1091. package/lib/ruby/3.4.11/timeout.rb +200 -0
  1092. package/lib/ruby/3.4.11/tmpdir.gemspec +30 -0
  1093. package/lib/ruby/3.4.11/tmpdir.rb +189 -0
  1094. package/lib/ruby/3.4.11/tsort.gemspec +29 -0
  1095. package/lib/ruby/3.4.11/tsort.rb +455 -0
  1096. package/lib/ruby/3.4.11/un.gemspec +31 -0
  1097. package/lib/ruby/3.4.11/un.rb +441 -0
  1098. package/lib/ruby/3.4.11/unicode_normalize/normalize.rb +181 -0
  1099. package/lib/ruby/3.4.11/unicode_normalize/tables.rb +9259 -0
  1100. package/lib/ruby/3.4.11/uri/common.rb +880 -0
  1101. package/lib/ruby/3.4.11/uri/file.rb +100 -0
  1102. package/lib/ruby/3.4.11/uri/ftp.rb +267 -0
  1103. package/lib/ruby/3.4.11/uri/generic.rb +1592 -0
  1104. package/lib/ruby/3.4.11/uri/http.rb +125 -0
  1105. package/lib/ruby/3.4.11/uri/https.rb +23 -0
  1106. package/lib/ruby/3.4.11/uri/ldap.rb +261 -0
  1107. package/lib/ruby/3.4.11/uri/ldaps.rb +22 -0
  1108. package/lib/ruby/3.4.11/uri/mailto.rb +293 -0
  1109. package/lib/ruby/3.4.11/uri/rfc2396_parser.rb +546 -0
  1110. package/lib/ruby/3.4.11/uri/rfc3986_parser.rb +206 -0
  1111. package/lib/ruby/3.4.11/uri/uri.gemspec +42 -0
  1112. package/lib/ruby/3.4.11/uri/version.rb +6 -0
  1113. package/lib/ruby/3.4.11/uri/ws.rb +83 -0
  1114. package/lib/ruby/3.4.11/uri/wss.rb +23 -0
  1115. package/lib/ruby/3.4.11/uri.rb +104 -0
  1116. package/lib/ruby/3.4.11/wasm32-wasi/rbconfig.rb +366 -0
  1117. package/lib/ruby/3.4.11/weakref.gemspec +34 -0
  1118. package/lib/ruby/3.4.11/weakref.rb +58 -0
  1119. package/lib/ruby/3.4.11/yaml/dbm.rb +295 -0
  1120. package/lib/ruby/3.4.11/yaml/store.rb +98 -0
  1121. package/lib/ruby/3.4.11/yaml/yaml.gemspec +30 -0
  1122. package/lib/ruby/3.4.11/yaml.rb +70 -0
  1123. package/package.json +31 -0
@@ -0,0 +1,130 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "pathname"
4
+ require "optparse"
5
+
6
+ module SyntaxSuggest
7
+ # All the logic of the exe/syntax_suggest CLI in one handy spot
8
+ #
9
+ # Cli.new(argv: ["--help"]).call
10
+ # Cli.new(argv: ["<path/to/file>.rb"]).call
11
+ # Cli.new(argv: ["<path/to/file>.rb", "--record=tmp"]).call
12
+ # Cli.new(argv: ["<path/to/file>.rb", "--terminal"]).call
13
+ #
14
+ class Cli
15
+ attr_accessor :options
16
+
17
+ # ARGV is Everything passed to the executable, does not include executable name
18
+ #
19
+ # All other intputs are dependency injection for testing
20
+ def initialize(argv:, exit_obj: Kernel, io: $stdout, env: ENV)
21
+ @options = {}
22
+ @parser = nil
23
+ options[:record_dir] = env["SYNTAX_SUGGEST_RECORD_DIR"]
24
+ options[:record_dir] = "tmp" if env["DEBUG"]
25
+ options[:terminal] = SyntaxSuggest::DEFAULT_VALUE
26
+
27
+ @io = io
28
+ @argv = argv
29
+ @exit_obj = exit_obj
30
+ end
31
+
32
+ def call
33
+ if @argv.empty?
34
+ # Display help if raw command
35
+ parser.parse! %w[--help]
36
+ return
37
+ else
38
+ # Mutates @argv
39
+ parse
40
+ return if options[:exit]
41
+ end
42
+
43
+ file_name = @argv.first
44
+ if file_name.nil?
45
+ @io.puts "No file given"
46
+ @exit_obj.exit(1)
47
+ return
48
+ end
49
+
50
+ file = Pathname(file_name)
51
+ if !file.exist?
52
+ @io.puts "file not found: #{file.expand_path} "
53
+ @exit_obj.exit(1)
54
+ return
55
+ end
56
+
57
+ @io.puts "Record dir: #{options[:record_dir]}" if options[:record_dir]
58
+
59
+ display = SyntaxSuggest.call(
60
+ io: @io,
61
+ source: file.read,
62
+ filename: file.expand_path,
63
+ terminal: options.fetch(:terminal, SyntaxSuggest::DEFAULT_VALUE),
64
+ record_dir: options[:record_dir]
65
+ )
66
+
67
+ if display.document_ok?
68
+ @io.puts "Syntax OK"
69
+ @exit_obj.exit(0)
70
+ else
71
+ @exit_obj.exit(1)
72
+ end
73
+ end
74
+
75
+ def parse
76
+ parser.parse!(@argv)
77
+
78
+ self
79
+ end
80
+
81
+ def parser
82
+ @parser ||= OptionParser.new do |opts|
83
+ opts.banner = <<~EOM
84
+ Usage: syntax_suggest <file> [options]
85
+
86
+ Parses a ruby source file and searches for syntax error(s) such as
87
+ unexpected `end', expecting end-of-input.
88
+
89
+ Example:
90
+
91
+ $ syntax_suggest dog.rb
92
+
93
+ # ...
94
+
95
+ > 10 defdog
96
+ > 15 end
97
+
98
+ ENV options:
99
+
100
+ SYNTAX_SUGGEST_RECORD_DIR=<dir>
101
+
102
+ Records the steps used to search for a syntax error
103
+ to the given directory
104
+
105
+ Options:
106
+ EOM
107
+
108
+ opts.version = SyntaxSuggest::VERSION
109
+
110
+ opts.on("--help", "Help - displays this message") do |v|
111
+ @io.puts opts
112
+ options[:exit] = true
113
+ @exit_obj.exit
114
+ end
115
+
116
+ opts.on("--record <dir>", "Records the steps used to search for a syntax error to the given directory") do |v|
117
+ options[:record_dir] = v
118
+ end
119
+
120
+ opts.on("--terminal", "Enable terminal highlighting") do |v|
121
+ options[:terminal] = true
122
+ end
123
+
124
+ opts.on("--no-terminal", "Disable terminal highlighting") do |v|
125
+ options[:terminal] = false
126
+ end
127
+ end
128
+ end
129
+ end
130
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SyntaxSuggest
4
+ # Multiple lines form a singular CodeBlock
5
+ #
6
+ # Source code is made of multiple CodeBlocks.
7
+ #
8
+ # Example:
9
+ #
10
+ # code_block.to_s # =>
11
+ # # def foo
12
+ # # puts "foo"
13
+ # # end
14
+ #
15
+ # code_block.valid? # => true
16
+ # code_block.in_valid? # => false
17
+ #
18
+ #
19
+ class CodeBlock
20
+ UNSET = Object.new.freeze
21
+ attr_reader :lines, :starts_at, :ends_at
22
+
23
+ def initialize(lines: [])
24
+ @lines = Array(lines)
25
+ @valid = UNSET
26
+ @deleted = false
27
+ @starts_at = @lines.first.number
28
+ @ends_at = @lines.last.number
29
+ end
30
+
31
+ def delete
32
+ @deleted = true
33
+ end
34
+
35
+ def deleted?
36
+ @deleted
37
+ end
38
+
39
+ def visible_lines
40
+ @lines.select(&:visible?).select(&:not_empty?)
41
+ end
42
+
43
+ def mark_invisible
44
+ @lines.map(&:mark_invisible)
45
+ end
46
+
47
+ def is_end?
48
+ to_s.strip == "end"
49
+ end
50
+
51
+ def hidden?
52
+ @lines.all?(&:hidden?)
53
+ end
54
+
55
+ # This is used for frontier ordering, we are searching from
56
+ # the largest indentation to the smallest. This allows us to
57
+ # populate an array with multiple code blocks then call `sort!`
58
+ # on it without having to specify the sorting criteria
59
+ def <=>(other)
60
+ out = current_indent <=> other.current_indent
61
+ return out if out != 0
62
+
63
+ # Stable sort
64
+ starts_at <=> other.starts_at
65
+ end
66
+
67
+ def current_indent
68
+ @current_indent ||= lines.select(&:not_empty?).map(&:indent).min || 0
69
+ end
70
+
71
+ def invalid?
72
+ !valid?
73
+ end
74
+
75
+ def valid?
76
+ if @valid == UNSET
77
+ # Performance optimization
78
+ #
79
+ # If all the lines were previously hidden
80
+ # and we expand to capture additional empty
81
+ # lines then the result cannot be invalid
82
+ #
83
+ # That means there's no reason to re-check all
84
+ # lines with the parser (which is expensive).
85
+ # Benchmark in commit message
86
+ @valid = if lines.all? { |l| l.hidden? || l.empty? }
87
+ true
88
+ else
89
+ SyntaxSuggest.valid?(lines.map(&:original).join)
90
+ end
91
+ else
92
+ @valid
93
+ end
94
+ end
95
+
96
+ def to_s
97
+ @lines.join
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,178 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SyntaxSuggest
4
+ # The main function of the frontier is to hold the edges of our search and to
5
+ # evaluate when we can stop searching.
6
+
7
+ # There are three main phases in the algorithm:
8
+ #
9
+ # 1. Sanitize/format input source
10
+ # 2. Search for invalid blocks
11
+ # 3. Format invalid blocks into something meaningful
12
+ #
13
+ # The Code frontier is a critical part of the second step
14
+ #
15
+ # ## Knowing where we've been
16
+ #
17
+ # Once a code block is generated it is added onto the frontier. Then it will be
18
+ # sorted by indentation and frontier can be filtered. Large blocks that fully enclose a
19
+ # smaller block will cause the smaller block to be evicted.
20
+ #
21
+ # CodeFrontier#<<(block) # Adds block to frontier
22
+ # CodeFrontier#pop # Removes block from frontier
23
+ #
24
+ # ## Knowing where we can go
25
+ #
26
+ # Internally the frontier keeps track of "unvisited" lines which are exposed via `next_indent_line`
27
+ # when called, this method returns, a line of code with the highest indentation.
28
+ #
29
+ # The returned line of code can be used to build a CodeBlock and then that code block
30
+ # is added back to the frontier. Then, the lines are removed from the
31
+ # "unvisited" so we don't double-create the same block.
32
+ #
33
+ # CodeFrontier#next_indent_line # Shows next line
34
+ # CodeFrontier#register_indent_block(block) # Removes lines from unvisited
35
+ #
36
+ # ## Knowing when to stop
37
+ #
38
+ # The frontier knows how to check the entire document for a syntax error. When blocks
39
+ # are added onto the frontier, they're removed from the document. When all code containing
40
+ # syntax errors has been added to the frontier, the document will be parsable without a
41
+ # syntax error and the search can stop.
42
+ #
43
+ # CodeFrontier#holds_all_syntax_errors? # Returns true when frontier holds all syntax errors
44
+ #
45
+ # ## Filtering false positives
46
+ #
47
+ # Once the search is completed, the frontier may have multiple blocks that do not contain
48
+ # the syntax error. To limit the result to the smallest subset of "invalid blocks" call:
49
+ #
50
+ # CodeFrontier#detect_invalid_blocks
51
+ #
52
+ class CodeFrontier
53
+ def initialize(code_lines:, unvisited: UnvisitedLines.new(code_lines: code_lines))
54
+ @code_lines = code_lines
55
+ @unvisited = unvisited
56
+ @queue = PriorityEngulfQueue.new
57
+
58
+ @check_next = true
59
+ end
60
+
61
+ def count
62
+ @queue.length
63
+ end
64
+
65
+ # Performance optimization
66
+ #
67
+ # Parsing with ripper is expensive
68
+ # If we know we don't have any blocks with invalid
69
+ # syntax, then we know we cannot have found
70
+ # the incorrect syntax yet.
71
+ #
72
+ # When an invalid block is added onto the frontier
73
+ # check document state
74
+ private def can_skip_check?
75
+ check_next = @check_next
76
+ @check_next = false
77
+
78
+ if check_next
79
+ false
80
+ else
81
+ true
82
+ end
83
+ end
84
+
85
+ # Returns true if the document is valid with all lines
86
+ # removed. By default it checks all blocks in present in
87
+ # the frontier array, but can be used for arbitrary arrays
88
+ # of codeblocks as well
89
+ def holds_all_syntax_errors?(block_array = @queue, can_cache: true)
90
+ return false if can_cache && can_skip_check?
91
+
92
+ without_lines = block_array.to_a.flat_map do |block|
93
+ block.lines
94
+ end
95
+
96
+ SyntaxSuggest.valid_without?(
97
+ without_lines: without_lines,
98
+ code_lines: @code_lines
99
+ )
100
+ end
101
+
102
+ # Returns a code block with the largest indentation possible
103
+ def pop
104
+ @queue.pop
105
+ end
106
+
107
+ def next_indent_line
108
+ @unvisited.peek
109
+ end
110
+
111
+ def expand?
112
+ return false if @queue.empty?
113
+ return true if @unvisited.empty?
114
+
115
+ frontier_indent = @queue.peek.current_indent
116
+ unvisited_indent = next_indent_line.indent
117
+
118
+ if ENV["SYNTAX_SUGGEST_DEBUG"]
119
+ puts "```"
120
+ puts @queue.peek
121
+ puts "```"
122
+ puts " @frontier indent: #{frontier_indent}"
123
+ puts " @unvisited indent: #{unvisited_indent}"
124
+ end
125
+
126
+ # Expand all blocks before moving to unvisited lines
127
+ frontier_indent >= unvisited_indent
128
+ end
129
+
130
+ # Keeps track of what lines have been added to blocks and which are not yet
131
+ # visited.
132
+ def register_indent_block(block)
133
+ @unvisited.visit_block(block)
134
+ self
135
+ end
136
+
137
+ # When one element fully encapsulates another we remove the smaller
138
+ # block from the frontier. This prevents double expansions and all-around
139
+ # weird behavior. However this guarantee is quite expensive to maintain
140
+ def register_engulf_block(block)
141
+ end
142
+
143
+ # Add a block to the frontier
144
+ #
145
+ # This method ensures the frontier always remains sorted (in indentation order)
146
+ # and that each code block's lines are removed from the indentation hash so we
147
+ # don't re-evaluate the same line multiple times.
148
+ def <<(block)
149
+ @unvisited.visit_block(block)
150
+
151
+ @queue.push(block)
152
+
153
+ @check_next = true if block.invalid?
154
+
155
+ self
156
+ end
157
+
158
+ # Example:
159
+ #
160
+ # combination([:a, :b, :c, :d])
161
+ # # => [[:a], [:b], [:c], [:d], [:a, :b], [:a, :c], [:a, :d], [:b, :c], [:b, :d], [:c, :d], [:a, :b, :c], [:a, :b, :d], [:a, :c, :d], [:b, :c, :d], [:a, :b, :c, :d]]
162
+ def self.combination(array)
163
+ guesses = []
164
+ 1.upto(array.length).each do |size|
165
+ guesses.concat(array.combination(size).to_a)
166
+ end
167
+ guesses
168
+ end
169
+
170
+ # Given that we know our syntax error exists somewhere in our frontier, we want to find
171
+ # the smallest possible set of blocks that contain all the syntax errors
172
+ def detect_invalid_blocks
173
+ self.class.combination(@queue.to_a.select(&:invalid?)).detect do |block_array|
174
+ holds_all_syntax_errors?(block_array, can_cache: false)
175
+ end || []
176
+ end
177
+ end
178
+ end
@@ -0,0 +1,243 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SyntaxSuggest
4
+ # Represents a single line of code of a given source file
5
+ #
6
+ # This object contains metadata about the line such as
7
+ # amount of indentation, if it is empty or not, and
8
+ # lexical data, such as if it has an `end` or a keyword
9
+ # in it.
10
+ #
11
+ # Visibility of lines can be toggled off. Marking a line as invisible
12
+ # indicates that it should not be used for syntax checks.
13
+ # It's functionally the same as commenting it out.
14
+ #
15
+ # Example:
16
+ #
17
+ # line = CodeLine.from_source("def foo\n").first
18
+ # line.number => 1
19
+ # line.empty? # => false
20
+ # line.visible? # => true
21
+ # line.mark_invisible
22
+ # line.visible? # => false
23
+ #
24
+ class CodeLine
25
+ TRAILING_SLASH = ("\\" + $/).freeze
26
+
27
+ # Returns an array of CodeLine objects
28
+ # from the source string
29
+ def self.from_source(source, lines: nil)
30
+ lines ||= source.lines
31
+ lex_array_for_line = LexAll.new(source: source, source_lines: lines).each_with_object(Hash.new { |h, k| h[k] = [] }) { |lex, hash| hash[lex.line] << lex }
32
+ lines.map.with_index do |line, index|
33
+ CodeLine.new(
34
+ line: line,
35
+ index: index,
36
+ lex: lex_array_for_line[index + 1]
37
+ )
38
+ end
39
+ end
40
+
41
+ attr_reader :line, :index, :lex, :line_number, :indent
42
+ def initialize(line:, index:, lex:)
43
+ @lex = lex
44
+ @line = line
45
+ @index = index
46
+ @original = line
47
+ @line_number = @index + 1
48
+ strip_line = line.dup
49
+ strip_line.lstrip!
50
+
51
+ @indent = if (@empty = strip_line.empty?)
52
+ line.length - 1 # Newline removed from strip_line is not "whitespace"
53
+ else
54
+ line.length - strip_line.length
55
+ end
56
+
57
+ set_kw_end
58
+ end
59
+
60
+ # Used for stable sort via indentation level
61
+ #
62
+ # Ruby's sort is not "stable" meaning that when
63
+ # multiple elements have the same value, they are
64
+ # not guaranteed to return in the same order they
65
+ # were put in.
66
+ #
67
+ # So when multiple code lines have the same indentation
68
+ # level, they're sorted by their index value which is unique
69
+ # and consistent.
70
+ #
71
+ # This is mostly needed for consistency of the test suite
72
+ def indent_index
73
+ @indent_index ||= [indent, index]
74
+ end
75
+ alias_method :number, :line_number
76
+
77
+ # Returns true if the code line is determined
78
+ # to contain a keyword that matches with an `end`
79
+ #
80
+ # For example: `def`, `do`, `begin`, `ensure`, etc.
81
+ def is_kw?
82
+ @is_kw
83
+ end
84
+
85
+ # Returns true if the code line is determined
86
+ # to contain an `end` keyword
87
+ def is_end?
88
+ @is_end
89
+ end
90
+
91
+ # Used to hide lines
92
+ #
93
+ # The search alorithm will group lines into blocks
94
+ # then if those blocks are determined to represent
95
+ # valid code they will be hidden
96
+ def mark_invisible
97
+ @line = ""
98
+ end
99
+
100
+ # Means the line was marked as "invisible"
101
+ # Confusingly, "empty" lines are visible...they
102
+ # just don't contain any source code other than a newline ("\n").
103
+ def visible?
104
+ !line.empty?
105
+ end
106
+
107
+ # Opposite or `visible?` (note: different than `empty?`)
108
+ def hidden?
109
+ !visible?
110
+ end
111
+
112
+ # An `empty?` line is one that was originally left
113
+ # empty in the source code, while a "hidden" line
114
+ # is one that we've since marked as "invisible"
115
+ def empty?
116
+ @empty
117
+ end
118
+
119
+ # Opposite of `empty?` (note: different than `visible?`)
120
+ def not_empty?
121
+ !empty?
122
+ end
123
+
124
+ # Renders the given line
125
+ #
126
+ # Also allows us to represent source code as
127
+ # an array of code lines.
128
+ #
129
+ # When we have an array of code line elements
130
+ # calling `join` on the array will call `to_s`
131
+ # on each element, which essentially converts
132
+ # it back into it's original source string.
133
+ def to_s
134
+ line
135
+ end
136
+
137
+ # When the code line is marked invisible
138
+ # we retain the original value of it's line
139
+ # this is useful for debugging and for
140
+ # showing extra context
141
+ #
142
+ # DisplayCodeWithLineNumbers will render
143
+ # all lines given to it, not just visible
144
+ # lines, it uses the original method to
145
+ # obtain them.
146
+ attr_reader :original
147
+
148
+ # Comparison operator, needed for equality
149
+ # and sorting
150
+ def <=>(other)
151
+ index <=> other.index
152
+ end
153
+
154
+ # [Not stable API]
155
+ #
156
+ # Lines that have a `on_ignored_nl` type token and NOT
157
+ # a `BEG` type seem to be a good proxy for the ability
158
+ # to join multiple lines into one.
159
+ #
160
+ # This predicate method is used to determine when those
161
+ # two criteria have been met.
162
+ #
163
+ # The one known case this doesn't handle is:
164
+ #
165
+ # Ripper.lex <<~EOM
166
+ # a &&
167
+ # b ||
168
+ # c
169
+ # EOM
170
+ #
171
+ # For some reason this introduces `on_ignore_newline` but with BEG type
172
+ def ignore_newline_not_beg?
173
+ @ignore_newline_not_beg
174
+ end
175
+
176
+ # Determines if the given line has a trailing slash
177
+ #
178
+ # lines = CodeLine.from_source(<<~EOM)
179
+ # it "foo" \
180
+ # EOM
181
+ # expect(lines.first.trailing_slash?).to eq(true)
182
+ #
183
+ def trailing_slash?
184
+ last = @lex.last
185
+
186
+ # Older versions of prism diverged slightly from Ripper in compatibility mode
187
+ case last&.type
188
+ when :on_sp
189
+ last.token == TRAILING_SLASH
190
+ when :on_tstring_end
191
+ true
192
+ else
193
+ false
194
+ end
195
+ end
196
+
197
+ # Endless method detection
198
+ #
199
+ # From https://github.com/ruby/irb/commit/826ae909c9c93a2ddca6f9cfcd9c94dbf53d44ab
200
+ # Detecting a "oneliner" seems to need a state machine.
201
+ # This can be done by looking mostly at the "state" (last value):
202
+ #
203
+ # ENDFN -> BEG (token = '=' ) -> END
204
+ #
205
+ private def set_kw_end
206
+ oneliner_count = 0
207
+ in_oneliner_def = nil
208
+
209
+ kw_count = 0
210
+ end_count = 0
211
+
212
+ @ignore_newline_not_beg = false
213
+ @lex.each do |lex|
214
+ kw_count += 1 if lex.is_kw?
215
+ end_count += 1 if lex.is_end?
216
+
217
+ if lex.type == :on_ignored_nl
218
+ @ignore_newline_not_beg = !lex.expr_beg?
219
+ end
220
+
221
+ if in_oneliner_def.nil?
222
+ in_oneliner_def = :ENDFN if lex.state.allbits?(Ripper::EXPR_ENDFN)
223
+ elsif lex.state.allbits?(Ripper::EXPR_ENDFN)
224
+ # Continue
225
+ elsif lex.state.allbits?(Ripper::EXPR_BEG)
226
+ in_oneliner_def = :BODY if lex.token == "="
227
+ elsif lex.state.allbits?(Ripper::EXPR_END)
228
+ # We found an endless method, count it
229
+ oneliner_count += 1 if in_oneliner_def == :BODY
230
+
231
+ in_oneliner_def = nil
232
+ else
233
+ in_oneliner_def = nil
234
+ end
235
+ end
236
+
237
+ kw_count -= oneliner_count
238
+
239
+ @is_kw = (kw_count - end_count) > 0
240
+ @is_end = (end_count - kw_count) > 0
241
+ end
242
+ end
243
+ end