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
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
module RBS
|
|
2
|
+
module Unnamed
|
|
3
|
+
%a{annotate:rdoc:copy:Random::Base}
|
|
4
|
+
class Random_Base
|
|
5
|
+
include Random_Formatter
|
|
6
|
+
extend Random_Formatter
|
|
7
|
+
|
|
8
|
+
# <!--
|
|
9
|
+
# rdoc-file=random.c
|
|
10
|
+
# - Random.new(seed = Random.new_seed) -> prng
|
|
11
|
+
# -->
|
|
12
|
+
# Creates a new PRNG using `seed` to set the initial state. If `seed` is
|
|
13
|
+
# omitted, the generator is initialized with Random.new_seed.
|
|
14
|
+
#
|
|
15
|
+
# See Random.srand for more information on the use of seed values.
|
|
16
|
+
#
|
|
17
|
+
%a{annotate:rdoc:copy:Random.new}
|
|
18
|
+
def initialize: (?Integer seed) -> void
|
|
19
|
+
|
|
20
|
+
# <!--
|
|
21
|
+
# rdoc-file=random.c
|
|
22
|
+
# - prng.rand -> float
|
|
23
|
+
# - prng.rand(max) -> number
|
|
24
|
+
# - prng.rand(range) -> number
|
|
25
|
+
# -->
|
|
26
|
+
# When `max` is an Integer, `rand` returns a random integer greater than or
|
|
27
|
+
# equal to zero and less than `max`. Unlike Kernel.rand, when `max` is a
|
|
28
|
+
# negative integer or zero, `rand` raises an ArgumentError.
|
|
29
|
+
#
|
|
30
|
+
# prng = Random.new
|
|
31
|
+
# prng.rand(100) # => 42
|
|
32
|
+
#
|
|
33
|
+
# When `max` is a Float, `rand` returns a random floating point number between
|
|
34
|
+
# 0.0 and `max`, including 0.0 and excluding `max`.
|
|
35
|
+
#
|
|
36
|
+
# prng.rand(1.5) # => 1.4600282860034115
|
|
37
|
+
#
|
|
38
|
+
# When `range` is a Range, `rand` returns a random number where
|
|
39
|
+
# `range.member?(number) == true`.
|
|
40
|
+
#
|
|
41
|
+
# prng.rand(5..9) # => one of [5, 6, 7, 8, 9]
|
|
42
|
+
# prng.rand(5...9) # => one of [5, 6, 7, 8]
|
|
43
|
+
# prng.rand(5.0..9.0) # => between 5.0 and 9.0, including 9.0
|
|
44
|
+
# prng.rand(5.0...9.0) # => between 5.0 and 9.0, excluding 9.0
|
|
45
|
+
#
|
|
46
|
+
# Both the beginning and ending values of the range must respond to subtract
|
|
47
|
+
# (`-`) and add (`+`)methods, or rand will raise an ArgumentError.
|
|
48
|
+
#
|
|
49
|
+
%a{annotate:rdoc:copy:Random#rand}
|
|
50
|
+
def rand: (?0) -> Float
|
|
51
|
+
| (Integer | ::Range[Integer] max) -> Integer
|
|
52
|
+
| (Float | ::Range[Float] max) -> Float
|
|
53
|
+
|
|
54
|
+
# <!--
|
|
55
|
+
# rdoc-file=random.c
|
|
56
|
+
# - prng.bytes(size) -> string
|
|
57
|
+
# -->
|
|
58
|
+
# Returns a random binary string containing `size` bytes.
|
|
59
|
+
#
|
|
60
|
+
# random_string = Random.new.bytes(10) # => "\xD7:R\xAB?\x83\xCE\xFAkO"
|
|
61
|
+
# random_string.size # => 10
|
|
62
|
+
#
|
|
63
|
+
%a{annotate:rdoc:copy:Random#bytes}
|
|
64
|
+
def bytes: (Integer size) -> String
|
|
65
|
+
|
|
66
|
+
# <!--
|
|
67
|
+
# rdoc-file=random.c
|
|
68
|
+
# - prng.seed -> integer
|
|
69
|
+
# -->
|
|
70
|
+
# Returns the seed value used to initialize the generator. This may be used to
|
|
71
|
+
# initialize another generator with the same state at a later time, causing it
|
|
72
|
+
# to produce the same sequence of numbers.
|
|
73
|
+
#
|
|
74
|
+
# prng1 = Random.new(1234)
|
|
75
|
+
# prng1.seed #=> 1234
|
|
76
|
+
# prng1.rand(100) #=> 47
|
|
77
|
+
#
|
|
78
|
+
# prng2 = Random.new(prng1.seed)
|
|
79
|
+
# prng2.rand(100) #=> 47
|
|
80
|
+
#
|
|
81
|
+
%a{annotate:rdoc:copy:Random#seed}
|
|
82
|
+
def seed: () -> Integer
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# <!-- rdoc-file=lib/random/formatter.rb -->
|
|
86
|
+
# ## Random number formatter.
|
|
87
|
+
#
|
|
88
|
+
# Formats generated random numbers in many manners. When `'random/formatter'` is
|
|
89
|
+
# required, several methods are added to empty core module `Random::Formatter`,
|
|
90
|
+
# making them available as Random's instance and module methods.
|
|
91
|
+
#
|
|
92
|
+
# Standard library SecureRandom is also extended with the module, and the
|
|
93
|
+
# methods described below are available as a module methods in it.
|
|
94
|
+
#
|
|
95
|
+
# ### Examples
|
|
96
|
+
#
|
|
97
|
+
# Generate random hexadecimal strings:
|
|
98
|
+
#
|
|
99
|
+
# require 'random/formatter'
|
|
100
|
+
#
|
|
101
|
+
# prng = Random.new
|
|
102
|
+
# prng.hex(10) #=> "52750b30ffbc7de3b362"
|
|
103
|
+
# prng.hex(10) #=> "92b15d6c8dc4beb5f559"
|
|
104
|
+
# prng.hex(13) #=> "39b290146bea6ce975c37cfc23"
|
|
105
|
+
# # or just
|
|
106
|
+
# Random.hex #=> "1aed0c631e41be7f77365415541052ee"
|
|
107
|
+
#
|
|
108
|
+
# Generate random base64 strings:
|
|
109
|
+
#
|
|
110
|
+
# prng.base64(10) #=> "EcmTPZwWRAozdA=="
|
|
111
|
+
# prng.base64(10) #=> "KO1nIU+p9DKxGg=="
|
|
112
|
+
# prng.base64(12) #=> "7kJSM/MzBJI+75j8"
|
|
113
|
+
# Random.base64(4) #=> "bsQ3fQ=="
|
|
114
|
+
#
|
|
115
|
+
# Generate random binary strings:
|
|
116
|
+
#
|
|
117
|
+
# prng.random_bytes(10) #=> "\016\t{\370g\310pbr\301"
|
|
118
|
+
# prng.random_bytes(10) #=> "\323U\030TO\234\357\020\a\337"
|
|
119
|
+
# Random.random_bytes(6) #=> "\xA1\xE6Lr\xC43"
|
|
120
|
+
#
|
|
121
|
+
# Generate alphanumeric strings:
|
|
122
|
+
#
|
|
123
|
+
# prng.alphanumeric(10) #=> "S8baxMJnPl"
|
|
124
|
+
# prng.alphanumeric(10) #=> "aOxAg8BAJe"
|
|
125
|
+
# Random.alphanumeric #=> "TmP9OsJHJLtaZYhP"
|
|
126
|
+
#
|
|
127
|
+
# Generate UUIDs:
|
|
128
|
+
#
|
|
129
|
+
# prng.uuid #=> "2d931510-d99f-494a-8c67-87feb05e1594"
|
|
130
|
+
# prng.uuid #=> "bad85eb9-0713-4da7-8d36-07a8e4b00eab"
|
|
131
|
+
# Random.uuid #=> "f14e0271-de96-45cc-8911-8910292a42cd"
|
|
132
|
+
#
|
|
133
|
+
# All methods are available in the standard library SecureRandom, too:
|
|
134
|
+
#
|
|
135
|
+
# SecureRandom.hex #=> "05b45376a30c67238eb93b16499e50cf"
|
|
136
|
+
#
|
|
137
|
+
# <!-- rdoc-file=random.c -->
|
|
138
|
+
# Generate a random number in the given range as Random does
|
|
139
|
+
#
|
|
140
|
+
# prng.random_number #=> 0.5816771641321361
|
|
141
|
+
# prng.random_number(1000) #=> 485
|
|
142
|
+
# prng.random_number(1..6) #=> 3
|
|
143
|
+
# prng.rand #=> 0.5816771641321361
|
|
144
|
+
# prng.rand(1000) #=> 485
|
|
145
|
+
# prng.rand(1..6) #=> 3
|
|
146
|
+
#
|
|
147
|
+
%a{annotate:rdoc:copy:Random::Formatter}
|
|
148
|
+
module Random_Formatter
|
|
149
|
+
# <!--
|
|
150
|
+
# rdoc-file=lib/random/formatter.rb
|
|
151
|
+
# - base64(n=nil)
|
|
152
|
+
# -->
|
|
153
|
+
# Generate a random base64 string.
|
|
154
|
+
#
|
|
155
|
+
# The argument *n* specifies the length, in bytes, of the random number to be
|
|
156
|
+
# generated. The length of the result string is about 4/3 of *n*.
|
|
157
|
+
#
|
|
158
|
+
# If *n* is not specified or is nil, 16 is assumed. It may be larger in the
|
|
159
|
+
# future.
|
|
160
|
+
#
|
|
161
|
+
# The result may contain A-Z, a-z, 0-9, "+", "/" and "=".
|
|
162
|
+
#
|
|
163
|
+
# require 'random/formatter'
|
|
164
|
+
#
|
|
165
|
+
# Random.base64 #=> "/2BuBuLf3+WfSKyQbRcc/A=="
|
|
166
|
+
# # or
|
|
167
|
+
# prng = Random.new
|
|
168
|
+
# prng.base64 #=> "6BbW0pxO0YENxn38HMUbcQ=="
|
|
169
|
+
#
|
|
170
|
+
# See RFC 3548 for the definition of base64.
|
|
171
|
+
#
|
|
172
|
+
%a{annotate:rdoc:copy:Random::Formatter#base64}
|
|
173
|
+
def base64: (?Integer? n) -> String
|
|
174
|
+
|
|
175
|
+
# <!--
|
|
176
|
+
# rdoc-file=lib/random/formatter.rb
|
|
177
|
+
# - hex(n=nil)
|
|
178
|
+
# -->
|
|
179
|
+
# Generate a random hexadecimal string.
|
|
180
|
+
#
|
|
181
|
+
# The argument *n* specifies the length, in bytes, of the random number to be
|
|
182
|
+
# generated. The length of the resulting hexadecimal string is twice of *n*.
|
|
183
|
+
#
|
|
184
|
+
# If *n* is not specified or is nil, 16 is assumed. It may be larger in the
|
|
185
|
+
# future.
|
|
186
|
+
#
|
|
187
|
+
# The result may contain 0-9 and a-f.
|
|
188
|
+
#
|
|
189
|
+
# require 'random/formatter'
|
|
190
|
+
#
|
|
191
|
+
# Random.hex #=> "eb693ec8252cd630102fd0d0fb7c3485"
|
|
192
|
+
# # or
|
|
193
|
+
# prng = Random.new
|
|
194
|
+
# prng.hex #=> "91dc3bfb4de5b11d029d376634589b61"
|
|
195
|
+
#
|
|
196
|
+
%a{annotate:rdoc:copy:Random::Formatter#hex}
|
|
197
|
+
def hex: (?Integer? n) -> String
|
|
198
|
+
|
|
199
|
+
# <!-- rdoc-file=random.c -->
|
|
200
|
+
# Generates formatted random number from raw random bytes. See Random#rand.
|
|
201
|
+
#
|
|
202
|
+
%a{annotate:rdoc:copy:Random::Formatter#rand}
|
|
203
|
+
def rand: (?0) -> Float
|
|
204
|
+
| (Float? n) -> Float
|
|
205
|
+
| (Integer n) -> Integer
|
|
206
|
+
| (Numeric n) -> Numeric
|
|
207
|
+
| (::Range[Float] n) -> Float
|
|
208
|
+
| (::Range[Integer] n) -> Integer
|
|
209
|
+
| (::Range[Numeric] n) -> Numeric
|
|
210
|
+
|
|
211
|
+
%a{annotate:rdoc:copy:Random::Formatter#random_byte}
|
|
212
|
+
def random_bytes: (?Integer? n) -> String
|
|
213
|
+
|
|
214
|
+
# <!--
|
|
215
|
+
# rdoc-file=random.c
|
|
216
|
+
# - prng.random_number -> float
|
|
217
|
+
# - prng.random_number(max) -> number
|
|
218
|
+
# - prng.random_number(range) -> number
|
|
219
|
+
# - prng.rand -> float
|
|
220
|
+
# - prng.rand(max) -> number
|
|
221
|
+
# - prng.rand(range) -> number
|
|
222
|
+
# -->
|
|
223
|
+
# Generates formatted random number from raw random bytes. See Random#rand.
|
|
224
|
+
#
|
|
225
|
+
%a{annotate:rdoc:copy:Random::Formatter#random_number}
|
|
226
|
+
def random_number: () -> Float
|
|
227
|
+
| (?Float? n) -> Float
|
|
228
|
+
| (?Integer? n) -> Integer
|
|
229
|
+
| (?Numeric? n) -> Numeric
|
|
230
|
+
| (?::Range[Float]? n) -> Float
|
|
231
|
+
| (?::Range[Integer]? n) -> Integer
|
|
232
|
+
| (?::Range[Numeric]? n) -> Numeric
|
|
233
|
+
|
|
234
|
+
# <!--
|
|
235
|
+
# rdoc-file=lib/random/formatter.rb
|
|
236
|
+
# - urlsafe_base64(n=nil, padding=false)
|
|
237
|
+
# -->
|
|
238
|
+
# Generate a random URL-safe base64 string.
|
|
239
|
+
#
|
|
240
|
+
# The argument *n* specifies the length, in bytes, of the random number to be
|
|
241
|
+
# generated. The length of the result string is about 4/3 of *n*.
|
|
242
|
+
#
|
|
243
|
+
# If *n* is not specified or is nil, 16 is assumed. It may be larger in the
|
|
244
|
+
# future.
|
|
245
|
+
#
|
|
246
|
+
# The boolean argument *padding* specifies the padding. If it is false or nil,
|
|
247
|
+
# padding is not generated. Otherwise padding is generated. By default, padding
|
|
248
|
+
# is not generated because "=" may be used as a URL delimiter.
|
|
249
|
+
#
|
|
250
|
+
# The result may contain A-Z, a-z, 0-9, "-" and "_". "=" is also used if
|
|
251
|
+
# *padding* is true.
|
|
252
|
+
#
|
|
253
|
+
# require 'random/formatter'
|
|
254
|
+
#
|
|
255
|
+
# Random.urlsafe_base64 #=> "b4GOKm4pOYU_-BOXcrUGDg"
|
|
256
|
+
# # or
|
|
257
|
+
# prng = Random.new
|
|
258
|
+
# prng.urlsafe_base64 #=> "UZLdOkzop70Ddx-IJR0ABg"
|
|
259
|
+
#
|
|
260
|
+
# prng.urlsafe_base64(nil, true) #=> "i0XQ-7gglIsHGV2_BNPrdQ=="
|
|
261
|
+
# prng.urlsafe_base64(nil, true) #=> "-M8rLhr7JEpJlqFGUMmOxg=="
|
|
262
|
+
#
|
|
263
|
+
# See RFC 3548 for the definition of URL-safe base64.
|
|
264
|
+
#
|
|
265
|
+
%a{annotate:rdoc:copy:Random::Formatter#urlsafe_base64}
|
|
266
|
+
def urlsafe_base64: (?Integer? n, ?boolish padding) -> String
|
|
267
|
+
|
|
268
|
+
# <!--
|
|
269
|
+
# rdoc-file=lib/random/formatter.rb
|
|
270
|
+
# - uuid()
|
|
271
|
+
# -->
|
|
272
|
+
# Generate a random v4 UUID (Universally Unique IDentifier).
|
|
273
|
+
#
|
|
274
|
+
# require 'random/formatter'
|
|
275
|
+
#
|
|
276
|
+
# Random.uuid #=> "2d931510-d99f-494a-8c67-87feb05e1594"
|
|
277
|
+
# Random.uuid #=> "bad85eb9-0713-4da7-8d36-07a8e4b00eab"
|
|
278
|
+
# # or
|
|
279
|
+
# prng = Random.new
|
|
280
|
+
# prng.uuid #=> "62936e70-1815-439b-bf89-8492855a7e6b"
|
|
281
|
+
#
|
|
282
|
+
# The version 4 UUID is purely random (except the version). It doesn't contain
|
|
283
|
+
# meaningful information such as MAC addresses, timestamps, etc.
|
|
284
|
+
#
|
|
285
|
+
# The result contains 122 random bits (15.25 random bytes).
|
|
286
|
+
#
|
|
287
|
+
# See [RFC9562](https://www.rfc-editor.org/rfc/rfc9562) for details of UUIDv4.
|
|
288
|
+
#
|
|
289
|
+
%a{annotate:rdoc:copy:Random::Formatter#uuid}
|
|
290
|
+
def uuid: () -> String
|
|
291
|
+
end
|
|
292
|
+
end
|
|
293
|
+
end
|
data/core/refinement.rbs
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# <!-- rdoc-file=class.c -->
|
|
2
|
+
# Refinement is a class of the `self` (current context) inside `refine`
|
|
3
|
+
# statement. It allows to import methods from other modules, see
|
|
4
|
+
# #import_methods.
|
|
5
|
+
#
|
|
6
|
+
class Refinement < Module
|
|
7
|
+
# <!--
|
|
8
|
+
# rdoc-file=eval.c
|
|
9
|
+
# - target -> class_or_module
|
|
10
|
+
# -->
|
|
11
|
+
# Return the class or module refined by the receiver.
|
|
12
|
+
#
|
|
13
|
+
# module M
|
|
14
|
+
# refine String do
|
|
15
|
+
# end
|
|
16
|
+
# end
|
|
17
|
+
#
|
|
18
|
+
# M.refinements[0].target # => String
|
|
19
|
+
#
|
|
20
|
+
def target: () -> Module?
|
|
21
|
+
|
|
22
|
+
private
|
|
23
|
+
|
|
24
|
+
# <!--
|
|
25
|
+
# rdoc-file=class.c
|
|
26
|
+
# - import_methods(module, ...) -> self
|
|
27
|
+
# -->
|
|
28
|
+
# Imports methods from modules. Unlike Module#include, Refinement#import_methods
|
|
29
|
+
# copies methods and adds them into the refinement, so the refinement is
|
|
30
|
+
# activated in the imported methods.
|
|
31
|
+
#
|
|
32
|
+
# Note that due to method copying, only methods defined in Ruby code can be
|
|
33
|
+
# imported.
|
|
34
|
+
#
|
|
35
|
+
# module StrUtils
|
|
36
|
+
# def indent(level)
|
|
37
|
+
# ' ' * level + self
|
|
38
|
+
# end
|
|
39
|
+
# end
|
|
40
|
+
#
|
|
41
|
+
# module M
|
|
42
|
+
# refine String do
|
|
43
|
+
# import_methods StrUtils
|
|
44
|
+
# end
|
|
45
|
+
# end
|
|
46
|
+
#
|
|
47
|
+
# using M
|
|
48
|
+
# "foo".indent(3)
|
|
49
|
+
# #=> " foo"
|
|
50
|
+
#
|
|
51
|
+
# module M
|
|
52
|
+
# refine String do
|
|
53
|
+
# import_methods Enumerable
|
|
54
|
+
# # Can't import method which is not defined with Ruby code: Enumerable#drop
|
|
55
|
+
# end
|
|
56
|
+
# end
|
|
57
|
+
#
|
|
58
|
+
def import_methods: (Module module, *Module extra_modules) -> self
|
|
59
|
+
end
|