rbs 4.1.0.pre.2-java

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 (574) hide show
  1. checksums.yaml +7 -0
  2. data/.clang-format +75 -0
  3. data/.clangd +2 -0
  4. data/.github/dependabot.yml +24 -0
  5. data/.github/workflows/bundle-update.yml +63 -0
  6. data/.github/workflows/c-check.yml +61 -0
  7. data/.github/workflows/comments.yml +37 -0
  8. data/.github/workflows/dependabot.yml +30 -0
  9. data/.github/workflows/jruby.yml +67 -0
  10. data/.github/workflows/milestone.yml +83 -0
  11. data/.github/workflows/ruby.yml +158 -0
  12. data/.github/workflows/rust.yml +184 -0
  13. data/.github/workflows/truffleruby.yml +54 -0
  14. data/.github/workflows/typecheck.yml +39 -0
  15. data/.github/workflows/wasm.yml +53 -0
  16. data/.github/workflows/windows.yml +49 -0
  17. data/.gitignore +38 -0
  18. data/.rubocop.yml +72 -0
  19. data/BSDL +22 -0
  20. data/CHANGELOG.md +2292 -0
  21. data/COPYING +56 -0
  22. data/README.md +240 -0
  23. data/Rakefile +869 -0
  24. data/Steepfile +53 -0
  25. data/config.yml +913 -0
  26. data/core/array.rbs +4142 -0
  27. data/core/basic_object.rbs +376 -0
  28. data/core/binding.rbs +148 -0
  29. data/core/builtin.rbs +278 -0
  30. data/core/class.rbs +223 -0
  31. data/core/comparable.rbs +192 -0
  32. data/core/complex.rbs +812 -0
  33. data/core/constants.rbs +96 -0
  34. data/core/data.rbs +415 -0
  35. data/core/dir.rbs +993 -0
  36. data/core/encoding.rbs +1368 -0
  37. data/core/enumerable.rbs +2506 -0
  38. data/core/enumerator/arithmetic_sequence.rbs +70 -0
  39. data/core/enumerator/product.rbs +92 -0
  40. data/core/enumerator.rbs +705 -0
  41. data/core/env.rbs +6 -0
  42. data/core/errno.rbs +682 -0
  43. data/core/errors.rbs +789 -0
  44. data/core/exception.rbs +485 -0
  45. data/core/false_class.rbs +82 -0
  46. data/core/fiber.rbs +570 -0
  47. data/core/fiber_error.rbs +11 -0
  48. data/core/file.rbs +2045 -0
  49. data/core/file_constants.rbs +463 -0
  50. data/core/file_stat.rbs +534 -0
  51. data/core/file_test.rbs +331 -0
  52. data/core/float.rbs +1316 -0
  53. data/core/gc.rbs +788 -0
  54. data/core/global_variables.rbs +184 -0
  55. data/core/hash.rbs +2183 -0
  56. data/core/integer.rbs +1374 -0
  57. data/core/io/buffer.rbs +995 -0
  58. data/core/io/wait.rbs +48 -0
  59. data/core/io.rbs +3472 -0
  60. data/core/kernel.rbs +3172 -0
  61. data/core/marshal.rbs +207 -0
  62. data/core/match_data.rbs +637 -0
  63. data/core/math.rbs +770 -0
  64. data/core/method.rbs +422 -0
  65. data/core/module.rbs +1856 -0
  66. data/core/nil_class.rbs +210 -0
  67. data/core/numeric.rbs +832 -0
  68. data/core/object.rbs +108 -0
  69. data/core/object_space/weak_key_map.rbs +166 -0
  70. data/core/object_space.rbs +197 -0
  71. data/core/pathname.rbs +1322 -0
  72. data/core/proc.rbs +905 -0
  73. data/core/process.rbs +2316 -0
  74. data/core/ractor.rbs +924 -0
  75. data/core/random.rbs +255 -0
  76. data/core/range.rbs +1209 -0
  77. data/core/rational.rbs +502 -0
  78. data/core/rb_config.rbs +88 -0
  79. data/core/rbs/ops.rbs +154 -0
  80. data/core/rbs/unnamed/argf.rbs +1236 -0
  81. data/core/rbs/unnamed/env_class.rbs +1214 -0
  82. data/core/rbs/unnamed/main_class.rbs +123 -0
  83. data/core/rbs/unnamed/random.rbs +186 -0
  84. data/core/refinement.rbs +59 -0
  85. data/core/regexp.rbs +1974 -0
  86. data/core/ruby.rbs +53 -0
  87. data/core/ruby_vm.rbs +809 -0
  88. data/core/rubygems/basic_specification.rbs +6 -0
  89. data/core/rubygems/config_file.rbs +38 -0
  90. data/core/rubygems/dependency_installer.rbs +6 -0
  91. data/core/rubygems/errors.rbs +109 -0
  92. data/core/rubygems/installer.rbs +15 -0
  93. data/core/rubygems/path_support.rbs +6 -0
  94. data/core/rubygems/platform.rbs +7 -0
  95. data/core/rubygems/request_set.rbs +49 -0
  96. data/core/rubygems/requirement.rbs +148 -0
  97. data/core/rubygems/rubygems.rbs +1105 -0
  98. data/core/rubygems/source_list.rbs +15 -0
  99. data/core/rubygems/specification.rbs +23 -0
  100. data/core/rubygems/stream_ui.rbs +5 -0
  101. data/core/rubygems/uninstaller.rbs +10 -0
  102. data/core/rubygems/version.rbs +293 -0
  103. data/core/set.rbs +751 -0
  104. data/core/signal.rbs +110 -0
  105. data/core/string.rbs +5532 -0
  106. data/core/struct.rbs +668 -0
  107. data/core/symbol.rbs +482 -0
  108. data/core/thread.rbs +1826 -0
  109. data/core/thread_group.rbs +79 -0
  110. data/core/time.rbs +1793 -0
  111. data/core/trace_point.rbs +483 -0
  112. data/core/true_class.rbs +98 -0
  113. data/core/unbound_method.rbs +337 -0
  114. data/core/warning.rbs +87 -0
  115. data/docs/CONTRIBUTING.md +107 -0
  116. data/docs/aliases.md +79 -0
  117. data/docs/architecture.md +110 -0
  118. data/docs/collection.md +192 -0
  119. data/docs/config.md +171 -0
  120. data/docs/data_and_struct.md +86 -0
  121. data/docs/encoding.md +56 -0
  122. data/docs/gem.md +56 -0
  123. data/docs/inline.md +634 -0
  124. data/docs/rbs_by_example.md +309 -0
  125. data/docs/repo.md +125 -0
  126. data/docs/rust.md +96 -0
  127. data/docs/sigs.md +167 -0
  128. data/docs/stdlib.md +147 -0
  129. data/docs/syntax.md +940 -0
  130. data/docs/tools.md +17 -0
  131. data/docs/type_fingerprint.md +21 -0
  132. data/docs/wasm_serialization.md +80 -0
  133. data/exe/rbs +7 -0
  134. data/ext/rbs_extension/ast_translation.c +1855 -0
  135. data/ext/rbs_extension/ast_translation.h +41 -0
  136. data/ext/rbs_extension/class_constants.c +187 -0
  137. data/ext/rbs_extension/class_constants.h +104 -0
  138. data/ext/rbs_extension/compat.h +10 -0
  139. data/ext/rbs_extension/extconf.rb +40 -0
  140. data/ext/rbs_extension/legacy_location.c +294 -0
  141. data/ext/rbs_extension/legacy_location.h +82 -0
  142. data/ext/rbs_extension/main.c +613 -0
  143. data/ext/rbs_extension/rbs_extension.h +16 -0
  144. data/ext/rbs_extension/rbs_string_bridging.c +9 -0
  145. data/ext/rbs_extension/rbs_string_bridging.h +24 -0
  146. data/goodcheck.yml +91 -0
  147. data/include/rbs/ast.h +1047 -0
  148. data/include/rbs/defines.h +99 -0
  149. data/include/rbs/lexer.h +207 -0
  150. data/include/rbs/location.h +40 -0
  151. data/include/rbs/parser.h +153 -0
  152. data/include/rbs/serialize.h +39 -0
  153. data/include/rbs/string.h +47 -0
  154. data/include/rbs/util/rbs_allocator.h +59 -0
  155. data/include/rbs/util/rbs_assert.h +20 -0
  156. data/include/rbs/util/rbs_buffer.h +83 -0
  157. data/include/rbs/util/rbs_constant_pool.h +155 -0
  158. data/include/rbs/util/rbs_encoding.h +282 -0
  159. data/include/rbs/util/rbs_unescape.h +24 -0
  160. data/include/rbs.h +14 -0
  161. data/lib/rbs/ancestor_graph.rb +92 -0
  162. data/lib/rbs/annotate/annotations.rb +199 -0
  163. data/lib/rbs/annotate/formatter.rb +82 -0
  164. data/lib/rbs/annotate/rdoc_annotator.rb +398 -0
  165. data/lib/rbs/annotate/rdoc_source.rb +131 -0
  166. data/lib/rbs/annotate.rb +8 -0
  167. data/lib/rbs/ast/annotation.rb +29 -0
  168. data/lib/rbs/ast/comment.rb +29 -0
  169. data/lib/rbs/ast/declarations.rb +472 -0
  170. data/lib/rbs/ast/directives.rb +49 -0
  171. data/lib/rbs/ast/members.rb +451 -0
  172. data/lib/rbs/ast/ruby/annotations.rb +451 -0
  173. data/lib/rbs/ast/ruby/comment_block.rb +247 -0
  174. data/lib/rbs/ast/ruby/declarations.rb +291 -0
  175. data/lib/rbs/ast/ruby/helpers/constant_helper.rb +28 -0
  176. data/lib/rbs/ast/ruby/helpers/location_helper.rb +15 -0
  177. data/lib/rbs/ast/ruby/members.rb +762 -0
  178. data/lib/rbs/ast/type_param.rb +235 -0
  179. data/lib/rbs/ast/visitor.rb +137 -0
  180. data/lib/rbs/buffer.rb +189 -0
  181. data/lib/rbs/builtin_names.rb +58 -0
  182. data/lib/rbs/cli/colored_io.rb +48 -0
  183. data/lib/rbs/cli/diff.rb +84 -0
  184. data/lib/rbs/cli/validate.rb +294 -0
  185. data/lib/rbs/cli.rb +1253 -0
  186. data/lib/rbs/collection/cleaner.rb +38 -0
  187. data/lib/rbs/collection/config/lockfile.rb +92 -0
  188. data/lib/rbs/collection/config/lockfile_generator.rb +269 -0
  189. data/lib/rbs/collection/config.rb +81 -0
  190. data/lib/rbs/collection/installer.rb +32 -0
  191. data/lib/rbs/collection/sources/base.rb +14 -0
  192. data/lib/rbs/collection/sources/git.rb +265 -0
  193. data/lib/rbs/collection/sources/local.rb +81 -0
  194. data/lib/rbs/collection/sources/rubygems.rb +48 -0
  195. data/lib/rbs/collection/sources/stdlib.rb +50 -0
  196. data/lib/rbs/collection/sources.rb +38 -0
  197. data/lib/rbs/collection.rb +16 -0
  198. data/lib/rbs/constant.rb +28 -0
  199. data/lib/rbs/definition.rb +415 -0
  200. data/lib/rbs/definition_builder/ancestor_builder.rb +678 -0
  201. data/lib/rbs/definition_builder/method_builder.rb +295 -0
  202. data/lib/rbs/definition_builder.rb +1054 -0
  203. data/lib/rbs/diff.rb +131 -0
  204. data/lib/rbs/environment/class_entry.rb +69 -0
  205. data/lib/rbs/environment/module_entry.rb +66 -0
  206. data/lib/rbs/environment/use_map.rb +77 -0
  207. data/lib/rbs/environment.rb +1028 -0
  208. data/lib/rbs/environment_loader.rb +167 -0
  209. data/lib/rbs/environment_walker.rb +155 -0
  210. data/lib/rbs/errors.rb +634 -0
  211. data/lib/rbs/factory.rb +18 -0
  212. data/lib/rbs/file_finder.rb +28 -0
  213. data/lib/rbs/inline_parser/comment_association.rb +117 -0
  214. data/lib/rbs/inline_parser.rb +568 -0
  215. data/lib/rbs/location_aux.rb +170 -0
  216. data/lib/rbs/locator.rb +247 -0
  217. data/lib/rbs/method_type.rb +145 -0
  218. data/lib/rbs/namespace.rb +154 -0
  219. data/lib/rbs/parser/lex_result.rb +15 -0
  220. data/lib/rbs/parser/token.rb +23 -0
  221. data/lib/rbs/parser_aux.rb +142 -0
  222. data/lib/rbs/prototype/helpers.rb +197 -0
  223. data/lib/rbs/prototype/node_usage.rb +99 -0
  224. data/lib/rbs/prototype/rb.rb +816 -0
  225. data/lib/rbs/prototype/rbi.rb +625 -0
  226. data/lib/rbs/prototype/runtime/helpers.rb +59 -0
  227. data/lib/rbs/prototype/runtime/reflection.rb +19 -0
  228. data/lib/rbs/prototype/runtime/value_object_generator.rb +279 -0
  229. data/lib/rbs/prototype/runtime.rb +680 -0
  230. data/lib/rbs/repository.rb +127 -0
  231. data/lib/rbs/resolver/constant_resolver.rb +219 -0
  232. data/lib/rbs/resolver/type_name_resolver.rb +167 -0
  233. data/lib/rbs/rewriter.rb +70 -0
  234. data/lib/rbs/sorter.rb +198 -0
  235. data/lib/rbs/source.rb +99 -0
  236. data/lib/rbs/substitution.rb +83 -0
  237. data/lib/rbs/subtractor.rb +204 -0
  238. data/lib/rbs/test/errors.rb +80 -0
  239. data/lib/rbs/test/guaranteed.rb +30 -0
  240. data/lib/rbs/test/hook.rb +212 -0
  241. data/lib/rbs/test/observer.rb +19 -0
  242. data/lib/rbs/test/setup.rb +84 -0
  243. data/lib/rbs/test/setup_helper.rb +50 -0
  244. data/lib/rbs/test/tester.rb +167 -0
  245. data/lib/rbs/test/type_check.rb +457 -0
  246. data/lib/rbs/test.rb +112 -0
  247. data/lib/rbs/type_alias_dependency.rb +100 -0
  248. data/lib/rbs/type_alias_regularity.rb +126 -0
  249. data/lib/rbs/type_name.rb +122 -0
  250. data/lib/rbs/types.rb +1604 -0
  251. data/lib/rbs/unit_test/convertibles.rb +177 -0
  252. data/lib/rbs/unit_test/spy.rb +138 -0
  253. data/lib/rbs/unit_test/type_assertions.rb +383 -0
  254. data/lib/rbs/unit_test/with_aliases.rb +145 -0
  255. data/lib/rbs/unit_test.rb +6 -0
  256. data/lib/rbs/validator.rb +186 -0
  257. data/lib/rbs/variance_calculator.rb +189 -0
  258. data/lib/rbs/vendorer.rb +71 -0
  259. data/lib/rbs/version.rb +5 -0
  260. data/lib/rbs/wasm/deserializer.rb +213 -0
  261. data/lib/rbs/wasm/jars/asm-analysis.jar +0 -0
  262. data/lib/rbs/wasm/jars/asm-commons.jar +0 -0
  263. data/lib/rbs/wasm/jars/asm-tree.jar +0 -0
  264. data/lib/rbs/wasm/jars/asm-util.jar +0 -0
  265. data/lib/rbs/wasm/jars/asm.jar +0 -0
  266. data/lib/rbs/wasm/jars/compiler.jar +0 -0
  267. data/lib/rbs/wasm/jars/log.jar +0 -0
  268. data/lib/rbs/wasm/jars/runtime.jar +0 -0
  269. data/lib/rbs/wasm/jars/wasi.jar +0 -0
  270. data/lib/rbs/wasm/jars/wasm.jar +0 -0
  271. data/lib/rbs/wasm/location.rb +61 -0
  272. data/lib/rbs/wasm/parser.rb +137 -0
  273. data/lib/rbs/wasm/rbs_parser.wasm +0 -0
  274. data/lib/rbs/wasm/runtime.rb +217 -0
  275. data/lib/rbs/wasm/serialization_schema.rb +110 -0
  276. data/lib/rbs/writer.rb +424 -0
  277. data/lib/rbs.rb +117 -0
  278. data/lib/rdoc/discover.rb +20 -0
  279. data/lib/rdoc_plugin/parser.rb +163 -0
  280. data/rbs.gemspec +68 -0
  281. data/schema/annotation.json +14 -0
  282. data/schema/comment.json +26 -0
  283. data/schema/decls.json +326 -0
  284. data/schema/function.json +87 -0
  285. data/schema/location.json +56 -0
  286. data/schema/members.json +266 -0
  287. data/schema/methodType.json +50 -0
  288. data/schema/typeParam.json +52 -0
  289. data/schema/types.json +317 -0
  290. data/sig/ancestor_builder.rbs +163 -0
  291. data/sig/ancestor_graph.rbs +60 -0
  292. data/sig/annotate/annotations.rbs +102 -0
  293. data/sig/annotate/formatter.rbs +24 -0
  294. data/sig/annotate/rdoc_annotater.rbs +85 -0
  295. data/sig/annotate/rdoc_source.rbs +32 -0
  296. data/sig/annotation.rbs +27 -0
  297. data/sig/ast/ruby/annotations.rbs +470 -0
  298. data/sig/ast/ruby/comment_block.rbs +127 -0
  299. data/sig/ast/ruby/declarations.rbs +158 -0
  300. data/sig/ast/ruby/helpers/constant_helper.rbs +11 -0
  301. data/sig/ast/ruby/helpers/location_helper.rbs +15 -0
  302. data/sig/ast/ruby/members.rbs +198 -0
  303. data/sig/buffer.rbs +108 -0
  304. data/sig/builtin_names.rbs +44 -0
  305. data/sig/cli/colored_io.rbs +15 -0
  306. data/sig/cli/diff.rbs +15 -0
  307. data/sig/cli/validate.rbs +47 -0
  308. data/sig/cli.rbs +89 -0
  309. data/sig/collection/cleaner.rbs +13 -0
  310. data/sig/collection/config/lockfile.rbs +74 -0
  311. data/sig/collection/config/lockfile_generator.rbs +68 -0
  312. data/sig/collection/config.rbs +46 -0
  313. data/sig/collection/installer.rbs +17 -0
  314. data/sig/collection/sources.rbs +214 -0
  315. data/sig/collection.rbs +4 -0
  316. data/sig/comment.rbs +26 -0
  317. data/sig/constant.rbs +21 -0
  318. data/sig/declarations.rbs +274 -0
  319. data/sig/definition.rbs +232 -0
  320. data/sig/definition_builder.rbs +181 -0
  321. data/sig/diff.rbs +28 -0
  322. data/sig/directives.rbs +77 -0
  323. data/sig/environment/class_entry.rbs +50 -0
  324. data/sig/environment/module_entry.rbs +50 -0
  325. data/sig/environment.rbs +286 -0
  326. data/sig/environment_loader.rbs +111 -0
  327. data/sig/environment_walker.rbs +65 -0
  328. data/sig/errors.rbs +408 -0
  329. data/sig/factory.rbs +5 -0
  330. data/sig/file_finder.rbs +28 -0
  331. data/sig/inline_parser/comment_association.rbs +71 -0
  332. data/sig/inline_parser.rbs +126 -0
  333. data/sig/location.rbs +135 -0
  334. data/sig/locator.rbs +56 -0
  335. data/sig/manifest.yaml +5 -0
  336. data/sig/members.rbs +258 -0
  337. data/sig/method_builder.rbs +89 -0
  338. data/sig/method_types.rbs +58 -0
  339. data/sig/namespace.rbs +161 -0
  340. data/sig/parser.rbs +164 -0
  341. data/sig/prototype/helpers.rbs +29 -0
  342. data/sig/prototype/node_usage.rbs +20 -0
  343. data/sig/prototype/rb.rbs +96 -0
  344. data/sig/prototype/rbi.rbs +75 -0
  345. data/sig/prototype/runtime.rbs +182 -0
  346. data/sig/rbs.rbs +21 -0
  347. data/sig/rdoc/rbs.rbs +67 -0
  348. data/sig/repository.rbs +85 -0
  349. data/sig/resolver/constant_resolver.rbs +92 -0
  350. data/sig/resolver/context.rbs +34 -0
  351. data/sig/resolver/type_name_resolver.rbs +61 -0
  352. data/sig/rewriter.rbs +45 -0
  353. data/sig/shims/bundler.rbs +38 -0
  354. data/sig/shims/enumerable.rbs +5 -0
  355. data/sig/shims/rubygems.rbs +19 -0
  356. data/sig/sorter.rbs +41 -0
  357. data/sig/source.rbs +48 -0
  358. data/sig/substitution.rbs +48 -0
  359. data/sig/subtractor.rbs +37 -0
  360. data/sig/test/errors.rbs +52 -0
  361. data/sig/test/guranteed.rbs +9 -0
  362. data/sig/test/type_check.rbs +19 -0
  363. data/sig/test.rbs +82 -0
  364. data/sig/type_alias_dependency.rbs +53 -0
  365. data/sig/type_alias_regularity.rbs +98 -0
  366. data/sig/type_param.rbs +115 -0
  367. data/sig/typename.rbs +89 -0
  368. data/sig/types.rbs +578 -0
  369. data/sig/unit_test/convertibles.rbs +154 -0
  370. data/sig/unit_test/spy.rbs +22 -0
  371. data/sig/unit_test/type_assertions.rbs +211 -0
  372. data/sig/unit_test/with_aliases.rbs +136 -0
  373. data/sig/use_map.rbs +35 -0
  374. data/sig/util.rbs +9 -0
  375. data/sig/validator.rbs +63 -0
  376. data/sig/variance_calculator.rbs +87 -0
  377. data/sig/vendorer.rbs +51 -0
  378. data/sig/version.rbs +3 -0
  379. data/sig/visitor.rbs +47 -0
  380. data/sig/wasm/deserializer.rbs +66 -0
  381. data/sig/wasm/serialization_schema.rbs +13 -0
  382. data/sig/writer.rbs +127 -0
  383. data/src/ast.c +1628 -0
  384. data/src/lexer.c +3217 -0
  385. data/src/lexer.re +155 -0
  386. data/src/lexstate.c +217 -0
  387. data/src/location.c +31 -0
  388. data/src/parser.c +4255 -0
  389. data/src/serialize.c +958 -0
  390. data/src/string.c +41 -0
  391. data/src/util/rbs_allocator.c +162 -0
  392. data/src/util/rbs_assert.c +19 -0
  393. data/src/util/rbs_buffer.c +54 -0
  394. data/src/util/rbs_constant_pool.c +268 -0
  395. data/src/util/rbs_encoding.c +21308 -0
  396. data/src/util/rbs_unescape.c +167 -0
  397. data/stdlib/abbrev/0/abbrev.rbs +66 -0
  398. data/stdlib/abbrev/0/array.rbs +26 -0
  399. data/stdlib/base64/0/base64.rbs +355 -0
  400. data/stdlib/benchmark/0/benchmark.rbs +452 -0
  401. data/stdlib/bigdecimal/0/big_decimal.rbs +1647 -0
  402. data/stdlib/bigdecimal-math/0/big_math.rbs +280 -0
  403. data/stdlib/bigdecimal-math/0/manifest.yaml +2 -0
  404. data/stdlib/cgi/0/core.rbs +911 -0
  405. data/stdlib/cgi/0/manifest.yaml +4 -0
  406. data/stdlib/cgi-escape/0/escape.rbs +171 -0
  407. data/stdlib/coverage/0/coverage.rbs +266 -0
  408. data/stdlib/csv/0/csv.rbs +3776 -0
  409. data/stdlib/csv/0/manifest.yaml +3 -0
  410. data/stdlib/date/0/date.rbs +1598 -0
  411. data/stdlib/date/0/date_time.rbs +617 -0
  412. data/stdlib/date/0/time.rbs +26 -0
  413. data/stdlib/dbm/0/dbm.rbs +421 -0
  414. data/stdlib/delegate/0/delegator.rbs +187 -0
  415. data/stdlib/delegate/0/kernel.rbs +47 -0
  416. data/stdlib/delegate/0/simple_delegator.rbs +96 -0
  417. data/stdlib/did_you_mean/0/did_you_mean.rbs +344 -0
  418. data/stdlib/digest/0/digest.rbs +687 -0
  419. data/stdlib/erb/0/erb.rbs +933 -0
  420. data/stdlib/etc/0/etc.rbs +884 -0
  421. data/stdlib/fileutils/0/fileutils.rbs +1753 -0
  422. data/stdlib/find/0/find.rbs +49 -0
  423. data/stdlib/forwardable/0/forwardable.rbs +271 -0
  424. data/stdlib/io-console/0/io-console.rbs +414 -0
  425. data/stdlib/ipaddr/0/ipaddr.rbs +436 -0
  426. data/stdlib/json/0/json.rbs +1963 -0
  427. data/stdlib/kconv/0/kconv.rbs +166 -0
  428. data/stdlib/logger/0/formatter.rbs +45 -0
  429. data/stdlib/logger/0/log_device.rbs +100 -0
  430. data/stdlib/logger/0/logger.rbs +796 -0
  431. data/stdlib/logger/0/manifest.yaml +2 -0
  432. data/stdlib/logger/0/period.rbs +17 -0
  433. data/stdlib/logger/0/severity.rbs +34 -0
  434. data/stdlib/minitest/0/kernel.rbs +42 -0
  435. data/stdlib/minitest/0/minitest/abstract_reporter.rbs +52 -0
  436. data/stdlib/minitest/0/minitest/assertion.rbs +17 -0
  437. data/stdlib/minitest/0/minitest/assertions.rbs +590 -0
  438. data/stdlib/minitest/0/minitest/backtrace_filter.rbs +23 -0
  439. data/stdlib/minitest/0/minitest/bench_spec.rbs +102 -0
  440. data/stdlib/minitest/0/minitest/benchmark.rbs +259 -0
  441. data/stdlib/minitest/0/minitest/composite_reporter.rbs +25 -0
  442. data/stdlib/minitest/0/minitest/compress.rbs +13 -0
  443. data/stdlib/minitest/0/minitest/error_on_warning.rbs +3 -0
  444. data/stdlib/minitest/0/minitest/expectation.rbs +2 -0
  445. data/stdlib/minitest/0/minitest/expectations.rbs +21 -0
  446. data/stdlib/minitest/0/minitest/guard.rbs +64 -0
  447. data/stdlib/minitest/0/minitest/mock.rbs +64 -0
  448. data/stdlib/minitest/0/minitest/parallel/executor.rbs +46 -0
  449. data/stdlib/minitest/0/minitest/parallel/test/class_methods.rbs +5 -0
  450. data/stdlib/minitest/0/minitest/parallel/test.rbs +3 -0
  451. data/stdlib/minitest/0/minitest/parallel.rbs +2 -0
  452. data/stdlib/minitest/0/minitest/pride_io.rbs +62 -0
  453. data/stdlib/minitest/0/minitest/pride_lol.rbs +19 -0
  454. data/stdlib/minitest/0/minitest/progress_reporter.rbs +11 -0
  455. data/stdlib/minitest/0/minitest/reportable.rbs +53 -0
  456. data/stdlib/minitest/0/minitest/reporter.rbs +5 -0
  457. data/stdlib/minitest/0/minitest/result.rbs +28 -0
  458. data/stdlib/minitest/0/minitest/runnable.rbs +163 -0
  459. data/stdlib/minitest/0/minitest/skip.rbs +6 -0
  460. data/stdlib/minitest/0/minitest/spec/dsl/instance_methods.rbs +48 -0
  461. data/stdlib/minitest/0/minitest/spec/dsl.rbs +129 -0
  462. data/stdlib/minitest/0/minitest/spec.rbs +11 -0
  463. data/stdlib/minitest/0/minitest/statistics_reporter.rbs +81 -0
  464. data/stdlib/minitest/0/minitest/summary_reporter.rbs +18 -0
  465. data/stdlib/minitest/0/minitest/test/lifecycle_hooks.rbs +92 -0
  466. data/stdlib/minitest/0/minitest/test.rbs +69 -0
  467. data/stdlib/minitest/0/minitest/unexpected_error.rbs +12 -0
  468. data/stdlib/minitest/0/minitest/unexpected_warning.rbs +6 -0
  469. data/stdlib/minitest/0/minitest/unit/test_case.rbs +3 -0
  470. data/stdlib/minitest/0/minitest/unit.rbs +4 -0
  471. data/stdlib/minitest/0/minitest.rbs +115 -0
  472. data/stdlib/monitor/0/monitor.rbs +363 -0
  473. data/stdlib/mutex_m/0/mutex_m.rbs +104 -0
  474. data/stdlib/net-http/0/manifest.yaml +3 -0
  475. data/stdlib/net-http/0/net-http.rbs +5580 -0
  476. data/stdlib/net-protocol/0/manifest.yaml +2 -0
  477. data/stdlib/net-protocol/0/net-protocol.rbs +56 -0
  478. data/stdlib/net-smtp/0/manifest.yaml +2 -0
  479. data/stdlib/net-smtp/0/net-smtp.rbs +55 -0
  480. data/stdlib/nkf/0/nkf.rbs +402 -0
  481. data/stdlib/objspace/0/objspace.rbs +470 -0
  482. data/stdlib/observable/0/observable.rbs +217 -0
  483. data/stdlib/open-uri/0/manifest.yaml +4 -0
  484. data/stdlib/open-uri/0/open-uri.rbs +433 -0
  485. data/stdlib/open3/0/open3.rbs +606 -0
  486. data/stdlib/openssl/0/manifest.yaml +3 -0
  487. data/stdlib/openssl/0/openssl.rbs +12231 -0
  488. data/stdlib/optparse/0/optparse.rbs +1734 -0
  489. data/stdlib/pathname/0/pathname.rbs +36 -0
  490. data/stdlib/pp/0/manifest.yaml +2 -0
  491. data/stdlib/pp/0/pp.rbs +301 -0
  492. data/stdlib/prettyprint/0/prettyprint.rbs +383 -0
  493. data/stdlib/pstore/0/pstore.rbs +608 -0
  494. data/stdlib/psych/0/core_ext.rbs +12 -0
  495. data/stdlib/psych/0/dbm.rbs +237 -0
  496. data/stdlib/psych/0/manifest.yaml +3 -0
  497. data/stdlib/psych/0/psych.rbs +455 -0
  498. data/stdlib/psych/0/store.rbs +57 -0
  499. data/stdlib/pty/0/pty.rbs +240 -0
  500. data/stdlib/random-formatter/0/random-formatter.rbs +277 -0
  501. data/stdlib/rdoc/0/code_object.rbs +52 -0
  502. data/stdlib/rdoc/0/comment.rbs +61 -0
  503. data/stdlib/rdoc/0/context.rbs +153 -0
  504. data/stdlib/rdoc/0/markup.rbs +117 -0
  505. data/stdlib/rdoc/0/options.rbs +76 -0
  506. data/stdlib/rdoc/0/parser.rbs +56 -0
  507. data/stdlib/rdoc/0/rdoc.rbs +393 -0
  508. data/stdlib/rdoc/0/ri.rbs +17 -0
  509. data/stdlib/rdoc/0/store.rbs +48 -0
  510. data/stdlib/rdoc/0/top_level.rbs +97 -0
  511. data/stdlib/resolv/0/manifest.yaml +3 -0
  512. data/stdlib/resolv/0/resolv.rbs +1787 -0
  513. data/stdlib/ripper/0/ripper.rbs +1654 -0
  514. data/stdlib/securerandom/0/manifest.yaml +2 -0
  515. data/stdlib/securerandom/0/securerandom.rbs +49 -0
  516. data/stdlib/shellwords/0/shellwords.rbs +229 -0
  517. data/stdlib/singleton/0/singleton.rbs +134 -0
  518. data/stdlib/socket/0/addrinfo.rbs +666 -0
  519. data/stdlib/socket/0/basic_socket.rbs +590 -0
  520. data/stdlib/socket/0/constants.rbs +2295 -0
  521. data/stdlib/socket/0/ip_socket.rbs +94 -0
  522. data/stdlib/socket/0/socket.rbs +4170 -0
  523. data/stdlib/socket/0/socket_error.rbs +5 -0
  524. data/stdlib/socket/0/tcp_server.rbs +192 -0
  525. data/stdlib/socket/0/tcp_socket.rbs +87 -0
  526. data/stdlib/socket/0/udp_socket.rbs +133 -0
  527. data/stdlib/socket/0/unix_server.rbs +169 -0
  528. data/stdlib/socket/0/unix_socket.rbs +172 -0
  529. data/stdlib/stringio/0/stringio.rbs +1681 -0
  530. data/stdlib/strscan/0/string_scanner.rbs +1648 -0
  531. data/stdlib/tempfile/0/tempfile.rbs +483 -0
  532. data/stdlib/time/0/time.rbs +434 -0
  533. data/stdlib/timeout/0/timeout.rbs +137 -0
  534. data/stdlib/tmpdir/0/tmpdir.rbs +69 -0
  535. data/stdlib/tsort/0/cyclic.rbs +8 -0
  536. data/stdlib/tsort/0/interfaces.rbs +20 -0
  537. data/stdlib/tsort/0/tsort.rbs +410 -0
  538. data/stdlib/uri/0/common.rbs +621 -0
  539. data/stdlib/uri/0/file.rbs +118 -0
  540. data/stdlib/uri/0/ftp.rbs +13 -0
  541. data/stdlib/uri/0/generic.rbs +1116 -0
  542. data/stdlib/uri/0/http.rbs +104 -0
  543. data/stdlib/uri/0/https.rbs +14 -0
  544. data/stdlib/uri/0/ldap.rbs +230 -0
  545. data/stdlib/uri/0/ldaps.rbs +14 -0
  546. data/stdlib/uri/0/mailto.rbs +92 -0
  547. data/stdlib/uri/0/rfc2396_parser.rbs +189 -0
  548. data/stdlib/uri/0/rfc3986_parser.rbs +2 -0
  549. data/stdlib/uri/0/ws.rbs +13 -0
  550. data/stdlib/uri/0/wss.rbs +9 -0
  551. data/stdlib/yaml/0/manifest.yaml +2 -0
  552. data/stdlib/yaml/0/yaml.rbs +1 -0
  553. data/stdlib/zlib/0/buf_error.rbs +10 -0
  554. data/stdlib/zlib/0/data_error.rbs +10 -0
  555. data/stdlib/zlib/0/deflate.rbs +211 -0
  556. data/stdlib/zlib/0/error.rbs +20 -0
  557. data/stdlib/zlib/0/gzip_file/crc_error.rbs +12 -0
  558. data/stdlib/zlib/0/gzip_file/error.rbs +23 -0
  559. data/stdlib/zlib/0/gzip_file/length_error.rbs +12 -0
  560. data/stdlib/zlib/0/gzip_file/no_footer.rbs +11 -0
  561. data/stdlib/zlib/0/gzip_file.rbs +156 -0
  562. data/stdlib/zlib/0/gzip_reader.rbs +293 -0
  563. data/stdlib/zlib/0/gzip_writer.rbs +168 -0
  564. data/stdlib/zlib/0/inflate.rbs +180 -0
  565. data/stdlib/zlib/0/mem_error.rbs +10 -0
  566. data/stdlib/zlib/0/need_dict.rbs +13 -0
  567. data/stdlib/zlib/0/stream_end.rbs +11 -0
  568. data/stdlib/zlib/0/stream_error.rbs +11 -0
  569. data/stdlib/zlib/0/version_error.rbs +11 -0
  570. data/stdlib/zlib/0/zlib.rbs +449 -0
  571. data/stdlib/zlib/0/zstream.rbs +201 -0
  572. data/wasm/README.md +59 -0
  573. data/wasm/rbs_wasm.c +411 -0
  574. metadata +660 -0
