rbs-relaxed 3.9.0.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.
- checksums.yaml +7 -0
- data/.github/dependabot.yml +22 -0
- data/.github/workflows/comments.yml +35 -0
- data/.github/workflows/dependabot.yml +30 -0
- data/.github/workflows/ruby.yml +82 -0
- data/.github/workflows/typecheck.yml +38 -0
- data/.github/workflows/windows.yml +43 -0
- data/.gitignore +23 -0
- data/.rubocop.yml +68 -0
- data/BSDL +22 -0
- data/CHANGELOG.md +1868 -0
- data/COPYING +56 -0
- data/README.md +203 -0
- data/Rakefile +417 -0
- data/Steepfile +44 -0
- data/config.yml +313 -0
- data/core/array.rbs +4062 -0
- data/core/basic_object.rbs +375 -0
- data/core/binding.rbs +150 -0
- data/core/builtin.rbs +277 -0
- data/core/class.rbs +220 -0
- data/core/comparable.rbs +171 -0
- data/core/complex.rbs +786 -0
- data/core/constants.rbs +96 -0
- data/core/data.rbs +415 -0
- data/core/dir.rbs +981 -0
- data/core/encoding.rbs +1371 -0
- data/core/enumerable.rbs +2405 -0
- data/core/enumerator/product.rbs +92 -0
- data/core/enumerator.rbs +630 -0
- data/core/env.rbs +6 -0
- data/core/errno.rbs +673 -0
- data/core/errors.rbs +760 -0
- data/core/exception.rbs +485 -0
- data/core/false_class.rbs +82 -0
- data/core/fiber.rbs +550 -0
- data/core/fiber_error.rbs +11 -0
- data/core/file.rbs +2936 -0
- data/core/file_test.rbs +331 -0
- data/core/float.rbs +1151 -0
- data/core/gc.rbs +644 -0
- data/core/global_variables.rbs +184 -0
- data/core/hash.rbs +1861 -0
- data/core/integer.rbs +1413 -0
- data/core/io/buffer.rbs +984 -0
- data/core/io/wait.rbs +70 -0
- data/core/io.rbs +3406 -0
- data/core/kernel.rbs +3096 -0
- data/core/marshal.rbs +207 -0
- data/core/match_data.rbs +635 -0
- data/core/math.rbs +729 -0
- data/core/method.rbs +386 -0
- data/core/module.rbs +1704 -0
- data/core/nil_class.rbs +209 -0
- data/core/numeric.rbs +818 -0
- data/core/object.rbs +110 -0
- data/core/object_space/weak_key_map.rbs +166 -0
- data/core/object_space.rbs +190 -0
- data/core/proc.rbs +868 -0
- data/core/process.rbs +2296 -0
- data/core/ractor.rbs +1068 -0
- data/core/random.rbs +237 -0
- data/core/range.rbs +1107 -0
- data/core/rational.rbs +531 -0
- data/core/rb_config.rbs +88 -0
- data/core/rbs/unnamed/argf.rbs +1229 -0
- data/core/rbs/unnamed/env_class.rbs +1209 -0
- data/core/rbs/unnamed/random.rbs +293 -0
- data/core/refinement.rbs +59 -0
- data/core/regexp.rbs +1930 -0
- data/core/ruby_vm.rbs +765 -0
- data/core/rubygems/basic_specification.rbs +6 -0
- data/core/rubygems/config_file.rbs +38 -0
- data/core/rubygems/dependency_installer.rbs +6 -0
- data/core/rubygems/errors.rbs +176 -0
- data/core/rubygems/installer.rbs +15 -0
- data/core/rubygems/path_support.rbs +6 -0
- data/core/rubygems/platform.rbs +7 -0
- data/core/rubygems/request_set.rbs +49 -0
- data/core/rubygems/requirement.rbs +148 -0
- data/core/rubygems/rubygems.rbs +1171 -0
- data/core/rubygems/source_list.rbs +15 -0
- data/core/rubygems/specification.rbs +23 -0
- data/core/rubygems/stream_ui.rbs +5 -0
- data/core/rubygems/uninstaller.rbs +10 -0
- data/core/rubygems/version.rbs +294 -0
- data/core/set.rbs +621 -0
- data/core/signal.rbs +100 -0
- data/core/string.rbs +3583 -0
- data/core/struct.rbs +667 -0
- data/core/symbol.rbs +475 -0
- data/core/thread.rbs +1765 -0
- data/core/thread_group.rbs +79 -0
- data/core/time.rbs +1762 -0
- data/core/trace_point.rbs +477 -0
- data/core/true_class.rbs +98 -0
- data/core/unbound_method.rbs +329 -0
- data/core/warning.rbs +87 -0
- data/docs/CONTRIBUTING.md +106 -0
- data/docs/architecture.md +110 -0
- data/docs/collection.md +192 -0
- data/docs/data_and_struct.md +86 -0
- data/docs/gem.md +57 -0
- data/docs/rbs_by_example.md +309 -0
- data/docs/repo.md +125 -0
- data/docs/sigs.md +167 -0
- data/docs/stdlib.md +147 -0
- data/docs/syntax.md +910 -0
- data/docs/tools.md +17 -0
- data/exe/rbs +7 -0
- data/ext/rbs_extension/extconf.rb +15 -0
- data/ext/rbs_extension/lexer.c +2728 -0
- data/ext/rbs_extension/lexer.h +179 -0
- data/ext/rbs_extension/lexer.re +147 -0
- data/ext/rbs_extension/lexstate.c +175 -0
- data/ext/rbs_extension/location.c +325 -0
- data/ext/rbs_extension/location.h +85 -0
- data/ext/rbs_extension/main.c +33 -0
- data/ext/rbs_extension/parser.c +2973 -0
- data/ext/rbs_extension/parser.h +18 -0
- data/ext/rbs_extension/parserstate.c +397 -0
- data/ext/rbs_extension/parserstate.h +163 -0
- data/ext/rbs_extension/rbs_extension.h +31 -0
- data/ext/rbs_extension/unescape.c +32 -0
- data/goodcheck.yml +91 -0
- data/include/rbs/constants.h +82 -0
- data/include/rbs/ruby_objs.h +72 -0
- data/include/rbs/util/rbs_constant_pool.h +219 -0
- data/include/rbs.h +7 -0
- data/lib/rbs/ancestor_graph.rb +92 -0
- data/lib/rbs/annotate/annotations.rb +199 -0
- data/lib/rbs/annotate/formatter.rb +92 -0
- data/lib/rbs/annotate/rdoc_annotator.rb +400 -0
- data/lib/rbs/annotate/rdoc_source.rb +131 -0
- data/lib/rbs/annotate.rb +8 -0
- data/lib/rbs/ast/annotation.rb +29 -0
- data/lib/rbs/ast/comment.rb +29 -0
- data/lib/rbs/ast/declarations.rb +467 -0
- data/lib/rbs/ast/directives.rb +49 -0
- data/lib/rbs/ast/members.rb +451 -0
- data/lib/rbs/ast/type_param.rb +225 -0
- data/lib/rbs/ast/visitor.rb +137 -0
- data/lib/rbs/buffer.rb +67 -0
- data/lib/rbs/builtin_names.rb +58 -0
- data/lib/rbs/cli/colored_io.rb +48 -0
- data/lib/rbs/cli/diff.rb +83 -0
- data/lib/rbs/cli/validate.rb +357 -0
- data/lib/rbs/cli.rb +1223 -0
- data/lib/rbs/collection/cleaner.rb +38 -0
- data/lib/rbs/collection/config/lockfile.rb +92 -0
- data/lib/rbs/collection/config/lockfile_generator.rb +218 -0
- data/lib/rbs/collection/config.rb +81 -0
- data/lib/rbs/collection/installer.rb +32 -0
- data/lib/rbs/collection/sources/base.rb +14 -0
- data/lib/rbs/collection/sources/git.rb +258 -0
- data/lib/rbs/collection/sources/local.rb +81 -0
- data/lib/rbs/collection/sources/rubygems.rb +48 -0
- data/lib/rbs/collection/sources/stdlib.rb +50 -0
- data/lib/rbs/collection/sources.rb +38 -0
- data/lib/rbs/collection.rb +16 -0
- data/lib/rbs/constant.rb +28 -0
- data/lib/rbs/definition.rb +401 -0
- data/lib/rbs/definition_builder/ancestor_builder.rb +620 -0
- data/lib/rbs/definition_builder/method_builder.rb +254 -0
- data/lib/rbs/definition_builder.rb +845 -0
- data/lib/rbs/diff.rb +125 -0
- data/lib/rbs/environment/use_map.rb +77 -0
- data/lib/rbs/environment.rb +829 -0
- data/lib/rbs/environment_loader.rb +173 -0
- data/lib/rbs/environment_walker.rb +155 -0
- data/lib/rbs/errors.rb +645 -0
- data/lib/rbs/factory.rb +18 -0
- data/lib/rbs/file_finder.rb +28 -0
- data/lib/rbs/location_aux.rb +138 -0
- data/lib/rbs/locator.rb +243 -0
- data/lib/rbs/method_type.rb +143 -0
- data/lib/rbs/namespace.rb +125 -0
- data/lib/rbs/parser/lex_result.rb +15 -0
- data/lib/rbs/parser/token.rb +23 -0
- data/lib/rbs/parser_aux.rb +114 -0
- data/lib/rbs/prototype/helpers.rb +140 -0
- data/lib/rbs/prototype/node_usage.rb +99 -0
- data/lib/rbs/prototype/rb.rb +840 -0
- data/lib/rbs/prototype/rbi.rb +641 -0
- data/lib/rbs/prototype/runtime/helpers.rb +59 -0
- data/lib/rbs/prototype/runtime/reflection.rb +19 -0
- data/lib/rbs/prototype/runtime/value_object_generator.rb +279 -0
- data/lib/rbs/prototype/runtime.rb +667 -0
- data/lib/rbs/repository.rb +127 -0
- data/lib/rbs/resolver/constant_resolver.rb +219 -0
- data/lib/rbs/resolver/type_name_resolver.rb +91 -0
- data/lib/rbs/sorter.rb +198 -0
- data/lib/rbs/substitution.rb +83 -0
- data/lib/rbs/subtractor.rb +201 -0
- data/lib/rbs/test/errors.rb +80 -0
- data/lib/rbs/test/guaranteed.rb +30 -0
- data/lib/rbs/test/hook.rb +212 -0
- data/lib/rbs/test/observer.rb +19 -0
- data/lib/rbs/test/setup.rb +84 -0
- data/lib/rbs/test/setup_helper.rb +50 -0
- data/lib/rbs/test/tester.rb +167 -0
- data/lib/rbs/test/type_check.rb +435 -0
- data/lib/rbs/test.rb +112 -0
- data/lib/rbs/type_alias_dependency.rb +100 -0
- data/lib/rbs/type_alias_regularity.rb +126 -0
- data/lib/rbs/type_name.rb +109 -0
- data/lib/rbs/types.rb +1596 -0
- data/lib/rbs/unit_test/convertibles.rb +176 -0
- data/lib/rbs/unit_test/spy.rb +138 -0
- data/lib/rbs/unit_test/type_assertions.rb +347 -0
- data/lib/rbs/unit_test/with_aliases.rb +143 -0
- data/lib/rbs/unit_test.rb +6 -0
- data/lib/rbs/validator.rb +186 -0
- data/lib/rbs/variance_calculator.rb +189 -0
- data/lib/rbs/vendorer.rb +71 -0
- data/lib/rbs/version.rb +5 -0
- data/lib/rbs/writer.rb +424 -0
- data/lib/rbs.rb +94 -0
- data/lib/rdoc/discover.rb +20 -0
- data/lib/rdoc_plugin/parser.rb +163 -0
- data/rbs-relaxed.gemspec +48 -0
- data/schema/annotation.json +14 -0
- data/schema/comment.json +26 -0
- data/schema/decls.json +326 -0
- data/schema/function.json +87 -0
- data/schema/location.json +56 -0
- data/schema/members.json +266 -0
- data/schema/methodType.json +50 -0
- data/schema/typeParam.json +36 -0
- data/schema/types.json +317 -0
- data/sig/ancestor_builder.rbs +163 -0
- data/sig/ancestor_graph.rbs +60 -0
- data/sig/annotate/annotations.rbs +102 -0
- data/sig/annotate/formatter.rbs +24 -0
- data/sig/annotate/rdoc_annotater.rbs +82 -0
- data/sig/annotate/rdoc_source.rbs +30 -0
- data/sig/annotation.rbs +27 -0
- data/sig/buffer.rbs +32 -0
- data/sig/builtin_names.rbs +44 -0
- data/sig/cli/colored_io.rbs +15 -0
- data/sig/cli/diff.rbs +21 -0
- data/sig/cli/validate.rbs +43 -0
- data/sig/cli.rbs +87 -0
- data/sig/collection/cleaner.rbs +13 -0
- data/sig/collection/config/lockfile.rbs +74 -0
- data/sig/collection/config/lockfile_generator.rbs +66 -0
- data/sig/collection/config.rbs +46 -0
- data/sig/collection/installer.rbs +17 -0
- data/sig/collection/sources.rbs +214 -0
- data/sig/collection.rbs +4 -0
- data/sig/comment.rbs +26 -0
- data/sig/constant.rbs +21 -0
- data/sig/declarations.rbs +267 -0
- data/sig/definition.rbs +173 -0
- data/sig/definition_builder.rbs +165 -0
- data/sig/diff.rbs +28 -0
- data/sig/directives.rbs +77 -0
- data/sig/environment.rbs +279 -0
- data/sig/environment_loader.rbs +111 -0
- data/sig/environment_walker.rbs +65 -0
- data/sig/errors.rbs +405 -0
- data/sig/factory.rbs +5 -0
- data/sig/file_finder.rbs +28 -0
- data/sig/location.rbs +110 -0
- data/sig/locator.rbs +58 -0
- data/sig/manifest.yaml +7 -0
- data/sig/members.rbs +258 -0
- data/sig/method_builder.rbs +84 -0
- data/sig/method_types.rbs +58 -0
- data/sig/namespace.rbs +146 -0
- data/sig/parser.rbs +100 -0
- data/sig/prototype/helpers.rbs +27 -0
- data/sig/prototype/node_usage.rbs +20 -0
- data/sig/prototype/rb.rbs +96 -0
- data/sig/prototype/rbi.rbs +75 -0
- data/sig/prototype/runtime.rbs +182 -0
- data/sig/rbs.rbs +21 -0
- data/sig/rdoc/rbs.rbs +67 -0
- data/sig/repository.rbs +85 -0
- data/sig/resolver/constant_resolver.rbs +92 -0
- data/sig/resolver/context.rbs +34 -0
- data/sig/resolver/type_name_resolver.rbs +35 -0
- data/sig/shims/bundler.rbs +38 -0
- data/sig/shims/enumerable.rbs +5 -0
- data/sig/shims/rubygems.rbs +19 -0
- data/sig/sorter.rbs +41 -0
- data/sig/substitution.rbs +48 -0
- data/sig/subtractor.rbs +37 -0
- data/sig/test/errors.rbs +52 -0
- data/sig/test/guranteed.rbs +9 -0
- data/sig/test/type_check.rbs +19 -0
- data/sig/test.rbs +82 -0
- data/sig/type_alias_dependency.rbs +53 -0
- data/sig/type_alias_regularity.rbs +98 -0
- data/sig/type_param.rbs +110 -0
- data/sig/typename.rbs +79 -0
- data/sig/types.rbs +579 -0
- data/sig/unit_test/convertibles.rbs +154 -0
- data/sig/unit_test/spy.rbs +30 -0
- data/sig/unit_test/type_assertions.rbs +196 -0
- data/sig/unit_test/with_aliases.rbs +136 -0
- data/sig/use_map.rbs +35 -0
- data/sig/util.rbs +9 -0
- data/sig/validator.rbs +63 -0
- data/sig/variance_calculator.rbs +87 -0
- data/sig/vendorer.rbs +51 -0
- data/sig/version.rbs +3 -0
- data/sig/visitor.rbs +47 -0
- data/sig/writer.rbs +127 -0
- data/src/constants.c +153 -0
- data/src/ruby_objs.c +795 -0
- data/src/util/rbs_constant_pool.c +342 -0
- data/stdlib/abbrev/0/abbrev.rbs +66 -0
- data/stdlib/abbrev/0/array.rbs +26 -0
- data/stdlib/base64/0/base64.rbs +355 -0
- data/stdlib/benchmark/0/benchmark.rbs +452 -0
- data/stdlib/bigdecimal/0/big_decimal.rbs +1629 -0
- data/stdlib/bigdecimal-math/0/big_math.rbs +119 -0
- data/stdlib/bigdecimal-math/0/manifest.yaml +2 -0
- data/stdlib/cgi/0/core.rbs +1285 -0
- data/stdlib/cgi/0/manifest.yaml +3 -0
- data/stdlib/coverage/0/coverage.rbs +263 -0
- data/stdlib/csv/0/csv.rbs +3776 -0
- data/stdlib/csv/0/manifest.yaml +3 -0
- data/stdlib/date/0/date.rbs +1585 -0
- data/stdlib/date/0/date_time.rbs +616 -0
- data/stdlib/date/0/time.rbs +26 -0
- data/stdlib/dbm/0/dbm.rbs +421 -0
- data/stdlib/delegate/0/delegator.rbs +184 -0
- data/stdlib/delegate/0/kernel.rbs +47 -0
- data/stdlib/delegate/0/simple_delegator.rbs +96 -0
- data/stdlib/did_you_mean/0/did_you_mean.rbs +343 -0
- data/stdlib/digest/0/digest.rbs +577 -0
- data/stdlib/erb/0/erb.rbs +532 -0
- data/stdlib/etc/0/etc.rbs +865 -0
- data/stdlib/fileutils/0/fileutils.rbs +1734 -0
- data/stdlib/find/0/find.rbs +49 -0
- data/stdlib/forwardable/0/forwardable.rbs +268 -0
- data/stdlib/io-console/0/io-console.rbs +414 -0
- data/stdlib/ipaddr/0/ipaddr.rbs +428 -0
- data/stdlib/json/0/json.rbs +1916 -0
- data/stdlib/kconv/0/kconv.rbs +166 -0
- data/stdlib/logger/0/formatter.rbs +45 -0
- data/stdlib/logger/0/log_device.rbs +100 -0
- data/stdlib/logger/0/logger.rbs +796 -0
- data/stdlib/logger/0/manifest.yaml +2 -0
- data/stdlib/logger/0/period.rbs +17 -0
- data/stdlib/logger/0/severity.rbs +34 -0
- data/stdlib/minitest/0/kernel.rbs +42 -0
- data/stdlib/minitest/0/minitest/abstract_reporter.rbs +52 -0
- data/stdlib/minitest/0/minitest/assertion.rbs +17 -0
- data/stdlib/minitest/0/minitest/assertions.rbs +590 -0
- data/stdlib/minitest/0/minitest/backtrace_filter.rbs +23 -0
- data/stdlib/minitest/0/minitest/bench_spec.rbs +102 -0
- data/stdlib/minitest/0/minitest/benchmark.rbs +259 -0
- data/stdlib/minitest/0/minitest/composite_reporter.rbs +25 -0
- data/stdlib/minitest/0/minitest/compress.rbs +13 -0
- data/stdlib/minitest/0/minitest/error_on_warning.rbs +3 -0
- data/stdlib/minitest/0/minitest/expectation.rbs +2 -0
- data/stdlib/minitest/0/minitest/expectations.rbs +21 -0
- data/stdlib/minitest/0/minitest/guard.rbs +64 -0
- data/stdlib/minitest/0/minitest/mock.rbs +64 -0
- data/stdlib/minitest/0/minitest/parallel/executor.rbs +46 -0
- data/stdlib/minitest/0/minitest/parallel/test/class_methods.rbs +5 -0
- data/stdlib/minitest/0/minitest/parallel/test.rbs +3 -0
- data/stdlib/minitest/0/minitest/parallel.rbs +2 -0
- data/stdlib/minitest/0/minitest/pride_io.rbs +62 -0
- data/stdlib/minitest/0/minitest/pride_lol.rbs +19 -0
- data/stdlib/minitest/0/minitest/progress_reporter.rbs +11 -0
- data/stdlib/minitest/0/minitest/reportable.rbs +53 -0
- data/stdlib/minitest/0/minitest/reporter.rbs +5 -0
- data/stdlib/minitest/0/minitest/result.rbs +28 -0
- data/stdlib/minitest/0/minitest/runnable.rbs +163 -0
- data/stdlib/minitest/0/minitest/skip.rbs +6 -0
- data/stdlib/minitest/0/minitest/spec/dsl/instance_methods.rbs +48 -0
- data/stdlib/minitest/0/minitest/spec/dsl.rbs +129 -0
- data/stdlib/minitest/0/minitest/spec.rbs +11 -0
- data/stdlib/minitest/0/minitest/statistics_reporter.rbs +81 -0
- data/stdlib/minitest/0/minitest/summary_reporter.rbs +18 -0
- data/stdlib/minitest/0/minitest/test/lifecycle_hooks.rbs +92 -0
- data/stdlib/minitest/0/minitest/test.rbs +69 -0
- data/stdlib/minitest/0/minitest/unexpected_error.rbs +12 -0
- data/stdlib/minitest/0/minitest/unexpected_warning.rbs +6 -0
- data/stdlib/minitest/0/minitest/unit/test_case.rbs +3 -0
- data/stdlib/minitest/0/minitest/unit.rbs +4 -0
- data/stdlib/minitest/0/minitest.rbs +115 -0
- data/stdlib/monitor/0/monitor.rbs +363 -0
- data/stdlib/mutex_m/0/mutex_m.rbs +104 -0
- data/stdlib/net-http/0/manifest.yaml +3 -0
- data/stdlib/net-http/0/net-http.rbs +5552 -0
- data/stdlib/net-protocol/0/manifest.yaml +2 -0
- data/stdlib/net-protocol/0/net-protocol.rbs +56 -0
- data/stdlib/net-smtp/0/manifest.yaml +2 -0
- data/stdlib/net-smtp/0/net-smtp.rbs +55 -0
- data/stdlib/nkf/0/nkf.rbs +402 -0
- data/stdlib/objspace/0/objspace.rbs +487 -0
- data/stdlib/observable/0/observable.rbs +217 -0
- data/stdlib/open-uri/0/manifest.yaml +4 -0
- data/stdlib/open-uri/0/open-uri.rbs +393 -0
- data/stdlib/open3/0/open3.rbs +147 -0
- data/stdlib/openssl/0/manifest.yaml +3 -0
- data/stdlib/openssl/0/openssl.rbs +12113 -0
- data/stdlib/optparse/0/optparse.rbs +1725 -0
- data/stdlib/pathname/0/pathname.rbs +1406 -0
- data/stdlib/pp/0/manifest.yaml +2 -0
- data/stdlib/pp/0/pp.rbs +300 -0
- data/stdlib/prettyprint/0/prettyprint.rbs +383 -0
- data/stdlib/pstore/0/pstore.rbs +603 -0
- data/stdlib/psych/0/core_ext.rbs +12 -0
- data/stdlib/psych/0/dbm.rbs +237 -0
- data/stdlib/psych/0/manifest.yaml +3 -0
- data/stdlib/psych/0/psych.rbs +402 -0
- data/stdlib/psych/0/store.rbs +59 -0
- data/stdlib/pty/0/pty.rbs +237 -0
- data/stdlib/rdoc/0/code_object.rbs +51 -0
- data/stdlib/rdoc/0/comment.rbs +59 -0
- data/stdlib/rdoc/0/context.rbs +153 -0
- data/stdlib/rdoc/0/markup.rbs +117 -0
- data/stdlib/rdoc/0/parser.rbs +56 -0
- data/stdlib/rdoc/0/rdoc.rbs +391 -0
- data/stdlib/rdoc/0/ri.rbs +17 -0
- data/stdlib/rdoc/0/store.rbs +48 -0
- data/stdlib/rdoc/0/top_level.rbs +97 -0
- data/stdlib/resolv/0/manifest.yaml +3 -0
- data/stdlib/resolv/0/resolv.rbs +1830 -0
- data/stdlib/ripper/0/ripper.rbs +1648 -0
- data/stdlib/securerandom/0/securerandom.rbs +62 -0
- data/stdlib/shellwords/0/shellwords.rbs +229 -0
- data/stdlib/singleton/0/singleton.rbs +131 -0
- data/stdlib/socket/0/addrinfo.rbs +666 -0
- data/stdlib/socket/0/basic_socket.rbs +590 -0
- data/stdlib/socket/0/constants.rbs +2295 -0
- data/stdlib/socket/0/ip_socket.rbs +92 -0
- data/stdlib/socket/0/socket.rbs +4157 -0
- data/stdlib/socket/0/socket_error.rbs +5 -0
- data/stdlib/socket/0/tcp_server.rbs +192 -0
- data/stdlib/socket/0/tcp_socket.rbs +79 -0
- data/stdlib/socket/0/udp_socket.rbs +133 -0
- data/stdlib/socket/0/unix_server.rbs +169 -0
- data/stdlib/socket/0/unix_socket.rbs +172 -0
- data/stdlib/stringio/0/stringio.rbs +567 -0
- data/stdlib/strscan/0/string_scanner.rbs +1627 -0
- data/stdlib/tempfile/0/tempfile.rbs +479 -0
- data/stdlib/time/0/time.rbs +432 -0
- data/stdlib/timeout/0/timeout.rbs +81 -0
- data/stdlib/tmpdir/0/tmpdir.rbs +69 -0
- data/stdlib/tsort/0/cyclic.rbs +5 -0
- data/stdlib/tsort/0/interfaces.rbs +20 -0
- data/stdlib/tsort/0/tsort.rbs +409 -0
- data/stdlib/uri/0/common.rbs +582 -0
- data/stdlib/uri/0/file.rbs +118 -0
- data/stdlib/uri/0/ftp.rbs +13 -0
- data/stdlib/uri/0/generic.rbs +1108 -0
- data/stdlib/uri/0/http.rbs +104 -0
- data/stdlib/uri/0/https.rbs +14 -0
- data/stdlib/uri/0/ldap.rbs +230 -0
- data/stdlib/uri/0/ldaps.rbs +14 -0
- data/stdlib/uri/0/mailto.rbs +92 -0
- data/stdlib/uri/0/rfc2396_parser.rbs +189 -0
- data/stdlib/uri/0/rfc3986_parser.rbs +2 -0
- data/stdlib/uri/0/ws.rbs +13 -0
- data/stdlib/uri/0/wss.rbs +9 -0
- data/stdlib/yaml/0/manifest.yaml +2 -0
- data/stdlib/yaml/0/yaml.rbs +1 -0
- data/stdlib/zlib/0/buf_error.rbs +10 -0
- data/stdlib/zlib/0/data_error.rbs +10 -0
- data/stdlib/zlib/0/deflate.rbs +210 -0
- data/stdlib/zlib/0/error.rbs +20 -0
- data/stdlib/zlib/0/gzip_file/crc_error.rbs +12 -0
- data/stdlib/zlib/0/gzip_file/error.rbs +23 -0
- data/stdlib/zlib/0/gzip_file/length_error.rbs +12 -0
- data/stdlib/zlib/0/gzip_file/no_footer.rbs +11 -0
- data/stdlib/zlib/0/gzip_file.rbs +156 -0
- data/stdlib/zlib/0/gzip_reader.rbs +293 -0
- data/stdlib/zlib/0/gzip_writer.rbs +166 -0
- data/stdlib/zlib/0/inflate.rbs +180 -0
- data/stdlib/zlib/0/mem_error.rbs +10 -0
- data/stdlib/zlib/0/need_dict.rbs +13 -0
- data/stdlib/zlib/0/stream_end.rbs +11 -0
- data/stdlib/zlib/0/stream_error.rbs +11 -0
- data/stdlib/zlib/0/version_error.rbs +11 -0
- data/stdlib/zlib/0/zlib.rbs +449 -0
- data/stdlib/zlib/0/zstream.rbs +200 -0
- metadata +532 -0
data/core/errors.rbs
ADDED
@@ -0,0 +1,760 @@
|
|
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
|
+
# *raises the exception:*
|
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
|
+
# *raises the exception:*
|
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
|
+
# *raises the exception:*
|
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
|
+
# *produces:*
|
119
|
+
#
|
120
|
+
# Press ctrl-C when you get bored
|
121
|
+
#
|
122
|
+
# *then waits until it is interrupted with Control-C and then prints:*
|
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
|
+
# *raises the exception:*
|
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
|
+
# *raises the exception:*
|
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
|
+
# *raises the exception:*
|
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
|
+
# *raises the exception:*
|
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
|
+
# *raises the exception:*
|
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
|
+
class NoMatchingPatternError < StandardError
|
306
|
+
end
|
307
|
+
|
308
|
+
class NoMatchingPatternKeyError[M, K] < NoMatchingPatternError
|
309
|
+
# <!--
|
310
|
+
# rdoc-file=error.c
|
311
|
+
# - NoMatchingPatternKeyError.new(message=nil, matchee: nil, key: nil) -> no_matching_pattern_key_error
|
312
|
+
# -->
|
313
|
+
# Construct a new `NoMatchingPatternKeyError` exception with the given message,
|
314
|
+
# matchee and key.
|
315
|
+
#
|
316
|
+
def initialize: (?string message, matchee: M, key: K) -> void
|
317
|
+
|
318
|
+
# <!--
|
319
|
+
# rdoc-file=error.c
|
320
|
+
# - no_matching_pattern_key_error.matchee -> object
|
321
|
+
# -->
|
322
|
+
# Return the matchee associated with this NoMatchingPatternKeyError exception.
|
323
|
+
#
|
324
|
+
def matchee: () -> M
|
325
|
+
|
326
|
+
# <!--
|
327
|
+
# rdoc-file=error.c
|
328
|
+
# - no_matching_pattern_key_error.key -> object
|
329
|
+
# -->
|
330
|
+
# Return the key caused this NoMatchingPatternKeyError exception.
|
331
|
+
#
|
332
|
+
def key: () -> K
|
333
|
+
end
|
334
|
+
|
335
|
+
# <!-- rdoc-file=error.c -->
|
336
|
+
# Raised when memory allocation fails.
|
337
|
+
#
|
338
|
+
class NoMemoryError < Exception
|
339
|
+
end
|
340
|
+
|
341
|
+
# <!-- rdoc-file=error.c -->
|
342
|
+
# Raised when a method is called on a receiver which doesn't have it defined and
|
343
|
+
# also fails to respond with `method_missing`.
|
344
|
+
#
|
345
|
+
# "hello".to_ary
|
346
|
+
#
|
347
|
+
# *raises the exception:*
|
348
|
+
#
|
349
|
+
# NoMethodError: undefined method `to_ary' for an instance of String
|
350
|
+
#
|
351
|
+
class NoMethodError[T] < NameError[T]
|
352
|
+
# <!--
|
353
|
+
# rdoc-file=error.c
|
354
|
+
# - NoMethodError.new(msg=nil, name=nil, args=nil, private=false, receiver: nil) -> no_method_error
|
355
|
+
# -->
|
356
|
+
# Construct a NoMethodError exception for a method of the given name called with
|
357
|
+
# the given arguments. The name may be accessed using the `#name` method on the
|
358
|
+
# resulting object, and the arguments using the `#args` method.
|
359
|
+
#
|
360
|
+
# If *private* argument were passed, it designates method was attempted to call
|
361
|
+
# in private context, and can be accessed with `#private_call?` method.
|
362
|
+
#
|
363
|
+
# *receiver* argument stores an object whose method was called.
|
364
|
+
#
|
365
|
+
def initialize: (?string? msg, ?String? name, ?Array[untyped] args, ?boolish `private`, ?receiver: T?) -> void
|
366
|
+
|
367
|
+
# <!--
|
368
|
+
# rdoc-file=error.c
|
369
|
+
# - no_method_error.args -> obj
|
370
|
+
# -->
|
371
|
+
# Return the arguments passed in as the third parameter to the constructor.
|
372
|
+
#
|
373
|
+
def args: () -> Array[untyped]
|
374
|
+
|
375
|
+
# <!--
|
376
|
+
# rdoc-file=error.c
|
377
|
+
# - no_method_error.private_call? -> true or false
|
378
|
+
# -->
|
379
|
+
# Return true if the caused method was called as private.
|
380
|
+
#
|
381
|
+
def private_call?: () -> bool
|
382
|
+
end
|
383
|
+
|
384
|
+
# <!-- rdoc-file=error.c -->
|
385
|
+
# Raised when a feature is not implemented on the current platform. For example,
|
386
|
+
# methods depending on the `fsync` or `fork` system calls may raise this
|
387
|
+
# exception if the underlying operating system or Ruby runtime does not support
|
388
|
+
# them.
|
389
|
+
#
|
390
|
+
# Note that if `fork` raises a `NotImplementedError`, then `respond_to?(:fork)`
|
391
|
+
# returns `false`.
|
392
|
+
#
|
393
|
+
class NotImplementedError < ScriptError
|
394
|
+
end
|
395
|
+
|
396
|
+
# <!-- rdoc-file=error.c -->
|
397
|
+
# Raised when a given numerical value is out of range.
|
398
|
+
#
|
399
|
+
# [1, 2, 3].drop(1 << 100)
|
400
|
+
#
|
401
|
+
# *raises the exception:*
|
402
|
+
#
|
403
|
+
# RangeError: bignum too big to convert into `long'
|
404
|
+
#
|
405
|
+
class RangeError < StandardError
|
406
|
+
end
|
407
|
+
|
408
|
+
# <!-- rdoc-file=re.c -->
|
409
|
+
# Raised when given an invalid regexp expression.
|
410
|
+
#
|
411
|
+
# Regexp.new("?")
|
412
|
+
#
|
413
|
+
# *raises the exception:*
|
414
|
+
#
|
415
|
+
# RegexpError: target of repeat operator is not specified: /?/
|
416
|
+
#
|
417
|
+
class RegexpError < StandardError
|
418
|
+
end
|
419
|
+
|
420
|
+
# <!-- rdoc-file=error.c -->
|
421
|
+
# A generic error class raised when an invalid operation is attempted.
|
422
|
+
# Kernel#raise will raise a RuntimeError if no Exception class is specified.
|
423
|
+
#
|
424
|
+
# raise "ouch"
|
425
|
+
#
|
426
|
+
# *raises the exception:*
|
427
|
+
#
|
428
|
+
# RuntimeError: ouch
|
429
|
+
#
|
430
|
+
class RuntimeError < StandardError
|
431
|
+
end
|
432
|
+
|
433
|
+
# <!-- rdoc-file=error.c -->
|
434
|
+
# ScriptError is the superclass for errors raised when a script can not be
|
435
|
+
# executed because of a `LoadError`, `NotImplementedError` or a `SyntaxError`.
|
436
|
+
# Note these type of `ScriptErrors` are not `StandardError` and will not be
|
437
|
+
# rescued unless it is specified explicitly (or its ancestor `Exception`).
|
438
|
+
#
|
439
|
+
class ScriptError < Exception
|
440
|
+
end
|
441
|
+
|
442
|
+
# <!-- rdoc-file=error.c -->
|
443
|
+
# No longer used by internal code.
|
444
|
+
#
|
445
|
+
class SecurityError < Exception
|
446
|
+
end
|
447
|
+
|
448
|
+
# <!-- rdoc-file=error.c -->
|
449
|
+
# Raised when a signal is received.
|
450
|
+
#
|
451
|
+
# begin
|
452
|
+
# Process.kill('HUP',Process.pid)
|
453
|
+
# sleep # wait for receiver to handle signal sent by Process.kill
|
454
|
+
# rescue SignalException => e
|
455
|
+
# puts "received Exception #{e}"
|
456
|
+
# end
|
457
|
+
#
|
458
|
+
# *produces:*
|
459
|
+
#
|
460
|
+
# received Exception SIGHUP
|
461
|
+
#
|
462
|
+
class SignalException < Exception
|
463
|
+
# <!--
|
464
|
+
# rdoc-file=signal.c
|
465
|
+
# - SignalException.new(sig_name) -> signal_exception
|
466
|
+
# - SignalException.new(sig_number [, name]) -> signal_exception
|
467
|
+
# -->
|
468
|
+
# Construct a new SignalException object. `sig_name` should be a known signal
|
469
|
+
# name.
|
470
|
+
#
|
471
|
+
def initialize: (?string sig_name) -> void
|
472
|
+
| (int sig_number, ?string sig_name) -> void
|
473
|
+
|
474
|
+
def signm: () -> String
|
475
|
+
|
476
|
+
# <!--
|
477
|
+
# rdoc-file=signal.c
|
478
|
+
# - signal_exception.signo -> num
|
479
|
+
# -->
|
480
|
+
# Returns a signal number.
|
481
|
+
#
|
482
|
+
def signo: () -> Integer
|
483
|
+
end
|
484
|
+
|
485
|
+
# <!-- rdoc-file=error.c -->
|
486
|
+
# The most standard error types are subclasses of StandardError. A rescue clause
|
487
|
+
# without an explicit Exception class will rescue all StandardErrors (and only
|
488
|
+
# those).
|
489
|
+
#
|
490
|
+
# def foo
|
491
|
+
# raise "Oups"
|
492
|
+
# end
|
493
|
+
# foo rescue "Hello" #=> "Hello"
|
494
|
+
#
|
495
|
+
# On the other hand:
|
496
|
+
#
|
497
|
+
# require 'does/not/exist' rescue "Hi"
|
498
|
+
#
|
499
|
+
# *raises the exception:*
|
500
|
+
#
|
501
|
+
# LoadError: no such file to load -- does/not/exist
|
502
|
+
#
|
503
|
+
class StandardError < Exception
|
504
|
+
end
|
505
|
+
|
506
|
+
# <!-- rdoc-file=enumerator.c -->
|
507
|
+
# Raised to stop the iteration, in particular by Enumerator#next. It is rescued
|
508
|
+
# by Kernel#loop.
|
509
|
+
#
|
510
|
+
# loop do
|
511
|
+
# puts "Hello"
|
512
|
+
# raise StopIteration
|
513
|
+
# puts "World"
|
514
|
+
# end
|
515
|
+
# puts "Done!"
|
516
|
+
#
|
517
|
+
# *produces:*
|
518
|
+
#
|
519
|
+
# Hello
|
520
|
+
# Done!
|
521
|
+
#
|
522
|
+
class StopIteration < IndexError
|
523
|
+
# <!--
|
524
|
+
# rdoc-file=enumerator.c
|
525
|
+
# - result -> value
|
526
|
+
# -->
|
527
|
+
# Returns the return value of the iterator.
|
528
|
+
#
|
529
|
+
# o = Object.new
|
530
|
+
# def o.each
|
531
|
+
# yield 1
|
532
|
+
# yield 2
|
533
|
+
# yield 3
|
534
|
+
# 100
|
535
|
+
# end
|
536
|
+
#
|
537
|
+
# e = o.to_enum
|
538
|
+
#
|
539
|
+
# puts e.next #=> 1
|
540
|
+
# puts e.next #=> 2
|
541
|
+
# puts e.next #=> 3
|
542
|
+
#
|
543
|
+
# begin
|
544
|
+
# e.next
|
545
|
+
# rescue StopIteration => ex
|
546
|
+
# puts ex.result #=> 100
|
547
|
+
# end
|
548
|
+
#
|
549
|
+
def result: () -> untyped
|
550
|
+
end
|
551
|
+
|
552
|
+
# <!-- rdoc-file=error.c -->
|
553
|
+
# Raised when encountering Ruby code with an invalid syntax.
|
554
|
+
#
|
555
|
+
# eval("1+1=2")
|
556
|
+
#
|
557
|
+
# *raises the exception:*
|
558
|
+
#
|
559
|
+
# SyntaxError: (eval):1: syntax error, unexpected '=', expecting $end
|
560
|
+
#
|
561
|
+
class SyntaxError < ScriptError
|
562
|
+
# <!--
|
563
|
+
# rdoc-file=error.c
|
564
|
+
# - SyntaxError.new([msg]) -> syntax_error
|
565
|
+
# -->
|
566
|
+
# Construct a SyntaxError exception.
|
567
|
+
#
|
568
|
+
def initialize: (?string msg) -> void
|
569
|
+
|
570
|
+
# <!-- rdoc-file=error.c -->
|
571
|
+
# the path that failed to parse
|
572
|
+
#
|
573
|
+
def path: () -> String?
|
574
|
+
end
|
575
|
+
|
576
|
+
# <!-- rdoc-file=error.c -->
|
577
|
+
# SystemCallError is the base class for all low-level platform-dependent errors.
|
578
|
+
#
|
579
|
+
# The errors available on the current platform are subclasses of SystemCallError
|
580
|
+
# and are defined in the Errno module.
|
581
|
+
#
|
582
|
+
# File.open("does/not/exist")
|
583
|
+
#
|
584
|
+
# *raises the exception:*
|
585
|
+
#
|
586
|
+
# Errno::ENOENT: No such file or directory - does/not/exist
|
587
|
+
#
|
588
|
+
class SystemCallError < StandardError
|
589
|
+
# <!--
|
590
|
+
# rdoc-file=error.c
|
591
|
+
# - SystemCallError.new(msg, errno) -> system_call_error_subclass
|
592
|
+
# -->
|
593
|
+
# If *errno* corresponds to a known system error code, constructs the
|
594
|
+
# appropriate Errno class for that error, otherwise constructs a generic
|
595
|
+
# SystemCallError object. The error number is subsequently available via the
|
596
|
+
# #errno method.
|
597
|
+
#
|
598
|
+
def initialize: (string msg, Integer errno) -> void
|
599
|
+
|
600
|
+
# <!--
|
601
|
+
# rdoc-file=error.c
|
602
|
+
# - system_call_error === other -> true or false
|
603
|
+
# -->
|
604
|
+
# Return `true` if the receiver is a generic `SystemCallError`, or if the error
|
605
|
+
# numbers `self` and *other* are the same.
|
606
|
+
#
|
607
|
+
def self.===: (untyped other) -> bool
|
608
|
+
|
609
|
+
# <!--
|
610
|
+
# rdoc-file=error.c
|
611
|
+
# - system_call_error.errno -> integer
|
612
|
+
# -->
|
613
|
+
# Return this SystemCallError's error number.
|
614
|
+
#
|
615
|
+
def errno: () -> Integer
|
616
|
+
end
|
617
|
+
|
618
|
+
# <!-- rdoc-file=error.c -->
|
619
|
+
# Raised by `exit` to initiate the termination of the script.
|
620
|
+
#
|
621
|
+
class SystemExit < Exception
|
622
|
+
# <!--
|
623
|
+
# rdoc-file=error.c
|
624
|
+
# - SystemExit.new -> system_exit
|
625
|
+
# - SystemExit.new(status) -> system_exit
|
626
|
+
# - SystemExit.new(status, msg) -> system_exit
|
627
|
+
# - SystemExit.new(msg) -> system_exit
|
628
|
+
# -->
|
629
|
+
# Create a new `SystemExit` exception with the given status and message. Status
|
630
|
+
# is true, false, or an integer. If status is not given, true is used.
|
631
|
+
#
|
632
|
+
def initialize: () -> void
|
633
|
+
| (string msg) -> void
|
634
|
+
| (true | false | int status, ?string msg) -> void
|
635
|
+
|
636
|
+
# <!--
|
637
|
+
# rdoc-file=error.c
|
638
|
+
# - system_exit.status -> integer
|
639
|
+
# -->
|
640
|
+
# Return the status value associated with this system exit.
|
641
|
+
#
|
642
|
+
def status: () -> Integer
|
643
|
+
|
644
|
+
# <!--
|
645
|
+
# rdoc-file=error.c
|
646
|
+
# - system_exit.success? -> true or false
|
647
|
+
# -->
|
648
|
+
# Returns `true` if exiting successful, `false` if not.
|
649
|
+
#
|
650
|
+
def success?: () -> bool
|
651
|
+
end
|
652
|
+
|
653
|
+
# <!-- rdoc-file=proc.c -->
|
654
|
+
# Raised in case of a stack overflow.
|
655
|
+
#
|
656
|
+
# def me_myself_and_i
|
657
|
+
# me_myself_and_i
|
658
|
+
# end
|
659
|
+
# me_myself_and_i
|
660
|
+
#
|
661
|
+
# *raises the exception:*
|
662
|
+
#
|
663
|
+
# SystemStackError: stack level too deep
|
664
|
+
#
|
665
|
+
class SystemStackError < Exception
|
666
|
+
end
|
667
|
+
|
668
|
+
# <!-- rdoc-file=thread.c -->
|
669
|
+
# Raised when an invalid operation is attempted on a thread.
|
670
|
+
#
|
671
|
+
# For example, when no other thread has been started:
|
672
|
+
#
|
673
|
+
# Thread.stop
|
674
|
+
#
|
675
|
+
# This will raises the following exception:
|
676
|
+
#
|
677
|
+
# ThreadError: stopping only thread
|
678
|
+
# note: use sleep to stop forever
|
679
|
+
#
|
680
|
+
class ThreadError < StandardError
|
681
|
+
end
|
682
|
+
|
683
|
+
# <!-- rdoc-file=error.c -->
|
684
|
+
# Raised when encountering an object that is not of the expected type.
|
685
|
+
#
|
686
|
+
# [1, 2, 3].first("two")
|
687
|
+
#
|
688
|
+
# *raises the exception:*
|
689
|
+
#
|
690
|
+
# TypeError: no implicit conversion of String into Integer
|
691
|
+
#
|
692
|
+
class TypeError < StandardError
|
693
|
+
end
|
694
|
+
|
695
|
+
# <!-- rdoc-file=vm_eval.c -->
|
696
|
+
# Raised when `throw` is called with a *tag* which does not have corresponding
|
697
|
+
# `catch` block.
|
698
|
+
#
|
699
|
+
# throw "foo", "bar"
|
700
|
+
#
|
701
|
+
# *raises the exception:*
|
702
|
+
#
|
703
|
+
# UncaughtThrowError: uncaught throw "foo"
|
704
|
+
#
|
705
|
+
class UncaughtThrowError < ArgumentError
|
706
|
+
# <!--
|
707
|
+
# rdoc-file=vm_eval.c
|
708
|
+
# - new(*args)
|
709
|
+
# -->
|
710
|
+
# Document-class: UncaughtThrowError
|
711
|
+
#
|
712
|
+
# Raised when `throw` is called with a *tag* which does not have corresponding
|
713
|
+
# `catch` block.
|
714
|
+
#
|
715
|
+
# throw "foo", "bar"
|
716
|
+
#
|
717
|
+
# *raises the exception:*
|
718
|
+
#
|
719
|
+
# UncaughtThrowError: uncaught throw "foo"
|
720
|
+
#
|
721
|
+
def initialize: (untyped tag, untyped value) -> void
|
722
|
+
|
723
|
+
# <!--
|
724
|
+
# rdoc-file=vm_eval.c
|
725
|
+
# - uncaught_throw.tag -> obj
|
726
|
+
# -->
|
727
|
+
# Return the tag object which was called for.
|
728
|
+
#
|
729
|
+
def tag: () -> untyped
|
730
|
+
|
731
|
+
# <!--
|
732
|
+
# rdoc-file=vm_eval.c
|
733
|
+
# - uncaught_throw.to_s -> string
|
734
|
+
# -->
|
735
|
+
# Returns formatted message with the inspected tag.
|
736
|
+
#
|
737
|
+
def to_s: () -> String
|
738
|
+
|
739
|
+
# <!--
|
740
|
+
# rdoc-file=vm_eval.c
|
741
|
+
# - uncaught_throw.value -> obj
|
742
|
+
# -->
|
743
|
+
# Return the return value which was called for.
|
744
|
+
#
|
745
|
+
def value: () -> untyped
|
746
|
+
end
|
747
|
+
|
748
|
+
# <!-- rdoc-file=numeric.c -->
|
749
|
+
# Raised when attempting to divide an integer by 0.
|
750
|
+
#
|
751
|
+
# 42 / 0 #=> ZeroDivisionError: divided by 0
|
752
|
+
#
|
753
|
+
# Note that only division by an exact 0 will raise the exception:
|
754
|
+
#
|
755
|
+
# 42 / 0.0 #=> Float::INFINITY
|
756
|
+
# 42 / -0.0 #=> -Float::INFINITY
|
757
|
+
# 0 / 0.0 #=> NaN
|
758
|
+
#
|
759
|
+
class ZeroDivisionError < StandardError
|
760
|
+
end
|