@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,233 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "version"
4
+
5
+ require "tmpdir"
6
+ require "stringio"
7
+ require "pathname"
8
+ require "timeout"
9
+
10
+ # We need Ripper loaded for `Prism.lex_compat` even if we're using Prism
11
+ # for lexing and parsing
12
+ require "ripper"
13
+
14
+ # Prism is the new parser, replacing Ripper
15
+ #
16
+ # We need to "dual boot" both for now because syntax_suggest
17
+ # supports older rubies that do not ship with syntax suggest.
18
+ #
19
+ # We also need the ability to control loading of this library
20
+ # so we can test that both modes work correctly in CI.
21
+ if (value = ENV["SYNTAX_SUGGEST_DISABLE_PRISM"])
22
+ warn "Skipping loading prism due to SYNTAX_SUGGEST_DISABLE_PRISM=#{value}"
23
+ else
24
+ begin
25
+ require "prism"
26
+ rescue LoadError
27
+ end
28
+ end
29
+
30
+ module SyntaxSuggest
31
+ # Used to indicate a default value that cannot
32
+ # be confused with another input.
33
+ DEFAULT_VALUE = Object.new.freeze
34
+
35
+ class Error < StandardError; end
36
+ TIMEOUT_DEFAULT = ENV.fetch("SYNTAX_SUGGEST_TIMEOUT", 1).to_i
37
+
38
+ # SyntaxSuggest.use_prism_parser? [Private]
39
+ #
40
+ # Tells us if the prism parser is available for use
41
+ # or if we should fallback to `Ripper`
42
+ def self.use_prism_parser?
43
+ defined?(Prism)
44
+ end
45
+
46
+ # SyntaxSuggest.handle_error [Public]
47
+ #
48
+ # Takes a `SyntaxError` exception, uses the
49
+ # error message to locate the file. Then the file
50
+ # will be analyzed to find the location of the syntax
51
+ # error and emit that location to stderr.
52
+ #
53
+ # Example:
54
+ #
55
+ # begin
56
+ # require 'bad_file'
57
+ # rescue => e
58
+ # SyntaxSuggest.handle_error(e)
59
+ # end
60
+ #
61
+ # By default it will re-raise the exception unless
62
+ # `re_raise: false`. The message output location
63
+ # can be configured using the `io: $stderr` input.
64
+ #
65
+ # If a valid filename cannot be determined, the original
66
+ # exception will be re-raised (even with
67
+ # `re_raise: false`).
68
+ def self.handle_error(e, re_raise: true, io: $stderr)
69
+ unless e.is_a?(SyntaxError)
70
+ io.puts("SyntaxSuggest: Must pass a SyntaxError, got: #{e.class}")
71
+ raise e
72
+ end
73
+
74
+ file = PathnameFromMessage.new(e.message, io: io).call.name
75
+ raise e unless file
76
+
77
+ io.sync = true
78
+
79
+ call(
80
+ io: io,
81
+ source: file.read,
82
+ filename: file
83
+ )
84
+
85
+ raise e if re_raise
86
+ end
87
+
88
+ # SyntaxSuggest.call [Private]
89
+ #
90
+ # Main private interface
91
+ def self.call(source:, filename: DEFAULT_VALUE, terminal: DEFAULT_VALUE, record_dir: DEFAULT_VALUE, timeout: TIMEOUT_DEFAULT, io: $stderr)
92
+ search = nil
93
+ filename = nil if filename == DEFAULT_VALUE
94
+ Timeout.timeout(timeout) do
95
+ record_dir ||= ENV["DEBUG"] ? "tmp" : nil
96
+ search = CodeSearch.new(source, record_dir: record_dir).call
97
+ end
98
+
99
+ blocks = search.invalid_blocks
100
+ DisplayInvalidBlocks.new(
101
+ io: io,
102
+ blocks: blocks,
103
+ filename: filename,
104
+ terminal: terminal,
105
+ code_lines: search.code_lines
106
+ ).call
107
+ rescue Timeout::Error => e
108
+ io.puts "Search timed out SYNTAX_SUGGEST_TIMEOUT=#{timeout}, run with SYNTAX_SUGGEST_DEBUG=1 for more info"
109
+ io.puts e.backtrace.first(3).join($/)
110
+ end
111
+
112
+ # SyntaxSuggest.record_dir [Private]
113
+ #
114
+ # Used to generate a unique directory to record
115
+ # search steps for debugging
116
+ def self.record_dir(dir)
117
+ time = Time.now.strftime("%Y-%m-%d-%H-%M-%s-%N")
118
+ dir = Pathname(dir)
119
+ dir.join(time).tap { |path|
120
+ path.mkpath
121
+ alias_dir = dir.join("last")
122
+ FileUtils.rm_rf(alias_dir) if alias_dir.exist?
123
+ FileUtils.ln_sf(time, alias_dir)
124
+ }
125
+ end
126
+
127
+ # SyntaxSuggest.valid_without? [Private]
128
+ #
129
+ # This will tell you if the `code_lines` would be valid
130
+ # if you removed the `without_lines`. In short it's a
131
+ # way to detect if we've found the lines with syntax errors
132
+ # in our document yet.
133
+ #
134
+ # code_lines = [
135
+ # CodeLine.new(line: "def foo\n", index: 0)
136
+ # CodeLine.new(line: " def bar\n", index: 1)
137
+ # CodeLine.new(line: "end\n", index: 2)
138
+ # ]
139
+ #
140
+ # SyntaxSuggest.valid_without?(
141
+ # without_lines: code_lines[1],
142
+ # code_lines: code_lines
143
+ # ) # => true
144
+ #
145
+ # SyntaxSuggest.valid?(code_lines) # => false
146
+ def self.valid_without?(without_lines:, code_lines:)
147
+ lines = code_lines - Array(without_lines).flatten
148
+
149
+ lines.empty? || valid?(lines)
150
+ end
151
+
152
+ # SyntaxSuggest.invalid? [Private]
153
+ #
154
+ # Opposite of `SyntaxSuggest.valid?`
155
+ if defined?(Prism)
156
+ def self.invalid?(source)
157
+ source = source.join if source.is_a?(Array)
158
+ source = source.to_s
159
+
160
+ Prism.parse(source).failure?
161
+ end
162
+ else
163
+ def self.invalid?(source)
164
+ source = source.join if source.is_a?(Array)
165
+ source = source.to_s
166
+
167
+ Ripper.new(source).tap(&:parse).error?
168
+ end
169
+ end
170
+
171
+ # SyntaxSuggest.valid? [Private]
172
+ #
173
+ # Returns truthy if a given input source is valid syntax
174
+ #
175
+ # SyntaxSuggest.valid?(<<~EOM) # => true
176
+ # def foo
177
+ # end
178
+ # EOM
179
+ #
180
+ # SyntaxSuggest.valid?(<<~EOM) # => false
181
+ # def foo
182
+ # def bar # Syntax error here
183
+ # end
184
+ # EOM
185
+ #
186
+ # You can also pass in an array of lines and they'll be
187
+ # joined before evaluating
188
+ #
189
+ # SyntaxSuggest.valid?(
190
+ # [
191
+ # "def foo\n",
192
+ # "end\n"
193
+ # ]
194
+ # ) # => true
195
+ #
196
+ # SyntaxSuggest.valid?(
197
+ # [
198
+ # "def foo\n",
199
+ # " def bar\n", # Syntax error here
200
+ # "end\n"
201
+ # ]
202
+ # ) # => false
203
+ #
204
+ # As an FYI the CodeLine class instances respond to `to_s`
205
+ # so passing a CodeLine in as an object or as an array
206
+ # will convert it to it's code representation.
207
+ def self.valid?(source)
208
+ !invalid?(source)
209
+ end
210
+ end
211
+
212
+ # Integration
213
+ require_relative "cli"
214
+
215
+ # Core logic
216
+ require_relative "code_search"
217
+ require_relative "code_frontier"
218
+ require_relative "explain_syntax"
219
+ require_relative "clean_document"
220
+
221
+ # Helpers
222
+ require_relative "lex_all"
223
+ require_relative "code_line"
224
+ require_relative "code_block"
225
+ require_relative "block_expand"
226
+ require_relative "mini_stringio"
227
+ require_relative "priority_queue"
228
+ require_relative "unvisited_lines"
229
+ require_relative "around_block_scan"
230
+ require_relative "priority_engulf_queue"
231
+ require_relative "pathname_from_message"
232
+ require_relative "display_invalid_blocks"
233
+ require_relative "parse_blocks_from_indent_line"
@@ -0,0 +1,232 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "scan_history"
4
+
5
+ module SyntaxSuggest
6
+ # This class is useful for exploring contents before and after
7
+ # a block
8
+ #
9
+ # It searches above and below the passed in block to match for
10
+ # whatever criteria you give it:
11
+ #
12
+ # Example:
13
+ #
14
+ # def dog # 1
15
+ # puts "bark" # 2
16
+ # puts "bark" # 3
17
+ # end # 4
18
+ #
19
+ # scan = AroundBlockScan.new(
20
+ # code_lines: code_lines
21
+ # block: CodeBlock.new(lines: code_lines[1])
22
+ # )
23
+ #
24
+ # scan.scan_while { true }
25
+ #
26
+ # puts scan.before_index # => 0
27
+ # puts scan.after_index # => 3
28
+ #
29
+ class AroundBlockScan
30
+ def initialize(code_lines:, block:)
31
+ @code_lines = code_lines
32
+ @orig_indent = block.current_indent
33
+
34
+ @stop_after_kw = false
35
+ @force_add_empty = false
36
+ @force_add_hidden = false
37
+ @target_indent = nil
38
+
39
+ @scanner = ScanHistory.new(code_lines: code_lines, block: block)
40
+ end
41
+
42
+ # When using this flag, `scan_while` will
43
+ # bypass the block it's given and always add a
44
+ # line that responds truthy to `CodeLine#hidden?`
45
+ #
46
+ # Lines are hidden when they've been evaluated by
47
+ # the parser as part of a block and found to contain
48
+ # valid code.
49
+ def force_add_hidden
50
+ @force_add_hidden = true
51
+ self
52
+ end
53
+
54
+ # When using this flag, `scan_while` will
55
+ # bypass the block it's given and always add a
56
+ # line that responds truthy to `CodeLine#empty?`
57
+ #
58
+ # Empty lines contain no code, only whitespace such
59
+ # as leading spaces a newline.
60
+ def force_add_empty
61
+ @force_add_empty = true
62
+ self
63
+ end
64
+
65
+ # Tells `scan_while` to look for mismatched keyword/end-s
66
+ #
67
+ # When scanning up, if we see more keywords then end-s it will
68
+ # stop. This might happen when scanning outside of a method body.
69
+ # the first scan line up would be a keyword and this setting would
70
+ # trigger a stop.
71
+ #
72
+ # When scanning down, stop if there are more end-s than keywords.
73
+ def stop_after_kw
74
+ @stop_after_kw = true
75
+ self
76
+ end
77
+
78
+ # Main work method
79
+ #
80
+ # The scan_while method takes a block that yields lines above and
81
+ # below the block. If the yield returns true, the @before_index
82
+ # or @after_index are modified to include the matched line.
83
+ #
84
+ # In addition to yielding individual lines, the internals of this
85
+ # object give a mini DSL to handle common situations such as
86
+ # stopping if we've found a keyword/end mis-match in one direction
87
+ # or the other.
88
+ def scan_while
89
+ stop_next_up = false
90
+ stop_next_down = false
91
+
92
+ @scanner.scan(
93
+ up: ->(line, kw_count, end_count) {
94
+ next false if stop_next_up
95
+ next true if @force_add_hidden && line.hidden?
96
+ next true if @force_add_empty && line.empty?
97
+
98
+ if @stop_after_kw && kw_count > end_count
99
+ stop_next_up = true
100
+ end
101
+
102
+ yield line
103
+ },
104
+ down: ->(line, kw_count, end_count) {
105
+ next false if stop_next_down
106
+ next true if @force_add_hidden && line.hidden?
107
+ next true if @force_add_empty && line.empty?
108
+
109
+ if @stop_after_kw && end_count > kw_count
110
+ stop_next_down = true
111
+ end
112
+
113
+ yield line
114
+ }
115
+ )
116
+
117
+ self
118
+ end
119
+
120
+ # Scanning is intentionally conservative because
121
+ # we have no way of rolling back an aggressive block (at this time)
122
+ #
123
+ # If a block was stopped for some trivial reason, (like an empty line)
124
+ # but the next line would have caused it to be balanced then we
125
+ # can check that condition and grab just one more line either up or
126
+ # down.
127
+ #
128
+ # For example, below if we're scanning up, line 2 might cause
129
+ # the scanning to stop. This is because empty lines might
130
+ # denote logical breaks where the user intended to chunk code
131
+ # which is a good place to stop and check validity. Unfortunately
132
+ # it also means we might have a "dangling" keyword or end.
133
+ #
134
+ # 1 def bark
135
+ # 2
136
+ # 3 end
137
+ #
138
+ # If lines 2 and 3 are in the block, then when this method is
139
+ # run it would see it is unbalanced, but that acquiring line 1
140
+ # would make it balanced, so that's what it does.
141
+ def lookahead_balance_one_line
142
+ kw_count = 0
143
+ end_count = 0
144
+ lines.each do |line|
145
+ kw_count += 1 if line.is_kw?
146
+ end_count += 1 if line.is_end?
147
+ end
148
+
149
+ return self if kw_count == end_count # nothing to balance
150
+
151
+ @scanner.commit_if_changed # Rollback point if we don't find anything to optimize
152
+
153
+ # Try to eat up empty lines
154
+ @scanner.scan(
155
+ up: ->(line, _, _) { line.hidden? || line.empty? },
156
+ down: ->(line, _, _) { line.hidden? || line.empty? }
157
+ )
158
+
159
+ # More ends than keywords, check if we can balance expanding up
160
+ next_up = @scanner.next_up
161
+ next_down = @scanner.next_down
162
+ case end_count - kw_count
163
+ when 1
164
+ if next_up&.is_kw? && next_up.indent >= @target_indent
165
+ @scanner.scan(
166
+ up: ->(line, _, _) { line == next_up },
167
+ down: ->(line, _, _) { false }
168
+ )
169
+ @scanner.commit_if_changed
170
+ end
171
+ when -1
172
+ if next_down&.is_end? && next_down.indent >= @target_indent
173
+ @scanner.scan(
174
+ up: ->(line, _, _) { false },
175
+ down: ->(line, _, _) { line == next_down }
176
+ )
177
+ @scanner.commit_if_changed
178
+ end
179
+ end
180
+ # Rollback any uncommitted changes
181
+ @scanner.stash_changes
182
+
183
+ self
184
+ end
185
+
186
+ # Finds code lines at the same or greater indentation and adds them
187
+ # to the block
188
+ def scan_neighbors_not_empty
189
+ @target_indent = @orig_indent
190
+ scan_while { |line| line.not_empty? && line.indent >= @target_indent }
191
+ end
192
+
193
+ # Scan blocks based on indentation of next line above/below block
194
+ #
195
+ # Determines indentaion of the next line above/below the current block.
196
+ #
197
+ # Normally this is called when a block has expanded to capture all "neighbors"
198
+ # at the same (or greater) indentation and needs to expand out. For example
199
+ # the `def/end` lines surrounding a method.
200
+ def scan_adjacent_indent
201
+ before_after_indent = []
202
+
203
+ before_after_indent << (@scanner.next_up&.indent || 0)
204
+ before_after_indent << (@scanner.next_down&.indent || 0)
205
+
206
+ @target_indent = before_after_indent.min
207
+ scan_while { |line| line.not_empty? && line.indent >= @target_indent }
208
+
209
+ self
210
+ end
211
+
212
+ # Return the currently matched lines as a `CodeBlock`
213
+ #
214
+ # When a `CodeBlock` is created it will gather metadata about
215
+ # itself, so this is not a free conversion. Avoid allocating
216
+ # more CodeBlock's than needed
217
+ def code_block
218
+ CodeBlock.new(lines: lines)
219
+ end
220
+
221
+ # Returns the lines matched by the current scan as an
222
+ # array of CodeLines
223
+ def lines
224
+ @scanner.lines
225
+ end
226
+
227
+ # Manageable rspec errors
228
+ def inspect
229
+ "#<#{self.class}:0x0000123843lol >"
230
+ end
231
+ end
232
+ end
@@ -0,0 +1,165 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SyntaxSuggest
4
+ # This class is responsible for taking a code block that exists
5
+ # at a far indentaion and then iteratively increasing the block
6
+ # so that it captures everything within the same indentation block.
7
+ #
8
+ # def dog
9
+ # puts "bow"
10
+ # puts "wow"
11
+ # end
12
+ #
13
+ # block = BlockExpand.new(code_lines: code_lines)
14
+ # .call(CodeBlock.new(lines: code_lines[1]))
15
+ #
16
+ # puts block.to_s
17
+ # # => puts "bow"
18
+ # puts "wow"
19
+ #
20
+ #
21
+ # Once a code block has captured everything at a given indentation level
22
+ # then it will expand to capture surrounding indentation.
23
+ #
24
+ # block = BlockExpand.new(code_lines: code_lines)
25
+ # .call(block)
26
+ #
27
+ # block.to_s
28
+ # # => def dog
29
+ # puts "bow"
30
+ # puts "wow"
31
+ # end
32
+ #
33
+ class BlockExpand
34
+ def initialize(code_lines:)
35
+ @code_lines = code_lines
36
+ end
37
+
38
+ # Main interface. Expand current indentation, before
39
+ # expanding to a lower indentation
40
+ def call(block)
41
+ if (next_block = expand_neighbors(block))
42
+ next_block
43
+ else
44
+ expand_indent(block)
45
+ end
46
+ end
47
+
48
+ # Expands code to the next lowest indentation
49
+ #
50
+ # For example:
51
+ #
52
+ # 1 def dog
53
+ # 2 print "dog"
54
+ # 3 end
55
+ #
56
+ # If a block starts on line 2 then it has captured all it's "neighbors" (code at
57
+ # the same indentation or higher). To continue expanding, this block must capture
58
+ # lines one and three which are at a different indentation level.
59
+ #
60
+ # This method allows fully expanded blocks to decrease their indentation level (so
61
+ # they can expand to capture more code up and down). It does this conservatively
62
+ # as there's no undo (currently).
63
+ def expand_indent(block)
64
+ now = AroundBlockScan.new(code_lines: @code_lines, block: block)
65
+ .force_add_hidden
66
+ .stop_after_kw
67
+ .scan_adjacent_indent
68
+
69
+ now.lookahead_balance_one_line
70
+
71
+ now.code_block
72
+ end
73
+
74
+ # A neighbor is code that is at or above the current indent line.
75
+ #
76
+ # First we build a block with all neighbors. If we can't go further
77
+ # then we decrease the indentation threshold and expand via indentation
78
+ # i.e. `expand_indent`
79
+ #
80
+ # Handles two general cases.
81
+ #
82
+ # ## Case #1: Check code inside of methods/classes/etc.
83
+ #
84
+ # It's important to note, that not everything in a given indentation level can be parsed
85
+ # as valid code even if it's part of valid code. For example:
86
+ #
87
+ # 1 hash = {
88
+ # 2 name: "richard",
89
+ # 3 dog: "cinco",
90
+ # 4 }
91
+ #
92
+ # In this case lines 2 and 3 will be neighbors, but they're invalid until `expand_indent`
93
+ # is called on them.
94
+ #
95
+ # When we are adding code within a method or class (at the same indentation level),
96
+ # use the empty lines to denote the programmer intended logical chunks.
97
+ # Stop and check each one. For example:
98
+ #
99
+ # 1 def dog
100
+ # 2 print "dog"
101
+ # 3
102
+ # 4 hash = {
103
+ # 5 end
104
+ #
105
+ # If we did not stop parsing at empty newlines then the block might mistakenly grab all
106
+ # the contents (lines 2, 3, and 4) and report them as being problems, instead of only
107
+ # line 4.
108
+ #
109
+ # ## Case #2: Expand/grab other logical blocks
110
+ #
111
+ # Once the search algorithm has converted all lines into blocks at a given indentation
112
+ # it will then `expand_indent`. Once the blocks that generates are expanded as neighbors
113
+ # we then begin seeing neighbors being other logical blocks i.e. a block's neighbors
114
+ # may be another method or class (something with keywords/ends).
115
+ #
116
+ # For example:
117
+ #
118
+ # 1 def bark
119
+ # 2
120
+ # 3 end
121
+ # 4
122
+ # 5 def sit
123
+ # 6 end
124
+ #
125
+ # In this case if lines 4, 5, and 6 are in a block when it tries to expand neighbors
126
+ # it will expand up. If it stops after line 2 or 3 it may cause problems since there's a
127
+ # valid kw/end pair, but the block will be checked without it.
128
+ #
129
+ # We try to resolve this edge case with `lookahead_balance_one_line` below.
130
+ def expand_neighbors(block)
131
+ now = AroundBlockScan.new(code_lines: @code_lines, block: block)
132
+
133
+ # Initial scan
134
+ now
135
+ .force_add_hidden
136
+ .stop_after_kw
137
+ .scan_neighbors_not_empty
138
+
139
+ # Slurp up empties
140
+ now
141
+ .scan_while { |line| line.empty? }
142
+
143
+ # If next line is kw and it will balance us, take it
144
+ expanded_lines = now
145
+ .lookahead_balance_one_line
146
+ .lines
147
+
148
+ # Don't allocate a block if it won't be used
149
+ #
150
+ # If nothing was taken, return nil to indicate that status
151
+ # used in `def call` to determine if
152
+ # we need to expand up/out (`expand_indent`)
153
+ if block.lines == expanded_lines
154
+ nil
155
+ else
156
+ CodeBlock.new(lines: expanded_lines)
157
+ end
158
+ end
159
+
160
+ # Manageable rspec errors
161
+ def inspect
162
+ "#<SyntaxSuggest::CodeBlock:0x0000123843lol >"
163
+ end
164
+ end
165
+ end
@@ -0,0 +1,85 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SyntaxSuggest
4
+ module Capture
5
+ # Shows surrounding kw/end pairs
6
+ #
7
+ # The purpose of showing these extra pairs is due to cases
8
+ # of ambiguity when only one visible line is matched.
9
+ #
10
+ # For example:
11
+ #
12
+ # 1 class Dog
13
+ # 2 def bark
14
+ # 4 def eat
15
+ # 5 end
16
+ # 6 end
17
+ #
18
+ # In this case either line 2 could be missing an `end` or
19
+ # line 4 was an extra line added by mistake (it happens).
20
+ #
21
+ # When we detect the above problem it shows the issue
22
+ # as only being on line 2
23
+ #
24
+ # 2 def bark
25
+ #
26
+ # Showing "neighbor" keyword pairs gives extra context:
27
+ #
28
+ # 2 def bark
29
+ # 4 def eat
30
+ # 5 end
31
+ #
32
+ #
33
+ # Example:
34
+ #
35
+ # lines = BeforeAfterKeywordEnds.new(
36
+ # block: block,
37
+ # code_lines: code_lines
38
+ # ).call()
39
+ #
40
+ class BeforeAfterKeywordEnds
41
+ def initialize(code_lines:, block:)
42
+ @scanner = ScanHistory.new(code_lines: code_lines, block: block)
43
+ @original_indent = block.current_indent
44
+ end
45
+
46
+ def call
47
+ lines = []
48
+
49
+ @scanner.scan(
50
+ up: ->(line, kw_count, end_count) {
51
+ next true if line.empty?
52
+ break if line.indent < @original_indent
53
+ next true if line.indent != @original_indent
54
+
55
+ # If we're going up and have one complete kw/end pair, stop
56
+ if kw_count != 0 && kw_count == end_count
57
+ lines << line
58
+ break
59
+ end
60
+
61
+ lines << line if line.is_kw? || line.is_end?
62
+ true
63
+ },
64
+ down: ->(line, kw_count, end_count) {
65
+ next true if line.empty?
66
+ break if line.indent < @original_indent
67
+ next true if line.indent != @original_indent
68
+
69
+ # if we're going down and have one complete kw/end pair,stop
70
+ if kw_count != 0 && kw_count == end_count
71
+ lines << line
72
+ break
73
+ end
74
+
75
+ lines << line if line.is_kw? || line.is_end?
76
+ true
77
+ }
78
+ )
79
+ @scanner.stash_changes
80
+
81
+ lines
82
+ end
83
+ end
84
+ end
85
+ end