data/core/errors.rbs ADDED
@@ -0,0 +1,789 @@
1
+ # <!-- rdoc-file=error.c -->
2
+ # Raised when the arguments are wrong and there isn't a more specific Exception
3
+ # class.
4
+ #
5
+ # Ex: passing the wrong number of arguments
6
+ #
7
+ # [1, 2, 3].first(4, 5)
8
+ #
9
+ # <em>raises the exception:</em>
10
+ #
11
+ # ArgumentError: wrong number of arguments (given 2, expected 1)
12
+ #
13
+ # Ex: passing an argument that is not acceptable:
14
+ #
15
+ # [1, 2, 3].first(-4)
16
+ #
17
+ # <em>raises the exception:</em>
18
+ #
19
+ # ArgumentError: negative array size
20
+ #
21
+ class ArgumentError < StandardError
22
+ end
23
+
24
+ # <!-- rdoc-file=thread_sync.c -->
25
+ # The exception class which will be raised when pushing into a closed Queue.
26
+ # See Thread::Queue#close and Thread::SizedQueue#close.
27
+ #
28
+ class ClosedQueueError < StopIteration
29
+ end
30
+
31
+ # <!-- rdoc-file=error.c -->
32
+ # EncodingError is the base class for encoding errors.
33
+ #
34
+ class EncodingError < StandardError
35
+ end
36
+
37
+ # <!-- rdoc-file=io.c -->
38
+ # Raised by some IO operations when reaching the end of file. Many IO methods
39
+ # exist in two forms,
40
+ #
41
+ # one that returns `nil` when the end of file is reached, the other raises
42
+ # EOFError.
43
+ #
44
+ # EOFError is a subclass of IOError.
45
+ #
46
+ # file = File.open("/etc/hosts")
47
+ # file.read
48
+ # file.gets #=> nil
49
+ # file.readline #=> EOFError: end of file reached
50
+ # file.close
51
+ #
52
+ class EOFError < IOError
53
+ end
54
+
55
+ # <!-- rdoc-file=numeric.c -->
56
+ # Raised when attempting to convert special float values (in particular
57
+ # `Infinity` or `NaN`) to numerical classes which don't support them.
58
+ #
59
+ # Float::INFINITY.to_r #=> FloatDomainError: Infinity
60
+ #
61
+ class FloatDomainError < RangeError
62
+ end
63
+
64
+ # <!-- rdoc-file=error.c -->
65
+ # Raised when there is an attempt to modify a frozen object.
66
+ #
67
+ # [1, 2, 3].freeze << 4
68
+ #
69
+ # <em>raises the exception:</em>
70
+ #
71
+ # FrozenError: can't modify frozen Array
72
+ #
73
+ class FrozenError[T] < RuntimeError
74
+ # <!--
75
+ # rdoc-file=error.c
76
+ # - FrozenError.new(msg=nil, receiver: nil) -> frozen_error
77
+ # -->
78
+ # Construct a new FrozenError exception. If given the *receiver* parameter may
79
+ # subsequently be examined using the FrozenError#receiver method.
80
+ #
81
+ # a = [].freeze
82
+ # raise FrozenError.new("can't modify frozen array", receiver: a)
83
+ #
84
+ def initialize: (?string? msg, ?receiver: T?) -> void
85
+
86
+ # <!--
87
+ # rdoc-file=error.c
88
+ # - frozen_error.receiver -> object
89
+ # -->
90
+ # Return the receiver associated with this FrozenError exception.
91
+ #
92
+ def receiver: () -> T?
93
+ end
94
+
95
+ # <!-- rdoc-file=error.c -->
96
+ # Raised when the given index is invalid.
97
+ #
98
+ # a = [:foo, :bar]
99
+ # a.fetch(0) #=> :foo
100
+ # a[4] #=> nil
101
+ # a.fetch(4) #=> IndexError: index 4 outside of array bounds: -2...2
102
+ #
103
+ class IndexError < StandardError
104
+ end
105
+
106
+ # <!-- rdoc-file=error.c -->
107
+ # Raised when the interrupt signal is received, typically because the user has
108
+ # pressed Control-C (on most posix platforms). As such, it is a subclass of
109
+ # `SignalException`.
110
+ #
111
+ # begin
112
+ # puts "Press ctrl-C when you get bored"
113
+ # loop {}
114
+ # rescue Interrupt => e
115
+ # puts "Note: You will typically use Signal.trap instead."
116
+ # end
117
+ #
118
+ # <em>produces:</em>
119
+ #
120
+ # Press ctrl-C when you get bored
121
+ #
122
+ # <em>then waits until it is interrupted with Control-C and then prints:</em>
123
+ #
124
+ # Note: You will typically use Signal.trap instead.
125
+ #
126
+ class Interrupt < SignalException
127
+ def initialize: (?string) -> void
128
+ end
129
+
130
+ # <!-- rdoc-file=io.c -->
131
+ # Raised when an IO operation fails.
132
+ #
133
+ # File.open("/etc/hosts") {|f| f << "example"}
134
+ # #=> IOError: not opened for writing
135
+ #
136
+ # File.open("/etc/hosts") {|f| f.close; f.read }
137
+ # #=> IOError: closed stream
138
+ #
139
+ # Note that some IO failures raise `SystemCallError`s and these are not
140
+ # subclasses of IOError:
141
+ #
142
+ # File.open("does/not/exist")
143
+ # #=> Errno::ENOENT: No such file or directory - does/not/exist
144
+ #
145
+ class IOError < StandardError
146
+ end
147
+
148
+ # <!-- rdoc-file=error.c -->
149
+ # Raised when the specified key is not found. It is a subclass of IndexError.
150
+ #
151
+ # h = {"foo" => :bar}
152
+ # h.fetch("foo") #=> :bar
153
+ # h.fetch("baz") #=> KeyError: key not found: "baz"
154
+ #
155
+ class KeyError[K, R] < IndexError
156
+ # <!--
157
+ # rdoc-file=error.c
158
+ # - KeyError.new(message=nil, receiver: nil, key: nil) -> key_error
159
+ # -->
160
+ # Construct a new `KeyError` exception with the given message, receiver and key.
161
+ #
162
+ def initialize: (?string msg, ?receiver: R?, ?key: K?) -> void
163
+
164
+ # <!--
165
+ # rdoc-file=error.c
166
+ # - key_error.key -> object
167
+ # -->
168
+ # Return the key caused this KeyError exception.
169
+ #
170
+ def key: () -> K?
171
+
172
+ # <!--
173
+ # rdoc-file=error.c
174
+ # - key_error.receiver -> object
175
+ # -->
176
+ # Return the receiver associated with this KeyError exception.
177
+ #
178
+ def receiver: () -> R?
179
+ end
180
+
181
+ # <!-- rdoc-file=error.c -->
182
+ # Raised when a file required (a Ruby script, extension library, ...) fails to
183
+ # load.
184
+ #
185
+ # require 'this/file/does/not/exist'
186
+ #
187
+ # <em>raises the exception:</em>
188
+ #
189
+ # LoadError: no such file to load -- this/file/does/not/exist
190
+ #
191
+ # <!-- rdoc-file=lib/bundled_gems.rb -->
192
+ # for RubyGems without Bundler environment. If loading library is not part of
193
+ # the default gems and the bundled gems, warn it.
194
+ #
195
+ class LoadError < ScriptError
196
+ # <!-- rdoc-file=error.c -->
197
+ # the path that failed to load
198
+ #
199
+ def path: () -> String?
200
+ end
201
+
202
+ # <!-- rdoc-file=proc.c -->
203
+ # Raised when Ruby can't yield as requested.
204
+ #
205
+ # A typical scenario is attempting to yield when no block is given:
206
+ #
207
+ # def call_block
208
+ # yield 42
209
+ # end
210
+ # call_block
211
+ #
212
+ # <em>raises the exception:</em>
213
+ #
214
+ # LocalJumpError: no block given (yield)
215
+ #
216
+ # A more subtle example:
217
+ #
218
+ # def get_me_a_return
219
+ # Proc.new { return 42 }
220
+ # end
221
+ # get_me_a_return.call
222
+ #
223
+ # <em>raises the exception:</em>
224
+ #
225
+ # LocalJumpError: unexpected return
226
+ #
227
+ class LocalJumpError < StandardError
228
+ # <!--
229
+ # rdoc-file=proc.c
230
+ # - local_jump_error.exit_value -> obj
231
+ # -->
232
+ # Returns the exit value associated with this `LocalJumpError`.
233
+ #
234
+ def exit_value: () -> untyped
235
+
236
+ # <!--
237
+ # rdoc-file=proc.c
238
+ # - local_jump_error.reason -> symbol
239
+ # -->
240
+ # The reason this block was terminated: :break, :redo, :retry, :next, :return,
241
+ # or :noreason.
242
+ #
243
+ def reason: () -> Symbol
244
+ end
245
+
246
+ # <!-- rdoc-file=error.c -->
247
+ # Raised when a given name is invalid or undefined.
248
+ #
249
+ # puts foo
250
+ #
251
+ # <em>raises the exception:</em>
252
+ #
253
+ # NameError: undefined local variable or method `foo' for main:Object
254
+ #
255
+ # Since constant names must start with a capital:
256
+ #
257
+ # Integer.const_set :answer, 42
258
+ #
259
+ # <em>raises the exception:</em>
260
+ #
261
+ # NameError: wrong constant name answer
262
+ #
263
+ class NameError[T] < StandardError
264
+ # <!--
265
+ # rdoc-file=error.c
266
+ # - NameError.new(msg=nil, name=nil, receiver: nil) -> name_error
267
+ # -->
268
+ # Construct a new NameError exception. If given the *name* parameter may
269
+ # subsequently be examined using the NameError#name method. *receiver* parameter
270
+ # allows to pass object in context of which the error happened. Example:
271
+ #
272
+ # [1, 2, 3].method(:rject) # NameError with name "rject" and receiver: Array
273
+ # [1, 2, 3].singleton_method(:rject) # NameError with name "rject" and receiver: [1, 2, 3]
274
+ #
275
+ def initialize: (?string msg, ?String? name, ?receiver: T?) -> void
276
+
277
+ # <!--
278
+ # rdoc-file=error.c
279
+ # - name_error.local_variables -> array
280
+ # -->
281
+ # Return a list of the local variable names defined where this NameError
282
+ # exception was raised.
283
+ #
284
+ # Internal use only.
285
+ #
286
+ def local_variables: () -> ::Array[Symbol]
287
+
288
+ # <!--
289
+ # rdoc-file=error.c
290
+ # - name_error.name -> string or nil
291
+ # -->
292
+ # Return the name associated with this NameError exception.
293
+ #
294
+ def name: () -> String?
295
+
296
+ # <!--
297
+ # rdoc-file=error.c
298
+ # - name_error.receiver -> object
299
+ # -->
300
+ # Return the receiver associated with this NameError exception.
301
+ #
302
+ def receiver: () -> T?
303
+ end
304
+
305
+ # <!-- rdoc-file=error.c -->
306
+ # Raised when matching pattern not found.
307
+ #
308
+ class NoMatchingPatternError < StandardError
309
+ end
310
+
311
+ # <!-- rdoc-file=error.c -->
312
+ # Raised when matching key not found.
313
+ #
314
+ class NoMatchingPatternKeyError[M, K] < NoMatchingPatternError
315
+ # <!--
316
+ # rdoc-file=error.c
317
+ # - NoMatchingPatternKeyError.new(message=nil, matchee: nil, key: nil) -> no_matching_pattern_key_error
318
+ # -->
319
+ # Construct a new `NoMatchingPatternKeyError` exception with the given message,
320
+ # matchee and key.
321
+ #
322
+ def initialize: (?string message, matchee: M, key: K) -> void
323
+
324
+ # <!--
325
+ # rdoc-file=error.c
326
+ # - no_matching_pattern_key_error.matchee -> object
327
+ # -->
328
+ # Return the matchee associated with this NoMatchingPatternKeyError exception.
329
+ #
330
+ def matchee: () -> M
331
+
332
+ # <!--
333
+ # rdoc-file=error.c
334
+ # - no_matching_pattern_key_error.key -> object
335
+ # -->
336
+ # Return the key caused this NoMatchingPatternKeyError exception.
337
+ #
338
+ def key: () -> K
339
+ end
340
+
341
+ # <!-- rdoc-file=error.c -->
342
+ # Raised when memory allocation fails.
343
+ #
344
+ class NoMemoryError < Exception
345
+ end
346
+
347
+ # <!-- rdoc-file=error.c -->
348
+ # Raised when a method is called on a receiver which doesn't have it defined and
349
+ # also fails to respond with `method_missing`.
350
+ #
351
+ # "hello".to_ary
352
+ #
353
+ # <em>raises the exception:</em>
354
+ #
355
+ # NoMethodError: undefined method `to_ary' for an instance of String
356
+ #
357
+ class NoMethodError[T] < NameError[T]
358
+ # <!--
359
+ # rdoc-file=error.c
360
+ # - NoMethodError.new(msg=nil, name=nil, args=nil, private=false, receiver: nil) -> no_method_error
361
+ # -->
362
+ # Construct a NoMethodError exception for a method of the given name called with
363
+ # the given arguments. The name may be accessed using the <code>#name</code>
364
+ # method on the resulting object, and the arguments using the <code>#args</code>
365
+ # method.
366
+ #
367
+ # If *private* argument were passed, it designates method was attempted to call
368
+ # in private context, and can be accessed with <code>#private_call?</code>
369
+ # method.
370
+ #
371
+ # *receiver* argument stores an object whose method was called.
372
+ #
373
+ def initialize: (?string? msg, ?String? name, ?Array[untyped] args, ?boolish `private`, ?receiver: T?) -> void
374
+
375
+ # <!--
376
+ # rdoc-file=error.c
377
+ # - no_method_error.args -> obj
378
+ # -->
379
+ # Return the arguments passed in as the third parameter to the constructor.
380
+ #
381
+ def args: () -> Array[untyped]
382
+
383
+ # <!--
384
+ # rdoc-file=error.c
385
+ # - no_method_error.private_call? -> true or false
386
+ # -->
387
+ # Return true if the caused method was called as private.
388
+ #
389
+ def private_call?: () -> bool
390
+ end
391
+
392
+ # <!-- rdoc-file=error.c -->
393
+ # Raised when a feature is not implemented on the current platform. For example,
394
+ # methods depending on the `fsync` or `fork` system calls may raise this
395
+ # exception if the underlying operating system or Ruby runtime does not support
396
+ # them.
397
+ #
398
+ # Note that if `fork` raises a `NotImplementedError`, then
399
+ # <code>respond_to?(:fork)</code> returns `false`.
400
+ #
401
+ class NotImplementedError < ScriptError
402
+ end
403
+
404
+ # <!-- rdoc-file=error.c -->
405
+ # Raised when a given numerical value is out of range.
406
+ #
407
+ # [1, 2, 3].drop(1 << 100)
408
+ #
409
+ # <em>raises the exception:</em>
410
+ #
411
+ # RangeError: bignum too big to convert into `long'
412
+ #
413
+ class RangeError < StandardError
414
+ end
415
+
416
+ # <!-- rdoc-file=re.c -->
417
+ # Raised when given an invalid regexp expression.
418
+ #
419
+ # Regexp.new("?")
420
+ #
421
+ # <em>raises the exception:</em>
422
+ #
423
+ # RegexpError: target of repeat operator is not specified: /?/
424
+ #
425
+ class RegexpError < StandardError
426
+ end
427
+
428
+ # <!-- rdoc-file=error.c -->
429
+ # A generic error class raised when an invalid operation is attempted.
430
+ # Kernel#raise will raise a RuntimeError if no Exception class is specified.
431
+ #
432
+ # raise "ouch"
433
+ #
434
+ # <em>raises the exception:</em>
435
+ #
436
+ # RuntimeError: ouch
437
+ #
438
+ class RuntimeError < StandardError
439
+ end
440
+
441
+ # <!-- rdoc-file=error.c -->
442
+ # ScriptError is the superclass for errors raised when a script can not be
443
+ # executed because of a `LoadError`, `NotImplementedError` or a `SyntaxError`.
444
+ # Note these type of `ScriptErrors` are not `StandardError` and will not be
445
+ # rescued unless it is specified explicitly (or its ancestor `Exception`).
446
+ #
447
+ class ScriptError < Exception
448
+ end
449
+
450
+ # <!-- rdoc-file=error.c -->
451
+ # No longer used by internal code.
452
+ #
453
+ class SecurityError < Exception
454
+ end
455
+
456
+ # <!-- rdoc-file=error.c -->
457
+ # Raised when a signal is received.
458
+ #
459
+ # begin
460
+ # Process.kill('HUP',Process.pid)
461
+ # sleep # wait for receiver to handle signal sent by Process.kill
462
+ # rescue SignalException => e
463
+ # puts "received Exception #{e}"
464
+ # end
465
+ #
466
+ # <em>produces:</em>
467
+ #
468
+ # received Exception SIGHUP
469
+ #
470
+ class SignalException < Exception
471
+ # <!--
472
+ # rdoc-file=signal.c
473
+ # - SignalException.new(sig_name) -> signal_exception
474
+ # - SignalException.new(sig_number [, name]) -> signal_exception
475
+ # -->
476
+ # Construct a new SignalException object. `sig_name` should be a known signal
477
+ # name.
478
+ #
479
+ def initialize: (?string sig_name) -> void
480
+ | (int sig_number, ?string sig_name) -> void
481
+
482
+ def signm: () -> String
483
+
484
+ # <!--
485
+ # rdoc-file=signal.c
486
+ # - signal_exception.signo -> num
487
+ # -->
488
+ # Returns a signal number.
489
+ #
490
+ def signo: () -> Integer
491
+ end
492
+
493
+ # <!-- rdoc-file=error.c -->
494
+ # The most standard error types are subclasses of StandardError. A rescue clause
495
+ # without an explicit Exception class will rescue all StandardErrors (and only
496
+ # those).
497
+ #
498
+ # def foo
499
+ # raise "Oups"
500
+ # end
501
+ # foo rescue "Hello" #=> "Hello"
502
+ #
503
+ # On the other hand:
504
+ #
505
+ # require 'does/not/exist' rescue "Hi"
506
+ #
507
+ # <em>raises the exception:</em>
508
+ #
509
+ # LoadError: no such file to load -- does/not/exist
510
+ #
511
+ class StandardError < Exception
512
+ end
513
+
514
+ # <!-- rdoc-file=enumerator.c -->
515
+ # Raised to stop the iteration, in particular by Enumerator#next. It is rescued
516
+ # by Kernel#loop.
517
+ #
518
+ # loop do
519
+ # puts "Hello"
520
+ # raise StopIteration
521
+ # puts "World"
522
+ # end
523
+ # puts "Done!"
524
+ #
525
+ # <em>produces:</em>
526
+ #
527
+ # Hello
528
+ # Done!
529
+ #
530
+ class StopIteration < IndexError
531
+ # <!--
532
+ # rdoc-file=enumerator.c
533
+ # - result -> value
534
+ # -->
535
+ # Returns the return value of the iterator.
536
+ #
537
+ # o = Object.new
538
+ # def o.each
539
+ # yield 1
540
+ # yield 2
541
+ # yield 3
542
+ # 100
543
+ # end
544
+ #
545
+ # e = o.to_enum
546
+ #
547
+ # puts e.next #=> 1
548
+ # puts e.next #=> 2
549
+ # puts e.next #=> 3
550
+ #
551
+ # begin
552
+ # e.next
553
+ # rescue StopIteration => ex
554
+ # puts ex.result #=> 100
555
+ # end
556
+ #
557
+ def result: () -> untyped
558
+ end
559
+
560
+ # <!-- rdoc-file=error.c -->
561
+ # Raised when encountering Ruby code with an invalid syntax.
562
+ #
563
+ # eval("1+1=2")
564
+ #
565
+ # <em>raises the exception:</em>
566
+ #
567
+ # SyntaxError: (eval):1: syntax error, unexpected '=', expecting $end
568
+ #
569
+ class SyntaxError < ScriptError
570
+ # <!--
571
+ # rdoc-file=error.c
572
+ # - SyntaxError.new([msg]) -> syntax_error
573
+ # -->
574
+ # Construct a SyntaxError exception.
575
+ #
576
+ def initialize: (?string msg) -> void
577
+
578
+ # <!-- rdoc-file=error.c -->
579
+ # the path that failed to parse
580
+ #
581
+ def path: () -> String?
582
+ end
583
+
584
+ # <!-- rdoc-file=error.c -->
585
+ # SystemCallError is the base class for all low-level platform-dependent errors.
586
+ #
587
+ # The errors available on the current platform are subclasses of SystemCallError
588
+ # and are defined in the Errno module.
589
+ #
590
+ # File.open("does/not/exist")
591
+ #
592
+ # <em>raises the exception:</em>
593
+ #
594
+ # Errno::ENOENT: No such file or directory - does/not/exist
595
+ #
596
+ class SystemCallError < StandardError
597
+ # <!--
598
+ # rdoc-file=error.c
599
+ # - SystemCallError.new(msg, errno = nil, func = nil) -> system_call_error_subclass
600
+ # -->
601
+ # If *errno* corresponds to a known system error code, constructs the
602
+ # appropriate Errno class for that error, otherwise constructs a generic
603
+ # SystemCallError object. The error number is subsequently available via the
604
+ # #errno method.
605
+ #
606
+ # If only numeric object is given, it is treated as an Integer *errno*, and
607
+ # *msg* is omitted, otherwise the first argument *msg* is used as the additional
608
+ # error message.
609
+ #
610
+ # SystemCallError.new(Errno::EPIPE::Errno)
611
+ # #=> #<Errno::EPIPE: Broken pipe>
612
+ #
613
+ # SystemCallError.new("foo")
614
+ # #=> #<SystemCallError: unknown error - foo>
615
+ #
616
+ # SystemCallError.new("foo", Errno::EPIPE::Errno)
617
+ # #=> #<Errno::EPIPE: Broken pipe - foo>
618
+ #
619
+ # If *func* is not `nil`, it is appended to the message with "<code> @ </code>".
620
+ #
621
+ # SystemCallError.new("foo", Errno::EPIPE::Errno, "here")
622
+ # #=> #<Errno::EPIPE: Broken pipe @ here - foo>
623
+ #
624
+ # A subclass of SystemCallError can also be instantiated via the `new` method of
625
+ # the subclass. See Errno.
626
+ #
627
+ def initialize: (string msg, Integer errno) -> void
628
+
629
+ # <!--
630
+ # rdoc-file=error.c
631
+ # - system_call_error === other -> true or false
632
+ # -->
633
+ # Return `true` if the receiver is a generic `SystemCallError`, or if the error
634
+ # numbers `self` and *other* are the same.
635
+ #
636
+ def self.===: (untyped other) -> bool
637
+
638
+ # <!--
639
+ # rdoc-file=error.c
640
+ # - system_call_error.errno -> integer
641
+ # -->
642
+ # Return this SystemCallError's error number.
643
+ #
644
+ def errno: () -> Integer
645
+ end
646
+
647
+ # <!-- rdoc-file=error.c -->
648
+ # Raised by `exit` to initiate the termination of the script.
649
+ #
650
+ class SystemExit < Exception
651
+ # <!--
652
+ # rdoc-file=error.c
653
+ # - SystemExit.new -> system_exit
654
+ # - SystemExit.new(status) -> system_exit
655
+ # - SystemExit.new(status, msg) -> system_exit
656
+ # - SystemExit.new(msg) -> system_exit
657
+ # -->
658
+ # Create a new `SystemExit` exception with the given status and message. Status
659
+ # is true, false, or an integer. If status is not given, true is used.
660
+ #
661
+ def initialize: () -> void
662
+ | (string msg) -> void
663
+ | (true | false | int status, ?string msg) -> void
664
+
665
+ # <!--
666
+ # rdoc-file=error.c
667
+ # - system_exit.status -> integer
668
+ # -->
669
+ # Return the status value associated with this system exit.
670
+ #
671
+ def status: () -> Integer
672
+
673
+ # <!--
674
+ # rdoc-file=error.c
675
+ # - system_exit.success? -> true or false
676
+ # -->
677
+ # Returns `true` if exiting successful, `false` if not.
678
+ #
679
+ def success?: () -> bool
680
+ end
681
+
682
+ # <!-- rdoc-file=proc.c -->
683
+ # Raised in case of a stack overflow.
684
+ #
685
+ # def me_myself_and_i
686
+ # me_myself_and_i
687
+ # end
688
+ # me_myself_and_i
689
+ #
690
+ # <em>raises the exception:</em>
691
+ #
692
+ # SystemStackError: stack level too deep
693
+ #
694
+ class SystemStackError < Exception
695
+ end
696
+
697
+ # <!-- rdoc-file=thread.c -->
698
+ # Raised when an invalid operation is attempted on a thread.
699
+ #
700
+ # For example, when no other thread has been started:
701
+ #
702
+ # Thread.stop
703
+ #
704
+ # This will raises the following exception:
705
+ #
706
+ # ThreadError: stopping only thread
707
+ # note: use sleep to stop forever
708
+ #
709
+ class ThreadError < StandardError
710
+ end
711
+
712
+ # <!-- rdoc-file=error.c -->
713
+ # Raised when encountering an object that is not of the expected type.
714
+ #
715
+ # [1, 2, 3].first("two")
716
+ #
717
+ # <em>raises the exception:</em>
718
+ #
719
+ # TypeError: no implicit conversion of String into Integer
720
+ #
721
+ class TypeError < StandardError
722
+ end
723
+
724
+ # <!-- rdoc-file=vm_eval.c -->
725
+ # Raised when `throw` is called with a *tag* which does not have corresponding
726
+ # `catch` block.
727
+ #
728
+ # throw "foo", "bar"
729
+ #
730
+ # <em>raises the exception:</em>
731
+ #
732
+ # UncaughtThrowError: uncaught throw "foo"
733
+ #
734
+ class UncaughtThrowError < ArgumentError
735
+ # <!--
736
+ # rdoc-file=vm_eval.c
737
+ # - new(*args)
738
+ # -->
739
+ # Document-class: UncaughtThrowError
740
+ #
741
+ # Raised when `throw` is called with a *tag* which does not have corresponding
742
+ # `catch` block.
743
+ #
744
+ # throw "foo", "bar"
745
+ #
746
+ # <em>raises the exception:</em>
747
+ #
748
+ # UncaughtThrowError: uncaught throw "foo"
749
+ #
750
+ def initialize: (untyped tag, untyped value) -> void
751
+
752
+ # <!--
753
+ # rdoc-file=vm_eval.c
754
+ # - uncaught_throw.tag -> obj
755
+ # -->
756
+ # Return the tag object which was called for.
757
+ #
758
+ def tag: () -> untyped
759
+
760
+ # <!--
761
+ # rdoc-file=vm_eval.c
762
+ # - uncaught_throw.to_s -> string
763
+ # -->
764
+ # Returns formatted message with the inspected tag.
765
+ #
766
+ def to_s: () -> String
767
+
768
+ # <!--
769
+ # rdoc-file=vm_eval.c
770
+ # - uncaught_throw.value -> obj
771
+ # -->
772
+ # Return the return value which was called for.
773
+ #
774
+ def value: () -> untyped
775
+ end
776
+
777
+ # <!-- rdoc-file=numeric.c -->
778
+ # Raised when attempting to divide an integer by 0.
779
+ #
780
+ # 42 / 0 #=> ZeroDivisionError: divided by 0
781
+ #
782
+ # Note that only division by an exact 0 will raise the exception:
783
+ #
784
+ # 42 / 0.0 #=> Float::INFINITY
785
+ # 42 / -0.0 #=> -Float::INFINITY
786
+ # 0 / 0.0 #=> NaN
787
+ #
788
+ class ZeroDivisionError < StandardError
789
+ end